Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x08A2E41FB99A7599725190B9C970Ad3893fa33CF
Balance 0 ETH
Nonce 1
Code Size 1604 bytes
Indexed Transactions 0
External Etherscan · Sourcify

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