UNPKG

@alpsfinance/core

Version:

This is the official Alps Finance smart contract repository.

1,408 lines (1,407 loc) 65.8 kB
{ "contractName": "IERC20Custom", "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": [], "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" }, { "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": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "cap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_newCap", "type": "uint256" } ], "name": "setCap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_increaseCap", "type": "uint256" } ], "name": "increaseCap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_decreaseCap", "type": "uint256" } ], "name": "decreaseCap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.8.11+commit.d7f03943\"},\"language\":\"Solidity\",\"output\":{\"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\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseCap\",\"type\":\"uint256\"}],\"name\":\"decreaseCap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_increaseCap\",\"type\":\"uint256\"}],\"name\":\"increaseCap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"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\":\"pause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCap\",\"type\":\"uint256\"}],\"name\":\"setCap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\"},{\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/token/interfaces/IERC20Custom.sol\":\"IERC20Custom\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xbbc8ac883ac3c0078ce5ad3e288fbb3ffcc8a30c3a98c0fda0114d64fc44fca2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87a7a5d2f6f63f84598af02b8c50ca2df2631cb8ba2453e8d95fcb17e4be9824\",\"dweb:/ipfs/QmR76hqtAcRqoFj33tmNjcWTLrgNsAaakYwnKZ8zoJtKei\"]},\"project:/contracts/token/interfaces/IERC20Custom.sol\":{\"keccak256\":\"0x6f50952568dc5b577661f6d1730b39cfa7628a39390103c89190afdfc565d1f4\",\"license\":\"AGPL-3.0\",\"urls\":[\"bzz-raw://480386fcd5b5e3456e80150bf5444f1b2b067746be0245f287b78fc03e81133a\",\"dweb:/ipfs/QmWBfMsjQPEKj7jav96428j8Ss4AUVtkj69nsVsPZb8E1S\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [], "sourceMap": "", "deployedSourceMap": "", "source": "// SPDX-License-Identifier: AGPL-3.0\n\npragma solidity ^0.8.11;\n\nimport \"@openzeppelin/contracts/token/ERC20/IERC20.sol\";\n\ninterface IERC20Custom is IERC20 {\n function name() external view returns (string memory);\n\n function symbol() external view returns (string memory);\n\n function decimals() external view returns (uint8);\n\n function cap() external view returns (uint256);\n\n function setCap(uint256 _newCap) external;\n\n function increaseCap(uint256 _increaseCap) external;\n\n function decreaseCap(uint256 _decreaseCap) external;\n\n function pause() external;\n\n function unpause() external;\n\n function mint(address to, uint256 amount) external;\n\n function burn(uint256 amount) external;\n\n function burnFrom(address account, uint256 amount) external;\n}\n", "sourcePath": "/Users/yosephks/Documents/GitHub/alpsfinance-smart-contracts/contracts/token/interfaces/IERC20Custom.sol", "ast": { "absolutePath": "project:/contracts/token/interfaces/IERC20Custom.sol", "exportedSymbols": { "IERC20": [ 2884 ], "IERC20Custom": [ 9652 ] }, "id": 9653, "license": "AGPL-3.0", "nodeType": "SourceUnit", "nodes": [ { "id": 9588, "literals": [ "solidity", "^", "0.8", ".11" ], "nodeType": "PragmaDirective", "src": "38:24:53" }, { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "id": 9589, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 9653, "sourceUnit": 2885, "src": "64:56:53", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 9590, "name": "IERC20", "nodeType": "IdentifierPath", "referencedDeclaration": 2884, "src": "148:6:53" }, "id": 9591, "nodeType": "InheritanceSpecifier", "src": "148:6:53" } ], "canonicalName": "IERC20Custom", "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 9652, "linearizedBaseContracts": [ 9652, 2884 ], "name": "IERC20Custom", "nameLocation": "132:12:53", "nodeType": "ContractDefinition", "nodes": [ { "functionSelector": "06fdde03", "id": 9596, "implemented": false, "kind": "function", "modifiers": [], "name": "name", "nameLocation": "170:4:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9592, "nodeType": "ParameterList", "parameters": [], "src": "174:2:53" }, "returnParameters": { "id": 9595, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9594, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9596, "src": "200:13:53", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 9593, "name": "string", "nodeType": "ElementaryTypeName", "src": "200:6:53", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "199:15:53" }, "scope": 9652, "src": "161:54:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "95d89b41", "id": 9601, "implemented": false, "kind": "function", "modifiers": [], "name": "symbol", "nameLocation": "230:6:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9597, "nodeType": "ParameterList", "parameters": [], "src": "236:2:53" }, "returnParameters": { "id": 9600, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9599, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9601, "src": "262:13:53", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 9598, "name": "string", "nodeType": "ElementaryTypeName", "src": "262:6:53", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "261:15:53" }, "scope": 9652, "src": "221:56:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "313ce567", "id": 9606, "implemented": false, "kind": "function", "modifiers": [], "name": "decimals", "nameLocation": "292:8:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9602, "nodeType": "ParameterList", "parameters": [], "src": "300:2:53" }, "returnParameters": { "id": 9605, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9604, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9606, "src": "326:5:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, "typeName": { "id": 9603, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "326:5:53", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "visibility": "internal" } ], "src": "325:7:53" }, "scope": 9652, "src": "283:50:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "355274ea", "id": 9611, "implemented": false, "kind": "function", "modifiers": [], "name": "cap", "nameLocation": "348:3:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9607, "nodeType": "ParameterList", "parameters": [], "src": "351:2:53" }, "returnParameters": { "id": 9610, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9609, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9611, "src": "377:7:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9608, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "377:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "376:9:53" }, "scope": 9652, "src": "339:47:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "47786d37", "id": 9616, "implemented": false, "kind": "function", "modifiers": [], "name": "setCap", "nameLocation": "401:6:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9614, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9613, "mutability": "mutable", "name": "_newCap", "nameLocation": "416:7:53", "nodeType": "VariableDeclaration", "scope": 9616, "src": "408:15:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9612, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "408:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "407:17:53" }, "returnParameters": { "id": 9615, "nodeType": "ParameterList", "parameters": [], "src": "433:0:53" }, "scope": 9652, "src": "392:42:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "523e9551", "id": 9621, "implemented": false, "kind": "function", "modifiers": [], "name": "increaseCap", "nameLocation": "449:11:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9619, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9618, "mutability": "mutable", "name": "_increaseCap", "nameLocation": "469:12:53", "nodeType": "VariableDeclaration", "scope": 9621, "src": "461:20:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9617, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "461:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "460:22:53" }, "returnParameters": { "id": 9620, "nodeType": "ParameterList", "parameters": [], "src": "491:0:53" }, "scope": 9652, "src": "440:52:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "7430a689", "id": 9626, "implemented": false, "kind": "function", "modifiers": [], "name": "decreaseCap", "nameLocation": "507:11:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9624, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9623, "mutability": "mutable", "name": "_decreaseCap", "nameLocation": "527:12:53", "nodeType": "VariableDeclaration", "scope": 9626, "src": "519:20:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9622, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "519:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "518:22:53" }, "returnParameters": { "id": 9625, "nodeType": "ParameterList", "parameters": [], "src": "549:0:53" }, "scope": 9652, "src": "498:52:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "8456cb59", "id": 9629, "implemented": false, "kind": "function", "modifiers": [], "name": "pause", "nameLocation": "565:5:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9627, "nodeType": "ParameterList", "parameters": [], "src": "570:2:53" }, "returnParameters": { "id": 9628, "nodeType": "ParameterList", "parameters": [], "src": "581:0:53" }, "scope": 9652, "src": "556:26:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "3f4ba83a", "id": 9632, "implemented": false, "kind": "function", "modifiers": [], "name": "unpause", "nameLocation": "597:7:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9630, "nodeType": "ParameterList", "parameters": [], "src": "604:2:53" }, "returnParameters": { "id": 9631, "nodeType": "ParameterList", "parameters": [], "src": "615:0:53" }, "scope": 9652, "src": "588:28:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "40c10f19", "id": 9639, "implemented": false, "kind": "function", "modifiers": [], "name": "mint", "nameLocation": "631:4:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9637, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9634, "mutability": "mutable", "name": "to", "nameLocation": "644:2:53", "nodeType": "VariableDeclaration", "scope": 9639, "src": "636:10:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 9633, "name": "address", "nodeType": "ElementaryTypeName", "src": "636:7:53", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 9636, "mutability": "mutable", "name": "amount", "nameLocation": "656:6:53", "nodeType": "VariableDeclaration", "scope": 9639, "src": "648:14:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9635, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "648:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "635:28:53" }, "returnParameters": { "id": 9638, "nodeType": "ParameterList", "parameters": [], "src": "672:0:53" }, "scope": 9652, "src": "622:51:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "42966c68", "id": 9644, "implemented": false, "kind": "function", "modifiers": [], "name": "burn", "nameLocation": "688:4:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9642, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9641, "mutability": "mutable", "name": "amount", "nameLocation": "701:6:53", "nodeType": "VariableDeclaration", "scope": 9644, "src": "693:14:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9640, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "693:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "692:16:53" }, "returnParameters": { "id": 9643, "nodeType": "ParameterList", "parameters": [], "src": "717:0:53" }, "scope": 9652, "src": "679:39:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "79cc6790", "id": 9651, "implemented": false, "kind": "function", "modifiers": [], "name": "burnFrom", "nameLocation": "733:8:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9649, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9646, "mutability": "mutable", "name": "account", "nameLocation": "750:7:53", "nodeType": "VariableDeclaration", "scope": 9651, "src": "742:15:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 9645, "name": "address", "nodeType": "ElementaryTypeName", "src": "742:7:53", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 9648, "mutability": "mutable", "name": "amount", "nameLocation": "767:6:53", "nodeType": "VariableDeclaration", "scope": 9651, "src": "759:14:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9647, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "759:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "741:33:53" }, "returnParameters": { "id": 9650, "nodeType": "ParameterList", "parameters": [], "src": "783:0:53" }, "scope": 9652, "src": "724:60:53", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], "scope": 9653, "src": "122:664:53", "usedErrors": [] } ], "src": "38:749:53" }, "legacyAST": { "absolutePath": "project:/contracts/token/interfaces/IERC20Custom.sol", "exportedSymbols": { "IERC20": [ 2884 ], "IERC20Custom": [ 9652 ] }, "id": 9653, "license": "AGPL-3.0", "nodeType": "SourceUnit", "nodes": [ { "id": 9588, "literals": [ "solidity", "^", "0.8", ".11" ], "nodeType": "PragmaDirective", "src": "38:24:53" }, { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "id": 9589, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 9653, "sourceUnit": 2885, "src": "64:56:53", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 9590, "name": "IERC20", "nodeType": "IdentifierPath", "referencedDeclaration": 2884, "src": "148:6:53" }, "id": 9591, "nodeType": "InheritanceSpecifier", "src": "148:6:53" } ], "canonicalName": "IERC20Custom", "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 9652, "linearizedBaseContracts": [ 9652, 2884 ], "name": "IERC20Custom", "nameLocation": "132:12:53", "nodeType": "ContractDefinition", "nodes": [ { "functionSelector": "06fdde03", "id": 9596, "implemented": false, "kind": "function", "modifiers": [], "name": "name", "nameLocation": "170:4:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9592, "nodeType": "ParameterList", "parameters": [], "src": "174:2:53" }, "returnParameters": { "id": 9595, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9594, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9596, "src": "200:13:53", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 9593, "name": "string", "nodeType": "ElementaryTypeName", "src": "200:6:53", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "199:15:53" }, "scope": 9652, "src": "161:54:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "95d89b41", "id": 9601, "implemented": false, "kind": "function", "modifiers": [], "name": "symbol", "nameLocation": "230:6:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9597, "nodeType": "ParameterList", "parameters": [], "src": "236:2:53" }, "returnParameters": { "id": 9600, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9599, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9601, "src": "262:13:53", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 9598, "name": "string", "nodeType": "ElementaryTypeName", "src": "262:6:53", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "261:15:53" }, "scope": 9652, "src": "221:56:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "313ce567", "id": 9606, "implemented": false, "kind": "function", "modifiers": [], "name": "decimals", "nameLocation": "292:8:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9602, "nodeType": "ParameterList", "parameters": [], "src": "300:2:53" }, "returnParameters": { "id": 9605, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9604, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9606, "src": "326:5:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, "typeName": { "id": 9603, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "326:5:53", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "visibility": "internal" } ], "src": "325:7:53" }, "scope": 9652, "src": "283:50:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "355274ea", "id": 9611, "implemented": false, "kind": "function", "modifiers": [], "name": "cap", "nameLocation": "348:3:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9607, "nodeType": "ParameterList", "parameters": [], "src": "351:2:53" }, "returnParameters": { "id": 9610, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9609, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 9611, "src": "377:7:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9608, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "377:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "376:9:53" }, "scope": 9652, "src": "339:47:53", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "47786d37", "id": 9616, "implemented": false, "kind": "function", "modifiers": [], "name": "setCap", "nameLocation": "401:6:53", "nodeType": "FunctionDefinition", "parameters": { "id": 9614, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 9613, "mutability": "mutable", "name": "_newCap", "nameLocation": "416:7:53", "nodeType": "VariableDeclaration", "scope": 9616, "src": "408:15:53", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 9612, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "408:7:53", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256"