447 lines
50 KiB
JSON
447 lines
50 KiB
JSON
|
{
|
||
|
"address": "0x34a22f3911De437307c6f4485931779670f78764",
|
||
|
"abi": [
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "constructor"
|
||
|
},
|
||
|
{
|
||
|
"anonymous": false,
|
||
|
"inputs": [
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "owner",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "spender",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"indexed": false,
|
||
|
"internalType": "uint256",
|
||
|
"name": "value",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "Approval",
|
||
|
"type": "event"
|
||
|
},
|
||
|
{
|
||
|
"anonymous": false,
|
||
|
"inputs": [
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "from",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "to",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"indexed": false,
|
||
|
"internalType": "uint256",
|
||
|
"name": "value",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "Transfer",
|
||
|
"type": "event"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "owner",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "spender",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"name": "allowance",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "spender",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "amount",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "approve",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "",
|
||
|
"type": "bool"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "account",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"name": "balanceOf",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "decimals",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "",
|
||
|
"type": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "spender",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "subtractedValue",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "decreaseAllowance",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "",
|
||
|
"type": "bool"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "spender",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "addedValue",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "increaseAllowance",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "",
|
||
|
"type": "bool"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "holder",
|
||
|
"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"
|
||
|
}
|
||
|
],
|
||
|
"transactionHash": "0x2a8f752c0b33e552e18b5b31264e692f4ce777df274b0e4341f7a4198088bea1",
|
||
|
"receipt": {
|
||
|
"to": null,
|
||
|
"from": "0x3A39904B71595608524274BFD8c20FCfd9e77236",
|
||
|
"contractAddress": "0x34a22f3911De437307c6f4485931779670f78764",
|
||
|
"transactionIndex": 0,
|
||
|
"gasUsed": "669435",
|
||
|
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
||
|
"blockHash": "0x812c30b169b8986399c9d762a7a22ec64702ab019254e73f063b5358af31342c",
|
||
|
"transactionHash": "0x2a8f752c0b33e552e18b5b31264e692f4ce777df274b0e4341f7a4198088bea1",
|
||
|
"logs": [],
|
||
|
"blockNumber": 1269339,
|
||
|
"cumulativeGasUsed": "669435",
|
||
|
"status": 1,
|
||
|
"byzantium": true
|
||
|
},
|
||
|
"args": [],
|
||
|
"numDeployments": 1,
|
||
|
"solcInputHash": "c09963445d55f04ec1cd7dd500a29a55",
|
||
|
"metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"holder\",\"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\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the
|
||
|
"bytecode": "0x60806040523480156200001157600080fd5b50604051806040016040528060098152602001682a32b9ba2a37b5b2b760b91b815250604051806040016040528060038152602001621514d560ea1b815250816003908162000061919062000120565b50600462000070828262000120565b505050620001ec565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620000a457607f821691505b602082108103620000c557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200011b576000816000526020600020601f850160051c81016020861015620000f65750805b601f850160051c820191505b81811015620001175782815560010162000102565b5050505b505050565b81516001600160401b038111156200013c576200013c62000079565b62000154816200014d84546200008f565b84620000cb565b602080601f8311600181146200018c5760008415620001735750858301515b600019600386901b1c1916600185901b17855562000117565b600085815260208120601f198616915b82811015620001bd578886015182559484019460019091019084016200019c565b5085821015620001dc5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610a3c80620001fc6000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c806340c10f1911610081578063a457c2d71161005b578063a457c2d7146101a7578063a9059cbb146101ba578063dd62ed3e146101cd57600080fd5b806340c10f191461016157806370a082311461017657806395d89b411461019f57600080fd5b806323b872dd116100b257806323b872dd1461012c578063313ce5671461013f578063395093511461014e57600080fd5b806306fdde03146100d9578063095ea7b3146100f757806318160ddd1461011a575b600080fd5b6100e1610206565b6040516100ee9190610885565b60405180910390f35b61010a6101053660046108f0565b610298565b60405190151581526020016100ee565b6002545b6040519081526020016100ee565b61010a61013a36600461091a565b6102b2565b604051601281526020016100ee565b61010a61015c3660046108f0565b6102d6565b61017461016f3660046108f0565b610315565b005b61011e610184366004610956565b6001600160a01b031660009081526020819052604090205490565b6100e1610323565b61010a6101b53660046108f0565b610332565b61010a6101c83660046108f0565b6103e1565b61011e6101db366004610978565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b606060038054610215906109ab565b80601f0160208091040260200160405190810160405280929190818152602001828054610241906109ab565b801561028e5780601f106102635761010080835404028352916020019161028e565b820191906000526020600020905b81548152906001019060200180831161027157829003601f168201915b5050505050905090565b6000336102a68185856103ef565b60019150505b92915050565b6000336102c0858285610547565b6102cb8585856105d9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906102a690829086906103109087906109e5565b6103ef565b61031f82826107c6565b5050565b606060048054610215906109ab565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103d45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102cb82868684036103ef565b6000336102a68185856105d9565b6001600160a01b03831661046a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b0382166104e65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146105d357818110156105c65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103cb565b6105d384848484036103ef565b50505050565b6001600160a01b0383166106555760405162461bcd60e51b815260206004820152
|
||
|
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d45760003560e01c806340c10f1911610081578063a457c2d71161005b578063a457c2d7146101a7578063a9059cbb146101ba578063dd62ed3e146101cd57600080fd5b806340c10f191461016157806370a082311461017657806395d89b411461019f57600080fd5b806323b872dd116100b257806323b872dd1461012c578063313ce5671461013f578063395093511461014e57600080fd5b806306fdde03146100d9578063095ea7b3146100f757806318160ddd1461011a575b600080fd5b6100e1610206565b6040516100ee9190610885565b60405180910390f35b61010a6101053660046108f0565b610298565b60405190151581526020016100ee565b6002545b6040519081526020016100ee565b61010a61013a36600461091a565b6102b2565b604051601281526020016100ee565b61010a61015c3660046108f0565b6102d6565b61017461016f3660046108f0565b610315565b005b61011e610184366004610956565b6001600160a01b031660009081526020819052604090205490565b6100e1610323565b61010a6101b53660046108f0565b610332565b61010a6101c83660046108f0565b6103e1565b61011e6101db366004610978565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b606060038054610215906109ab565b80601f0160208091040260200160405190810160405280929190818152602001828054610241906109ab565b801561028e5780601f106102635761010080835404028352916020019161028e565b820191906000526020600020905b81548152906001019060200180831161027157829003601f168201915b5050505050905090565b6000336102a68185856103ef565b60019150505b92915050565b6000336102c0858285610547565b6102cb8585856105d9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906102a690829086906103109087906109e5565b6103ef565b61031f82826107c6565b5050565b606060048054610215906109ab565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103d45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6102cb82868684036103ef565b6000336102a68185856105d9565b6001600160a01b03831661046a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b0382166104e65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146105d357818110156105c65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103cb565b6105d384848484036103ef565b50505050565b6001600160a01b0383166106555760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b0382166106d15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b038316600090815260208190526040902054818110156107605760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016103cb565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36105d3565b6001600160a01b03821661081c5760405162461bcd60e51b815260206004820152601f60248201527f455243
|
||
|
"devdoc": {
|
||
|
"events": {
|
||
|
"Approval(address,address,uint256)": {
|
||
|
"details": "Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance."
|
||
|
},
|
||
|
"Transfer(address,address,uint256)": {
|
||
|
"details": "Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero."
|
||
|
}
|
||
|
},
|
||
|
"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
|
||
|
},
|
||
|
"userdoc": {
|
||
|
"kind": "user",
|
||
|
"methods": {},
|
||
|
"version": 1
|
||
|
},
|
||
|
"storageLayout": {
|
||
|
"storage": [
|
||
|
{
|
||
|
"astId": 15,
|
||
|
"contract": "contracts/TestToken.sol:TestToken",
|
||
|
"label": "_balances",
|
||
|
"offset": 0,
|
||
|
"slot": "0",
|
||
|
"type": "t_mapping(t_address,t_uint256)"
|
||
|
},
|
||
|
{
|
||
|
"astId": 21,
|
||
|
"contract": "contracts/TestToken.sol:TestToken",
|
||
|
"label": "_allowances",
|
||
|
"offset": 0,
|
||
|
"slot": "1",
|
||
|
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
|
||
|
},
|
||
|
{
|
||
|
"astId": 23,
|
||
|
"contract": "contracts/TestToken.sol:TestToken",
|
||
|
"label": "_totalSupply",
|
||
|
"offset": 0,
|
||
|
"slot": "2",
|
||
|
"type": "t_uint256"
|
||
|
},
|
||
|
{
|
||
|
"astId": 25,
|
||
|
"contract": "contracts/TestToken.sol:TestToken",
|
||
|
"label": "_name",
|
||
|
"offset": 0,
|
||
|
"slot": "3",
|
||
|
"type": "t_string_storage"
|
||
|
},
|
||
|
{
|
||
|
"astId": 27,
|
||
|
"contract": "contracts/TestToken.sol:TestToken",
|
||
|
"label": "_symbol",
|
||
|
"offset": 0,
|
||
|
"slot": "4",
|
||
|
"type": "t_string_storage"
|
||
|
}
|
||
|
],
|
||
|
"types": {
|
||
|
"t_address": {
|
||
|
"encoding": "inplace",
|
||
|
"label": "address",
|
||
|
"numberOfBytes": "20"
|
||
|
},
|
||
|
"t_mapping(t_address,t_mapping(t_address,t_uint256))": {
|
||
|
"encoding": "mapping",
|
||
|
"key": "t_address",
|
||
|
"label": "mapping(address => mapping(address => uint256))",
|
||
|
"numberOfBytes": "32",
|
||
|
"value": "t_mapping(t_address,t_uint256)"
|
||
|
},
|
||
|
"t_mapping(t_address,t_uint256)": {
|
||
|
"encoding": "mapping",
|
||
|
"key": "t_address",
|
||
|
"label": "mapping(address => uint256)",
|
||
|
"numberOfBytes": "32",
|
||
|
"value": "t_uint256"
|
||
|
},
|
||
|
"t_string_storage": {
|
||
|
"encoding": "bytes",
|
||
|
"label": "string",
|
||
|
"numberOfBytes": "32"
|
||
|
},
|
||
|
"t_uint256": {
|
||
|
"encoding": "inplace",
|
||
|
"label": "uint256",
|
||
|
"numberOfBytes": "32"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|