Token Grape Token

 

Overview ERC-20

Price
$0.00 @ 0.000000 MATIC
Fully Diluted Market Cap
Total Supply:
999,000,000 GRAPE

Holders:
33 addresses

Transfers:
-

Contract:
0x17757dce604899699b79462a63dad925b82fe2210x17757dcE604899699b79462a63dAd925B82FE221

Decimals:
18

Social Profiles:
Not Available, Update ?

 
Loading
[ Download CSV Export  ] 
Loading
[ Download CSV Export  ] 
Loading

Click here to update the token ICO / general information
# Exchange Pair Price  24H Volume % Volume
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Grape

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at PolygonScan.com on 2021-11-01
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.9;

contract Grape
{
    string public name;
    string public symbol;
    uint8 public decimals;
    uint256 public totalSupply;
	address public owner;

    /* This creates an array with all balances */
    mapping (address => uint256) public balances;
	mapping (address => uint256) public freezeOf;
    mapping (address => mapping (address => uint256)) public allowed;

    /* This generates a public event on the blockchain that will notify clients */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /* This notifies clients about the amount burnt */
    event Burn(address indexed from, uint256 value);
	
	/* This notifies clients about the amount frozen */
    event Freeze(address indexed from, uint256 value);
	
	/* This notifies clients about the amount unfrozen */
    event Unfreeze(address indexed from, uint256 value);

    /* This notifies clients about the amount approval */
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);

    /* Initializes contract with initial supply tokens to the creator of the contract */
    constructor(uint256 initialSupply, string memory tokenName, uint8 decimalUnits, string memory tokenSymbol, address contractOwner)
    {
        balances[contractOwner] = initialSupply;           // Give the owner all initial tokens
        totalSupply = initialSupply;                        // Update total supply
        name = tokenName;                                   // Set the name for display purposes
        symbol = tokenSymbol;                               // Set the symbol for display purposes
        decimals = decimalUnits;                            // Amount of decimals for display purposes
		owner = contractOwner;
    }

    /* Send coins */
    function transfer(address _to, uint256 _value) public returns (bool success)
    {
        require(_to != address(0), 'ERR: Unable to transfer to 0x0 address. Use burn() instead'); // Prevent transfer to 0x0 address. Use burn() instead
		require(_value > 0, 'ERR: Invalid transfer value'); 
        require(balances[msg.sender] >= _value, 'ERR: Not enough balance');            // Check if the sender has enough
        require(balances[_to] + _value >= balances[_to], 'ERR: Overflow check');      // Check for overflows

        balances[msg.sender] = safeSub(balances[msg.sender], _value);        // Subtract from the sender
        balances[_to] = safeAdd(balances[_to], _value);                      // Add the same to the recipient
        emit Transfer(msg.sender, _to, _value);                                              // Notify anyone listening that this transfer took place

        return true;
    }

    /* Allow another contract to spend some tokens in your behalf */
    function approve(address _spender, uint256 _value) external returns (bool success)
    {
		require(_value > 0, 'ERR: Invalid amount'); 

        allowed[msg.sender][_spender] = _value;
        
        emit Approval(msg.sender, _spender, _value);

        return true;
    }

    function allowance(address _owner, address delegate) external view returns (uint256) 
    {
        return allowed[_owner][delegate];
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) 
    {
        require(spender != address(0));

        allowed[msg.sender][spender] = safeAdd(allowed[msg.sender][spender], addedValue);
        emit Approval(msg.sender, spender, allowed[msg.sender][spender]);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) 
    {
        require(spender != address(0));

        allowed[msg.sender][spender] = safeSub(allowed[msg.sender][spender], subtractedValue);
        emit Approval(msg.sender, spender, allowed[msg.sender][spender]);
        return true;
    }

    function balanceOf(address tokenOwner) external view returns (uint256) 
    {
        return balances[tokenOwner];
    }

    /* A contract attempts to get the coins */
    function transferFrom(address _from, address _to, uint256 _value) external returns (bool success)
    {
        require(_to != address(0), 'ERR: Unable to transfer to 0x0 address. Use burn() instead');      // Prevent transfer to 0x0 address. Use burn() instead
		require(_value > 0, 'ERR: Invalid transfer value');                                     
        require(balances[_from] >= _value, 'ERR: Not enough balance');                         // Check if the sender has enough
        require(balances[_to] + _value >= balances[_to], 'ERR: Overflow check');              // Check for overflows
        require(_value <= allowed[_from][msg.sender], 'ERR: Insufficient allowance');         // Check allowance

        balances[_from] = safeSub(balances[_from], _value);                          // Subtract from the sender
        balances[_to] = safeAdd(balances[_to], _value);                              // Add the same to the recipient
        allowed[_from][msg.sender] = safeSub(allowed[_from][msg.sender], _value);
        emit Transfer(_from, _to, _value);
        return true;
    }

    function burn(uint256 _value) external returns (bool success) 
    {
        require(balances[msg.sender] >= _value, 'ERR: Not enough balance');        // Check if the sender has enough
		require(_value > 0, 'ERR: Invalid burn value'); 

        balances[msg.sender] = safeSub(balances[msg.sender], _value);    // Subtract from the sender
        totalSupply = safeSub(totalSupply,_value);                         // Updates totalSupply

        emit Burn(msg.sender, _value);
        return true;
    }

    function mint(address account, uint256 _value) external returns (bool success)
    {
        require(msg.sender == owner, 'ERR: Forbidden');
        
        require(account != address(0), "ERR: Cannot mint to the zero address");
        require(_value > 0, 'ERR: Invalid mint value');

        totalSupply = safeAdd(totalSupply, _value);
        balances[account] = safeAdd(balances[account], _value);

        emit Transfer(address(0), account, _value);
        return true;
    }
	
	function freeze(uint256 _value) external returns (bool success) 
    {
        require(balances[msg.sender] >= _value, 'ERR: Not enough balance');        // Check if the sender has enough
        require(_value > 0, 'ERR: Invalid freeze value'); 
        balances[msg.sender] = safeSub(balances[msg.sender], _value);    // Subtract from the sender
        freezeOf[msg.sender] = safeAdd(freezeOf[msg.sender], _value);      // Updates totalSupply
        emit Freeze(msg.sender, _value);
        return true;
    }
	
	function unfreeze(uint256 _value) external returns (bool success) 
    {
        require(freezeOf[msg.sender] >= _value, 'ERR: Not enough frozen balance');  // Check if the sender has enough
		require(_value > 0, 'ERR: Invalid unfreeze value'); 
        freezeOf[msg.sender] = safeSub(freezeOf[msg.sender], _value);      // Subtract from the sender
		balances[msg.sender] = safeAdd(balances[msg.sender], _value);
        emit Unfreeze(msg.sender, _value);
        return true;
    }

    function setOwner(address newValue) public returns (bool success)
    {
        require(msg.sender == owner, 'Forbidden');

        owner = newValue;
        return true;
    }


    //Safe Math Functions
    function safeMul(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        if (a == 0) 
        {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "ERR: multiplication overflow");

        return c;
    }

    function safeDiv(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        require(b > 0, "ERR: division by zero");
        
        uint256 c = a / b;
        require(a == b * c + a % b, "ERR: division overflow");

        return c;
    }

    function safeSub(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        require(b <= a, "ERR: subtraction overflow");
        uint256 c = a - b;

        return c;
    }

    function safeAdd(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        uint256 c = a + b;
        require(c >= a, "ERR: addition overflow");

        return c;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"initialSupply","type":"uint256"},{"internalType":"string","name":"tokenName","type":"string"},{"internalType":"uint8","name":"decimalUnits","type":"uint8"},{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"address","name":"contractOwner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenOwner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Freeze","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Unfreeze","type":"event"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"delegate","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"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":"uint256","name":"_value","type":"uint256"}],"name":"freeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"freezeOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"account","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newValue","type":"address"}],"name":"setOwner","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"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":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"unfreeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50604051620015423803806200154283398101604081905262000034916200022f565b6001600160a01b0381166000908152600560209081526040822087905560038790558551620000679291870190620000bc565b5081516200007d906001906020850190620000bc565b506002805460ff191660ff949094169390931790925550600480546001600160a01b0319166001600160a01b03909216919091179055506200031f9050565b828054620000ca90620002e2565b90600052602060002090601f016020900481019282620000ee576000855562000139565b82601f106200010957805160ff191683800117855562000139565b8280016001018555821562000139579182015b82811115620001395782518255916020019190600101906200011c565b50620001479291506200014b565b5090565b5b808211156200014757600081556001016200014c565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200018a57600080fd5b81516001600160401b0380821115620001a757620001a762000162565b604051601f8301601f19908116603f01168101908282118183101715620001d257620001d262000162565b81604052838152602092508683858801011115620001ef57600080fd5b600091505b83821015620002135785820183015181830184015290820190620001f4565b83821115620002255760008385830101525b9695505050505050565b600080600080600060a086880312156200024857600080fd5b855160208701519095506001600160401b03808211156200026857600080fd5b6200027689838a0162000178565b95506040880151915060ff821682146200028f57600080fd5b606088015191945080821115620002a557600080fd5b50620002b48882890162000178565b608088015190935090506001600160a01b0381168114620002d457600080fd5b809150509295509295909350565b600181811c90821680620002f757607f821691505b602082108114156200031957634e487b7160e01b600052602260045260246000fd5b50919050565b611213806200032f6000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c80635c658165116100ad578063a457c2d711610071578063a457c2d7146102c1578063a9059cbb146102d4578063cd4217c1146102e7578063d7a78db814610307578063dd62ed3e1461031a57600080fd5b80635c658165146102275780636623fc461461025257806370a08231146102655780638da5cb5b1461028e57806395d89b41146102b957600080fd5b806327e235e3116100f457806327e235e3146101af578063313ce567146101cf57806339509351146101ee57806340c10f191461020157806342966c681461021457600080fd5b806306fdde0314610131578063095ea7b31461014f57806313af40351461017257806318160ddd1461018557806323b872dd1461019c575b600080fd5b610139610353565b6040516101469190610f8b565b60405180910390f35b61016261015d366004610ffc565b6103e1565b6040519015158152602001610146565b610162610180366004611026565b610492565b61018e60035481565b604051908152602001610146565b6101626101aa366004611041565b610501565b61018e6101bd366004611026565b60056020526000908152604090205481565b6002546101dc9060ff1681565b60405160ff9091168152602001610146565b6101626101fc366004610ffc565b610783565b61016261020f366004610ffc565b61081d565b61016261022236600461107d565b6109a0565b61018e610235366004611096565b600760209081526000928352604080842090915290825290205481565b61016261026036600461107d565b610a97565b61018e610273366004611026565b6001600160a01b031660009081526005602052604090205490565b6004546102a1906001600160a01b031681565b6040516001600160a01b039091168152602001610146565b610139610bcc565b6101626102cf366004610ffc565b610bd9565b6101626102e2366004610ffc565b610c1c565b61018e6102f5366004611026565b60066020526000908152604090205481565b61016261031536600461107d565b610dc1565b61018e610328366004611096565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b60008054610360906110c9565b80601f016020809104026020016040519081016040528092919081815260200182805461038c906110c9565b80156103d95780601f106103ae576101008083540402835291602001916103d9565b820191906000526020600020905b8154815290600101906020018083116103bc57829003601f168201915b505050505081565b600080821161042d5760405162461bcd60e51b81526020600482015260136024820152721154948e88125b9d985b1a5908185b5bdd5b9d606a1b60448201526064015b60405180910390fd5b3360008181526007602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a350600192915050565b6004546000906001600160a01b031633146104db5760405162461bcd60e51b81526020600482015260096024820152682337b93134b23232b760b91b6044820152606401610424565b50600480546001600160a01b0319166001600160a01b0392909216919091179055600190565b60006001600160a01b0383166105295760405162461bcd60e51b815260040161042490611104565b600082116105795760405162461bcd60e51b815260206004820152601b60248201527f4552523a20496e76616c6964207472616e736665722076616c756500000000006044820152606401610424565b6001600160a01b0384166000908152600560205260409020548211156105b15760405162461bcd60e51b815260040161042490611161565b6001600160a01b0383166000908152600560205260409020546105d483826111ae565b10156106185760405162461bcd60e51b81526020600482015260136024820152724552523a204f766572666c6f7720636865636b60681b6044820152606401610424565b6001600160a01b038416600090815260076020908152604080832033845290915290205482111561068b5760405162461bcd60e51b815260206004820152601b60248201527f4552523a20496e73756666696369656e7420616c6c6f77616e636500000000006044820152606401610424565b6001600160a01b0384166000908152600560205260409020546106ae9083610ec6565b6001600160a01b0380861660009081526005602052604080822093909355908516815220546106dd9083610f2c565b6001600160a01b03808516600090815260056020908152604080832094909455918716815260078252828120338252909152205461071b9083610ec6565b6001600160a01b03858116600081815260076020908152604080832033845282529182902094909455518581529186169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35060019392505050565b60006001600160a01b03831661079857600080fd5b3360009081526007602090815260408083206001600160a01b03871684529091529020546107c69083610f2c565b3360008181526007602090815260408083206001600160a01b038916808552908352928190208590555193845290927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259101610481565b6004546000906001600160a01b0316331461086b5760405162461bcd60e51b815260206004820152600e60248201526d22a9291d102337b93134b23232b760911b6044820152606401610424565b6001600160a01b0383166108cd5760405162461bcd60e51b8152602060048201526024808201527f4552523a2043616e6e6f74206d696e7420746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610424565b6000821161091d5760405162461bcd60e51b815260206004820152601760248201527f4552523a20496e76616c6964206d696e742076616c75650000000000000000006044820152606401610424565b61092960035483610f2c565b6003556001600160a01b03831660009081526005602052604090205461094f9083610f2c565b6001600160a01b0384166000818152600560205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104819086815260200190565b336000908152600560205260408120548211156109cf5760405162461bcd60e51b815260040161042490611161565b60008211610a1f5760405162461bcd60e51b815260206004820152601760248201527f4552523a20496e76616c6964206275726e2076616c75650000000000000000006044820152606401610424565b33600090815260056020526040902054610a399083610ec6565b33600090815260056020526040902055600354610a569083610ec6565b60035560405182815233907fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5906020015b60405180910390a2506001919050565b33600090815260066020526040812054821115610af65760405162461bcd60e51b815260206004820152601e60248201527f4552523a204e6f7420656e6f7567682066726f7a656e2062616c616e636500006044820152606401610424565b60008211610b465760405162461bcd60e51b815260206004820152601b60248201527f4552523a20496e76616c696420756e667265657a652076616c756500000000006044820152606401610424565b33600090815260066020526040902054610b609083610ec6565b33600090815260066020908152604080832093909355600590522054610b869083610f2c565b33600081815260056020526040908190209290925590517f2cfce4af01bcb9d6cf6c84ee1b7c491100b8695368264146a94d71e10a63083f90610a879085815260200190565b60018054610360906110c9565b60006001600160a01b038316610bee57600080fd5b3360009081526007602090815260408083206001600160a01b03871684529091529020546107c69083610ec6565b60006001600160a01b038316610c445760405162461bcd60e51b815260040161042490611104565b60008211610c945760405162461bcd60e51b815260206004820152601b60248201527f4552523a20496e76616c6964207472616e736665722076616c756500000000006044820152606401610424565b33600090815260056020526040902054821115610cc35760405162461bcd60e51b815260040161042490611161565b6001600160a01b038316600090815260056020526040902054610ce683826111ae565b1015610d2a5760405162461bcd60e51b81526020600482015260136024820152724552523a204f766572666c6f7720636865636b60681b6044820152606401610424565b33600090815260056020526040902054610d449083610ec6565b33600090815260056020526040808220929092556001600160a01b03851681522054610d709083610f2c565b6001600160a01b0384166000818152600560205260409081902092909255905133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104819086815260200190565b33600090815260056020526040812054821115610df05760405162461bcd60e51b815260040161042490611161565b60008211610e405760405162461bcd60e51b815260206004820152601960248201527f4552523a20496e76616c696420667265657a652076616c7565000000000000006044820152606401610424565b33600090815260056020526040902054610e5a9083610ec6565b33600090815260056020908152604080832093909355600690522054610e809083610f2c565b33600081815260066020526040908190209290925590517ff97a274face0b5517365ad396b1fdba6f68bd3135ef603e44272adba3af5a1e090610a879085815260200190565b600082821115610f185760405162461bcd60e51b815260206004820152601960248201527f4552523a207375627472616374696f6e206f766572666c6f77000000000000006044820152606401610424565b6000610f2483856111c6565b949350505050565b600080610f3983856111ae565b905083811015610f845760405162461bcd60e51b81526020600482015260166024820152754552523a206164646974696f6e206f766572666c6f7760501b6044820152606401610424565b9392505050565b600060208083528351808285015260005b81811015610fb857858101830151858201604001528201610f9c565b81811115610fca576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610ff757600080fd5b919050565b6000806040838503121561100f57600080fd5b61101883610fe0565b946020939093013593505050565b60006020828403121561103857600080fd5b610f8482610fe0565b60008060006060848603121561105657600080fd5b61105f84610fe0565b925061106d60208501610fe0565b9150604084013590509250925092565b60006020828403121561108f57600080fd5b5035919050565b600080604083850312156110a957600080fd5b6110b283610fe0565b91506110c060208401610fe0565b90509250929050565b600181811c908216806110dd57607f821691505b602082108114156110fe57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252603a908201527f4552523a20556e61626c6520746f207472616e7366657220746f20307830206160408201527f6464726573732e20557365206275726e282920696e7374656164000000000000606082015260800190565b60208082526017908201527f4552523a204e6f7420656e6f7567682062616c616e6365000000000000000000604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600082198211156111c1576111c1611198565b500190565b6000828210156111d8576111d8611198565b50039056fea2646970667358221220d91ef9ad40a05718773326f886178700bc0ce6627730a9fb1199d3ca8388f5bc64736f6c634300080900330000000000000000000000000000000000000000033a5a7a8401b34f4700000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000e7adcdfb326f3d1c1d513bbe2525d08a7c3c779a000000000000000000000000000000000000000000000000000000000000000b477261706520546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000054752415045000000000000000000000000000000000000000000000000000000

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000000000000000000000033a5a7a8401b34f4700000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000e7adcdfb326f3d1c1d513bbe2525d08a7c3c779a000000000000000000000000000000000000000000000000000000000000000b477261706520546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000054752415045000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : initialSupply (uint256): 999000000000000000000000000
Arg [1] : tokenName (string): Grape Token
Arg [2] : decimalUnits (uint8): 18
Arg [3] : tokenSymbol (string): GRAPE
Arg [4] : contractOwner (address): 0xe7adcdfb326f3d1c1d513bbe2525d08a7c3c779a

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000033a5a7a8401b34f47000000
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [4] : 000000000000000000000000e7adcdfb326f3d1c1d513bbe2525d08a7c3c779a
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [6] : 477261706520546f6b656e000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [8] : 4752415045000000000000000000000000000000000000000000000000000000


Deployed ByteCode Sourcemap

62:8429:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;85:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2877:283;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;2877:283:0;1053:187:1;7347:182:0;;;;;;:::i;:::-;;:::i;165:26::-;;;;;;;;;1582:25:1;;;1570:2;1555:18;165:26:0;1436:177:1;4185:1108:0;;;;;;:::i;:::-;;:::i;275:44::-;;;;;;:::i;:::-;;;;;;;;;;;;;;137:21;;;;;;;;;;;;2123:4:1;2111:17;;;2093:36;;2081:2;2066:18;137:21:0;1951:184:1;3318:331:0;;;;;;:::i;:::-;;:::i;5822:494::-;;;;;;:::i;:::-;;:::i;5301:513::-;;;;;;:::i;:::-;;:::i;374:64::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;6849:490;;;;;;:::i;:::-;;:::i;4006:123::-;;;;;;:::i;:::-;-1:-1:-1;;;;;4101:20:0;4068:7;4101:20;;;:8;:20;;;;;;;4006:123;195:20;;;;;-1:-1:-1;;;;;195:20:0;;;;;;-1:-1:-1;;;;;2754:32:1;;;2736:51;;2724:2;2709:18;195:20:0;2590:203:1;110:20:0;;;:::i;3657:341::-;;;;;;:::i;:::-;;:::i;1873:926::-;;;;;;:::i;:::-;;:::i;323:44::-;;;;;;:::i;:::-;;;;;;;;;;;;;;6322:521;;;;;;:::i;:::-;;:::i;3168:142::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3277:15:0;;;3244:7;3277:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;3168:142;85:18;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2877:283::-;2946:12;2987:1;2978:6;:10;2970:42;;;;-1:-1:-1;;;2970:42:0;;3385:2:1;2970:42:0;;;3367:21:1;3424:2;3404:18;;;3397:30;-1:-1:-1;;;3443:18:1;;;3436:49;3502:18;;2970:42:0;;;;;;;;;3034:10;3026:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3026:29:0;;;;;;;;;;;;:38;;;3090;1582:25:1;;;3026:29:0;;3034:10;3090:38;;1555:18:1;3090:38:0;;;;;;;;-1:-1:-1;3148:4:0;2877:283;;;;:::o;7347:182::-;7451:5;;7399:12;;-1:-1:-1;;;;;7451:5:0;7437:10;:19;7429:41;;;;-1:-1:-1;;;7429:41:0;;3733:2:1;7429:41:0;;;3715:21:1;3772:1;3752:18;;;3745:29;-1:-1:-1;;;3790:18:1;;;3783:39;3839:18;;7429:41:0;3531:332:1;7429:41:0;-1:-1:-1;7483:5:0;:16;;-1:-1:-1;;;;;;7483:16:0;-1:-1:-1;;;;;7483:16:0;;;;;;;;;;-1:-1:-1;;7347:182:0:o;4185:1108::-;4269:12;-1:-1:-1;;;;;4307:17:0;;4299:88;;;;-1:-1:-1;;;4299:88:0;;;;;;;:::i;:::-;4469:1;4460:6;:10;4452:50;;;;-1:-1:-1;;;4452:50:0;;4497:2:1;4452:50:0;;;4479:21:1;4536:2;4516:18;;;4509:30;4575:29;4555:18;;;4548:57;4622:18;;4452:50:0;4295:351:1;4452:50:0;-1:-1:-1;;;;;4558:15:0;;;;;;:8;:15;;;;;;:25;-1:-1:-1;4558:25:0;4550:61;;;;-1:-1:-1;;;4550:61:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4714:13:0;;;;;;:8;:13;;;;;;4688:22;4704:6;4714:13;4688:22;:::i;:::-;:39;;4680:71;;;;-1:-1:-1;;;4680:71:0;;5470:2:1;4680:71:0;;;5452:21:1;5509:2;5489:18;;;5482:30;-1:-1:-1;;;5528:18:1;;;5521:49;5587:18;;4680:71:0;5268:343:1;4680:71:0;-1:-1:-1;;;;;4816:14:0;;;;;;:7;:14;;;;;;;;4831:10;4816:26;;;;;;;;4806:36;;;4798:76;;;;-1:-1:-1;;;4798:76:0;;5818:2:1;4798:76:0;;;5800:21:1;5857:2;5837:18;;;5830:30;5896:29;5876:18;;;5869:57;5943:18;;4798:76:0;5616:351:1;4798:76:0;-1:-1:-1;;;;;4940:15:0;;;;;;:8;:15;;;;;;4932:32;;4957:6;4932:7;:32::i;:::-;-1:-1:-1;;;;;4914:15:0;;;;;;;:8;:15;;;;;;:50;;;;5052:13;;;;;;;5044:30;;5067:6;5044:7;:30::i;:::-;-1:-1:-1;;;;;5028:13:0;;;;;;;:8;:13;;;;;;;;:46;;;;5184:14;;;;;:7;:14;;;;;5199:10;5184:26;;;;;;;5176:43;;5212:6;5176:7;:43::i;:::-;-1:-1:-1;;;;;5147:14:0;;;;;;;:7;:14;;;;;;;;5162:10;5147:26;;;;;;;;:72;;;;5235:28;1582:25:1;;;5235:28:0;;;;5147:14;;5235:28;;1555:18:1;5235:28:0;;;;;;;-1:-1:-1;5281:4:0;4185:1108;;;;;:::o;3318:331::-;3398:4;-1:-1:-1;;;;;3429:21:0;;3421:30;;;;;;3511:10;3503:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3503:28:0;;;;;;;;;;3495:49;;3533:10;3495:7;:49::i;:::-;3472:10;3464:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3464:28:0;;;;;;;;;;;;:80;;;3560:59;1582:25:1;;;3464:28:0;;3560:59;;1555:18:1;3560:59:0;1436:177:1;5822:494:0;5939:5;;5887:12;;-1:-1:-1;;;;;5939:5:0;5925:10;:19;5917:46;;;;-1:-1:-1;;;5917:46:0;;6174:2:1;5917:46:0;;;6156:21:1;6213:2;6193:18;;;6186:30;-1:-1:-1;;;6232:18:1;;;6225:44;6286:18;;5917:46:0;5972:338:1;5917:46:0;-1:-1:-1;;;;;5992:21:0;;5984:70;;;;-1:-1:-1;;;5984:70:0;;6517:2:1;5984:70:0;;;6499:21:1;6556:2;6536:18;;;6529:30;6595:34;6575:18;;;6568:62;-1:-1:-1;;;6646:18:1;;;6639:34;6690:19;;5984:70:0;6315:400:1;5984:70:0;6082:1;6073:6;:10;6065:46;;;;-1:-1:-1;;;6065:46:0;;6922:2:1;6065:46:0;;;6904:21:1;6961:2;6941:18;;;6934:30;7000:25;6980:18;;;6973:53;7043:18;;6065:46:0;6720:347:1;6065:46:0;6138:28;6146:11;;6159:6;6138:7;:28::i;:::-;6124:11;:42;-1:-1:-1;;;;;6205:17:0;;;;;;:8;:17;;;;;;6197:34;;6224:6;6197:7;:34::i;:::-;-1:-1:-1;;;;;6177:17:0;;;;;;:8;:17;;;;;;:54;;;;6249:37;;6177:17;;;6249:37;;;;6279:6;1582:25:1;;1570:2;1555:18;;1436:177;5301:513:0;5397:10;5349:12;5388:20;;;:8;:20;;;;;;:30;-1:-1:-1;5388:30:0;5380:66;;;;-1:-1:-1;;;5380:66:0;;;;;;;:::i;:::-;5509:1;5500:6;:10;5492:46;;;;-1:-1:-1;;;5492:46:0;;7274:2:1;5492:46:0;;;7256:21:1;7313:2;7293:18;;;7286:30;7352:25;7332:18;;;7325:53;7395:18;;5492:46:0;7072:347:1;5492:46:0;5592:10;5583:20;;;;:8;:20;;;;;;5575:37;;5605:6;5575:7;:37::i;:::-;5561:10;5552:20;;;;:8;:20;;;;;:60;5676:11;;5668:27;;5688:6;5668:7;:27::i;:::-;5654:11;:41;5760:24;;1582:25:1;;;5765:10:0;;5760:24;;1570:2:1;1555:18;5760:24:0;;;;;;;;-1:-1:-1;5802:4:0;;5301:513;-1:-1:-1;5301:513:0:o;6849:490::-;6949:10;6901:12;6940:20;;;:8;:20;;;;;;:30;-1:-1:-1;6940:30:0;6932:73;;;;-1:-1:-1;;;6932:73:0;;7626:2:1;6932:73:0;;;7608:21:1;7665:2;7645:18;;;7638:30;7704:32;7684:18;;;7677:60;7754:18;;6932:73:0;7424:354:1;6932:73:0;7062:1;7053:6;:10;7045:50;;;;-1:-1:-1;;;7045:50:0;;7985:2:1;7045:50:0;;;7967:21:1;8024:2;8004:18;;;7997:30;8063:29;8043:18;;;8036:57;8110:18;;7045:50:0;7783:351:1;7045:50:0;7147:10;7138:20;;;;:8;:20;;;;;;7130:37;;7160:6;7130:7;:37::i;:::-;7116:10;7107:20;;;;:8;:20;;;;;;;;:60;;;;7236:8;:20;;;;7228:37;;7258:6;7228:7;:37::i;:::-;7214:10;7205:20;;;;:8;:20;;;;;;;:60;;;;7281:28;;;;;;7302:6;1582:25:1;;1570:2;1555:18;;1436:177;110:20:0;;;;;;;:::i;3657:341::-;3742:4;-1:-1:-1;;;;;3773:21:0;;3765:30;;;;;;3855:10;3847:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;3847:28:0;;;;;;;;;;3839:54;;3877:15;3839:7;:54::i;1873:926::-;1936:12;-1:-1:-1;;;;;1974:17:0;;1966:88;;;;-1:-1:-1;;;1966:88:0;;;;;;;:::i;:::-;2131:1;2122:6;:10;2114:50;;;;-1:-1:-1;;;2114:50:0;;4497:2:1;2114:50:0;;;4479:21:1;4536:2;4516:18;;;4509:30;4575:29;4555:18;;;4548:57;4622:18;;2114:50:0;4295:351:1;2114:50:0;2193:10;2184:20;;;;:8;:20;;;;;;:30;-1:-1:-1;2184:30:0;2176:66;;;;-1:-1:-1;;;2176:66:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2332:13:0;;;;;;:8;:13;;;;;;2306:22;2322:6;2332:13;2306:22;:::i;:::-;:39;;2298:71;;;;-1:-1:-1;;;2298:71:0;;5470:2:1;2298:71:0;;;5452:21:1;5509:2;5489:18;;;5482:30;-1:-1:-1;;;5528:18:1;;;5521:49;5587:18;;2298:71:0;5268:343:1;2298:71:0;2450:10;2441:20;;;;:8;:20;;;;;;2433:37;;2463:6;2433:7;:37::i;:::-;2419:10;2410:20;;;;:8;:20;;;;;;:60;;;;-1:-1:-1;;;;;2540:13:0;;;;;;2532:30;;2555:6;2532:7;:30::i;:::-;-1:-1:-1;;;;;2516:13:0;;;;;;:8;:13;;;;;;;:46;;;;2632:33;;2641:10;;2632:33;;;;2658:6;1582:25:1;;1570:2;1555:18;;1436:177;6322:521:0;6420:10;6372:12;6411:20;;;:8;:20;;;;;;:30;-1:-1:-1;6411:30:0;6403:66;;;;-1:-1:-1;;;6403:66:0;;;;;;;:::i;:::-;6538:1;6529:6;:10;6521:48;;;;-1:-1:-1;;;6521:48:0;;8341:2:1;6521:48:0;;;8323:21:1;8380:2;8360:18;;;8353:30;8419:27;8399:18;;;8392:55;8464:18;;6521:48:0;8139:349:1;6521:48:0;6621:10;6612:20;;;;:8;:20;;;;;;6604:37;;6634:6;6604:7;:37::i;:::-;6590:10;6581:20;;;;:8;:20;;;;;;;;:60;;;;6714:8;:20;;;;6706:37;;6736:6;6706:7;:37::i;:::-;6692:10;6683:20;;;;:8;:20;;;;;;;:60;;;;6787:26;;;;;;6806:6;1582:25:1;;1570:2;1555:18;;1436:177;8105:189:0;8167:7;8206:1;8201;:6;;8193:44;;;;-1:-1:-1;;;8193:44:0;;8695:2:1;8193:44:0;;;8677:21:1;8734:2;8714:18;;;8707:30;8773:27;8753:18;;;8746:55;8818:18;;8193:44:0;8493:349:1;8193:44:0;8248:9;8260:5;8264:1;8260;:5;:::i;:::-;8248:17;8105:189;-1:-1:-1;;;;8105:189:0:o;8302:186::-;8364:7;;8402:5;8406:1;8402;:5;:::i;:::-;8390:17;;8431:1;8426;:6;;8418:41;;;;-1:-1:-1;;;8418:41:0;;9179:2:1;8418:41:0;;;9161:21:1;9218:2;9198:18;;;9191:30;-1:-1:-1;;;9237:18:1;;;9230:52;9299:18;;8418:41:0;8977:346:1;8418:41:0;8479:1;8302:186;-1:-1:-1;;;8302:186:0:o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1245:186::-;1304:6;1357:2;1345:9;1336:7;1332:23;1328:32;1325:52;;;1373:1;1370;1363:12;1325:52;1396:29;1415:9;1396:29;:::i;1618:328::-;1695:6;1703;1711;1764:2;1752:9;1743:7;1739:23;1735:32;1732:52;;;1780:1;1777;1770:12;1732:52;1803:29;1822:9;1803:29;:::i;:::-;1793:39;;1851:38;1885:2;1874:9;1870:18;1851:38;:::i;:::-;1841:48;;1936:2;1925:9;1921:18;1908:32;1898:42;;1618:328;;;;;:::o;2140:180::-;2199:6;2252:2;2240:9;2231:7;2227:23;2223:32;2220:52;;;2268:1;2265;2258:12;2220:52;-1:-1:-1;2291:23:1;;2140:180;-1:-1:-1;2140:180:1:o;2325:260::-;2393:6;2401;2454:2;2442:9;2433:7;2429:23;2425:32;2422:52;;;2470:1;2467;2460:12;2422:52;2493:29;2512:9;2493:29;:::i;:::-;2483:39;;2541:38;2575:2;2564:9;2560:18;2541:38;:::i;:::-;2531:48;;2325:260;;;;;:::o;2798:380::-;2877:1;2873:12;;;;2920;;;2941:61;;2995:4;2987:6;2983:17;2973:27;;2941:61;3048:2;3040:6;3037:14;3017:18;3014:38;3011:161;;;3094:10;3089:3;3085:20;3082:1;3075:31;3129:4;3126:1;3119:15;3157:4;3154:1;3147:15;3011:161;;2798:380;;;:::o;3868:422::-;4070:2;4052:21;;;4109:2;4089:18;;;4082:30;4148:34;4143:2;4128:18;;4121:62;4219:28;4214:2;4199:18;;4192:56;4280:3;4265:19;;3868:422::o;4651:347::-;4853:2;4835:21;;;4892:2;4872:18;;;4865:30;4931:25;4926:2;4911:18;;4904:53;4989:2;4974:18;;4651:347::o;5003:127::-;5064:10;5059:3;5055:20;5052:1;5045:31;5095:4;5092:1;5085:15;5119:4;5116:1;5109:15;5135:128;5175:3;5206:1;5202:6;5199:1;5196:13;5193:39;;;5212:18;;:::i;:::-;-1:-1:-1;5248:9:1;;5135:128::o;8847:125::-;8887:4;8915:1;8912;8909:8;8906:34;;;8920:18;;:::i;:::-;-1:-1:-1;8957:9:1;;8847:125::o

Swarm Source

ipfs://d91ef9ad40a05718773326f886178700bc0ce6627730a9fb1199d3ca8388f5bc
Loading