{
  "abi": [
    {
      "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": "string",
          "name": "name_",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "symbol_",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "initialSupply",
          "type": "uint256"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "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": {
    "21": "contracts/mocks/IMintableERC20.sol",
    "27": "contracts/mocks/TestCurrencyUUPS.sol",
    "72": "node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol",
    "75": "node_modules/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol",
    "76": "node_modules/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol",
    "77": "node_modules/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol",
    "83": "node_modules/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol"
  },
  "ast": {
    "absolutePath": "contracts/mocks/TestCurrencyUUPS.sol",
    "exportedSymbols": {
      "ERC20Upgradeable": [
        21434
      ],
      "IMintableERC20": [
        12985
      ],
      "TestCurrencyUUPS": [
        14090
      ]
    },
    "id": 14091,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 14024,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "38:23:27"
      },
      {
        "absolutePath": "node_modules/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol",
        "file": "@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol",
        "id": 14026,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 14091,
        "sourceUnit": 21435,
        "src": "63:102:27",
        "symbolAliases": [
          {
            "foreign": {
              "id": 14025,
              "name": "ERC20Upgradeable",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "71:16:27",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "contracts/mocks/IMintableERC20.sol",
        "file": "./IMintableERC20.sol",
        "id": 14028,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 14091,
        "sourceUnit": 12986,
        "src": "166:52:27",
        "symbolAliases": [
          {
            "foreign": {
              "id": 14027,
              "name": "IMintableERC20",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "174:14:27",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 14029,
              "name": "ERC20Upgradeable",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 21434,
              "src": "249:16:27"
            },
            "id": 14030,
            "nodeType": "InheritanceSpecifier",
            "src": "249:16:27"
          },
          {
            "baseName": {
              "id": 14031,
              "name": "IMintableERC20",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 12985,
              "src": "267:14:27"
            },
            "id": 14032,
            "nodeType": "InheritanceSpecifier",
            "src": "267:14:27"
          }
        ],
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": true,
        "id": 14090,
        "linearizedBaseContracts": [
          14090,
          12985,
          21434,
          27212,
          27187,
          26020,
          19544
        ],
        "name": "TestCurrencyUUPS",
        "nameLocation": "229:16:27",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 14034,
            "mutability": "mutable",
            "name": "_owner",
            "nameLocation": "302:6:27",
            "nodeType": "VariableDeclaration",
            "scope": 14090,
            "src": "286:22:27",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 14033,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "286:7:27",
              "stateMutability": "nonpayable",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "visibility": "private"
          },
          {
            "body": {
              "id": 14060,
              "nodeType": "Block",
              "src": "435:100:27",
              "statements": [
                {
                  "expression": {
                    "id": 14048,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14045,
                      "name": "_owner",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14034,
                      "src": "441:6:27",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [],
                      "expression": {
                        "argumentTypes": [],
                        "id": 14046,
                        "name": "_msgSender",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 26005,
                        "src": "450:10:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$",
                          "typeString": "function () view returns (address)"
                        }
                      },
                      "id": 14047,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "450:12:27",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "441:21:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 14049,
                  "nodeType": "ExpressionStatement",
                  "src": "441:21:27"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14051,
                        "name": "name_",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14036,
                        "src": "481:5:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      },
                      {
                        "id": 14052,
                        "name": "symbol_",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14038,
                        "src": "488:7:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        },
                        {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      ],
                      "id": 14050,
                      "name": "__ERC20_init",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20868,
                      "src": "468:12:27",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (string memory,string memory)"
                      }
                    },
                    "id": 14053,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "468:28:27",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 14054,
                  "nodeType": "ExpressionStatement",
                  "src": "468:28:27"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14056,
                        "name": "_owner",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14034,
                        "src": "508:6:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 14057,
                        "name": "initialSupply",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14040,
                        "src": "516:13:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 14055,
                      "name": "_mint",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 21246,
                      "src": "502:5:27",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 14058,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "502:28:27",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 14059,
                  "nodeType": "ExpressionStatement",
                  "src": "502:28:27"
                }
              ]
            },
            "functionSelector": "b119490e",
            "id": 14061,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "id": 14043,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14042,
                  "name": "initializer",
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 19518,
                  "src": "423:11:27"
                },
                "nodeType": "ModifierInvocation",
                "src": "423:11:27"
              }
            ],
            "name": "initialize",
            "nameLocation": "322:10:27",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 14041,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14036,
                  "mutability": "mutable",
                  "name": "name_",
                  "nameLocation": "352:5:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14061,
                  "src": "338:19:27",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 14035,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "338:6:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14038,
                  "mutability": "mutable",
                  "name": "symbol_",
                  "nameLocation": "377:7:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14061,
                  "src": "363:21:27",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 14037,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "363:6:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14040,
                  "mutability": "mutable",
                  "name": "initialSupply",
                  "nameLocation": "398:13:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14061,
                  "src": "390:21:27",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 14039,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "390:7:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "332:83:27"
            },
            "returnParameters": {
              "id": 14044,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "435:0:27"
            },
            "scope": 14090,
            "src": "313:222:27",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              12977
            ],
            "body": {
              "id": 14074,
              "nodeType": "Block",
              "src": "606:103:27",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14070,
                        "name": "recipient",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14063,
                        "src": "686:9:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 14071,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14065,
                        "src": "697:6:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 14069,
                      "name": "_mint",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 21246,
                      "src": "680:5:27",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 14072,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "680:24:27",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "functionReturnParameters": 14068,
                  "id": 14073,
                  "nodeType": "Return",
                  "src": "673:31:27"
                }
              ]
            },
            "functionSelector": "40c10f19",
            "id": 14075,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "mint",
            "nameLocation": "548:4:27",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14067,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "597:8:27"
            },
            "parameters": {
              "id": 14066,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14063,
                  "mutability": "mutable",
                  "name": "recipient",
                  "nameLocation": "561:9:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14075,
                  "src": "553:17:27",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 14062,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "553:7:27",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14065,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "580:6:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14075,
                  "src": "572:14:27",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 14064,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "572:7:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "552:35:27"
            },
            "returnParameters": {
              "id": 14068,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "606:0:27"
            },
            "scope": 14090,
            "src": "539:170:27",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              12984
            ],
            "body": {
              "id": 14088,
              "nodeType": "Block",
              "src": "780:103:27",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14084,
                        "name": "recipient",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14077,
                        "src": "860:9:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 14085,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14079,
                        "src": "871:6:27",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 14083,
                      "name": "_burn",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 21318,
                      "src": "854:5:27",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 14086,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "854:24:27",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "functionReturnParameters": 14082,
                  "id": 14087,
                  "nodeType": "Return",
                  "src": "847:31:27"
                }
              ]
            },
            "functionSelector": "9dc29fac",
            "id": 14089,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "burn",
            "nameLocation": "722:4:27",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14081,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "771:8:27"
            },
            "parameters": {
              "id": 14080,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14077,
                  "mutability": "mutable",
                  "name": "recipient",
                  "nameLocation": "735:9:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14089,
                  "src": "727:17:27",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 14076,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "727:7:27",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14079,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "754:6:27",
                  "nodeType": "VariableDeclaration",
                  "scope": 14089,
                  "src": "746:14:27",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 14078,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "746:7:27",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "726:35:27"
            },
            "returnParameters": {
              "id": 14082,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "780:0:27"
            },
            "scope": 14090,
            "src": "713:170:27",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 14091,
        "src": "220:665:27",
        "usedErrors": []
      }
    ],
    "src": "38:848:27"
  },
  "bytecode": "608060405234801561001057600080fd5b50610efe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063b119490e146101f6578063dd62ed3e1461020957600080fd5b806370a082311461018c57806395d89b41146101b55780639dc29fac146101bd57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610242565b6040516101049190610d92565b60405180910390f35b61012061011b366004610cfb565b6102d4565b6040519015158152602001610104565b6035545b604051908152602001610104565b610120610150366004610cbf565b6102ec565b60405160128152602001610104565b610120610172366004610cfb565b610310565b61018a610185366004610cfb565b61034f565b005b61013461019a366004610c6a565b6001600160a01b031660009081526033602052604090205490565b6100f761035d565b61018a6101cb366004610cfb565b61036c565b6101206101de366004610cfb565b610376565b6101206101f1366004610cfb565b61040d565b61018a610204366004610d25565b61041b565b610134610217366004610c8c565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b60606036805461025190610e61565b80601f016020809104026020016040519081016040528092919081815260200182805461027d90610e61565b80156102ca5780601f1061029f576101008083540402835291602001916102ca565b820191906000526020600020905b8154815290600101906020018083116102ad57829003601f168201915b5050505050905090565b6000336102e2818585610509565b5060019392505050565b6000336102fa85828561062e565b6103058585856106ba565b506001949350505050565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091906102e2908290869061034a908790610e32565b610509565b6103598282610888565b5050565b60606037805461025190610e61565b6103598282610967565b3360008181526034602090815260408083206001600160a01b0387168452909152812054909190838110156104005760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6103058286868403610509565b6000336102e28185856106ba565b600054610100900460ff166104365760005460ff161561043a565b303b155b61049d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103f7565b600054610100900460ff161580156104bf576000805461ffff19166101011790555b606580546001600160a01b031916331790556104db8484610ab2565b6065546104f1906001600160a01b031683610888565b8015610503576000805461ff00191690555b50505050565b6001600160a01b03831661056b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103f7565b6001600160a01b0382166105cc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103f7565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03838116600090815260346020908152604080832093861683529290522054600019811461050357818110156106ad5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103f7565b6105038484848403610509565b6001600160a01b03831661071e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103f7565b6001600160a01b0382166107805760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103f7565b6001600160a01b038316600090815260336020526040902054818110156107f85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103f7565b6001600160a01b0380851660009081526033602052604080822085850390559185168152908120805484929061082f908490610e32565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161087b91815260200190565b60405180910390a3610503565b6001600160a01b0382166108de5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103f7565b80603560008282546108f09190610e32565b90915550506001600160a01b0382166000908152603360205260408120805483929061091d908490610e32565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166109c75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103f7565b6001600160a01b03821660009081526033602052604090205481811015610a3b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016103f7565b6001600160a01b0383166000908152603360205260408120838303905560358054849290610a6a908490610e4a565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610621565b505050565b600054610100900460ff16610ad95760405162461bcd60e51b81526004016103f790610de7565b6103598282600054610100900460ff16610b055760405162461bcd60e51b81526004016103f790610de7565b8151610b18906036906020850190610b28565b508051610aad9060379060208401905b828054610b3490610e61565b90600052602060002090601f016020900481019282610b565760008555610b9c565b82601f10610b6f57805160ff1916838001178555610b9c565b82800160010185558215610b9c579182015b82811115610b9c578251825591602001919060010190610b81565b50610ba8929150610bac565b5090565b5b80821115610ba85760008155600101610bad565b80356001600160a01b0381168114610bd857600080fd5b919050565b600082601f830112610bee57600080fd5b813567ffffffffffffffff80821115610c0957610c09610eb2565b604051601f8301601f19908116603f01168101908282118183101715610c3157610c31610eb2565b81604052838152866020858801011115610c4a57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c7c57600080fd5b610c8582610bc1565b9392505050565b60008060408385031215610c9f57600080fd5b610ca883610bc1565b9150610cb660208401610bc1565b90509250929050565b600080600060608486031215610cd457600080fd5b610cdd84610bc1565b9250610ceb60208501610bc1565b9150604084013590509250925092565b60008060408385031215610d0e57600080fd5b610d1783610bc1565b946020939093013593505050565b600080600060608486031215610d3a57600080fd5b833567ffffffffffffffff80821115610d5257600080fd5b610d5e87838801610bdd565b94506020860135915080821115610d7457600080fd5b50610d8186828701610bdd565b925050604084013590509250925092565b600060208083528351808285015260005b81811015610dbf57858101830151858201604001528201610da3565b81811115610dd1576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008219821115610e4557610e45610e9c565b500190565b600082821015610e5c57610e5c610e9c565b500390565b600181811c90821680610e7557607f821691505b60208210811415610e9657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220101d17fef051451a0a49c360421fd75feb63208f1f3f894288b089e7fec154b764736f6c63430008060033",
  "bytecodeSha1": "f04c26b60c7ff62d099b112da31ba130d1448300",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.6+commit.11564f7e"
  },
  "contractName": "TestCurrencyUUPS",
  "coverageMap": {
    "branches": {
      "21": {},
      "27": {},
      "72": {
        "ERC20Upgradeable.__ERC20_init": {
          "61": [
            2952,
            2965,
            true
          ]
        },
        "TestCurrencyUUPS.initialize": {
          "59": [
            2369,
            2382,
            true
          ],
          "60": [
            2369,
            2417,
            true
          ]
        }
      },
      "75": {
        "ERC20Upgradeable._approve": {
          "49": [
            10591,
            10610,
            true
          ],
          "50": [
            10669,
            10690,
            true
          ]
        },
        "ERC20Upgradeable._burn": {
          "57": [
            9544,
            9565,
            true
          ],
          "58": [
            9735,
            9759,
            true
          ]
        },
        "ERC20Upgradeable._mint": {
          "56": [
            8835,
            8856,
            true
          ]
        },
        "ERC20Upgradeable._spendAllowance": {
          "51": [
            11303,
            11340,
            false
          ],
          "52": [
            11364,
            11390,
            true
          ]
        },
        "ERC20Upgradeable._transfer": {
          "53": [
            7951,
            7969,
            true
          ],
          "54": [
            8029,
            8045,
            true
          ],
          "55": [
            8200,
            8221,
            true
          ]
        },
        "ERC20Upgradeable.decreaseAllowance": {
          "48": [
            7152,
            7187,
            true
          ]
        }
      },
      "76": {},
      "77": {},
      "83": {}
    },
    "statements": {
      "21": {},
      "27": {
        "TestCurrencyUUPS.burn": {
          "14": [
            847,
            878
          ]
        },
        "TestCurrencyUUPS.initialize": {
          "19": [
            441,
            462
          ],
          "20": [
            468,
            496
          ],
          "21": [
            502,
            530
          ]
        },
        "TestCurrencyUUPS.mint": {
          "12": [
            673,
            704
          ]
        }
      },
      "72": {
        "Initializable._isConstructor": {
          "18": [
            3101,
            3153
          ]
        }
      },
      "75": {
        "ERC20Upgradeable.__ERC20_init": {
          "45": [
            2218,
            2256
          ]
        },
        "ERC20Upgradeable.__ERC20_init_unchained": {
          "46": [
            2381,
            2394
          ],
          "47": [
            2404,
            2421
          ]
        },
        "ERC20Upgradeable._approve": {
          "22": [
            10583,
            10651
          ],
          "23": [
            10661,
            10729
          ],
          "24": [
            10740,
            10776
          ],
          "25": [
            10786,
            10823
          ]
        },
        "ERC20Upgradeable._burn": {
          "39": [
            9536,
            9603
          ],
          "40": [
            9727,
            9798
          ],
          "41": [
            9832,
            9876
          ],
          "42": [
            9896,
            9918
          ],
          "43": [
            9929,
            9971
          ],
          "44": [
            9982,
            10030
          ]
        },
        "ERC20Upgradeable._mint": {
          "35": [
            8827,
            8892
          ],
          "36": [
            8963,
            8985
          ],
          "37": [
            8995,
            9023
          ],
          "38": [
            9033,
            9075
          ]
        },
        "ERC20Upgradeable._spendAllowance": {
          "26": [
            11356,
            11424
          ],
          "27": [
            11466,
            11517
          ]
        },
        "ERC20Upgradeable._transfer": {
          "28": [
            7943,
            8011
          ],
          "29": [
            8021,
            8085
          ],
          "30": [
            8192,
            8264
          ],
          "31": [
            8298,
            8336
          ],
          "32": [
            8356,
            8379
          ],
          "33": [
            8390,
            8421
          ],
          "34": [
            8432,
            8469
          ]
        },
        "ERC20Upgradeable.allowance": {
          "3": [
            4421,
            4455
          ]
        },
        "ERC20Upgradeable.approve": {
          "6": [
            4907,
            4939
          ],
          "7": [
            4949,
            4960
          ]
        },
        "ERC20Upgradeable.balanceOf": {
          "2": [
            3838,
            3863
          ]
        },
        "ERC20Upgradeable.decimals": {
          "1": [
            3505,
            3514
          ]
        },
        "ERC20Upgradeable.decreaseAllowance": {
          "15": [
            7144,
            7229
          ],
          "16": [
            7263,
            7323
          ]
        },
        "ERC20Upgradeable.increaseAllowance": {
          "11": [
            6352,
            6418
          ]
        },
        "ERC20Upgradeable.name": {
          "4": [
            2572,
            2584
          ]
        },
        "ERC20Upgradeable.symbol": {
          "13": [
            2785,
            2799
          ]
        },
        "ERC20Upgradeable.totalSupply": {
          "0": [
            3661,
            3680
          ]
        },
        "ERC20Upgradeable.transfer": {
          "17": [
            4199,
            4227
          ]
        },
        "ERC20Upgradeable.transferFrom": {
          "8": [
            5712,
            5750
          ],
          "9": [
            5760,
            5787
          ],
          "10": [
            5797,
            5808
          ]
        }
      },
      "76": {},
      "77": {},
      "83": {
        "ContextUpgradeable._msgSender": {
          "5": [
            922,
            939
          ]
        }
      }
    }
  },
  "dependencies": [
    "ContextUpgradeable",
    "ERC20Upgradeable",
    "IERC20MetadataUpgradeable",
    "IERC20Upgradeable",
    "IMintableERC20",
    "Initializable"
  ],
  "deployedBytecode": "608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063b119490e146101f6578063dd62ed3e1461020957600080fd5b806370a082311461018c57806395d89b41146101b55780639dc29fac146101bd57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610242565b6040516101049190610d92565b60405180910390f35b61012061011b366004610cfb565b6102d4565b6040519015158152602001610104565b6035545b604051908152602001610104565b610120610150366004610cbf565b6102ec565b60405160128152602001610104565b610120610172366004610cfb565b610310565b61018a610185366004610cfb565b61034f565b005b61013461019a366004610c6a565b6001600160a01b031660009081526033602052604090205490565b6100f761035d565b61018a6101cb366004610cfb565b61036c565b6101206101de366004610cfb565b610376565b6101206101f1366004610cfb565b61040d565b61018a610204366004610d25565b61041b565b610134610217366004610c8c565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b60606036805461025190610e61565b80601f016020809104026020016040519081016040528092919081815260200182805461027d90610e61565b80156102ca5780601f1061029f576101008083540402835291602001916102ca565b820191906000526020600020905b8154815290600101906020018083116102ad57829003601f168201915b5050505050905090565b6000336102e2818585610509565b5060019392505050565b6000336102fa85828561062e565b6103058585856106ba565b506001949350505050565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091906102e2908290869061034a908790610e32565b610509565b6103598282610888565b5050565b60606037805461025190610e61565b6103598282610967565b3360008181526034602090815260408083206001600160a01b0387168452909152812054909190838110156104005760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6103058286868403610509565b6000336102e28185856106ba565b600054610100900460ff166104365760005460ff161561043a565b303b155b61049d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103f7565b600054610100900460ff161580156104bf576000805461ffff19166101011790555b606580546001600160a01b031916331790556104db8484610ab2565b6065546104f1906001600160a01b031683610888565b8015610503576000805461ff00191690555b50505050565b6001600160a01b03831661056b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103f7565b6001600160a01b0382166105cc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103f7565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03838116600090815260346020908152604080832093861683529290522054600019811461050357818110156106ad5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103f7565b6105038484848403610509565b6001600160a01b03831661071e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103f7565b6001600160a01b0382166107805760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103f7565b6001600160a01b038316600090815260336020526040902054818110156107f85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103f7565b6001600160a01b0380851660009081526033602052604080822085850390559185168152908120805484929061082f908490610e32565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161087b91815260200190565b60405180910390a3610503565b6001600160a01b0382166108de5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103f7565b80603560008282546108f09190610e32565b90915550506001600160a01b0382166000908152603360205260408120805483929061091d908490610e32565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166109c75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103f7565b6001600160a01b03821660009081526033602052604090205481811015610a3b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016103f7565b6001600160a01b0383166000908152603360205260408120838303905560358054849290610a6a908490610e4a565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610621565b505050565b600054610100900460ff16610ad95760405162461bcd60e51b81526004016103f790610de7565b6103598282600054610100900460ff16610b055760405162461bcd60e51b81526004016103f790610de7565b8151610b18906036906020850190610b28565b508051610aad9060379060208401905b828054610b3490610e61565b90600052602060002090601f016020900481019282610b565760008555610b9c565b82601f10610b6f57805160ff1916838001178555610b9c565b82800160010185558215610b9c579182015b82811115610b9c578251825591602001919060010190610b81565b50610ba8929150610bac565b5090565b5b80821115610ba85760008155600101610bad565b80356001600160a01b0381168114610bd857600080fd5b919050565b600082601f830112610bee57600080fd5b813567ffffffffffffffff80821115610c0957610c09610eb2565b604051601f8301601f19908116603f01168101908282118183101715610c3157610c31610eb2565b81604052838152866020858801011115610c4a57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c7c57600080fd5b610c8582610bc1565b9392505050565b60008060408385031215610c9f57600080fd5b610ca883610bc1565b9150610cb660208401610bc1565b90509250929050565b600080600060608486031215610cd457600080fd5b610cdd84610bc1565b9250610ceb60208501610bc1565b9150604084013590509250925092565b60008060408385031215610d0e57600080fd5b610d1783610bc1565b946020939093013593505050565b600080600060608486031215610d3a57600080fd5b833567ffffffffffffffff80821115610d5257600080fd5b610d5e87838801610bdd565b94506020860135915080821115610d7457600080fd5b50610d8186828701610bdd565b925050604084013590509250925092565b600060208083528351808285015260005b81811015610dbf57858101830151858201604001528201610da3565b81811115610dd1576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008219821115610e4557610e45610e9c565b500190565b600082821015610e5c57610e5c610e9c565b500390565b600181811c90821680610e7557607f821691505b60208210811415610e9657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220101d17fef051451a0a49c360421fd75feb63208f1f3f894288b089e7fec154b764736f6c63430008060033",
  "deployedSourceMap": "220:665:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2493:98:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4770:197;;;;;;:::i;:::-;;:::i;:::-;;;2745:14:114;;2738:22;2720:41;;2708:2;2693:18;4770:197:75;2675:92:114;3581:106:75;3668:12;;3581:106;;;8301:25:114;;;8289:2;8274:18;3581:106:75;8256:76:114;5529:286:75;;;;;;:::i;:::-;;:::i;3430:91::-;;;3512:2;8479:36:114;;8467:2;8452:18;3430:91:75;8434:87:114;6210:236:75;;;;;;:::i;:::-;;:::i;539:170:27:-;;;;;;:::i;:::-;;:::i;:::-;;3745:125:75;;;;;;:::i;:::-;-1:-1:-1;;;;;3845:18:75;3819:7;3845:18;;;:9;:18;;;;;;;3745:125;2704:102;;;:::i;713:170:27:-;;;;;;:::i;:::-;;:::i;6933:429:75:-;;;;;;:::i;:::-;;:::i;4066:189::-;;;;;;:::i;:::-;;:::i;313:222:27:-;;;;;;:::i;:::-;;:::i;4313:149:75:-;;;;;;:::i;:::-;-1:-1:-1;;;;;4428:18:75;;;4402:7;4428:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4313:149;2493:98;2547:13;2579:5;2572:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2493:98;:::o;4770:197::-;4853:4;929:10:83;4907:32:75;929:10:83;4923:7:75;4932:6;4907:8;:32::i;:::-;-1:-1:-1;4956:4:75;;4770:197;-1:-1:-1;;;4770:197:75:o;5529:286::-;5656:4;929:10:83;5712:38:75;5728:4;929:10:83;5743:6:75;5712:15;:38::i;:::-;5760:27;5770:4;5776:2;5780:6;5760:9;:27::i;:::-;-1:-1:-1;5804:4:75;;5529:286;-1:-1:-1;;;;5529:286:75:o;6210:236::-;929:10:83;6298:4:75;6377:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;6377:27:75;;;;;;;;;;6298:4;;929:10:83;6352:66:75;;929:10:83;;6377:27:75;;:40;;6407:10;;6377:40;:::i;:::-;6352:8;:66::i;539:170:27:-;680:24;686:9;697:6;680:5;:24::i;:::-;539:170;;:::o;2704:102:75:-;2760:13;2792:7;2785:14;;;;;:::i;713:170:27:-;854:24;860:9;871:6;854:5;:24::i;6933:429:75:-;929:10:83;7026:4:75;7107:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;7107:27:75;;;;;;;;;;7026:4;;929:10:83;7152:35:75;;;;7144:85;;;;-1:-1:-1;;;7144:85:75;;7591:2:114;7144:85:75;;;7573:21:114;7630:2;7610:18;;;7603:30;7669:34;7649:18;;;7642:62;-1:-1:-1;;;7720:18:114;;;7713:35;7765:19;;7144:85:75;;;;;;;;;7263:60;7272:5;7279:7;7307:15;7288:16;:34;7263:8;:60::i;4066:189::-;4145:4;929:10:83;4199:28:75;929:10:83;4216:2:75;4220:6;4199:9;:28::i;313:222:27:-;2369:13:72;;;;;;;:48;;2405:12;;;;2404:13;2369:48;;;3147:4;1476:19:82;:23;2385:16:72;2361:107;;;;-1:-1:-1;;;2361:107:72;;5551:2:114;2361:107:72;;;5533:21:114;5590:2;5570:18;;;5563:30;5629:34;5609:18;;;5602:62;-1:-1:-1;;;5680:18:114;;;5673:44;5734:19;;2361:107:72;5523:236:114;2361:107:72;2479:19;2502:13;;;;;;2501:14;2525:98;;;;2559:13;:20;;-1:-1:-1;;2593:19:72;;;;;2525:98;441:6:27::1;:21:::0;;-1:-1:-1;;;;;;441:21:27::1;929:10:83::0;441:21:27::1;::::0;;468:28:::1;481:5:::0;488:7;468:12:::1;:28::i;:::-;508:6;::::0;502:28:::1;::::0;-1:-1:-1;;;;;508:6:27::1;516:13:::0;502:5:::1;:28::i;:::-;2649:14:72::0;2645:66;;;2695:5;2679:21;;-1:-1:-1;;2679:21:72;;;2645:66;2080:637;313:222:27;;;:::o;10460:370:75:-;-1:-1:-1;;;;;10591:19:75;;10583:68;;;;-1:-1:-1;;;10583:68:75;;6774:2:114;10583:68:75;;;6756:21:114;6813:2;6793:18;;;6786:30;6852:34;6832:18;;;6825:62;-1:-1:-1;;;6903:18:114;;;6896:34;6947:19;;10583:68:75;6746:226:114;10583:68:75;-1:-1:-1;;;;;10669:21:75;;10661:68;;;;-1:-1:-1;;;10661:68:75;;4383:2:114;10661:68:75;;;4365:21:114;4422:2;4402:18;;;4395:30;4461:34;4441:18;;;4434:62;-1:-1:-1;;;4512:18:114;;;4505:32;4554:19;;10661:68:75;4355:224:114;10661:68:75;-1:-1:-1;;;;;10740:18:75;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10791:32;;8301:25:114;;;10791:32:75;;8274:18:114;10791:32:75;;;;;;;;10460:370;;;:::o;11107:441::-;-1:-1:-1;;;;;4428:18:75;;;11237:24;4428:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;11303:37:75;;11299:243;;11384:6;11364:16;:26;;11356:68;;;;-1:-1:-1;;;11356:68:75;;4786:2:114;11356:68:75;;;4768:21:114;4825:2;4805:18;;;4798:30;4864:31;4844:18;;;4837:59;4913:18;;11356:68:75;4758:179:114;11356:68:75;11466:51;11475:5;11482:7;11510:6;11491:16;:25;11466:8;:51::i;7825:651::-;-1:-1:-1;;;;;7951:18:75;;7943:68;;;;-1:-1:-1;;;7943:68:75;;6368:2:114;7943:68:75;;;6350:21:114;6407:2;6387:18;;;6380:30;6446:34;6426:18;;;6419:62;-1:-1:-1;;;6497:18:114;;;6490:35;6542:19;;7943:68:75;6340:227:114;7943:68:75;-1:-1:-1;;;;;8029:16:75;;8021:64;;;;-1:-1:-1;;;8021:64:75;;3576:2:114;8021:64:75;;;3558:21:114;3615:2;3595:18;;;3588:30;3654:34;3634:18;;;3627:62;-1:-1:-1;;;3705:18:114;;;3698:33;3748:19;;8021:64:75;3548:225:114;8021:64:75;-1:-1:-1;;;;;8167:15:75;;8145:19;8167:15;;;:9;:15;;;;;;8200:21;;;;8192:72;;;;-1:-1:-1;;;8192:72:75;;5144:2:114;8192:72:75;;;5126:21:114;5183:2;5163:18;;;5156:30;5222:34;5202:18;;;5195:62;-1:-1:-1;;;5273:18:114;;;5266:36;5319:19;;8192:72:75;5116:228:114;8192:72:75;-1:-1:-1;;;;;8298:15:75;;;;;;;:9;:15;;;;;;8316:20;;;8298:38;;8356:13;;;;;;;;:23;;8330:6;;8298:15;8356:23;;8330:6;;8356:23;:::i;:::-;;;;;;;;8410:2;-1:-1:-1;;;;;8395:26:75;8404:4;-1:-1:-1;;;;;8395:26:75;;8414:6;8395:26;;;;8301:25:114;;8289:2;8274:18;;8256:76;8395:26:75;;;;;;;;8432:37;9461:576;8752:389;-1:-1:-1;;;;;8835:21:75;;8827:65;;;;-1:-1:-1;;;8827:65:75;;7997:2:114;8827:65:75;;;7979:21:114;8036:2;8016:18;;;8009:30;8075:33;8055:18;;;8048:61;8126:18;;8827:65:75;7969:181:114;8827:65:75;8979:6;8963:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8995:18:75;;;;;;:9;:18;;;;;:28;;9017:6;;8995:18;:28;;9017:6;;8995:28;:::i;:::-;;;;-1:-1:-1;;9038:37:75;;8301:25:114;;;-1:-1:-1;;;;;9038:37:75;;;9055:1;;9038:37;;8289:2:114;8274:18;9038:37:75;;;;;;;539:170:27;;:::o;9461:576:75:-;-1:-1:-1;;;;;9544:21:75;;9536:67;;;;-1:-1:-1;;;9536:67:75;;5966:2:114;9536:67:75;;;5948:21:114;6005:2;5985:18;;;5978:30;6044:34;6024:18;;;6017:62;-1:-1:-1;;;6095:18:114;;;6088:31;6136:19;;9536:67:75;5938:223:114;9536:67:75;-1:-1:-1;;;;;9699:18:75;;9674:22;9699:18;;;:9;:18;;;;;;9735:24;;;;9727:71;;;;-1:-1:-1;;;9727:71:75;;3980:2:114;9727:71:75;;;3962:21:114;4019:2;3999:18;;;3992:30;4058:34;4038:18;;;4031:62;-1:-1:-1;;;4109:18:114;;;4102:32;4151:19;;9727:71:75;3952:224:114;9727:71:75;-1:-1:-1;;;;;9832:18:75;;;;;;:9;:18;;;;;9853:23;;;9832:44;;9896:12;:22;;9870:6;;9832:18;9896:22;;9870:6;;9896:22;:::i;:::-;;;;-1:-1:-1;;9934:37:75;;8301:25:114;;;9960:1:75;;-1:-1:-1;;;;;9934:37:75;;;;;8289:2:114;8274:18;9934:37:75;8256:76:114;9982:48:75;9526:511;9461:576;;:::o;2116:147::-;2952:13:72;;;;;;;2944:69;;;;-1:-1:-1;;;2944:69:72;;;;;;;:::i;:::-;2218:38:75::1;2241:5;2248:7;2952:13:72::0;;;;;;;2944:69;;;;-1:-1:-1;;;2944:69:72;;;;;;;:::i;:::-;2381:13:75;;::::1;::::0;:5:::1;::::0;:13:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;2404:17:75;;::::1;::::0;:7:::1;::::0;:17:::1;::::0;::::1;::::0;-1:-1:-1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:173:114;82:20;;-1:-1:-1;;;;;131:31:114;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:719::-;235:5;288:3;281:4;273:6;269:17;265:27;255:2;;306:1;303;296:12;255:2;342:6;329:20;368:18;405:2;401;398:10;395:2;;;411:18;;:::i;:::-;486:2;480:9;454:2;540:13;;-1:-1:-1;;536:22:114;;;560:2;532:31;528:40;516:53;;;584:18;;;604:22;;;581:46;578:2;;;630:18;;:::i;:::-;670:10;666:2;659:22;705:2;697:6;690:18;751:3;744:4;739:2;731:6;727:15;723:26;720:35;717:2;;;768:1;765;758:12;717:2;832;825:4;817:6;813:17;806:4;798:6;794:17;781:54;879:1;872:4;867:2;859:6;855:15;851:26;844:37;899:6;890:15;;;;;;245:666;;;;:::o;916:186::-;975:6;1028:2;1016:9;1007:7;1003:23;999:32;996:2;;;1044:1;1041;1034:12;996:2;1067:29;1086:9;1067:29;:::i;:::-;1057:39;986:116;-1:-1:-1;;;986:116:114:o;1107:260::-;1175:6;1183;1236:2;1224:9;1215:7;1211:23;1207:32;1204:2;;;1252:1;1249;1242:12;1204:2;1275:29;1294:9;1275:29;:::i;:::-;1265:39;;1323:38;1357:2;1346:9;1342:18;1323:38;:::i;:::-;1313:48;;1194:173;;;;;:::o;1372:328::-;1449:6;1457;1465;1518:2;1506:9;1497:7;1493:23;1489:32;1486:2;;;1534:1;1531;1524:12;1486:2;1557:29;1576:9;1557:29;:::i;:::-;1547:39;;1605:38;1639:2;1628:9;1624:18;1605:38;:::i;:::-;1595:48;;1690:2;1679:9;1675:18;1662:32;1652:42;;1476:224;;;;;:::o;1705:254::-;1773:6;1781;1834:2;1822:9;1813:7;1809:23;1805:32;1802:2;;;1850:1;1847;1840:12;1802:2;1873:29;1892:9;1873:29;:::i;:::-;1863:39;1949:2;1934:18;;;;1921:32;;-1:-1:-1;;;1792:167:114:o;1964:611::-;2061:6;2069;2077;2130:2;2118:9;2109:7;2105:23;2101:32;2098:2;;;2146:1;2143;2136:12;2098:2;2186:9;2173:23;2215:18;2256:2;2248:6;2245:14;2242:2;;;2272:1;2269;2262:12;2242:2;2295:50;2337:7;2328:6;2317:9;2313:22;2295:50;:::i;:::-;2285:60;;2398:2;2387:9;2383:18;2370:32;2354:48;;2427:2;2417:8;2414:16;2411:2;;;2443:1;2440;2433:12;2411:2;;2466:52;2510:7;2499:8;2488:9;2484:24;2466:52;:::i;:::-;2456:62;;;2565:2;2554:9;2550:18;2537:32;2527:42;;2088:487;;;;;:::o;2772:597::-;2884:4;2913:2;2942;2931:9;2924:21;2974:6;2968:13;3017:6;3012:2;3001:9;2997:18;2990:34;3042:1;3052:140;3066:6;3063:1;3060:13;3052:140;;;3161:14;;;3157:23;;3151:30;3127:17;;;3146:2;3123:26;3116:66;3081:10;;3052:140;;;3210:6;3207:1;3204:13;3201:2;;;3280:1;3275:2;3266:6;3255:9;3251:22;3247:31;3240:42;3201:2;-1:-1:-1;3353:2:114;3332:15;-1:-1:-1;;3328:29:114;3313:45;;;;3360:2;3309:54;;2893:476;-1:-1:-1;;;2893:476:114:o;6977:407::-;7179:2;7161:21;;;7218:2;7198:18;;;7191:30;7257:34;7252:2;7237:18;;7230:62;-1:-1:-1;;;7323:2:114;7308:18;;7301:41;7374:3;7359:19;;7151:233::o;8526:128::-;8566:3;8597:1;8593:6;8590:1;8587:13;8584:2;;;8603:18;;:::i;:::-;-1:-1:-1;8639:9:114;;8574:80::o;8659:125::-;8699:4;8727:1;8724;8721:8;8718:2;;;8732:18;;:::i;:::-;-1:-1:-1;8769:9:114;;8708:76::o;8789:380::-;8868:1;8864:12;;;;8911;;;8932:2;;8986:4;8978:6;8974:17;8964:27;;8932:2;9039;9031:6;9028:14;9008:18;9005:38;9002:2;;;9085:10;9080:3;9076:20;9073:1;9066:31;9120:4;9117:1;9110:15;9148:4;9145:1;9138:15;9002:2;;8844:325;;;:::o;9174:127::-;9235:10;9230:3;9226:20;9223:1;9216:31;9266:4;9263:1;9256:15;9290:4;9287:1;9280:15;9306:127;9367:10;9362:3;9358:20;9355:1;9348:31;9398:4;9395:1;9388:15;9422:4;9419:1;9412: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": [
    220,
    885
  ],
  "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xEA JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x70A08231 GT PUSH2 0x8C JUMPI DUP1 PUSH4 0xA457C2D7 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xA457C2D7 EQ PUSH2 0x1D0 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x1E3 JUMPI DUP1 PUSH4 0xB119490E EQ PUSH2 0x1F6 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x209 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x70A08231 EQ PUSH2 0x18C JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x1B5 JUMPI DUP1 PUSH4 0x9DC29FAC EQ PUSH2 0x1BD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x23B872DD GT PUSH2 0xC8 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x142 JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x155 JUMPI DUP1 PUSH4 0x39509351 EQ PUSH2 0x164 JUMPI DUP1 PUSH4 0x40C10F19 EQ PUSH2 0x177 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0xEF JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x10D JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x130 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF7 PUSH2 0x242 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x104 SWAP2 SWAP1 PUSH2 0xD92 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x120 PUSH2 0x11B CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x2D4 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x104 JUMP JUMPDEST PUSH1 0x35 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x104 JUMP JUMPDEST PUSH2 0x120 PUSH2 0x150 CALLDATASIZE PUSH1 0x4 PUSH2 0xCBF JUMP JUMPDEST PUSH2 0x2EC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x12 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x104 JUMP JUMPDEST PUSH2 0x120 PUSH2 0x172 CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x310 JUMP JUMPDEST PUSH2 0x18A PUSH2 0x185 CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x34F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x134 PUSH2 0x19A CALLDATASIZE PUSH1 0x4 PUSH2 0xC6A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH2 0xF7 PUSH2 0x35D JUMP JUMPDEST PUSH2 0x18A PUSH2 0x1CB CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x36C JUMP JUMPDEST PUSH2 0x120 PUSH2 0x1DE CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x376 JUMP JUMPDEST PUSH2 0x120 PUSH2 0x1F1 CALLDATASIZE PUSH1 0x4 PUSH2 0xCFB JUMP JUMPDEST PUSH2 0x40D JUMP JUMPDEST PUSH2 0x18A PUSH2 0x204 CALLDATASIZE PUSH1 0x4 PUSH2 0xD25 JUMP JUMPDEST PUSH2 0x41B JUMP JUMPDEST PUSH2 0x134 PUSH2 0x217 CALLDATASIZE PUSH1 0x4 PUSH2 0xC8C JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x34 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 0x36 DUP1 SLOAD PUSH2 0x251 SWAP1 PUSH2 0xE61 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 0x27D SWAP1 PUSH2 0xE61 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2CA JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x29F JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x2CA 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 0x2AD 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 0x2E2 DUP2 DUP6 DUP6 PUSH2 0x509 JUMP JUMPDEST POP PUSH1 0x1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x2FA DUP6 DUP3 DUP6 PUSH2 0x62E JUMP JUMPDEST PUSH2 0x305 DUP6 DUP6 DUP6 PUSH2 0x6BA JUMP JUMPDEST POP PUSH1 0x1 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x34 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 0x2E2 SWAP1 DUP3 SWAP1 DUP7 SWAP1 PUSH2 0x34A SWAP1 DUP8 SWAP1 PUSH2 0xE32 JUMP JUMPDEST PUSH2 0x509 JUMP JUMPDEST PUSH2 0x359 DUP3 DUP3 PUSH2 0x888 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x37 DUP1 SLOAD PUSH2 0x251 SWAP1 PUSH2 0xE61 JUMP JUMPDEST PUSH2 0x359 DUP3 DUP3 PUSH2 0x967 JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x34 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 0x400 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 0x305 DUP3 DUP7 DUP7 DUP5 SUB PUSH2 0x509 JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x2E2 DUP2 DUP6 DUP6 PUSH2 0x6BA JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH2 0x100 SWAP1 DIV PUSH1 0xFF AND PUSH2 0x436 JUMPI PUSH1 0x0 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x43A JUMP JUMPDEST ADDRESS EXTCODESIZE ISZERO JUMPDEST PUSH2 0x49D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x2E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x496E697469616C697A61626C653A20636F6E747261637420697320616C726561 PUSH1 0x44 DUP3 ADD MSTORE PUSH14 0x191E481A5B9A5D1A585B1A5E9959 PUSH1 0x92 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x3F7 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH2 0x100 SWAP1 DIV PUSH1 0xFF AND ISZERO DUP1 ISZERO PUSH2 0x4BF JUMPI PUSH1 0x0 DUP1 SLOAD PUSH2 0xFFFF NOT AND PUSH2 0x101 OR SWAP1 SSTORE JUMPDEST PUSH1 0x65 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE PUSH2 0x4DB DUP5 DUP5 PUSH2 0xAB2 JUMP JUMPDEST PUSH1 0x65 SLOAD PUSH2 0x4F1 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH2 0x888 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x503 JUMPI PUSH1 0x0 DUP1 SLOAD PUSH2 0xFF00 NOT AND SWAP1 SSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x56B 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x5CC 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 DUP2 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x34 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 0x34 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 0x503 JUMPI DUP2 DUP2 LT ISZERO PUSH2 0x6AD 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 0x3F7 JUMP JUMPDEST PUSH2 0x503 DUP5 DUP5 DUP5 DUP5 SUB PUSH2 0x509 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x71E 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x780 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 LT ISZERO PUSH2 0x7F8 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 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 0x82F SWAP1 DUP5 SWAP1 PUSH2 0xE32 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 0x87B SWAP2 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x503 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x8DE 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 0x3F7 JUMP JUMPDEST DUP1 PUSH1 0x35 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x8F0 SWAP2 SWAP1 PUSH2 0xE32 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD DUP4 SWAP3 SWAP1 PUSH2 0x91D SWAP1 DUP5 SWAP1 PUSH2 0xE32 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 0x9C7 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 LT ISZERO PUSH2 0xA3B 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 0x3F7 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x33 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP4 DUP4 SUB SWAP1 SSTORE PUSH1 0x35 DUP1 SLOAD DUP5 SWAP3 SWAP1 PUSH2 0xA6A SWAP1 DUP5 SWAP1 PUSH2 0xE4A 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 0x621 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH2 0x100 SWAP1 DIV PUSH1 0xFF AND PUSH2 0xAD9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F7 SWAP1 PUSH2 0xDE7 JUMP JUMPDEST PUSH2 0x359 DUP3 DUP3 PUSH1 0x0 SLOAD PUSH2 0x100 SWAP1 DIV PUSH1 0xFF AND PUSH2 0xB05 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F7 SWAP1 PUSH2 0xDE7 JUMP JUMPDEST DUP2 MLOAD PUSH2 0xB18 SWAP1 PUSH1 0x36 SWAP1 PUSH1 0x20 DUP6 ADD SWAP1 PUSH2 0xB28 JUMP JUMPDEST POP DUP1 MLOAD PUSH2 0xAAD SWAP1 PUSH1 0x37 SWAP1 PUSH1 0x20 DUP5 ADD SWAP1 JUMPDEST DUP3 DUP1 SLOAD PUSH2 0xB34 SWAP1 PUSH2 0xE61 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0xB56 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0xB9C JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0xB6F JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0xB9C JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0xB9C JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0xB9C JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0xB81 JUMP JUMPDEST POP PUSH2 0xBA8 SWAP3 SWAP2 POP PUSH2 0xBAC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xBA8 JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xBAD JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xBD8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xBEE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xC09 JUMPI PUSH2 0xC09 PUSH2 0xEB2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0xC31 JUMPI PUSH2 0xC31 PUSH2 0xEB2 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0xC4A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xC7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC85 DUP3 PUSH2 0xBC1 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xC9F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xCA8 DUP4 PUSH2 0xBC1 JUMP JUMPDEST SWAP2 POP PUSH2 0xCB6 PUSH1 0x20 DUP5 ADD PUSH2 0xBC1 JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xCD4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xCDD DUP5 PUSH2 0xBC1 JUMP JUMPDEST SWAP3 POP PUSH2 0xCEB PUSH1 0x20 DUP6 ADD PUSH2 0xBC1 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 0xD0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD17 DUP4 PUSH2 0xBC1 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xD3A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xD52 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xD5E DUP8 DUP4 DUP9 ADD PUSH2 0xBDD JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xD74 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD81 DUP7 DUP3 DUP8 ADD PUSH2 0xBDD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE DUP4 MLOAD DUP1 DUP3 DUP6 ADD MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xDBF JUMPI DUP6 DUP2 ADD DUP4 ADD MLOAD DUP6 DUP3 ADD PUSH1 0x40 ADD MSTORE DUP3 ADD PUSH2 0xDA3 JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0xDD1 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 0x20 DUP1 DUP3 MSTORE PUSH1 0x2B SWAP1 DUP3 ADD MSTORE PUSH32 0x496E697469616C697A61626C653A20636F6E7472616374206973206E6F742069 PUSH1 0x40 DUP3 ADD MSTORE PUSH11 0x6E697469616C697A696E67 PUSH1 0xA8 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 NOT DUP3 GT ISZERO PUSH2 0xE45 JUMPI PUSH2 0xE45 PUSH2 0xE9C JUMP JUMPDEST POP ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 LT ISZERO PUSH2 0xE5C JUMPI PUSH2 0xE5C PUSH2 0xE9C JUMP JUMPDEST POP SUB SWAP1 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xE75 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0xE96 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 JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 LT SAR OR INVALID CREATE MLOAD GASLIMIT BYTE EXP 0x49 0xC3 PUSH1 0x42 0x1F 0xD7 0x5F 0xEB PUSH4 0x208F1F3F DUP10 TIMESTAMP DUP9 0xB0 DUP10 0xE7 INVALID 0xC1 SLOAD 0xB7 PUSH5 0x736F6C6343 STOP ADDMOD MOD STOP CALLER ",
  "pcMap": {
    "0": {
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x80"
    },
    "2": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x40"
    },
    "4": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "MSTORE",
      "path": "27"
    },
    "5": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "CALLVALUE",
      "path": "27"
    },
    "6": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "7": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "ISZERO",
      "path": "27"
    },
    "8": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x10"
    },
    "11": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "12": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "14": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "15": {
      "dev": "Cannot send ether to nonpayable function",
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "REVERT",
      "path": "27"
    },
    "16": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "17": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "POP",
      "path": "27"
    },
    "18": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x4"
    },
    "20": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "CALLDATASIZE",
      "path": "27"
    },
    "21": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "LT",
      "path": "27"
    },
    "22": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xEA"
    },
    "25": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "26": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "28": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "CALLDATALOAD",
      "path": "27"
    },
    "29": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0xE0"
    },
    "31": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "SHR",
      "path": "27"
    },
    "32": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "33": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x70A08231"
    },
    "38": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "GT",
      "path": "27"
    },
    "39": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x8C"
    },
    "42": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "43": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "44": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0xA457C2D7"
    },
    "49": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "GT",
      "path": "27"
    },
    "50": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x66"
    },
    "53": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "54": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "55": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0xA457C2D7"
    },
    "60": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "61": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1D0"
    },
    "64": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "65": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "66": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0xA9059CBB"
    },
    "71": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "72": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1E3"
    },
    "75": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "76": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "77": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0xB119490E"
    },
    "82": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "83": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1F6"
    },
    "86": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "87": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "88": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0xDD62ED3E"
    },
    "93": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "94": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x209"
    },
    "97": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "98": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "100": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "101": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "REVERT",
      "path": "27"
    },
    "102": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "103": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "104": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x70A08231"
    },
    "109": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "110": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x18C"
    },
    "113": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "114": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "115": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x95D89B41"
    },
    "120": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "121": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1B5"
    },
    "124": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "125": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "126": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x9DC29FAC"
    },
    "131": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "132": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1BD"
    },
    "135": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "136": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "138": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "139": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "REVERT",
      "path": "27"
    },
    "140": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "141": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "142": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x23B872DD"
    },
    "147": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "GT",
      "path": "27"
    },
    "148": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xC8"
    },
    "151": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "152": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "153": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x23B872DD"
    },
    "158": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "159": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x142"
    },
    "162": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "163": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "164": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x313CE567"
    },
    "169": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "170": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x155"
    },
    "173": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "174": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "175": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x39509351"
    },
    "180": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "181": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x164"
    },
    "184": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "185": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "186": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x40C10F19"
    },
    "191": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "192": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x177"
    },
    "195": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "196": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "198": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "199": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "REVERT",
      "path": "27"
    },
    "200": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "201": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "202": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x6FDDE03"
    },
    "207": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "208": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xEF"
    },
    "211": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "212": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "213": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x95EA7B3"
    },
    "218": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "219": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x10D"
    },
    "222": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "223": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "224": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH4",
      "path": "27",
      "value": "0x18160DDD"
    },
    "229": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "EQ",
      "path": "27"
    },
    "230": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x130"
    },
    "233": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPI",
      "path": "27"
    },
    "234": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "235": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x0"
    },
    "237": {
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "DUP1",
      "path": "27"
    },
    "238": {
      "first_revert": true,
      "fn": null,
      "offset": [
        220,
        885
      ],
      "op": "REVERT",
      "path": "27"
    },
    "239": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "240": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xF7"
    },
    "243": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x242"
    },
    "246": {
      "fn": "ERC20Upgradeable.name",
      "jump": "i",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMP",
      "path": "75"
    },
    "247": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "248": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "250": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "251": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x104"
    },
    "254": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "255": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "256": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xD92"
    },
    "259": {
      "fn": "ERC20Upgradeable.name",
      "jump": "i",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMP",
      "path": "75"
    },
    "260": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "261": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "263": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "264": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "DUP1",
      "path": "75"
    },
    "265": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "266": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SUB",
      "path": "75"
    },
    "267": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "268": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "RETURN",
      "path": "75"
    },
    "269": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "270": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x120"
    },
    "273": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x11B"
    },
    "276": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "277": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "279": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xCFB"
    },
    "282": {
      "fn": "ERC20Upgradeable.approve",
      "jump": "i",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMP",
      "path": "75"
    },
    "283": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "284": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2D4"
    },
    "287": {
      "fn": "ERC20Upgradeable.approve",
      "jump": "i",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMP",
      "path": "75"
    },
    "288": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "289": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "291": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "292": {
      "op": "SWAP1"
    },
    "293": {
      "op": "ISZERO"
    },
    "294": {
      "op": "ISZERO"
    },
    "295": {
      "op": "DUP2"
    },
    "296": {
      "op": "MSTORE"
    },
    "297": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "299": {
      "op": "ADD"
    },
    "300": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x104"
    },
    "303": {
      "op": "JUMP"
    },
    "304": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3581,
        3687
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "305": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3668,
        3680
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 0,
      "value": "0x35"
    },
    "307": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3668,
        3680
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "308": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3581,
        3687
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "309": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3581,
        3687
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "311": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3581,
        3687
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "312": {
      "op": "SWAP1"
    },
    "313": {
      "op": "DUP2"
    },
    "314": {
      "op": "MSTORE"
    },
    "315": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "317": {
      "op": "ADD"
    },
    "318": {
      "fn": "ERC20Upgradeable.totalSupply",
      "offset": [
        3581,
        3687
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x104"
    },
    "321": {
      "op": "JUMP"
    },
    "322": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "323": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x120"
    },
    "326": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x150"
    },
    "329": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "330": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "332": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xCBF"
    },
    "335": {
      "fn": "ERC20Upgradeable.transferFrom",
      "jump": "i",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMP",
      "path": "75"
    },
    "336": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "337": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2EC"
    },
    "340": {
      "fn": "ERC20Upgradeable.transferFrom",
      "jump": "i",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMP",
      "path": "75"
    },
    "341": {
      "fn": "ERC20Upgradeable.decimals",
      "offset": [
        3430,
        3521
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "342": {
      "fn": "ERC20Upgradeable.decimals",
      "offset": [
        3430,
        3521
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "344": {
      "fn": "ERC20Upgradeable.decimals",
      "offset": [
        3430,
        3521
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "345": {
      "fn": "ERC20Upgradeable.decimals",
      "offset": [
        3512,
        3514
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 1,
      "value": "0x12"
    },
    "347": {
      "op": "DUP2"
    },
    "348": {
      "op": "MSTORE"
    },
    "349": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "351": {
      "op": "ADD"
    },
    "352": {
      "fn": "ERC20Upgradeable.decimals",
      "offset": [
        3430,
        3521
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x104"
    },
    "355": {
      "op": "JUMP"
    },
    "356": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "357": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x120"
    },
    "360": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x172"
    },
    "363": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "364": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "366": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xCFB"
    },
    "369": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "jump": "i",
      "offset": [
        6210,
        6446
      ],
      "op": "JUMP",
      "path": "75"
    },
    "370": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "371": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x310"
    },
    "374": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "jump": "i",
      "offset": [
        6210,
        6446
      ],
      "op": "JUMP",
      "path": "75"
    },
    "375": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "376": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x18A"
    },
    "379": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x185"
    },
    "382": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "CALLDATASIZE",
      "path": "27"
    },
    "383": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x4"
    },
    "385": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xCFB"
    },
    "388": {
      "fn": "TestCurrencyUUPS.mint",
      "jump": "i",
      "offset": [
        539,
        709
      ],
      "op": "JUMP",
      "path": "27"
    },
    "389": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "390": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x34F"
    },
    "393": {
      "fn": "TestCurrencyUUPS.mint",
      "jump": "i",
      "offset": [
        539,
        709
      ],
      "op": "JUMP",
      "path": "27"
    },
    "394": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "395": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "STOP",
      "path": "27"
    },
    "396": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "397": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x134"
    },
    "400": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x19A"
    },
    "403": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "404": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "406": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xC6A"
    },
    "409": {
      "fn": "ERC20Upgradeable.balanceOf",
      "jump": "i",
      "offset": [
        3745,
        3870
      ],
      "op": "JUMP",
      "path": "75"
    },
    "410": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "411": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "413": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "415": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "417": {
      "op": "SHL"
    },
    "418": {
      "op": "SUB"
    },
    "419": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "AND",
      "path": "75",
      "statement": 2
    },
    "420": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3819,
        3826
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "422": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "423": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "DUP2",
      "path": "75"
    },
    "424": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "425": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3854
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "427": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "429": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "430": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "432": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "433": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "434": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "435": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3845,
        3863
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "436": {
      "fn": "ERC20Upgradeable.balanceOf",
      "offset": [
        3745,
        3870
      ],
      "op": "JUMP",
      "path": "75"
    },
    "437": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2704,
        2806
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "438": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2704,
        2806
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xF7"
    },
    "441": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2704,
        2806
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x35D"
    },
    "444": {
      "fn": "ERC20Upgradeable.symbol",
      "jump": "i",
      "offset": [
        2704,
        2806
      ],
      "op": "JUMP",
      "path": "75"
    },
    "445": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "446": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x18A"
    },
    "449": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x1CB"
    },
    "452": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "CALLDATASIZE",
      "path": "27"
    },
    "453": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x4"
    },
    "455": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xCFB"
    },
    "458": {
      "fn": "TestCurrencyUUPS.burn",
      "jump": "i",
      "offset": [
        713,
        883
      ],
      "op": "JUMP",
      "path": "27"
    },
    "459": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "460": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x36C"
    },
    "463": {
      "fn": "TestCurrencyUUPS.burn",
      "jump": "i",
      "offset": [
        713,
        883
      ],
      "op": "JUMP",
      "path": "27"
    },
    "464": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "465": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x120"
    },
    "468": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x1DE"
    },
    "471": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "472": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "474": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xCFB"
    },
    "477": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "jump": "i",
      "offset": [
        6933,
        7362
      ],
      "op": "JUMP",
      "path": "75"
    },
    "478": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "479": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x376"
    },
    "482": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "jump": "i",
      "offset": [
        6933,
        7362
      ],
      "op": "JUMP",
      "path": "75"
    },
    "483": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "484": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x120"
    },
    "487": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x1F1"
    },
    "490": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "491": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "493": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xCFB"
    },
    "496": {
      "fn": "ERC20Upgradeable.transfer",
      "jump": "i",
      "offset": [
        4066,
        4255
      ],
      "op": "JUMP",
      "path": "75"
    },
    "497": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "498": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x40D"
    },
    "501": {
      "fn": "ERC20Upgradeable.transfer",
      "jump": "i",
      "offset": [
        4066,
        4255
      ],
      "op": "JUMP",
      "path": "75"
    },
    "502": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "503": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x18A"
    },
    "506": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x204"
    },
    "509": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "CALLDATASIZE",
      "path": "27"
    },
    "510": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "PUSH1",
      "path": "27",
      "value": "0x4"
    },
    "512": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xD25"
    },
    "515": {
      "fn": "TestCurrencyUUPS.initialize",
      "jump": "i",
      "offset": [
        313,
        535
      ],
      "op": "JUMP",
      "path": "27"
    },
    "516": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "517": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x41B"
    },
    "520": {
      "fn": "TestCurrencyUUPS.initialize",
      "jump": "i",
      "offset": [
        313,
        535
      ],
      "op": "JUMP",
      "path": "27"
    },
    "521": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "522": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x134"
    },
    "525": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x217"
    },
    "528": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "CALLDATASIZE",
      "path": "75"
    },
    "529": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "531": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xC8C"
    },
    "534": {
      "fn": "ERC20Upgradeable.allowance",
      "jump": "i",
      "offset": [
        4313,
        4462
      ],
      "op": "JUMP",
      "path": "75"
    },
    "535": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "536": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "538": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "540": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "542": {
      "op": "SHL"
    },
    "543": {
      "op": "SUB"
    },
    "544": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "SWAP2",
      "path": "75",
      "statement": 3
    },
    "545": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP3",
      "path": "75"
    },
    "546": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "AND",
      "path": "75"
    },
    "547": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4402,
        4409
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "549": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "550": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP2",
      "path": "75"
    },
    "551": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "552": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4439
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x34"
    },
    "554": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "556": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "557": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP2",
      "path": "75"
    },
    "558": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "559": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "561": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP1",
      "path": "75"
    },
    "562": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP4",
      "path": "75"
    },
    "563": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "564": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP4",
      "path": "75"
    },
    "565": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "566": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP5",
      "path": "75"
    },
    "567": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "AND",
      "path": "75"
    },
    "568": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "DUP3",
      "path": "75"
    },
    "569": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "570": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "571": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "572": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "573": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "574": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "575": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "576": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "577": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4313,
        4462
      ],
      "op": "JUMP",
      "path": "75"
    },
    "578": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "579": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2547,
        2560
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x60"
    },
    "581": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2579,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 4,
      "value": "0x36"
    },
    "583": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "584": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "585": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x251"
    },
    "588": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "589": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE61"
    },
    "592": {
      "fn": "ERC20Upgradeable.name",
      "jump": "i",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMP",
      "path": "75"
    },
    "593": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "594": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "595": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x1F"
    },
    "597": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "598": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "600": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "601": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "602": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DIV",
      "path": "75"
    },
    "603": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MUL",
      "path": "75"
    },
    "604": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "606": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "607": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "609": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "610": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "611": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP2",
      "path": "75"
    },
    "612": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "613": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "615": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "616": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "617": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "618": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "619": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "620": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP2",
      "path": "75"
    },
    "621": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP2",
      "path": "75"
    },
    "622": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "623": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "625": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "626": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP3",
      "path": "75"
    },
    "627": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "628": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "629": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x27D"
    },
    "632": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "633": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE61"
    },
    "636": {
      "fn": "ERC20Upgradeable.name",
      "jump": "i",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMP",
      "path": "75"
    },
    "637": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "638": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "639": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ISZERO",
      "path": "75"
    },
    "640": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2CA"
    },
    "643": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "644": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "645": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x1F"
    },
    "647": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "LT",
      "path": "75"
    },
    "648": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x29F"
    },
    "651": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "652": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x100"
    },
    "655": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "656": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP4",
      "path": "75"
    },
    "657": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "658": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DIV",
      "path": "75"
    },
    "659": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MUL",
      "path": "75"
    },
    "660": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP4",
      "path": "75"
    },
    "661": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "662": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "663": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "665": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "666": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "667": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2CA"
    },
    "670": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMP",
      "path": "75"
    },
    "671": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "672": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP3",
      "path": "75"
    },
    "673": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "674": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "675": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "676": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "678": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "679": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "681": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "683": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "684": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "685": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "686": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP2",
      "path": "75"
    },
    "687": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "688": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP2",
      "path": "75"
    },
    "689": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "690": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "691": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x1"
    },
    "693": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "694": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "695": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "697": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "698": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP1",
      "path": "75"
    },
    "699": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP4",
      "path": "75"
    },
    "700": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "GT",
      "path": "75"
    },
    "701": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2AD"
    },
    "704": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "705": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP3",
      "path": "75"
    },
    "706": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "707": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SUB",
      "path": "75"
    },
    "708": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x1F"
    },
    "710": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "AND",
      "path": "75"
    },
    "711": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "DUP3",
      "path": "75"
    },
    "712": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "ADD",
      "path": "75"
    },
    "713": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "714": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "715": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "716": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "717": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "718": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "719": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "720": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "721": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2572,
        2584
      ],
      "op": "POP",
      "path": "75"
    },
    "722": {
      "fn": "ERC20Upgradeable.name",
      "offset": [
        2493,
        2591
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "723": {
      "fn": "ERC20Upgradeable.name",
      "jump": "o",
      "offset": [
        2493,
        2591
      ],
      "op": "JUMP",
      "path": "75"
    },
    "724": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "725": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4853,
        4857
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "727": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83",
      "statement": 5
    },
    "728": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4907,
        4939
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 6,
      "value": "0x2E2"
    },
    "731": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "DUP2",
      "path": "83"
    },
    "732": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4923,
        4930
      ],
      "op": "DUP6",
      "path": "75"
    },
    "733": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4932,
        4938
      ],
      "op": "DUP6",
      "path": "75"
    },
    "734": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4907,
        4915
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x509"
    },
    "737": {
      "fn": "ERC20Upgradeable.approve",
      "jump": "i",
      "offset": [
        4907,
        4939
      ],
      "op": "JUMP",
      "path": "75"
    },
    "738": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4907,
        4939
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "739": {
      "op": "POP"
    },
    "740": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4956,
        4960
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 7,
      "value": "0x1"
    },
    "742": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4956,
        4960
      ],
      "op": "SWAP4",
      "path": "75"
    },
    "743": {
      "fn": "ERC20Upgradeable.approve",
      "offset": [
        4770,
        4967
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "744": {
      "op": "POP"
    },
    "745": {
      "op": "POP"
    },
    "746": {
      "op": "POP"
    },
    "747": {
      "fn": "ERC20Upgradeable.approve",
      "jump": "o",
      "offset": [
        4770,
        4967
      ],
      "op": "JUMP",
      "path": "75"
    },
    "748": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "749": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5656,
        5660
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "751": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83"
    },
    "752": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5712,
        5750
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 8,
      "value": "0x2FA"
    },
    "755": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5728,
        5732
      ],
      "op": "DUP6",
      "path": "75"
    },
    "756": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "DUP3",
      "path": "83"
    },
    "757": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5743,
        5749
      ],
      "op": "DUP6",
      "path": "75"
    },
    "758": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5712,
        5727
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x62E"
    },
    "761": {
      "fn": "ERC20Upgradeable.transferFrom",
      "jump": "i",
      "offset": [
        5712,
        5750
      ],
      "op": "JUMP",
      "path": "75"
    },
    "762": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5712,
        5750
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "763": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5760,
        5787
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 9,
      "value": "0x305"
    },
    "766": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5770,
        5774
      ],
      "op": "DUP6",
      "path": "75"
    },
    "767": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5776,
        5778
      ],
      "op": "DUP6",
      "path": "75"
    },
    "768": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5780,
        5786
      ],
      "op": "DUP6",
      "path": "75"
    },
    "769": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5760,
        5769
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x6BA"
    },
    "772": {
      "fn": "ERC20Upgradeable.transferFrom",
      "jump": "i",
      "offset": [
        5760,
        5787
      ],
      "op": "JUMP",
      "path": "75"
    },
    "773": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5760,
        5787
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "774": {
      "op": "POP"
    },
    "775": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5804,
        5808
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 10,
      "value": "0x1"
    },
    "777": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5804,
        5808
      ],
      "op": "SWAP5",
      "path": "75"
    },
    "778": {
      "fn": "ERC20Upgradeable.transferFrom",
      "offset": [
        5529,
        5815
      ],
      "op": "SWAP4",
      "path": "75"
    },
    "779": {
      "op": "POP"
    },
    "780": {
      "op": "POP"
    },
    "781": {
      "op": "POP"
    },
    "782": {
      "op": "POP"
    },
    "783": {
      "fn": "ERC20Upgradeable.transferFrom",
      "jump": "o",
      "offset": [
        5529,
        5815
      ],
      "op": "JUMP",
      "path": "75"
    },
    "784": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6210,
        6446
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "785": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83"
    },
    "786": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6298,
        6302
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "788": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "DUP2",
      "path": "75",
      "statement": 11
    },
    "789": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "DUP2",
      "path": "75"
    },
    "790": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "791": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6388
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x34"
    },
    "793": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "795": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "796": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "DUP2",
      "path": "75"
    },
    "797": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "798": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "800": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "DUP1",
      "path": "75"
    },
    "801": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "DUP4",
      "path": "75"
    },
    "802": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6395
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "803": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "805": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "807": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "809": {
      "op": "SHL"
    },
    "810": {
      "op": "SUB"
    },
    "811": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "DUP8",
      "path": "75"
    },
    "812": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "AND",
      "path": "75"
    },
    "813": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "DUP5",
      "path": "75"
    },
    "814": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "815": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "816": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "817": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "818": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "DUP2",
      "path": "75"
    },
    "819": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "820": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "821": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6298,
        6302
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "822": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6298,
        6302
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "823": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "SWAP1",
      "path": "83"
    },
    "824": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6352,
        6418
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x2E2"
    },
    "827": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6352,
        6418
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "828": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "DUP3",
      "path": "83"
    },
    "829": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "SWAP1",
      "path": "83"
    },
    "830": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "DUP7",
      "path": "75"
    },
    "831": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6404
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "832": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6417
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x34A"
    },
    "835": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6417
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "836": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6407,
        6417
      ],
      "op": "DUP8",
      "path": "75"
    },
    "837": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6407,
        6417
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "838": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6417
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE32"
    },
    "841": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "jump": "i",
      "offset": [
        6377,
        6417
      ],
      "op": "JUMP",
      "path": "75"
    },
    "842": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6377,
        6417
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "843": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "offset": [
        6352,
        6360
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x509"
    },
    "846": {
      "fn": "ERC20Upgradeable.increaseAllowance",
      "jump": "i",
      "offset": [
        6352,
        6418
      ],
      "op": "JUMP",
      "path": "75"
    },
    "847": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "848": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        680,
        704
      ],
      "op": "PUSH2",
      "path": "27",
      "statement": 12,
      "value": "0x359"
    },
    "851": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        686,
        695
      ],
      "op": "DUP3",
      "path": "27"
    },
    "852": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        697,
        703
      ],
      "op": "DUP3",
      "path": "27"
    },
    "853": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        680,
        685
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x888"
    },
    "856": {
      "fn": "TestCurrencyUUPS.mint",
      "jump": "i",
      "offset": [
        680,
        704
      ],
      "op": "JUMP",
      "path": "27"
    },
    "857": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        680,
        704
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "858": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "POP",
      "path": "27"
    },
    "859": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "POP",
      "path": "27"
    },
    "860": {
      "fn": "TestCurrencyUUPS.mint",
      "jump": "o",
      "offset": [
        539,
        709
      ],
      "op": "JUMP",
      "path": "27"
    },
    "861": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2704,
        2806
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "862": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2760,
        2773
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x60"
    },
    "864": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2792,
        2799
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 13,
      "value": "0x37"
    },
    "866": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2785,
        2799
      ],
      "op": "DUP1",
      "path": "75"
    },
    "867": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2785,
        2799
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "868": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2785,
        2799
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x251"
    },
    "871": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2785,
        2799
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "872": {
      "fn": "ERC20Upgradeable.symbol",
      "offset": [
        2785,
        2799
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE61"
    },
    "875": {
      "fn": "ERC20Upgradeable.symbol",
      "jump": "i",
      "offset": [
        2785,
        2799
      ],
      "op": "JUMP",
      "path": "75"
    },
    "876": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        713,
        883
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "877": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        854,
        878
      ],
      "op": "PUSH2",
      "path": "27",
      "statement": 14,
      "value": "0x359"
    },
    "880": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        860,
        869
      ],
      "op": "DUP3",
      "path": "27"
    },
    "881": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        871,
        877
      ],
      "op": "DUP3",
      "path": "27"
    },
    "882": {
      "fn": "TestCurrencyUUPS.burn",
      "offset": [
        854,
        859
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x967"
    },
    "885": {
      "fn": "TestCurrencyUUPS.burn",
      "jump": "i",
      "offset": [
        854,
        878
      ],
      "op": "JUMP",
      "path": "27"
    },
    "886": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        6933,
        7362
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "887": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83"
    },
    "888": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7026,
        7030
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "890": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "DUP2",
      "path": "75"
    },
    "891": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "DUP2",
      "path": "75"
    },
    "892": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "893": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7118
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x34"
    },
    "895": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "897": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "898": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "DUP2",
      "path": "75"
    },
    "899": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "900": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "902": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "DUP1",
      "path": "75"
    },
    "903": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "DUP4",
      "path": "75"
    },
    "904": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7125
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "905": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "907": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "909": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "911": {
      "op": "SHL"
    },
    "912": {
      "op": "SUB"
    },
    "913": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "DUP8",
      "path": "75"
    },
    "914": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "AND",
      "path": "75"
    },
    "915": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "DUP5",
      "path": "75"
    },
    "916": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "917": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "918": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "919": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "920": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "DUP2",
      "path": "75"
    },
    "921": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "922": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7107,
        7134
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "923": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7026,
        7030
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "924": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7026,
        7030
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "925": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "SWAP1",
      "path": "83"
    },
    "926": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7152,
        7187
      ],
      "op": "DUP4",
      "path": "75",
      "statement": 15
    },
    "927": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7152,
        7187
      ],
      "op": "DUP2",
      "path": "75"
    },
    "928": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7152,
        7187
      ],
      "op": "LT",
      "path": "75"
    },
    "929": {
      "branch": 48,
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7152,
        7187
      ],
      "op": "ISZERO",
      "path": "75"
    },
    "930": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x400"
    },
    "933": {
      "branch": 48,
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "934": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "936": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "937": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "941": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "943": {
      "op": "SHL"
    },
    "944": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "DUP2",
      "path": "75"
    },
    "945": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "946": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "948": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "950": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "DUP3",
      "path": "75"
    },
    "951": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "ADD",
      "path": "75"
    },
    "952": {
      "op": "MSTORE"
    },
    "953": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "955": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "957": {
      "op": "DUP3"
    },
    "958": {
      "op": "ADD"
    },
    "959": {
      "op": "MSTORE"
    },
    "960": {
      "op": "PUSH32",
      "value": "0x45524332303A2064656372656173656420616C6C6F77616E63652062656C6F77"
    },
    "993": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "995": {
      "op": "DUP3"
    },
    "996": {
      "op": "ADD"
    },
    "997": {
      "op": "MSTORE"
    },
    "998": {
      "op": "PUSH5",
      "value": "0x207A65726F"
    },
    "1004": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "1006": {
      "op": "SHL"
    },
    "1007": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1009": {
      "op": "DUP3"
    },
    "1010": {
      "op": "ADD"
    },
    "1011": {
      "op": "MSTORE"
    },
    "1012": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1014": {
      "op": "ADD"
    },
    "1015": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1016": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1018": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1019": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "DUP1",
      "path": "75"
    },
    "1020": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "1021": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "SUB",
      "path": "75"
    },
    "1022": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1023": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "REVERT",
      "optimizer_revert": true,
      "path": "75"
    },
    "1024": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7144,
        7229
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1025": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7263,
        7323
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 16,
      "value": "0x305"
    },
    "1028": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7272,
        7277
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1029": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7279,
        7286
      ],
      "op": "DUP7",
      "path": "75"
    },
    "1030": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7307,
        7322
      ],
      "op": "DUP7",
      "path": "75"
    },
    "1031": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7288,
        7304
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1032": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7288,
        7322
      ],
      "op": "SUB",
      "path": "75"
    },
    "1033": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "offset": [
        7263,
        7271
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x509"
    },
    "1036": {
      "fn": "ERC20Upgradeable.decreaseAllowance",
      "jump": "i",
      "offset": [
        7263,
        7323
      ],
      "op": "JUMP",
      "path": "75"
    },
    "1037": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4066,
        4255
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1038": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4145,
        4149
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "1040": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83"
    },
    "1041": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4199,
        4227
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 17,
      "value": "0x2E2"
    },
    "1044": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "DUP2",
      "path": "83"
    },
    "1045": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4216,
        4218
      ],
      "op": "DUP6",
      "path": "75"
    },
    "1046": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4220,
        4226
      ],
      "op": "DUP6",
      "path": "75"
    },
    "1047": {
      "fn": "ERC20Upgradeable.transfer",
      "offset": [
        4199,
        4208
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x6BA"
    },
    "1050": {
      "fn": "ERC20Upgradeable.transfer",
      "jump": "i",
      "offset": [
        4199,
        4227
      ],
      "op": "JUMP",
      "path": "75"
    },
    "1051": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "1052": {
      "offset": [
        2369,
        2382
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "1054": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "1055": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x100"
    },
    "1058": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "1059": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "DIV",
      "path": "72"
    },
    "1060": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0xFF"
    },
    "1062": {
      "branch": 59,
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2382
      ],
      "op": "AND",
      "path": "72"
    },
    "1063": {
      "offset": [
        2369,
        2417
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x436"
    },
    "1066": {
      "branch": 59,
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2417
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "1067": {
      "offset": [
        2405,
        2417
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "1069": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2405,
        2417
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "1070": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2405,
        2417
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0xFF"
    },
    "1072": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2405,
        2417
      ],
      "op": "AND",
      "path": "72"
    },
    "1073": {
      "offset": [
        2404,
        2417
      ],
      "op": "ISZERO",
      "path": "72"
    },
    "1074": {
      "offset": [
        2369,
        2417
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x43A"
    },
    "1077": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2417
      ],
      "op": "JUMP",
      "path": "72"
    },
    "1078": {
      "branch": 60,
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2369,
        2417
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "1079": {
      "fn": "Initializable._isConstructor",
      "offset": [
        3147,
        3151
      ],
      "op": "ADDRESS",
      "path": "72",
      "statement": 18
    },
    "1080": {
      "op": "EXTCODESIZE"
    },
    "1081": {
      "op": "ISZERO"
    },
    "1082": {
      "offset": [
        2385,
        2401
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "1083": {
      "offset": [
        2361,
        2468
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x49D"
    },
    "1086": {
      "branch": 60,
      "offset": [
        2361,
        2468
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "1087": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2361,
        2468
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x40"
    },
    "1089": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2361,
        2468
      ],
      "op": "MLOAD",
      "path": "72"
    },
    "1090": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1094": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1096": {
      "op": "SHL"
    },
    "1097": {
      "offset": [
        2361,
        2468
      ],
      "op": "DUP2",
      "path": "72"
    },
    "1098": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2361,
        2468
      ],
      "op": "MSTORE",
      "path": "72"
    },
    "1099": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1101": {
      "offset": [
        2361,
        2468
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x4"
    },
    "1103": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2361,
        2468
      ],
      "op": "DUP3",
      "path": "72"
    },
    "1104": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2361,
        2468
      ],
      "op": "ADD",
      "path": "72"
    },
    "1105": {
      "op": "MSTORE"
    },
    "1106": {
      "op": "PUSH1",
      "value": "0x2E"
    },
    "1108": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1110": {
      "op": "DUP3"
    },
    "1111": {
      "op": "ADD"
    },
    "1112": {
      "op": "MSTORE"
    },
    "1113": {
      "op": "PUSH32",
      "value": "0x496E697469616C697A61626C653A20636F6E747261637420697320616C726561"
    },
    "1146": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1148": {
      "op": "DUP3"
    },
    "1149": {
      "op": "ADD"
    },
    "1150": {
      "op": "MSTORE"
    },
    "1151": {
      "op": "PUSH14",
      "value": "0x191E481A5B9A5D1A585B1A5E9959"
    },
    "1166": {
      "op": "PUSH1",
      "value": "0x92"
    },
    "1168": {
      "op": "SHL"
    },
    "1169": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1171": {
      "op": "DUP3"
    },
    "1172": {
      "op": "ADD"
    },
    "1173": {
      "op": "MSTORE"
    },
    "1174": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1176": {
      "op": "ADD"
    },
    "1177": {
      "offset": [
        2361,
        2468
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x3F7"
    },
    "1180": {
      "op": "JUMP"
    },
    "1181": {
      "offset": [
        2361,
        2468
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "1182": {
      "offset": [
        2479,
        2498
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "1184": {
      "offset": [
        2502,
        2515
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "1185": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2502,
        2515
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x100"
    },
    "1188": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2502,
        2515
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "1189": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2502,
        2515
      ],
      "op": "DIV",
      "path": "72"
    },
    "1190": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2502,
        2515
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0xFF"
    },
    "1192": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2502,
        2515
      ],
      "op": "AND",
      "path": "72"
    },
    "1193": {
      "offset": [
        2501,
        2515
      ],
      "op": "ISZERO",
      "path": "72"
    },
    "1194": {
      "offset": [
        2525,
        2623
      ],
      "op": "DUP1",
      "path": "72"
    },
    "1195": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2525,
        2623
      ],
      "op": "ISZERO",
      "path": "72"
    },
    "1196": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2525,
        2623
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x4BF"
    },
    "1199": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2525,
        2623
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "1200": {
      "offset": [
        2559,
        2572
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "1202": {
      "offset": [
        2559,
        2579
      ],
      "op": "DUP1",
      "path": "72"
    },
    "1203": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2559,
        2579
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "1204": {
      "op": "PUSH2",
      "value": "0xFFFF"
    },
    "1207": {
      "op": "NOT"
    },
    "1208": {
      "offset": [
        2593,
        2612
      ],
      "op": "AND",
      "path": "72"
    },
    "1209": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2593,
        2612
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x101"
    },
    "1212": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2593,
        2612
      ],
      "op": "OR",
      "path": "72"
    },
    "1213": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2593,
        2612
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "1214": {
      "fn": "Initializable._isConstructor",
      "offset": [
        2593,
        2612
      ],
      "op": "SSTORE",
      "path": "72"
    },
    "1215": {
      "offset": [
        2525,
        2623
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "1216": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        447
      ],
      "op": "PUSH1",
      "path": "27",
      "statement": 19,
      "value": "0x65"
    },
    "1218": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "DUP1",
      "path": "27"
    },
    "1219": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "SLOAD",
      "path": "27"
    },
    "1220": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1222": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1224": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1226": {
      "op": "SHL"
    },
    "1227": {
      "op": "SUB"
    },
    "1228": {
      "op": "NOT"
    },
    "1229": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "AND",
      "path": "27"
    },
    "1230": {
      "fn": "ContextUpgradeable._msgSender",
      "offset": [
        929,
        939
      ],
      "op": "CALLER",
      "path": "83"
    },
    "1231": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "OR",
      "path": "27"
    },
    "1232": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "SWAP1",
      "path": "27"
    },
    "1233": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        441,
        462
      ],
      "op": "SSTORE",
      "path": "27"
    },
    "1234": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        468,
        496
      ],
      "op": "PUSH2",
      "path": "27",
      "statement": 20,
      "value": "0x4DB"
    },
    "1237": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        481,
        486
      ],
      "op": "DUP5",
      "path": "27"
    },
    "1238": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        488,
        495
      ],
      "op": "DUP5",
      "path": "27"
    },
    "1239": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        468,
        480
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0xAB2"
    },
    "1242": {
      "fn": "TestCurrencyUUPS.initialize",
      "jump": "i",
      "offset": [
        468,
        496
      ],
      "op": "JUMP",
      "path": "27"
    },
    "1243": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        468,
        496
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "1244": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        508,
        514
      ],
      "op": "PUSH1",
      "path": "27",
      "statement": 21,
      "value": "0x65"
    },
    "1246": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        508,
        514
      ],
      "op": "SLOAD",
      "path": "27"
    },
    "1247": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        502,
        530
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x4F1"
    },
    "1250": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        502,
        530
      ],
      "op": "SWAP1",
      "path": "27"
    },
    "1251": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1253": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1255": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1257": {
      "op": "SHL"
    },
    "1258": {
      "op": "SUB"
    },
    "1259": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        508,
        514
      ],
      "op": "AND",
      "path": "27"
    },
    "1260": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        516,
        529
      ],
      "op": "DUP4",
      "path": "27"
    },
    "1261": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        502,
        507
      ],
      "op": "PUSH2",
      "path": "27",
      "value": "0x888"
    },
    "1264": {
      "fn": "TestCurrencyUUPS.initialize",
      "jump": "i",
      "offset": [
        502,
        530
      ],
      "op": "JUMP",
      "path": "27"
    },
    "1265": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        502,
        530
      ],
      "op": "JUMPDEST",
      "path": "27"
    },
    "1266": {
      "offset": [
        2649,
        2663
      ],
      "op": "DUP1",
      "path": "72"
    },
    "1267": {
      "offset": [
        2645,
        2711
      ],
      "op": "ISZERO",
      "path": "72"
    },
    "1268": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2645,
        2711
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x503"
    },
    "1271": {
      "offset": [
        2645,
        2711
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "1272": {
      "offset": [
        2695,
        2700
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "1274": {
      "offset": [
        2679,
        2700
      ],
      "op": "DUP1",
      "path": "72"
    },
    "1275": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2679,
        2700
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "1276": {
      "op": "PUSH2",
      "value": "0xFF00"
    },
    "1279": {
      "op": "NOT"
    },
    "1280": {
      "offset": [
        2679,
        2700
      ],
      "op": "AND",
      "path": "72"
    },
    "1281": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2679,
        2700
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "1282": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        2679,
        2700
      ],
      "op": "SSTORE",
      "path": "72"
    },
    "1283": {
      "offset": [
        2645,
        2711
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "1284": {
      "offset": [
        2080,
        2717
      ],
      "op": "POP",
      "path": "72"
    },
    "1285": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "POP",
      "path": "27"
    },
    "1286": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "POP",
      "path": "27"
    },
    "1287": {
      "fn": "TestCurrencyUUPS.initialize",
      "offset": [
        313,
        535
      ],
      "op": "POP",
      "path": "27"
    },
    "1288": {
      "fn": "TestCurrencyUUPS.initialize",
      "jump": "o",
      "offset": [
        313,
        535
      ],
      "op": "JUMP",
      "path": "27"
    },
    "1289": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10460,
        10830
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1290": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1292": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1294": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1296": {
      "op": "SHL"
    },
    "1297": {
      "op": "SUB"
    },
    "1298": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10591,
        10610
      ],
      "op": "DUP4",
      "path": "75",
      "statement": 22
    },
    "1299": {
      "branch": 49,
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10591,
        10610
      ],
      "op": "AND",
      "path": "75"
    },
    "1300": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x56B"
    },
    "1303": {
      "branch": 49,
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1304": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1306": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1307": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1311": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1313": {
      "op": "SHL"
    },
    "1314": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1315": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1316": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1318": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1320": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1321": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "ADD",
      "path": "75"
    },
    "1322": {
      "op": "MSTORE"
    },
    "1323": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1325": {
      "op": "DUP1"
    },
    "1326": {
      "op": "DUP3"
    },
    "1327": {
      "op": "ADD"
    },
    "1328": {
      "op": "MSTORE"
    },
    "1329": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464"
    },
    "1362": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1364": {
      "op": "DUP3"
    },
    "1365": {
      "op": "ADD"
    },
    "1366": {
      "op": "MSTORE"
    },
    "1367": {
      "op": "PUSH4",
      "value": "0x72657373"
    },
    "1372": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1374": {
      "op": "SHL"
    },
    "1375": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1377": {
      "op": "DUP3"
    },
    "1378": {
      "op": "ADD"
    },
    "1379": {
      "op": "MSTORE"
    },
    "1380": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1382": {
      "op": "ADD"
    },
    "1383": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "1386": {
      "op": "JUMP"
    },
    "1387": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10583,
        10651
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1388": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1390": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1392": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1394": {
      "op": "SHL"
    },
    "1395": {
      "op": "SUB"
    },
    "1396": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10669,
        10690
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 23
    },
    "1397": {
      "branch": 50,
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10669,
        10690
      ],
      "op": "AND",
      "path": "75"
    },
    "1398": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x5CC"
    },
    "1401": {
      "branch": 50,
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1402": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1404": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1405": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1409": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1411": {
      "op": "SHL"
    },
    "1412": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1413": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1414": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1416": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1418": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1419": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "ADD",
      "path": "75"
    },
    "1420": {
      "op": "MSTORE"
    },
    "1421": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "1423": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1425": {
      "op": "DUP3"
    },
    "1426": {
      "op": "ADD"
    },
    "1427": {
      "op": "MSTORE"
    },
    "1428": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F766520746F20746865207A65726F206164647265"
    },
    "1461": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1463": {
      "op": "DUP3"
    },
    "1464": {
      "op": "ADD"
    },
    "1465": {
      "op": "MSTORE"
    },
    "1466": {
      "op": "PUSH2",
      "value": "0x7373"
    },
    "1469": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "1471": {
      "op": "SHL"
    },
    "1472": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1474": {
      "op": "DUP3"
    },
    "1475": {
      "op": "ADD"
    },
    "1476": {
      "op": "MSTORE"
    },
    "1477": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1479": {
      "op": "ADD"
    },
    "1480": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "1483": {
      "op": "JUMP"
    },
    "1484": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10661,
        10729
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1485": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1487": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1489": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1491": {
      "op": "SHL"
    },
    "1492": {
      "op": "SUB"
    },
    "1493": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP4",
      "path": "75",
      "statement": 24
    },
    "1494": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1495": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "AND",
      "path": "75"
    },
    "1496": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "1498": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1499": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1500": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1501": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10751
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x34"
    },
    "1503": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "1505": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1506": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1507": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1508": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1510": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP1",
      "path": "75"
    },
    "1511": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "DUP4",
      "path": "75"
    },
    "1512": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10758
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "1513": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "SWAP5",
      "path": "75"
    },
    "1514": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "DUP8",
      "path": "75"
    },
    "1515": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "AND",
      "path": "75"
    },
    "1516": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "DUP1",
      "path": "75"
    },
    "1517": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1518": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1519": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "SWAP5",
      "path": "75"
    },
    "1520": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1521": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1522": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "1523": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1524": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1525": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10767
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "1526": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10776
      ],
      "op": "DUP6",
      "path": "75"
    },
    "1527": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10776
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1528": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10740,
        10776
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "1529": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "SWAP1",
      "path": "75",
      "statement": 25
    },
    "1530": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1531": {
      "op": "DUP5"
    },
    "1532": {
      "op": "DUP2"
    },
    "1533": {
      "op": "MSTORE"
    },
    "1534": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "PUSH32",
      "path": "75",
      "value": "0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925"
    },
    "1567": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "1568": {
      "op": "ADD"
    },
    "1569": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1570": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1572": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1573": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "DUP1",
      "path": "75"
    },
    "1574": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "1575": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "SUB",
      "path": "75"
    },
    "1576": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1577": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10791,
        10823
      ],
      "op": "LOG3",
      "path": "75"
    },
    "1578": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10460,
        10830
      ],
      "op": "POP",
      "path": "75"
    },
    "1579": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10460,
        10830
      ],
      "op": "POP",
      "path": "75"
    },
    "1580": {
      "fn": "ERC20Upgradeable._approve",
      "offset": [
        10460,
        10830
      ],
      "op": "POP",
      "path": "75"
    },
    "1581": {
      "fn": "ERC20Upgradeable._approve",
      "jump": "o",
      "offset": [
        10460,
        10830
      ],
      "op": "JUMP",
      "path": "75"
    },
    "1582": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11107,
        11548
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1583": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1585": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1587": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1589": {
      "op": "SHL"
    },
    "1590": {
      "op": "SUB"
    },
    "1591": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP4",
      "path": "75"
    },
    "1592": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1593": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "AND",
      "path": "75"
    },
    "1594": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11237,
        11261
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "1596": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1597": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1598": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1599": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4439
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x34"
    },
    "1601": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "1603": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1604": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1605": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1606": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1608": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP1",
      "path": "75"
    },
    "1609": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "DUP4",
      "path": "75"
    },
    "1610": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4446
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "1611": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP4",
      "path": "75"
    },
    "1612": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "DUP7",
      "path": "75"
    },
    "1613": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "AND",
      "path": "75"
    },
    "1614": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "DUP4",
      "path": "75"
    },
    "1615": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1616": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "1617": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1618": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1619": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "1620": {
      "fn": "ERC20Upgradeable.allowance",
      "offset": [
        4428,
        4455
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "1621": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1623": {
      "op": "NOT"
    },
    "1624": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11303,
        11340
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1625": {
      "branch": 51,
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11303,
        11340
      ],
      "op": "EQ",
      "path": "75"
    },
    "1626": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11299,
        11542
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x503"
    },
    "1629": {
      "branch": 51,
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11299,
        11542
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1630": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11384,
        11390
      ],
      "op": "DUP2",
      "path": "75",
      "statement": 26
    },
    "1631": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11364,
        11380
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1632": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11364,
        11390
      ],
      "op": "LT",
      "path": "75"
    },
    "1633": {
      "branch": 52,
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11364,
        11390
      ],
      "op": "ISZERO",
      "path": "75"
    },
    "1634": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x6AD"
    },
    "1637": {
      "branch": 52,
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1638": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1640": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1641": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1645": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1647": {
      "op": "SHL"
    },
    "1648": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1649": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1650": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1652": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1654": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1655": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "ADD",
      "path": "75"
    },
    "1656": {
      "op": "MSTORE"
    },
    "1657": {
      "op": "PUSH1",
      "value": "0x1D"
    },
    "1659": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1661": {
      "op": "DUP3"
    },
    "1662": {
      "op": "ADD"
    },
    "1663": {
      "op": "MSTORE"
    },
    "1664": {
      "op": "PUSH32",
      "value": "0x45524332303A20696E73756666696369656E7420616C6C6F77616E6365000000"
    },
    "1697": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1699": {
      "op": "DUP3"
    },
    "1700": {
      "op": "ADD"
    },
    "1701": {
      "op": "MSTORE"
    },
    "1702": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1704": {
      "op": "ADD"
    },
    "1705": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "1708": {
      "op": "JUMP"
    },
    "1709": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11356,
        11424
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1710": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11466,
        11517
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 27,
      "value": "0x503"
    },
    "1713": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11475,
        11480
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1714": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11482,
        11489
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1715": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11510,
        11516
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1716": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11491,
        11507
      ],
      "op": "DUP5",
      "path": "75"
    },
    "1717": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11491,
        11516
      ],
      "op": "SUB",
      "path": "75"
    },
    "1718": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "offset": [
        11466,
        11474
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x509"
    },
    "1721": {
      "fn": "ERC20Upgradeable._spendAllowance",
      "jump": "i",
      "offset": [
        11466,
        11517
      ],
      "op": "JUMP",
      "path": "75"
    },
    "1722": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7825,
        8476
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1723": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1725": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1727": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1729": {
      "op": "SHL"
    },
    "1730": {
      "op": "SUB"
    },
    "1731": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7951,
        7969
      ],
      "op": "DUP4",
      "path": "75",
      "statement": 28
    },
    "1732": {
      "branch": 53,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7951,
        7969
      ],
      "op": "AND",
      "path": "75"
    },
    "1733": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x71E"
    },
    "1736": {
      "branch": 53,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1737": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1739": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1740": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1744": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1746": {
      "op": "SHL"
    },
    "1747": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1748": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1749": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1751": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1753": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1754": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "ADD",
      "path": "75"
    },
    "1755": {
      "op": "MSTORE"
    },
    "1756": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "1758": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1760": {
      "op": "DUP3"
    },
    "1761": {
      "op": "ADD"
    },
    "1762": {
      "op": "MSTORE"
    },
    "1763": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E736665722066726F6D20746865207A65726F206164"
    },
    "1796": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1798": {
      "op": "DUP3"
    },
    "1799": {
      "op": "ADD"
    },
    "1800": {
      "op": "MSTORE"
    },
    "1801": {
      "op": "PUSH5",
      "value": "0x6472657373"
    },
    "1807": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "1809": {
      "op": "SHL"
    },
    "1810": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1812": {
      "op": "DUP3"
    },
    "1813": {
      "op": "ADD"
    },
    "1814": {
      "op": "MSTORE"
    },
    "1815": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1817": {
      "op": "ADD"
    },
    "1818": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "1821": {
      "op": "JUMP"
    },
    "1822": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        7943,
        8011
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1823": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1825": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1827": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1829": {
      "op": "SHL"
    },
    "1830": {
      "op": "SUB"
    },
    "1831": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8029,
        8045
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 29
    },
    "1832": {
      "branch": 54,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8029,
        8045
      ],
      "op": "AND",
      "path": "75"
    },
    "1833": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x780"
    },
    "1836": {
      "branch": 54,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1837": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1839": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1840": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1844": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1846": {
      "op": "SHL"
    },
    "1847": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1848": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1849": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1851": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1853": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1854": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "ADD",
      "path": "75"
    },
    "1855": {
      "op": "MSTORE"
    },
    "1856": {
      "op": "PUSH1",
      "value": "0x23"
    },
    "1858": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1860": {
      "op": "DUP3"
    },
    "1861": {
      "op": "ADD"
    },
    "1862": {
      "op": "MSTORE"
    },
    "1863": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220746F20746865207A65726F2061646472"
    },
    "1896": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1898": {
      "op": "DUP3"
    },
    "1899": {
      "op": "ADD"
    },
    "1900": {
      "op": "MSTORE"
    },
    "1901": {
      "op": "PUSH3",
      "value": "0x657373"
    },
    "1905": {
      "op": "PUSH1",
      "value": "0xE8"
    },
    "1907": {
      "op": "SHL"
    },
    "1908": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1910": {
      "op": "DUP3"
    },
    "1911": {
      "op": "ADD"
    },
    "1912": {
      "op": "MSTORE"
    },
    "1913": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1915": {
      "op": "ADD"
    },
    "1916": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "1919": {
      "op": "JUMP"
    },
    "1920": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8021,
        8085
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "1921": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1923": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1925": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1927": {
      "op": "SHL"
    },
    "1928": {
      "op": "SUB"
    },
    "1929": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "DUP4",
      "path": "75"
    },
    "1930": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "AND",
      "path": "75"
    },
    "1931": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8145,
        8164
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "1933": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1934": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1935": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1936": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8176
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "1938": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "1940": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1941": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1943": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "1944": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "1945": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8167,
        8182
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "1946": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8200,
        8221
      ],
      "op": "DUP2",
      "path": "75",
      "statement": 30
    },
    "1947": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8200,
        8221
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1948": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8200,
        8221
      ],
      "op": "LT",
      "path": "75"
    },
    "1949": {
      "branch": 55,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8200,
        8221
      ],
      "op": "ISZERO",
      "path": "75"
    },
    "1950": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x7F8"
    },
    "1953": {
      "branch": 55,
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "1954": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "1956": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "1957": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1961": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1963": {
      "op": "SHL"
    },
    "1964": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "DUP2",
      "path": "75"
    },
    "1965": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "1966": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1968": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "1970": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "DUP3",
      "path": "75"
    },
    "1971": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "ADD",
      "path": "75"
    },
    "1972": {
      "op": "MSTORE"
    },
    "1973": {
      "op": "PUSH1",
      "value": "0x26"
    },
    "1975": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1977": {
      "op": "DUP3"
    },
    "1978": {
      "op": "ADD"
    },
    "1979": {
      "op": "MSTORE"
    },
    "1980": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220616D6F756E7420657863656564732062"
    },
    "2013": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2015": {
      "op": "DUP3"
    },
    "2016": {
      "op": "ADD"
    },
    "2017": {
      "op": "MSTORE"
    },
    "2018": {
      "op": "PUSH6",
      "value": "0x616C616E6365"
    },
    "2025": {
      "op": "PUSH1",
      "value": "0xD0"
    },
    "2027": {
      "op": "SHL"
    },
    "2028": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2030": {
      "op": "DUP3"
    },
    "2031": {
      "op": "ADD"
    },
    "2032": {
      "op": "MSTORE"
    },
    "2033": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "2035": {
      "op": "ADD"
    },
    "2036": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "2039": {
      "op": "JUMP"
    },
    "2040": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8192,
        8264
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2041": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2043": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2045": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2047": {
      "op": "SHL"
    },
    "2048": {
      "op": "SUB"
    },
    "2049": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "DUP1",
      "path": "75",
      "statement": 31
    },
    "2050": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2051": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "AND",
      "path": "75"
    },
    "2052": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2054": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2055": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2056": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2057": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8307
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "2059": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2061": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2062": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2064": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2065": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2066": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "2067": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8316,
        8336
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2068": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8316,
        8336
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2069": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8316,
        8336
      ],
      "op": "SUB",
      "path": "75"
    },
    "2070": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8336
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2071": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8336
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2072": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "SWAP2",
      "path": "75",
      "statement": 32
    },
    "2073": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2074": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "AND",
      "path": "75"
    },
    "2075": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2076": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2077": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2078": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2079": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8369
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "2080": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2081": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "2082": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8330,
        8336
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2083": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8330,
        8336
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "2084": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8298,
        8313
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2085": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x82F"
    },
    "2088": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2089": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8330,
        8336
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2090": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8330,
        8336
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2091": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE32"
    },
    "2094": {
      "fn": "ERC20Upgradeable._transfer",
      "jump": "i",
      "offset": [
        8356,
        8379
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2095": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2096": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "2097": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "POP",
      "path": "75"
    },
    "2098": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "POP",
      "path": "75"
    },
    "2099": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2100": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2101": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2102": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8356,
        8379
      ],
      "op": "POP",
      "path": "75"
    },
    "2103": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8410,
        8412
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 33
    },
    "2104": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2106": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2108": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2110": {
      "op": "SHL"
    },
    "2111": {
      "op": "SUB"
    },
    "2112": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "AND",
      "path": "75"
    },
    "2113": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8404,
        8408
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2114": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2116": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2118": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2120": {
      "op": "SHL"
    },
    "2121": {
      "op": "SUB"
    },
    "2122": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "AND",
      "path": "75"
    },
    "2123": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "PUSH32",
      "path": "75",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "2156": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8414,
        8420
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2157": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2159": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2160": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x87B"
    },
    "2163": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2164": {
      "op": "DUP2"
    },
    "2165": {
      "op": "MSTORE"
    },
    "2166": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2168": {
      "op": "ADD"
    },
    "2169": {
      "op": "SWAP1"
    },
    "2170": {
      "op": "JUMP"
    },
    "2171": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2172": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2174": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2175": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2176": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2177": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "SUB",
      "path": "75"
    },
    "2178": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2179": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8395,
        8421
      ],
      "op": "LOG3",
      "path": "75"
    },
    "2180": {
      "fn": "ERC20Upgradeable._transfer",
      "offset": [
        8432,
        8469
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 34,
      "value": "0x503"
    },
    "2183": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9461,
        10037
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2184": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8752,
        9141
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2185": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2187": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2189": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2191": {
      "op": "SHL"
    },
    "2192": {
      "op": "SUB"
    },
    "2193": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8835,
        8856
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 35
    },
    "2194": {
      "branch": 56,
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8835,
        8856
      ],
      "op": "AND",
      "path": "75"
    },
    "2195": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x8DE"
    },
    "2198": {
      "branch": 56,
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "2199": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2201": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2202": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2206": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2208": {
      "op": "SHL"
    },
    "2209": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2210": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2211": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2213": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "2215": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2216": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "ADD",
      "path": "75"
    },
    "2217": {
      "op": "MSTORE"
    },
    "2218": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2220": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2222": {
      "op": "DUP3"
    },
    "2223": {
      "op": "ADD"
    },
    "2224": {
      "op": "MSTORE"
    },
    "2225": {
      "op": "PUSH32",
      "value": "0x45524332303A206D696E7420746F20746865207A65726F206164647265737300"
    },
    "2258": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2260": {
      "op": "DUP3"
    },
    "2261": {
      "op": "ADD"
    },
    "2262": {
      "op": "MSTORE"
    },
    "2263": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2265": {
      "op": "ADD"
    },
    "2266": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "2269": {
      "op": "JUMP"
    },
    "2270": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8827,
        8892
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2271": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8979,
        8985
      ],
      "op": "DUP1",
      "path": "75",
      "statement": 36
    },
    "2272": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8975
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x35"
    },
    "2274": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8975
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2276": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2277": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2278": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "2279": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x8F0"
    },
    "2282": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2283": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2284": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE32"
    },
    "2287": {
      "fn": "ERC20Upgradeable._mint",
      "jump": "i",
      "offset": [
        8963,
        8985
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2288": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2289": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2290": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2291": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8963,
        8985
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2292": {
      "op": "POP"
    },
    "2293": {
      "op": "POP"
    },
    "2294": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2296": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2298": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2300": {
      "op": "SHL"
    },
    "2301": {
      "op": "SUB"
    },
    "2302": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 37
    },
    "2303": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "AND",
      "path": "75"
    },
    "2304": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2306": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2307": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2308": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2309": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9004
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "2311": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2313": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2314": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2316": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2317": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "2318": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2319": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "2320": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9017,
        9023
      ],
      "op": "DUP4",
      "path": "75"
    },
    "2321": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9017,
        9023
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "2322": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9013
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2323": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x91D"
    },
    "2326": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2327": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9017,
        9023
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2328": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9017,
        9023
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2329": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE32"
    },
    "2332": {
      "fn": "ERC20Upgradeable._mint",
      "jump": "i",
      "offset": [
        8995,
        9023
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2333": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2334": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2335": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2336": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        8995,
        9023
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2337": {
      "op": "POP"
    },
    "2338": {
      "op": "POP"
    },
    "2339": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 38,
      "value": "0x40"
    },
    "2341": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2342": {
      "op": "DUP2"
    },
    "2343": {
      "op": "DUP2"
    },
    "2344": {
      "op": "MSTORE"
    },
    "2345": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2347": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2349": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2351": {
      "op": "SHL"
    },
    "2352": {
      "op": "SUB"
    },
    "2353": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "DUP4",
      "path": "75"
    },
    "2354": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "AND",
      "path": "75"
    },
    "2355": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2356": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9055,
        9056
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2358": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9055,
        9056
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2359": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "PUSH32",
      "path": "75",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "2392": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2393": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2395": {
      "op": "ADD"
    },
    "2396": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2398": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2399": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2400": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2401": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "SUB",
      "path": "75"
    },
    "2402": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2403": {
      "fn": "ERC20Upgradeable._mint",
      "offset": [
        9038,
        9075
      ],
      "op": "LOG3",
      "path": "75"
    },
    "2404": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "POP",
      "path": "27"
    },
    "2405": {
      "fn": "TestCurrencyUUPS.mint",
      "offset": [
        539,
        709
      ],
      "op": "POP",
      "path": "27"
    },
    "2406": {
      "fn": "TestCurrencyUUPS.mint",
      "jump": "o",
      "offset": [
        539,
        709
      ],
      "op": "JUMP",
      "path": "27"
    },
    "2407": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9461,
        10037
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2408": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2410": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2412": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2414": {
      "op": "SHL"
    },
    "2415": {
      "op": "SUB"
    },
    "2416": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9544,
        9565
      ],
      "op": "DUP3",
      "path": "75",
      "statement": 39
    },
    "2417": {
      "branch": 57,
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9544,
        9565
      ],
      "op": "AND",
      "path": "75"
    },
    "2418": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x9C7"
    },
    "2421": {
      "branch": 57,
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "2422": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2424": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2425": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2429": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2431": {
      "op": "SHL"
    },
    "2432": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2433": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2434": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2436": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "2438": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2439": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "ADD",
      "path": "75"
    },
    "2440": {
      "op": "MSTORE"
    },
    "2441": {
      "op": "PUSH1",
      "value": "0x21"
    },
    "2443": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2445": {
      "op": "DUP3"
    },
    "2446": {
      "op": "ADD"
    },
    "2447": {
      "op": "MSTORE"
    },
    "2448": {
      "op": "PUSH32",
      "value": "0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573"
    },
    "2481": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2483": {
      "op": "DUP3"
    },
    "2484": {
      "op": "ADD"
    },
    "2485": {
      "op": "MSTORE"
    },
    "2486": {
      "op": "PUSH1",
      "value": "0x73"
    },
    "2488": {
      "op": "PUSH1",
      "value": "0xF8"
    },
    "2490": {
      "op": "SHL"
    },
    "2491": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2493": {
      "op": "DUP3"
    },
    "2494": {
      "op": "ADD"
    },
    "2495": {
      "op": "MSTORE"
    },
    "2496": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "2498": {
      "op": "ADD"
    },
    "2499": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "2502": {
      "op": "JUMP"
    },
    "2503": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9536,
        9603
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2504": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2506": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2508": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2510": {
      "op": "SHL"
    },
    "2511": {
      "op": "SUB"
    },
    "2512": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2513": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "AND",
      "path": "75"
    },
    "2514": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9674,
        9696
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2516": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2517": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2518": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2519": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9708
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "2521": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2523": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2524": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2526": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2527": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "2528": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9699,
        9717
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "2529": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9735,
        9759
      ],
      "op": "DUP2",
      "path": "75",
      "statement": 40
    },
    "2530": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9735,
        9759
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2531": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9735,
        9759
      ],
      "op": "LT",
      "path": "75"
    },
    "2532": {
      "branch": 58,
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9735,
        9759
      ],
      "op": "ISZERO",
      "path": "75"
    },
    "2533": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xA3B"
    },
    "2536": {
      "branch": 58,
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "JUMPI",
      "path": "75"
    },
    "2537": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2539": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2540": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2544": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2546": {
      "op": "SHL"
    },
    "2547": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2548": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2549": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2551": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x4"
    },
    "2553": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2554": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "ADD",
      "path": "75"
    },
    "2555": {
      "op": "MSTORE"
    },
    "2556": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "2558": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2560": {
      "op": "DUP3"
    },
    "2561": {
      "op": "ADD"
    },
    "2562": {
      "op": "MSTORE"
    },
    "2563": {
      "op": "PUSH32",
      "value": "0x45524332303A206275726E20616D6F756E7420657863656564732062616C616E"
    },
    "2596": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2598": {
      "op": "DUP3"
    },
    "2599": {
      "op": "ADD"
    },
    "2600": {
      "op": "MSTORE"
    },
    "2601": {
      "op": "PUSH2",
      "value": "0x6365"
    },
    "2604": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "2606": {
      "op": "SHL"
    },
    "2607": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2609": {
      "op": "DUP3"
    },
    "2610": {
      "op": "ADD"
    },
    "2611": {
      "op": "MSTORE"
    },
    "2612": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "2614": {
      "op": "ADD"
    },
    "2615": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x3F7"
    },
    "2618": {
      "op": "JUMP"
    },
    "2619": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9727,
        9798
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2620": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2622": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2624": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2626": {
      "op": "SHL"
    },
    "2627": {
      "op": "SUB"
    },
    "2628": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "DUP4",
      "path": "75",
      "statement": 41
    },
    "2629": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "AND",
      "path": "75"
    },
    "2630": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2632": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2633": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2634": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2635": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9841
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x33"
    },
    "2637": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2639": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "MSTORE",
      "path": "75"
    },
    "2640": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x40"
    },
    "2642": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "DUP2",
      "path": "75"
    },
    "2643": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "KECCAK256",
      "path": "75"
    },
    "2644": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9853,
        9876
      ],
      "op": "DUP4",
      "path": "75"
    },
    "2645": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9853,
        9876
      ],
      "op": "DUP4",
      "path": "75"
    },
    "2646": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9853,
        9876
      ],
      "op": "SUB",
      "path": "75"
    },
    "2647": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9876
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2648": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9876
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2649": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9908
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 42,
      "value": "0x35"
    },
    "2651": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "DUP1",
      "path": "75"
    },
    "2652": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "SLOAD",
      "path": "75"
    },
    "2653": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9870,
        9876
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2654": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9870,
        9876
      ],
      "op": "SWAP3",
      "path": "75"
    },
    "2655": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9832,
        9850
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2656": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xA6A"
    },
    "2659": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2660": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9870,
        9876
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2661": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9870,
        9876
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2662": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xE4A"
    },
    "2665": {
      "fn": "ERC20Upgradeable._burn",
      "jump": "i",
      "offset": [
        9896,
        9918
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2666": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2667": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2668": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "SWAP2",
      "path": "75"
    },
    "2669": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9896,
        9918
      ],
      "op": "SSTORE",
      "path": "75"
    },
    "2670": {
      "op": "POP"
    },
    "2671": {
      "op": "POP"
    },
    "2672": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "PUSH1",
      "path": "75",
      "statement": 43,
      "value": "0x40"
    },
    "2674": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2675": {
      "op": "DUP3"
    },
    "2676": {
      "op": "DUP2"
    },
    "2677": {
      "op": "MSTORE"
    },
    "2678": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9960,
        9961
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x0"
    },
    "2680": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9960,
        9961
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2681": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2683": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2685": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2687": {
      "op": "SHL"
    },
    "2688": {
      "op": "SUB"
    },
    "2689": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2690": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "AND",
      "path": "75"
    },
    "2691": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2692": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "PUSH32",
      "path": "75",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "2725": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2726": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2728": {
      "op": "ADD"
    },
    "2729": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9934,
        9971
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0x621"
    },
    "2732": {
      "op": "JUMP"
    },
    "2733": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9982,
        10030
      ],
      "op": "JUMPDEST",
      "path": "75",
      "statement": 44
    },
    "2734": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9526,
        10037
      ],
      "op": "POP",
      "path": "75"
    },
    "2735": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9461,
        10037
      ],
      "op": "POP",
      "path": "75"
    },
    "2736": {
      "fn": "ERC20Upgradeable._burn",
      "offset": [
        9461,
        10037
      ],
      "op": "POP",
      "path": "75"
    },
    "2737": {
      "fn": "ERC20Upgradeable._burn",
      "jump": "o",
      "offset": [
        9461,
        10037
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2738": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2116,
        2263
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2739": {
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "2741": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "2742": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x100"
    },
    "2745": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "2746": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "DIV",
      "path": "72"
    },
    "2747": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0xFF"
    },
    "2749": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "AND",
      "path": "72"
    },
    "2750": {
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0xAD9"
    },
    "2753": {
      "offset": [
        2944,
        3013
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "2754": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x40"
    },
    "2756": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "MLOAD",
      "path": "72"
    },
    "2757": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2761": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2763": {
      "op": "SHL"
    },
    "2764": {
      "offset": [
        2944,
        3013
      ],
      "op": "DUP2",
      "path": "72"
    },
    "2765": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "MSTORE",
      "path": "72"
    },
    "2766": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x4"
    },
    "2768": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "ADD",
      "path": "72"
    },
    "2769": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x3F7"
    },
    "2772": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "2773": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0xDE7"
    },
    "2776": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "jump": "i",
      "offset": [
        2944,
        3013
      ],
      "op": "JUMP",
      "path": "72"
    },
    "2777": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "2778": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2218,
        2256
      ],
      "op": "PUSH2",
      "path": "75",
      "statement": 45,
      "value": "0x359"
    },
    "2781": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2241,
        2246
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2782": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2248,
        2255
      ],
      "op": "DUP3",
      "path": "75"
    },
    "2783": {
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x0"
    },
    "2785": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "SLOAD",
      "path": "72"
    },
    "2786": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x100"
    },
    "2789": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "2790": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "DIV",
      "path": "72"
    },
    "2791": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0xFF"
    },
    "2793": {
      "branch": 61,
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2952,
        2965
      ],
      "op": "AND",
      "path": "72"
    },
    "2794": {
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0xB05"
    },
    "2797": {
      "branch": 61,
      "offset": [
        2944,
        3013
      ],
      "op": "JUMPI",
      "path": "72"
    },
    "2798": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x40"
    },
    "2800": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "MLOAD",
      "path": "72"
    },
    "2801": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2805": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2807": {
      "op": "SHL"
    },
    "2808": {
      "offset": [
        2944,
        3013
      ],
      "op": "DUP2",
      "path": "72"
    },
    "2809": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "MSTORE",
      "path": "72"
    },
    "2810": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH1",
      "path": "72",
      "value": "0x4"
    },
    "2812": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "ADD",
      "path": "72"
    },
    "2813": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0x3F7"
    },
    "2816": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "SWAP1",
      "path": "72"
    },
    "2817": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "PUSH2",
      "path": "72",
      "value": "0xDE7"
    },
    "2820": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "jump": "i",
      "offset": [
        2944,
        3013
      ],
      "op": "JUMP",
      "path": "72"
    },
    "2821": {
      "fn": "ERC20Upgradeable.__ERC20_init",
      "offset": [
        2944,
        3013
      ],
      "op": "JUMPDEST",
      "path": "72"
    },
    "2822": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "DUP2",
      "path": "75",
      "statement": 46
    },
    "2823": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2824": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xB18"
    },
    "2827": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2828": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2386
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x36"
    },
    "2830": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2386
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2831": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2833": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "DUP6",
      "path": "75"
    },
    "2834": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "ADD",
      "path": "75"
    },
    "2835": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2836": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xB28"
    },
    "2839": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "jump": "i",
      "offset": [
        2381,
        2394
      ],
      "op": "JUMP",
      "path": "75"
    },
    "2840": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2381,
        2394
      ],
      "op": "JUMPDEST",
      "path": "75"
    },
    "2841": {
      "op": "POP"
    },
    "2842": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "DUP1",
      "path": "75",
      "statement": 47
    },
    "2843": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "MLOAD",
      "path": "75"
    },
    "2844": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "PUSH2",
      "path": "75",
      "value": "0xAAD"
    },
    "2847": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2848": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2411
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x37"
    },
    "2850": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2411
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2851": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "PUSH1",
      "path": "75",
      "value": "0x20"
    },
    "2853": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "DUP5",
      "path": "75"
    },
    "2854": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "ADD",
      "path": "75"
    },
    "2855": {
      "fn": "ERC20Upgradeable.__ERC20_init_unchained",
      "offset": [
        2404,
        2421
      ],
      "op": "SWAP1",
      "path": "75"
    },
    "2856": {
      "op": "JUMPDEST"
    },
    "2857": {
      "op": "DUP3"
    },
    "2858": {
      "op": "DUP1"
    },
    "2859": {
      "op": "SLOAD"
    },
    "2860": {
      "op": "PUSH2",
      "value": "0xB34"
    },
    "2863": {
      "op": "SWAP1"
    },
    "2864": {
      "op": "PUSH2",
      "value": "0xE61"
    },
    "2867": {
      "jump": "i",
      "op": "JUMP"
    },
    "2868": {
      "op": "JUMPDEST"
    },
    "2869": {
      "op": "SWAP1"
    },
    "2870": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2872": {
      "op": "MSTORE"
    },
    "2873": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2875": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2877": {
      "op": "KECCAK256"
    },
    "2878": {
      "op": "SWAP1"
    },
    "2879": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2881": {
      "op": "ADD"
    },
    "2882": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2884": {
      "op": "SWAP1"
    },
    "2885": {
      "op": "DIV"
    },
    "2886": {
      "op": "DUP2"
    },
    "2887": {
      "op": "ADD"
    },
    "2888": {
      "op": "SWAP3"
    },
    "2889": {
      "op": "DUP3"
    },
    "2890": {
      "op": "PUSH2",
      "value": "0xB56"
    },
    "2893": {
      "op": "JUMPI"
    },
    "2894": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2896": {
      "op": "DUP6"
    },
    "2897": {
      "op": "SSTORE"
    },
    "2898": {
      "op": "PUSH2",
      "value": "0xB9C"
    },
    "2901": {
      "op": "JUMP"
    },
    "2902": {
      "op": "JUMPDEST"
    },
    "2903": {
      "op": "DUP3"
    },
    "2904": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2906": {
      "op": "LT"
    },
    "2907": {
      "op": "PUSH2",
      "value": "0xB6F"
    },
    "2910": {
      "op": "JUMPI"
    },
    "2911": {
      "op": "DUP1"
    },
    "2912": {
      "op": "MLOAD"
    },
    "2913": {
      "op": "PUSH1",
      "value": "0xFF"
    },
    "2915": {
      "op": "NOT"
    },
    "2916": {
      "op": "AND"
    },
    "2917": {
      "op": "DUP4"
    },
    "2918": {
      "op": "DUP1"
    },
    "2919": {
      "op": "ADD"
    },
    "2920": {
      "op": "OR"
    },
    "2921": {
      "op": "DUP6"
    },
    "2922": {
      "op": "SSTORE"
    },
    "2923": {
      "op": "PUSH2",
      "value": "0xB9C"
    },
    "2926": {
      "op": "JUMP"
    },
    "2927": {
      "op": "JUMPDEST"
    },
    "2928": {
      "op": "DUP3"
    },
    "2929": {
      "op": "DUP1"
    },
    "2930": {
      "op": "ADD"
    },
    "2931": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2933": {
      "op": "ADD"
    },
    "2934": {
      "op": "DUP6"
    },
    "2935": {
      "op": "SSTORE"
    },
    "2936": {
      "op": "DUP3"
    },
    "2937": {
      "op": "ISZERO"
    },
    "2938": {
      "op": "PUSH2",
      "value": "0xB9C"
    },
    "2941": {
      "op": "JUMPI"
    },
    "2942": {
      "op": "SWAP2"
    },
    "2943": {
      "op": "DUP3"
    },
    "2944": {
      "op": "ADD"
    },
    "2945": {
      "op": "JUMPDEST"
    },
    "2946": {
      "op": "DUP3"
    },
    "2947": {
      "op": "DUP2"
    },
    "2948": {
      "op": "GT"
    },
    "2949": {
      "op": "ISZERO"
    },
    "2950": {
      "op": "PUSH2",
      "value": "0xB9C"
    },
    "2953": {
      "op": "JUMPI"
    },
    "2954": {
      "op": "DUP3"
    },
    "2955": {
      "op": "MLOAD"
    },
    "2956": {
      "op": "DUP3"
    },
    "2957": {
      "op": "SSTORE"
    },
    "2958": {
      "op": "SWAP2"
    },
    "2959": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2961": {
      "op": "ADD"
    },
    "2962": {
      "op": "SWAP2"
    },
    "2963": {
      "op": "SWAP1"
    },
    "2964": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2966": {
      "op": "ADD"
    },
    "2967": {
      "op": "SWAP1"
    },
    "2968": {
      "op": "PUSH2",
      "value": "0xB81"
    },
    "2971": {
      "op": "JUMP"
    },
    "2972": {
      "op": "JUMPDEST"
    },
    "2973": {
      "op": "POP"
    },
    "2974": {
      "op": "PUSH2",
      "value": "0xBA8"
    },
    "2977": {
      "op": "SWAP3"
    },
    "2978": {
      "op": "SWAP2"
    },
    "2979": {
      "op": "POP"
    },
    "2980": {
      "op": "PUSH2",
      "value": "0xBAC"
    },
    "2983": {
      "jump": "i",
      "op": "JUMP"
    },
    "2984": {
      "op": "JUMPDEST"
    },
    "2985": {
      "op": "POP"
    },
    "2986": {
      "op": "SWAP1"
    },
    "2987": {
      "jump": "o",
      "op": "JUMP"
    },
    "2988": {
      "op": "JUMPDEST"
    },
    "2989": {
      "op": "JUMPDEST"
    },
    "2990": {
      "op": "DUP1"
    },
    "2991": {
      "op": "DUP3"
    },
    "2992": {
      "op": "GT"
    },
    "2993": {
      "op": "ISZERO"
    },
    "2994": {
      "op": "PUSH2",
      "value": "0xBA8"
    },
    "2997": {
      "op": "JUMPI"
    },
    "2998": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3000": {
      "op": "DUP2"
    },
    "3001": {
      "op": "SSTORE"
    },
    "3002": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3004": {
      "op": "ADD"
    },
    "3005": {
      "op": "PUSH2",
      "value": "0xBAD"
    },
    "3008": {
      "op": "JUMP"
    },
    "3009": {
      "op": "JUMPDEST"
    },
    "3010": {
      "op": "DUP1"
    },
    "3011": {
      "op": "CALLDATALOAD"
    },
    "3012": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3014": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3016": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3018": {
      "op": "SHL"
    },
    "3019": {
      "op": "SUB"
    },
    "3020": {
      "op": "DUP2"
    },
    "3021": {
      "op": "AND"
    },
    "3022": {
      "op": "DUP2"
    },
    "3023": {
      "op": "EQ"
    },
    "3024": {
      "op": "PUSH2",
      "value": "0xBD8"
    },
    "3027": {
      "op": "JUMPI"
    },
    "3028": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3030": {
      "op": "DUP1"
    },
    "3031": {
      "op": "REVERT"
    },
    "3032": {
      "op": "JUMPDEST"
    },
    "3033": {
      "op": "SWAP2"
    },
    "3034": {
      "op": "SWAP1"
    },
    "3035": {
      "op": "POP"
    },
    "3036": {
      "jump": "o",
      "op": "JUMP"
    },
    "3037": {
      "op": "JUMPDEST"
    },
    "3038": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3040": {
      "op": "DUP3"
    },
    "3041": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3043": {
      "op": "DUP4"
    },
    "3044": {
      "op": "ADD"
    },
    "3045": {
      "op": "SLT"
    },
    "3046": {
      "op": "PUSH2",
      "value": "0xBEE"
    },
    "3049": {
      "op": "JUMPI"
    },
    "3050": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3052": {
      "op": "DUP1"
    },
    "3053": {
      "op": "REVERT"
    },
    "3054": {
      "op": "JUMPDEST"
    },
    "3055": {
      "op": "DUP2"
    },
    "3056": {
      "op": "CALLDATALOAD"
    },
    "3057": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "3066": {
      "op": "DUP1"
    },
    "3067": {
      "op": "DUP3"
    },
    "3068": {
      "op": "GT"
    },
    "3069": {
      "op": "ISZERO"
    },
    "3070": {
      "op": "PUSH2",
      "value": "0xC09"
    },
    "3073": {
      "op": "JUMPI"
    },
    "3074": {
      "op": "PUSH2",
      "value": "0xC09"
    },
    "3077": {
      "op": "PUSH2",
      "value": "0xEB2"
    },
    "3080": {
      "jump": "i",
      "op": "JUMP"
    },
    "3081": {
      "op": "JUMPDEST"
    },
    "3082": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3084": {
      "op": "MLOAD"
    },
    "3085": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3087": {
      "op": "DUP4"
    },
    "3088": {
      "op": "ADD"
    },
    "3089": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3091": {
      "op": "NOT"
    },
    "3092": {
      "op": "SWAP1"
    },
    "3093": {
      "op": "DUP2"
    },
    "3094": {
      "op": "AND"
    },
    "3095": {
      "op": "PUSH1",
      "value": "0x3F"
    },
    "3097": {
      "op": "ADD"
    },
    "3098": {
      "op": "AND"
    },
    "3099": {
      "op": "DUP2"
    },
    "3100": {
      "op": "ADD"
    },
    "3101": {
      "op": "SWAP1"
    },
    "3102": {
      "op": "DUP3"
    },
    "3103": {
      "op": "DUP3"
    },
    "3104": {
      "op": "GT"
    },
    "3105": {
      "op": "DUP2"
    },
    "3106": {
      "op": "DUP4"
    },
    "3107": {
      "op": "LT"
    },
    "3108": {
      "op": "OR"
    },
    "3109": {
      "op": "ISZERO"
    },
    "3110": {
      "op": "PUSH2",
      "value": "0xC31"
    },
    "3113": {
      "op": "JUMPI"
    },
    "3114": {
      "op": "PUSH2",
      "value": "0xC31"
    },
    "3117": {
      "op": "PUSH2",
      "value": "0xEB2"
    },
    "3120": {
      "jump": "i",
      "op": "JUMP"
    },
    "3121": {
      "op": "JUMPDEST"
    },
    "3122": {
      "op": "DUP2"
    },
    "3123": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3125": {
      "op": "MSTORE"
    },
    "3126": {
      "op": "DUP4"
    },
    "3127": {
      "op": "DUP2"
    },
    "3128": {
      "op": "MSTORE"
    },
    "3129": {
      "op": "DUP7"
    },
    "3130": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3132": {
      "op": "DUP6"
    },
    "3133": {
      "op": "DUP9"
    },
    "3134": {
      "op": "ADD"
    },
    "3135": {
      "op": "ADD"
    },
    "3136": {
      "op": "GT"
    },
    "3137": {
      "op": "ISZERO"
    },
    "3138": {
      "op": "PUSH2",
      "value": "0xC4A"
    },
    "3141": {
      "op": "JUMPI"
    },
    "3142": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3144": {
      "op": "DUP1"
    },
    "3145": {
      "op": "REVERT"
    },
    "3146": {
      "op": "JUMPDEST"
    },
    "3147": {
      "op": "DUP4"
    },
    "3148": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3150": {
      "op": "DUP8"
    },
    "3151": {
      "op": "ADD"
    },
    "3152": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3154": {
      "op": "DUP4"
    },
    "3155": {
      "op": "ADD"
    },
    "3156": {
      "op": "CALLDATACOPY"
    },
    "3157": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3159": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3161": {
      "op": "DUP6"
    },
    "3162": {
      "op": "DUP4"
    },
    "3163": {
      "op": "ADD"
    },
    "3164": {
      "op": "ADD"
    },
    "3165": {
      "op": "MSTORE"
    },
    "3166": {
      "op": "DUP1"
    },
    "3167": {
      "op": "SWAP5"
    },
    "3168": {
      "op": "POP"
    },
    "3169": {
      "op": "POP"
    },
    "3170": {
      "op": "POP"
    },
    "3171": {
      "op": "POP"
    },
    "3172": {
      "op": "POP"
    },
    "3173": {
      "op": "SWAP3"
    },
    "3174": {
      "op": "SWAP2"
    },
    "3175": {
      "op": "POP"
    },
    "3176": {
      "op": "POP"
    },
    "3177": {
      "jump": "o",
      "op": "JUMP"
    },
    "3178": {
      "op": "JUMPDEST"
    },
    "3179": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3181": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3183": {
      "op": "DUP3"
    },
    "3184": {
      "op": "DUP5"
    },
    "3185": {
      "op": "SUB"
    },
    "3186": {
      "op": "SLT"
    },
    "3187": {
      "op": "ISZERO"
    },
    "3188": {
      "op": "PUSH2",
      "value": "0xC7C"
    },
    "3191": {
      "op": "JUMPI"
    },
    "3192": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3194": {
      "op": "DUP1"
    },
    "3195": {
      "op": "REVERT"
    },
    "3196": {
      "op": "JUMPDEST"
    },
    "3197": {
      "op": "PUSH2",
      "value": "0xC85"
    },
    "3200": {
      "op": "DUP3"
    },
    "3201": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3204": {
      "jump": "i",
      "op": "JUMP"
    },
    "3205": {
      "op": "JUMPDEST"
    },
    "3206": {
      "op": "SWAP4"
    },
    "3207": {
      "op": "SWAP3"
    },
    "3208": {
      "op": "POP"
    },
    "3209": {
      "op": "POP"
    },
    "3210": {
      "op": "POP"
    },
    "3211": {
      "jump": "o",
      "op": "JUMP"
    },
    "3212": {
      "op": "JUMPDEST"
    },
    "3213": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3215": {
      "op": "DUP1"
    },
    "3216": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3218": {
      "op": "DUP4"
    },
    "3219": {
      "op": "DUP6"
    },
    "3220": {
      "op": "SUB"
    },
    "3221": {
      "op": "SLT"
    },
    "3222": {
      "op": "ISZERO"
    },
    "3223": {
      "op": "PUSH2",
      "value": "0xC9F"
    },
    "3226": {
      "op": "JUMPI"
    },
    "3227": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3229": {
      "op": "DUP1"
    },
    "3230": {
      "op": "REVERT"
    },
    "3231": {
      "op": "JUMPDEST"
    },
    "3232": {
      "op": "PUSH2",
      "value": "0xCA8"
    },
    "3235": {
      "op": "DUP4"
    },
    "3236": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3239": {
      "jump": "i",
      "op": "JUMP"
    },
    "3240": {
      "op": "JUMPDEST"
    },
    "3241": {
      "op": "SWAP2"
    },
    "3242": {
      "op": "POP"
    },
    "3243": {
      "op": "PUSH2",
      "value": "0xCB6"
    },
    "3246": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3248": {
      "op": "DUP5"
    },
    "3249": {
      "op": "ADD"
    },
    "3250": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3253": {
      "jump": "i",
      "op": "JUMP"
    },
    "3254": {
      "op": "JUMPDEST"
    },
    "3255": {
      "op": "SWAP1"
    },
    "3256": {
      "op": "POP"
    },
    "3257": {
      "op": "SWAP3"
    },
    "3258": {
      "op": "POP"
    },
    "3259": {
      "op": "SWAP3"
    },
    "3260": {
      "op": "SWAP1"
    },
    "3261": {
      "op": "POP"
    },
    "3262": {
      "jump": "o",
      "op": "JUMP"
    },
    "3263": {
      "op": "JUMPDEST"
    },
    "3264": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3266": {
      "op": "DUP1"
    },
    "3267": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3269": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "3271": {
      "op": "DUP5"
    },
    "3272": {
      "op": "DUP7"
    },
    "3273": {
      "op": "SUB"
    },
    "3274": {
      "op": "SLT"
    },
    "3275": {
      "op": "ISZERO"
    },
    "3276": {
      "op": "PUSH2",
      "value": "0xCD4"
    },
    "3279": {
      "op": "JUMPI"
    },
    "3280": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3282": {
      "op": "DUP1"
    },
    "3283": {
      "op": "REVERT"
    },
    "3284": {
      "op": "JUMPDEST"
    },
    "3285": {
      "op": "PUSH2",
      "value": "0xCDD"
    },
    "3288": {
      "op": "DUP5"
    },
    "3289": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3292": {
      "jump": "i",
      "op": "JUMP"
    },
    "3293": {
      "op": "JUMPDEST"
    },
    "3294": {
      "op": "SWAP3"
    },
    "3295": {
      "op": "POP"
    },
    "3296": {
      "op": "PUSH2",
      "value": "0xCEB"
    },
    "3299": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3301": {
      "op": "DUP6"
    },
    "3302": {
      "op": "ADD"
    },
    "3303": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3306": {
      "jump": "i",
      "op": "JUMP"
    },
    "3307": {
      "op": "JUMPDEST"
    },
    "3308": {
      "op": "SWAP2"
    },
    "3309": {
      "op": "POP"
    },
    "3310": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3312": {
      "op": "DUP5"
    },
    "3313": {
      "op": "ADD"
    },
    "3314": {
      "op": "CALLDATALOAD"
    },
    "3315": {
      "op": "SWAP1"
    },
    "3316": {
      "op": "POP"
    },
    "3317": {
      "op": "SWAP3"
    },
    "3318": {
      "op": "POP"
    },
    "3319": {
      "op": "SWAP3"
    },
    "3320": {
      "op": "POP"
    },
    "3321": {
      "op": "SWAP3"
    },
    "3322": {
      "jump": "o",
      "op": "JUMP"
    },
    "3323": {
      "op": "JUMPDEST"
    },
    "3324": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3326": {
      "op": "DUP1"
    },
    "3327": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3329": {
      "op": "DUP4"
    },
    "3330": {
      "op": "DUP6"
    },
    "3331": {
      "op": "SUB"
    },
    "3332": {
      "op": "SLT"
    },
    "3333": {
      "op": "ISZERO"
    },
    "3334": {
      "op": "PUSH2",
      "value": "0xD0E"
    },
    "3337": {
      "op": "JUMPI"
    },
    "3338": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3340": {
      "op": "DUP1"
    },
    "3341": {
      "op": "REVERT"
    },
    "3342": {
      "op": "JUMPDEST"
    },
    "3343": {
      "op": "PUSH2",
      "value": "0xD17"
    },
    "3346": {
      "op": "DUP4"
    },
    "3347": {
      "op": "PUSH2",
      "value": "0xBC1"
    },
    "3350": {
      "jump": "i",
      "op": "JUMP"
    },
    "3351": {
      "op": "JUMPDEST"
    },
    "3352": {
      "op": "SWAP5"
    },
    "3353": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3355": {
      "op": "SWAP4"
    },
    "3356": {
      "op": "SWAP1"
    },
    "3357": {
      "op": "SWAP4"
    },
    "3358": {
      "op": "ADD"
    },
    "3359": {
      "op": "CALLDATALOAD"
    },
    "3360": {
      "op": "SWAP4"
    },
    "3361": {
      "op": "POP"
    },
    "3362": {
      "op": "POP"
    },
    "3363": {
      "op": "POP"
    },
    "3364": {
      "jump": "o",
      "op": "JUMP"
    },
    "3365": {
      "op": "JUMPDEST"
    },
    "3366": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3368": {
      "op": "DUP1"
    },
    "3369": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3371": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "3373": {
      "op": "DUP5"
    },
    "3374": {
      "op": "DUP7"
    },
    "3375": {
      "op": "SUB"
    },
    "3376": {
      "op": "SLT"
    },
    "3377": {
      "op": "ISZERO"
    },
    "3378": {
      "op": "PUSH2",
      "value": "0xD3A"
    },
    "3381": {
      "op": "JUMPI"
    },
    "3382": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3384": {
      "op": "DUP1"
    },
    "3385": {
      "op": "REVERT"
    },
    "3386": {
      "op": "JUMPDEST"
    },
    "3387": {
      "op": "DUP4"
    },
    "3388": {
      "op": "CALLDATALOAD"
    },
    "3389": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "3398": {
      "op": "DUP1"
    },
    "3399": {
      "op": "DUP3"
    },
    "3400": {
      "op": "GT"
    },
    "3401": {
      "op": "ISZERO"
    },
    "3402": {
      "op": "PUSH2",
      "value": "0xD52"
    },
    "3405": {
      "op": "JUMPI"
    },
    "3406": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3408": {
      "op": "DUP1"
    },
    "3409": {
      "op": "REVERT"
    },
    "3410": {
      "op": "JUMPDEST"
    },
    "3411": {
      "op": "PUSH2",
      "value": "0xD5E"
    },
    "3414": {
      "op": "DUP8"
    },
    "3415": {
      "op": "DUP4"
    },
    "3416": {
      "op": "DUP9"
    },
    "3417": {
      "op": "ADD"
    },
    "3418": {
      "op": "PUSH2",
      "value": "0xBDD"
    },
    "3421": {
      "jump": "i",
      "op": "JUMP"
    },
    "3422": {
      "op": "JUMPDEST"
    },
    "3423": {
      "op": "SWAP5"
    },
    "3424": {
      "op": "POP"
    },
    "3425": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3427": {
      "op": "DUP7"
    },
    "3428": {
      "op": "ADD"
    },
    "3429": {
      "op": "CALLDATALOAD"
    },
    "3430": {
      "op": "SWAP2"
    },
    "3431": {
      "op": "POP"
    },
    "3432": {
      "op": "DUP1"
    },
    "3433": {
      "op": "DUP3"
    },
    "3434": {
      "op": "GT"
    },
    "3435": {
      "op": "ISZERO"
    },
    "3436": {
      "op": "PUSH2",
      "value": "0xD74"
    },
    "3439": {
      "op": "JUMPI"
    },
    "3440": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3442": {
      "op": "DUP1"
    },
    "3443": {
      "op": "REVERT"
    },
    "3444": {
      "op": "JUMPDEST"
    },
    "3445": {
      "op": "POP"
    },
    "3446": {
      "op": "PUSH2",
      "value": "0xD81"
    },
    "3449": {
      "op": "DUP7"
    },
    "3450": {
      "op": "DUP3"
    },
    "3451": {
      "op": "DUP8"
    },
    "3452": {
      "op": "ADD"
    },
    "3453": {
      "op": "PUSH2",
      "value": "0xBDD"
    },
    "3456": {
      "jump": "i",
      "op": "JUMP"
    },
    "3457": {
      "op": "JUMPDEST"
    },
    "3458": {
      "op": "SWAP3"
    },
    "3459": {
      "op": "POP"
    },
    "3460": {
      "op": "POP"
    },
    "3461": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3463": {
      "op": "DUP5"
    },
    "3464": {
      "op": "ADD"
    },
    "3465": {
      "op": "CALLDATALOAD"
    },
    "3466": {
      "op": "SWAP1"
    },
    "3467": {
      "op": "POP"
    },
    "3468": {
      "op": "SWAP3"
    },
    "3469": {
      "op": "POP"
    },
    "3470": {
      "op": "SWAP3"
    },
    "3471": {
      "op": "POP"
    },
    "3472": {
      "op": "SWAP3"
    },
    "3473": {
      "jump": "o",
      "op": "JUMP"
    },
    "3474": {
      "op": "JUMPDEST"
    },
    "3475": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3477": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3479": {
      "op": "DUP1"
    },
    "3480": {
      "op": "DUP4"
    },
    "3481": {
      "op": "MSTORE"
    },
    "3482": {
      "op": "DUP4"
    },
    "3483": {
      "op": "MLOAD"
    },
    "3484": {
      "op": "DUP1"
    },
    "3485": {
      "op": "DUP3"
    },
    "3486": {
      "op": "DUP6"
    },
    "3487": {
      "op": "ADD"
    },
    "3488": {
      "op": "MSTORE"
    },
    "3489": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3491": {
      "op": "JUMPDEST"
    },
    "3492": {
      "op": "DUP2"
    },
    "3493": {
      "op": "DUP2"
    },
    "3494": {
      "op": "LT"
    },
    "3495": {
      "op": "ISZERO"
    },
    "3496": {
      "op": "PUSH2",
      "value": "0xDBF"
    },
    "3499": {
      "op": "JUMPI"
    },
    "3500": {
      "op": "DUP6"
    },
    "3501": {
      "op": "DUP2"
    },
    "3502": {
      "op": "ADD"
    },
    "3503": {
      "op": "DUP4"
    },
    "3504": {
      "op": "ADD"
    },
    "3505": {
      "op": "MLOAD"
    },
    "3506": {
      "op": "DUP6"
    },
    "3507": {
      "op": "DUP3"
    },
    "3508": {
      "op": "ADD"
    },
    "3509": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3511": {
      "op": "ADD"
    },
    "3512": {
      "op": "MSTORE"
    },
    "3513": {
      "op": "DUP3"
    },
    "3514": {
      "op": "ADD"
    },
    "3515": {
      "op": "PUSH2",
      "value": "0xDA3"
    },
    "3518": {
      "op": "JUMP"
    },
    "3519": {
      "op": "JUMPDEST"
    },
    "3520": {
      "op": "DUP2"
    },
    "3521": {
      "op": "DUP2"
    },
    "3522": {
      "op": "GT"
    },
    "3523": {
      "op": "ISZERO"
    },
    "3524": {
      "op": "PUSH2",
      "value": "0xDD1"
    },
    "3527": {
      "op": "JUMPI"
    },
    "3528": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3530": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3532": {
      "op": "DUP4"
    },
    "3533": {
      "op": "DUP8"
    },
    "3534": {
      "op": "ADD"
    },
    "3535": {
      "op": "ADD"
    },
    "3536": {
      "op": "MSTORE"
    },
    "3537": {
      "op": "JUMPDEST"
    },
    "3538": {
      "op": "POP"
    },
    "3539": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3541": {
      "op": "ADD"
    },
    "3542": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "3544": {
      "op": "NOT"
    },
    "3545": {
      "op": "AND"
    },
    "3546": {
      "op": "SWAP3"
    },
    "3547": {
      "op": "SWAP1"
    },
    "3548": {
      "op": "SWAP3"
    },
    "3549": {
      "op": "ADD"
    },
    "3550": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3552": {
      "op": "ADD"
    },
    "3553": {
      "op": "SWAP4"
    },
    "3554": {
      "op": "SWAP3"
    },
    "3555": {
      "op": "POP"
    },
    "3556": {
      "op": "POP"
    },
    "3557": {
      "op": "POP"
    },
    "3558": {
      "jump": "o",
      "op": "JUMP"
    },
    "3559": {
      "op": "JUMPDEST"
    },
    "3560": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3562": {
      "op": "DUP1"
    },
    "3563": {
      "op": "DUP3"
    },
    "3564": {
      "op": "MSTORE"
    },
    "3565": {
      "op": "PUSH1",
      "value": "0x2B"
    },
    "3567": {
      "op": "SWAP1"
    },
    "3568": {
      "op": "DUP3"
    },
    "3569": {
      "op": "ADD"
    },
    "3570": {
      "op": "MSTORE"
    },
    "3571": {
      "op": "PUSH32",
      "value": "0x496E697469616C697A61626C653A20636F6E7472616374206973206E6F742069"
    },
    "3604": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "3606": {
      "op": "DUP3"
    },
    "3607": {
      "op": "ADD"
    },
    "3608": {
      "op": "MSTORE"
    },
    "3609": {
      "op": "PUSH11",
      "value": "0x6E697469616C697A696E67"
    },
    "3621": {
      "op": "PUSH1",
      "value": "0xA8"
    },
    "3623": {
      "op": "SHL"
    },
    "3624": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "3626": {
      "op": "DUP3"
    },
    "3627": {
      "op": "ADD"
    },
    "3628": {
      "op": "MSTORE"
    },
    "3629": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "3631": {
      "op": "ADD"
    },
    "3632": {
      "op": "SWAP1"
    },
    "3633": {
      "jump": "o",
      "op": "JUMP"
    },
    "3634": {
      "op": "JUMPDEST"
    },
    "3635": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3637": {
      "op": "DUP3"
    },
    "3638": {
      "op": "NOT"
    },
    "3639": {
      "op": "DUP3"
    },
    "3640": {
      "op": "GT"
    },
    "3641": {
      "op": "ISZERO"
    },
    "3642": {
      "op": "PUSH2",
      "value": "0xE45"
    },
    "3645": {
      "op": "JUMPI"
    },
    "3646": {
      "op": "PUSH2",
      "value": "0xE45"
    },
    "3649": {
      "op": "PUSH2",
      "value": "0xE9C"
    },
    "3652": {
      "jump": "i",
      "op": "JUMP"
    },
    "3653": {
      "op": "JUMPDEST"
    },
    "3654": {
      "op": "POP"
    },
    "3655": {
      "op": "ADD"
    },
    "3656": {
      "op": "SWAP1"
    },
    "3657": {
      "jump": "o",
      "op": "JUMP"
    },
    "3658": {
      "op": "JUMPDEST"
    },
    "3659": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3661": {
      "op": "DUP3"
    },
    "3662": {
      "op": "DUP3"
    },
    "3663": {
      "op": "LT"
    },
    "3664": {
      "op": "ISZERO"
    },
    "3665": {
      "op": "PUSH2",
      "value": "0xE5C"
    },
    "3668": {
      "op": "JUMPI"
    },
    "3669": {
      "op": "PUSH2",
      "value": "0xE5C"
    },
    "3672": {
      "op": "PUSH2",
      "value": "0xE9C"
    },
    "3675": {
      "jump": "i",
      "op": "JUMP"
    },
    "3676": {
      "op": "JUMPDEST"
    },
    "3677": {
      "op": "POP"
    },
    "3678": {
      "op": "SUB"
    },
    "3679": {
      "op": "SWAP1"
    },
    "3680": {
      "jump": "o",
      "op": "JUMP"
    },
    "3681": {
      "op": "JUMPDEST"
    },
    "3682": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3684": {
      "op": "DUP2"
    },
    "3685": {
      "op": "DUP2"
    },
    "3686": {
      "op": "SHR"
    },
    "3687": {
      "op": "SWAP1"
    },
    "3688": {
      "op": "DUP3"
    },
    "3689": {
      "op": "AND"
    },
    "3690": {
      "op": "DUP1"
    },
    "3691": {
      "op": "PUSH2",
      "value": "0xE75"
    },
    "3694": {
      "op": "JUMPI"
    },
    "3695": {
      "op": "PUSH1",
      "value": "0x7F"
    },
    "3697": {
      "op": "DUP3"
    },
    "3698": {
      "op": "AND"
    },
    "3699": {
      "op": "SWAP2"
    },
    "3700": {
      "op": "POP"
    },
    "3701": {
      "op": "JUMPDEST"
    },
    "3702": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "3704": {
      "op": "DUP3"
    },
    "3705": {
      "op": "LT"
    },
    "3706": {
      "op": "DUP2"
    },
    "3707": {
      "op": "EQ"
    },
    "3708": {
      "op": "ISZERO"
    },
    "3709": {
      "op": "PUSH2",
      "value": "0xE96"
    },
    "3712": {
      "op": "JUMPI"
    },
    "3713": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "3718": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3720": {
      "op": "SHL"
    },
    "3721": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3723": {
      "op": "MSTORE"
    },
    "3724": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "3726": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "3728": {
      "op": "MSTORE"
    },
    "3729": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "3731": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3733": {
      "op": "REVERT"
    },
    "3734": {
      "op": "JUMPDEST"
    },
    "3735": {
      "op": "POP"
    },
    "3736": {
      "op": "SWAP2"
    },
    "3737": {
      "op": "SWAP1"
    },
    "3738": {
      "op": "POP"
    },
    "3739": {
      "jump": "o",
      "op": "JUMP"
    },
    "3740": {
      "op": "JUMPDEST"
    },
    "3741": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "3746": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3748": {
      "op": "SHL"
    },
    "3749": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3751": {
      "op": "MSTORE"
    },
    "3752": {
      "op": "PUSH1",
      "value": "0x11"
    },
    "3754": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "3756": {
      "op": "MSTORE"
    },
    "3757": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "3759": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3761": {
      "op": "REVERT"
    },
    "3762": {
      "op": "JUMPDEST"
    },
    "3763": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "3768": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3770": {
      "op": "SHL"
    },
    "3771": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3773": {
      "op": "MSTORE"
    },
    "3774": {
      "op": "PUSH1",
      "value": "0x41"
    },
    "3776": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "3778": {
      "op": "MSTORE"
    },
    "3779": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "3781": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "3783": {
      "op": "REVERT"
    }
  },
  "sha1": "f1036714c06873c13b56f03770d7a9cdc808c63f",
  "source": "//SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.8.0;\n\nimport {ERC20Upgradeable} from \"@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol\";\nimport {IMintableERC20} from \"./IMintableERC20.sol\";\n\ncontract TestCurrencyUUPS is ERC20Upgradeable, IMintableERC20 {\n  address private _owner;\n\n  function initialize(\n    string memory name_,\n    string memory symbol_,\n    uint256 initialSupply\n  ) public initializer {\n    _owner = _msgSender();\n    __ERC20_init(name_, symbol_);\n    _mint(_owner, initialSupply);\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": "220:665:27:-:0;;;;;;;;;;;;;;;;;;;",
  "sourcePath": "contracts/mocks/TestCurrencyUUPS.sol",
  "type": "contract"
}