Address Contract Partially Verified
Address
0x08A2E41FB99A7599725190B9C970Ad3893fa33CF
Balance
0 ETH
Nonce
1
Code Size
1604 bytes
Creator
0x873Fc389...48b1 at tx 0x729c76f9...4b65eb
Indexed Transactions
0
Contract Bytecode
1604 bytes
0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806370a082311161006657806370a082311461014357806395d89b4114610169578063a9059cbb14610171578063daea85c51461019d578063dd62ed3e146101c35761009e565b806306fdde03146100a3578063095ea7b3146100bd57806318160ddd146100fd57806323b872dd14610105578063313ce5671461013b575b600080fd5b6100ab6101f1565b60408051918252519081900360200190f35b6100e9600480360360408110156100d357600080fd5b506001600160a01b0381351690602001356101f7565b604080519115158252519081900360200190f35b6100ab61025e565b6100e96004803603606081101561011b57600080fd5b506001600160a01b03813581169160208101359091169060400135610264565b6100ab6104ce565b6100ab6004803603602081101561015957600080fd5b50356001600160a01b03166104d4565b6100ab6104e6565b6100e96004803603604081101561018757600080fd5b506001600160a01b0381351690602001356104ec565b6100e9600480360360208110156101b357600080fd5b50356001600160a01b0316610500565b6100ab600480360360408110156101d957600080fd5b506001600160a01b038135811691602001351661050e565b60055481565b3360008181526002602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60005481565b60006001600160a01b03841633148015906102a457506001600160a01b038416600090815260026020908152604080832033845290915290205460001914155b15610374576001600160a01b0384166000908152600260209081526040808320338452909152902054821115610321576040805162461bcd60e51b815260206004820152601e60248201527f64732d746f6b656e2d696e73756666696369656e742d617070726f76616c0000604482015290519081900360640190fd5b6001600160a01b038416600090815260026020908152604080832033845290915290205461034f908361052b565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b6001600160a01b0384166000908152600160205260409020548211156103e1576040805162461bcd60e51b815260206004820152601d60248201527f64732d746f6b656e2d696e73756666696369656e742d62616c616e6365000000604482015290519081900360640190fd5b6001600160a01b038416600090815260016020526040902054610404908361052b565b6001600160a01b038516600090815260016020526040812091909155606483049061042f848361052b565b6001600160a01b038616600090815260016020526040902054909150610455908261057b565b6001600160a01b038616600090815260016020526040902055610477826105ca565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a350600195945050505050565b60045481565b60016020526000908152604090205481565b60035481565b60006104f9338484610264565b9392505050565b6000610258826000196101f7565b600260209081526000928352604080842090915290825290205481565b80820382811115610258576040805162461bcd60e51b815260206004820152601560248201527464732d6d6174682d7375622d756e646572666c6f7760581b604482015290519081900360640190fd5b80820182811015610258576040805162461bcd60e51b815260206004820152601460248201527364732d6d6174682d6164642d6f766572666c6f7760601b604482015290519081900360640190fd5b6105d66000548261052b565b6000556040805182815290517fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb9181900360200190a15056fea265627a7a723158203d22b77d4167ec95a558941b48a8dc56c734f2f5a4fc9f7285cd0f41088b347a64736f6c634300050c0032
Verified Source Code Partial Match
Compiler: v0.5.12+commit.7709ece9
EVM: petersburg
Optimization: Yes (200 runs)
SpaghettiToken.sol 89 lines
pragma solidity ^0.5.0;
contract DSMath {
function add(uint x, uint y) internal pure returns (uint z) {
require((z = x + y) >= x, "ds-math-add-overflow");
}
function sub(uint x, uint y) internal pure returns (uint z) {
require((z = x - y) <= x, "ds-math-sub-underflow");
}
function mul(uint x, uint y) internal pure returns (uint z) {
require(y == 0 || (z = x * y) / y == x, "ds-math-mul-overflow");
}
}
// token.sol -- ERC20 implementation with minting and burning
// Copyright (C) 2015, 2016, 2017 DappHub, LLC
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
contract SpaghettiToken is DSMath {
uint256 public totalSupply;
mapping (address => uint256) public balanceOf;
mapping (address => mapping (address => uint256)) public allowance;
bytes32 public symbol = "PASTA";
uint256 public decimals = 18;
bytes32 public name = "Spaghetti";
constructor(address chef) public {
// hard limit 15,000,000 PASTA
totalSupply = 15000000000000000000000000;
balanceOf[chef] = 15000000000000000000000000;
}
event Approval(address indexed src, address indexed guy, uint wad);
event Transfer(address indexed src, address indexed dst, uint wad);
event Burn(uint wad);
function approve(address guy) external returns (bool) {
return approve(guy, uint(-1));
}
function approve(address guy, uint wad) public returns (bool) {
allowance[msg.sender][guy] = wad;
emit Approval(msg.sender, guy, wad);
return true;
}
function transfer(address dst, uint wad) external returns (bool) {
return transferFrom(msg.sender, dst, wad);
}
function transferFrom(address src, address dst, uint wad) public returns (bool) {
if (src != msg.sender && allowance[src][msg.sender] != uint(-1)) {
require(allowance[src][msg.sender] >= wad, "ds-token-insufficient-approval");
allowance[src][msg.sender] = sub(allowance[src][msg.sender], wad);
}
require(balanceOf[src] >= wad, "ds-token-insufficient-balance");
balanceOf[src] = sub(balanceOf[src], wad);
uint one = wad / 100;
uint ninetynine = sub(wad, one);
balanceOf[dst] = add(balanceOf[dst], ninetynine);
burn(one);
emit Transfer(src, dst, wad);
return true;
}
function burn(uint wad) internal {
totalSupply = sub(totalSupply, wad);
emit Burn(wad);
}
}
Read Contract
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint256
name 0x06fdde03 → bytes32
symbol 0x95d89b41 → bytes32
totalSupply 0x18160ddd → uint256
Write Contract 4 functions
These functions modify contract state and require a wallet transaction to execute.
approve 0x095ea7b3
address guy
uint256 wad
returns: bool
approve 0xdaea85c5
address guy
returns: bool
transfer 0xa9059cbb
address dst
uint256 wad
returns: bool
transferFrom 0x23b872dd
address src
address dst
uint256 wad
returns: bool
Recent Transactions
No transactions found for this address