ETH Price: $2,125.35 (-3.90%)

Token

Ethopolis Shares (EPS)
 

Overview

Max Total Supply

10,000,000 EPS

Holders

17

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
20,000 EPS

Value
$0.00
0x36e058332ae39efad2315776b9c844e30d07388b
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
Dividends

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-04-15
*/

pragma solidity ^0.4.21;

// ERC20 contract which has the dividend shares of Ethopolis in it 
// The old contract had a bug in it, thanks to ccashwell for notifying.
// Contact: [email protected] 
// ethopolis.io 
// etherguy.surge.sh [if the .io site is up this might be outdated, one of those sites will be up-to-date]
// Selling tokens (and buying them) will be online at etherguy.surge.sh/dividends.html and might be moved to the ethopolis site.

contract Dividends {

    string public name = "Ethopolis Shares";      //  token name
    string public symbol = "EPS";           //  token symbol
    uint256 public decimals = 18;            //  token digit

    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;

    uint256 public totalSupply = 10000000* (10 ** uint256(decimals));
    
    uint256 SellFee = 1250; // max is 10 000


    address owner = 0x0;

    modifier isOwner {
        assert(owner == msg.sender);
        _;
    }



    modifier validAddress {
        assert(0x0 != msg.sender);
        _;
    }

    function Dividends() public {
        owner = msg.sender;


        // PREMINED TOKENS 
        
        // EG
        balanceOf[ address(0x690F34053ddC11bdFF95D44bdfEb6B0b83CBAb58)] =  8000000* (10 ** uint256(decimals));// was: TokenSupply - 400000;
        // HE
        balanceOf[ address(0x83c0Efc6d8B16D87BFe1335AB6BcAb3Ed3960285)] = 200000* (10 ** uint256(decimals));
        // PG
        balanceOf[ address(0x26581d1983ced8955C170eB4d3222DCd3845a092)] = 200000* (10 ** uint256(decimals));

        // BOUGHT tokens in the OLD contract         
        balanceOf[ address(0x3130259deEdb3052E24FAD9d5E1f490CB8CCcaa0)] = 97000* (10 ** uint256(decimals));
        balanceOf[ address(0x4f0d861281161f39c62B790995fb1e7a0B81B07b)] = 199800* (10 ** uint256(decimals));
        balanceOf[ address(0x36E058332aE39efaD2315776B9c844E30d07388B)] =  20000* (10 ** uint256(decimals));
        balanceOf[ address(0x1f2672E17fD7Ec4b52B7F40D41eC5C477fe85c0c)] =  40000* (10 ** uint256(decimals));
        balanceOf[ address(0xedDaD54E9e1F8dd01e815d84b255998a0a901BbF)] =  20000* (10 ** uint256(decimals));
        balanceOf[ address(0x0a3239799518E7F7F339867A4739282014b97Dcf)] = 499000* (10 ** uint256(decimals));
        balanceOf[ address(0x29A9c76aD091c015C12081A1B201c3ea56884579)] = 600000* (10 ** uint256(decimals));
        balanceOf[ address(0x0668deA6B5ec94D7Ce3C43Fe477888eee2FC1b2C)] = 100000* (10 ** uint256(decimals));
        balanceOf[ address(0x0982a0bf061f3cec2a004b4d2c802F479099C971)] =  20000* (10 ** uint256(decimals));
        
        balanceOf [address(	0xA78EfC3A01CB8f2F47137B97f9546B46275f54a6)] =  3000* (10 ** uint256(decimals));
        balanceOf [address(	0x522273122b20212FE255875a4737b6F50cc72006)] =  1000* (10 ** uint256(decimals));
        balanceOf [address(	0xc1c51098ff73f311ECD6E855e858225F531812c4)] =  200* (10 ** uint256(decimals));

        // Etherscan likes it very much if we emit these events 
        emit Transfer(0x0, 0x690F34053ddC11bdFF95D44bdfEb6B0b83CBAb58, 8000000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x83c0Efc6d8B16D87BFe1335AB6BcAb3Ed3960285, 200000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x26581d1983ced8955C170eB4d3222DCd3845a092, 200000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x3130259deEdb3052E24FAD9d5E1f490CB8CCcaa0, 97000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x4f0d861281161f39c62B790995fb1e7a0B81B07b, 199800* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x36E058332aE39efaD2315776B9c844E30d07388B, 20000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x1f2672E17fD7Ec4b52B7F40D41eC5C477fe85c0c, 40000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0xedDaD54E9e1F8dd01e815d84b255998a0a901BbF, 20000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x0a3239799518E7F7F339867A4739282014b97Dcf, 499000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x29A9c76aD091c015C12081A1B201c3ea56884579, 600000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x0668deA6B5ec94D7Ce3C43Fe477888eee2FC1b2C, 100000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x0982a0bf061f3cec2a004b4d2c802F479099C971, 20000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0xA78EfC3A01CB8f2F47137B97f9546B46275f54a6, 3000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0x522273122b20212FE255875a4737b6F50cc72006, 1000* (10 ** uint256(decimals)));
        emit Transfer(0x0, 0xc1c51098ff73f311ECD6E855e858225F531812c4, 200* (10 ** uint256(decimals)));
       
    }

    function transfer(address _to, uint256 _value)  public validAddress returns (bool success) {
        require(balanceOf[msg.sender] >= _value);
        require(balanceOf[_to] + _value >= balanceOf[_to]);
        // after transfer have enough to pay sell order 
        require(sub(balanceOf[msg.sender], SellOrders[msg.sender][0]) >= _value);
        require(msg.sender != _to);

        uint256 _toBal = balanceOf[_to];
        uint256 _fromBal = balanceOf[msg.sender];
        balanceOf[msg.sender] -= _value;
        balanceOf[_to] += _value;
        emit Transfer(msg.sender, _to, _value);
        
        uint256 _sendFrom = _withdraw(msg.sender, _fromBal, false,0);
        uint256 _sendTo = _withdraw(_to, _toBal, false, _sendFrom);
        
        msg.sender.transfer(_sendFrom);
        _to.transfer(_sendTo);
        
        return true;
    }
    
    // forcetransfer does not do any withdrawals
    function _forceTransfer(address _from, address _to, uint256  _value) internal validAddress {
        require(balanceOf[_from] >= _value);
        require(balanceOf[_to] + _value >= balanceOf[_to]);
        balanceOf[_from] -= _value;
        balanceOf[_to] += _value;
        emit Transfer(_from, _to, _value);
        
    }

    function transferFrom(address _from, address _to, uint256 _value) public validAddress returns (bool success) {
                // after transfer have enough to pay sell order 
        require(_from != _to);
        require(sub(balanceOf[_from], SellOrders[_from][0]) >= _value);
        require(balanceOf[_to] + _value >= balanceOf[_to]);
        require(allowance[_from][msg.sender] >= _value);
        uint256 _toBal = balanceOf[_to];
        uint256 _fromBal = balanceOf[_from];
        balanceOf[_to] += _value;
        balanceOf[_from] -= _value;
        allowance[_from][msg.sender] -= _value;
        emit Transfer(_from, _to, _value);
        
        // Call withdrawal of old amounts 
        CancelOrder();
        uint256 _sendFrom = _withdraw(_from, _fromBal,false,0);
        uint256 _sendTo = _withdraw(_to, _toBal,false,_sendTo);
        
        _from.transfer(_sendFrom);
        _to.transfer(_sendTo);
        
        return true;
    }

    function approve(address _spender, uint256 _value) public validAddress returns (bool success) {
        require(_value == 0 || allowance[msg.sender][_spender] == 0);
        allowance[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    function setSymbol(string _symb) public isOwner {
        symbol = _symb;
    }

    function setName(string _name) public isOwner {
        name = _name;
    }
    
    function newOwner(address who) public isOwner validAddress {
        owner = who;
    }
    
    function setFee(uint256 fee) public isOwner {
        require (fee <= 2500);
        SellFee = fee;
    }


// Market stuff start 
    
    mapping(address => uint256[2]) public SellOrders;
    mapping(address => uint256) public LastBalanceWithdrawn;
    uint256 TotalOut;
    
    function Withdraw() public{
        _withdraw(msg.sender, balanceOf[msg.sender], true,0);
    }
    
    function ViewSellOrder(address who) public view returns (uint256, uint256){
        return (SellOrders[who][0], SellOrders[who][1]);
    }
    
    // if dosend is set to false then the calling function MUST send the fees 
    // subxtra is to handle the "high LastBalanceWithdrawn bug" 
    // this bug was caused because the Buyer actually gets a too high LastBalanceWithdrawn;
    // this is a minor bug and could be fixed by adding these funds to the contract (which is usually not a large amount)
    // if the contract gets a lot of divs live then that should not be an issue because any new withdrawal will set it to a right value 
    // anyways it is fixed now 
    function _withdraw(address to, uint256 tkns, bool dosend, uint256 subxtra) internal returns (uint256){
        // calculate how much wei you get 
        if (tkns == 0){
            // ok we just reset the timer then 
            LastBalanceWithdrawn[msg.sender] = sub(sub(add(address(this).balance, TotalOut),msg.value),subxtra);
            return 0;
        }
        // remove msg.value is exists. if it is nonzero then the call came from Buy, do not include this in balance. 
        uint256 total_volume_in = address(this).balance + TotalOut - msg.value;
        // get volume in since last withdrawal; 
        uint256 Delta = sub(total_volume_in, LastBalanceWithdrawn[to]);
        
        uint256 Get = (tkns * Delta) / totalSupply;
        
        TotalOut = TotalOut + Get;
        
        LastBalanceWithdrawn[to] = sub(sub(sub(add(address(this).balance, TotalOut), Get),msg.value),subxtra);
        
        emit WithdrawalComplete(to, Get);
        if (dosend){
            to.transfer(Get);
            return 0;
        }
        else{//7768
            return Get;
        }
        
    }
    
    function GetDivs(address who) public view returns (uint256){
         uint256 total_volume_in = address(this).balance + TotalOut;
         uint256 Delta = sub(total_volume_in, LastBalanceWithdrawn[who]);
         uint256 Get = (balanceOf[who] * Delta) / totalSupply;
         return (Get);
    }
    
    function CancelOrder() public {
        _cancelOrder(msg.sender);
    }
    
    function _cancelOrder(address target) internal{
         SellOrders[target][0] = 0;
         emit SellOrderCancelled(target);
    }
    
    
    // the price is per 10^decimals tokens 
    function PlaceSellOrder(uint256 amount, uint256 price) public {
        require(price > 0);
        require(balanceOf[msg.sender] >= amount);
        SellOrders[msg.sender] = [amount, price];
        emit SellOrderPlaced(msg.sender, amount, price);
    }

    // Safe buy order where user specifies the max amount to buy and the max price; prevents snipers changing their price 
    function Buy(address target, uint256 maxamount, uint256 maxprice) public payable {
        require(SellOrders[target][0] > 0);
        require(SellOrders[target][1] <= maxprice);
        uint256 price = SellOrders[target][1];
        uint256 amount_buyable = (mul(msg.value, uint256(10**decimals))) / price; 
        
        // decide how much we buy 
        
        if (amount_buyable > SellOrders[target][0]){
            amount_buyable = SellOrders[target][0];
        }
        if (amount_buyable > maxamount){
            amount_buyable = maxamount;
        }
        //10000000000000000000,14999999999999
        //"0xca35b7d915458ef540ade6068dfe2f44e8fa733c",10000000000000000000,14999999999999
        uint256 total_payment = mul(amount_buyable, price) / (uint256(10 ** decimals));
        
        // Let's buy tokens and actually pay, okay?
        require(amount_buyable > 0 && total_payment > 0); 
        
        // From the amount we actually pay, we take exchange fee from it 
        
        uint256 Fee = mul(total_payment, SellFee) / 10000;
        uint256 Left = total_payment - Fee; 
        
        uint256 Excess = msg.value - total_payment;
        
        uint256 OldTokensSeller = balanceOf[target];
        uint256 OldTokensBuyer = balanceOf[msg.sender];

        // Change it in memory 
        _forceTransfer(target, msg.sender, amount_buyable);
        
        // Pay out withdrawals and reset timer
        // Prevents double withdrawals in same tx
        
        // Change sell order 
        SellOrders[target][0] = sub(SellOrders[target][0],amount_buyable);
        
        
        // start all transfer stuff 

        uint256 _sendTarget = _withdraw(target, OldTokensSeller, false,0);
        uint256 _sendBuyer = _withdraw(msg.sender, OldTokensBuyer, false, _sendTarget);
        
        // in one transfer saves gas, but its not nice in the etherscan logs 
        target.transfer(add(Left, _sendTarget));
        
        if (add(Excess, _sendBuyer) > 0){
            msg.sender.transfer(add(Excess,_sendBuyer));
        }
        
        if (Fee > 0){
            owner.transfer(Fee);
        }
     
        emit SellOrderFilled(msg.sender, target, amount_buyable,  price, Left);
    }


    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
    event SellOrderPlaced(address who, uint256 available, uint256 price);
    event SellOrderFilled(address buyer, address seller, uint256 tokens, uint256 price, uint256 payment);
    event SellOrderCancelled(address who);
    event WithdrawalComplete(address who, uint256 got);
    
    
    // thanks for divs 
    function() public payable{
        
    }
    
    // safemath 
    
      function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    // uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return a / b;
  }

  /**
  * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"GetDivs","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"CancelOrder","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"price","type":"uint256"}],"name":"PlaceSellOrder","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"maxamount","type":"uint256"},{"name":"maxprice","type":"uint256"}],"name":"Buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"Withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"fee","type":"uint256"}],"name":"setFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"ViewSellOrder","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"who","type":"address"}],"name":"newOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"LastBalanceWithdrawn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_symb","type":"string"}],"name":"setSymbol","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"SellOrders","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"setName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"who","type":"address"},{"indexed":false,"name":"available","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"SellOrderPlaced","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"seller","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"payment","type":"uint256"}],"name":"SellOrderFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"who","type":"address"}],"name":"SellOrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"who","type":"address"},{"indexed":false,"name":"got","type":"uint256"}],"name":"WithdrawalComplete","type":"event"}]

606060405260408051908101604052601081527f4574686f706f6c69732053686172657300000000000000000000000000000000602082015260009080516200004d929160200190620007b6565b5060408051908101604052600381527f45505300000000000000000000000000000000000000000000000000000000006020820152600190805162000097929160200190620007b6565b5060126002556a084595161401484a0000006005556104e260065560078054600160a060020a03191690553415620000ce57600080fd5b60078054600160a060020a03191633600160a060020a03161790556002546003602052600a0a627a120081027f42770c331a5657cb2252d518db43e6ed64ad801b8f0eb5ec90309bdc9b7e075081905562030d4082027f241d292d9c780e7953b4438053936b8250e4a080b8d20ea9f2029f4d0ce0f3228190557f5e8d933d121ed05103e8f0639e4bf673767e1504601263abfab3bee88d0089165562017ae882027fd56d4fb26ae9af49468d47f7238f3f0c7b9682e2d46b81cf3eb8cbdc521bd7325562030c7882027fd7a545476d9fe2de09fc3df2af1b40d7dbd5e74d2621bf541959f0e9f9ef881455614e2082027f58de9f1add35bc7f9507c5868d4b7939b3a69090f25572efb61de1353b29424f819055619c4083027f201f02b67a9c45d1c2b4e8203d27435853d985d2901db12159bcf3f3fd4e2027557f0efcd15623c955a8ee1f67e31fa74de4ff9848c515fce9ff59827d464dd6412781905562079d3883027fe287b29e544ac5b8a6a01ff70b32a342d07fd21d4926114a77843871d465f2b555620927c083027f7e1de97ee4cd55141c2f1a6130c0fdd13b4a689234e83276b9abe27981fc4c5c55620186a083027f7615b557a670f646bf10528cd2f58a527ff3c76af1ae190e20b49121658217b8557feaae5fe5e1e43fa7fdf0b9ddb57e1a5eec3968d9433b1bea1e24439990d8bcdb55610bb882027fca08a05b5338dbb3509b18184544b10a685652ee92a0b50d97702b7b7b34b39b556103e882027f18f17b595b41e7a608f6a457fa610fd11743d1886fa805d904f423938c8d485b5573c1c51098ff73f311ecd6e855e858225f531812c4600090815260c89092027ff8c684b0bbee784a681f61c69bd29b34dafd2b87a7b6e8130f7f2b058fe429f95573690f34053ddc11bdff95d44bdfeb6b0b83cbab58919060008051602062001c6d8339815191529060405190815260200160405180910390a37383c0efc6d8b16d87bfe1335ab6bcab3ed3960285600160a060020a0316600060008051602062001c6d833981519152600254600a0a62030d400260405190815260200160405180910390a37326581d1983ced8955c170eb4d3222dcd3845a092600160a060020a0316600060008051602062001c6d833981519152600254600a0a62030d400260405190815260200160405180910390a3733130259deedb3052e24fad9d5e1f490cb8cccaa0600160a060020a0316600060008051602062001c6d833981519152600254600a0a62017ae80260405190815260200160405180910390a3734f0d861281161f39c62b790995fb1e7a0b81b07b600160a060020a0316600060008051602062001c6d833981519152600254600a0a62030c780260405190815260200160405180910390a37336e058332ae39efad2315776b9c844e30d07388b600160a060020a0316600060008051602062001c6d833981519152600254600a0a614e200260405190815260200160405180910390a3731f2672e17fd7ec4b52b7f40d41ec5c477fe85c0c600160a060020a0316600060008051602062001c6d833981519152600254600a0a619c400260405190815260200160405180910390a373eddad54e9e1f8dd01e815d84b255998a0a901bbf600160a060020a0316600060008051602062001c6d833981519152600254600a0a614e200260405190815260200160405180910390a3730a3239799518e7f7f339867a4739282014b97dcf600160a060020a0316600060008051602062001c6d833981519152600254600a0a62079d380260405190815260200160405180910390a37329a9c76ad091c015c12081a1b201c3ea56884579600160a060020a0316600060008051602062001c6d833981519152600254600a0a620927c00260405190815260200160405180910390a3730668dea6b5ec94d7ce3c43fe477888eee2fc1b2c600160a060020a0316600060008051602062001c6d833981519152600254600a0a620186a00260405190815260200160405180910390a3730982a0bf061f3cec2a004b4d2c802f479099c971600160a060020a0316600060008051602062001c6d833981519152600254600a0a614e200260405190815260200160405180910390a373a78efc3a01cb8f2f47137b97f9546b46275f54a6600160a060020a0316600060008051602062001c6d833981519152600254600a0a610bb80260405190815260200160405180910390a373522273122b20212fe255875a4737b6f50cc72006600160a060020a0316600060008051602062001c6d833981519152600254600a0a6103e80260405190815260200160405180910390a373c1c51098ff73f311ecd6e855e858225f531812c4600160a060020a0316600060008051602062001c6d833981519152600254600a0a60c80260405190815260200160405180910390a36200085b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620007f957805160ff191683800117855562000829565b8280016001018555821562000829579182015b82811115620008295782518255916020019190600101906200080c565b50620008379291506200083b565b5090565b6200085891905b8082111562000837576000815560010162000842565b90565b611402806200086b6000396000f30060606040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461011e578063095ea7b3146101a857806318160ddd146101de57806318eacb96146102035780631adf2bec146102225780631bd983a4146102355780631cbc5ab11461024e57806323b872dd14610268578063313ce5671461029057806357ea89b6146102a357806369fe0e2d146102b657806370a08231146102cc57806382b1b617146102eb578063859524541461032257806395d89b41146103415780639ca9e24114610354578063a9059cbb14610373578063b84c824614610395578063be07bb59146103e6578063c47f002714610408578063dd62ed3e14610459575b005b341561012957600080fd5b61013161047e565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561016d578082015183820152602001610155565b50505050905090810190601f16801561019a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101b357600080fd5b6101ca600160a060020a036004351660243561051c565b604051901515815260200160405180910390f35b34156101e957600080fd5b6101f16105d4565b60405190815260200160405180910390f35b341561020e57600080fd5b6101f1600160a060020a03600435166105da565b341561022d57600080fd5b61011c610655565b341561024057600080fd5b61011c600435602435610660565b61011c600160a060020a0360043516602435604435610728565b341561027357600080fd5b6101ca600160a060020a0360043581169060243516604435610a53565b341561029b57600080fd5b6101f1610c41565b34156102ae57600080fd5b61011c610c47565b34156102c157600080fd5b61011c600435610c71565b34156102d757600080fd5b6101f1600160a060020a0360043516610c9d565b34156102f657600080fd5b61030a600160a060020a0360043516610caf565b60405191825260208201526040908101905180910390f35b341561032d57600080fd5b61011c600160a060020a0360043516610cd2565b341561034c57600080fd5b610131610d2b565b341561035f57600080fd5b6101f1600160a060020a0360043516610d96565b341561037e57600080fd5b6101ca600160a060020a0360043516602435610da8565b34156103a057600080fd5b61011c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f6b95505050505050565b34156103f157600080fd5b6101f1600160a060020a0360043516602435610f9a565b341561041357600080fd5b61011c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fbc95505050505050565b341561046457600080fd5b6101f1600160a060020a0360043581169060243516610fe7565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105145780601f106104e957610100808354040283529160200191610514565b820191906000526020600020905b8154815290600101906020018083116104f757829003601f168201915b505050505081565b6000600160a060020a033316151561053057fe5b8115806105605750600160a060020a03338116600090815260046020908152604080832093871683529290522054155b151561056b57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60055481565b600080600080600a5430600160a060020a031631019250610620836009600088600160a060020a0316600160a060020a0316815260200190815260200160002054611004565b600554600160a060020a03871660009081526003602052604090205491935090830281151561064b57fe5b0495945050505050565b61065e33611016565b565b6000811161066d57600080fd5b600160a060020a0333166000908152600360205260409020548290101561069357600080fd5b6040805190810160409081528382526020808301849052600160a060020a03331660009081526008909152206106ca91600261130e565b507f9f2bccb32bc17f7191f8752950d8d036bb9c6c8a0e91e658052bf2b578ad61ff3383836040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050565b600160a060020a03831660009081526008602052604081205481908190819081908190819081908190819081901161075f57600080fd5b600160a060020a038d1660009081526008602052604090208b9060010154111561078857600080fd5b600160a060020a038d166000908152600860205260409020600101549950896107b634600254600a0a611071565b8115156107bf57fe5b600160a060020a038f16600090815260086020526040902054919004995089111561080057600160a060020a038d1660009081526008602052604090205498505b8b89111561080c578b98505b600254600a0a61081c8a8c611071565b81151561082557fe5b0497506000891180156108385750600088115b151561084357600080fd5b61271061085289600654611071565b81151561085b57fe5b04965086880395508734039450600360008e600160a060020a0316600160a060020a031681526020019081526020016000205493506003600033600160a060020a0316600160a060020a031681526020019081526020016000205492506108c38d338b6110a7565b600160a060020a038d166000908152600860205260409020546108e6908a611004565b600160a060020a038e16600090815260086020526040812090015561090e8d85600080611170565b915061091d3384600085611170565b90508c600160a060020a03166108fc61093688856112ff565b9081150290604051600060405180830381858888f19350505050151561095b57600080fd5b600061096786836112ff565b11156109a95733600160a060020a03166108fc61098487846112ff565b9081150290604051600060405180830381858888f1935050505015156109a957600080fd5b60008711156109e557600754600160a060020a031687156108fc0288604051600060405180830381858888f1935050505015156109e557600080fd5b7ff7be775cc3960db8ff8db869fd87759afec2db4cbee1e7e716aeca02915cfd4a338e8b8d8a604051600160a060020a0395861681529390941660208401526040808401929092526060830152608082019290925260a001905180910390a150505050505050505050505050565b600080808080600160a060020a0333161515610a6b57fe5b600160a060020a038881169088161415610a8457600080fd5b600160a060020a038816600090815260036020908152604080832054600890925282208892610ab79291905b0154611004565b1015610ac257600080fd5b600160a060020a0387166000908152600360205260409020548681011015610ae957600080fd5b600160a060020a038089166000908152600460209081526040808320339094168352929052205486901015610b1d57600080fd5b600160a060020a03878116600081815260036020908152604080832080548e871680865283862080548f840190945580548f9003905560048552838620339098168652969093529281902080548c900390559097509095509091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9089905190815260200160405180910390a3610bb3610655565b610bc08884600080611170565b9150610bcf8785600084611170565b9050600160a060020a03881682156108fc0283604051600060405180830381858888f193505050501515610c0257600080fd5b600160a060020a03871681156108fc0282604051600060405180830381858888f193505050501515610c3357600080fd5b506001979650505050505050565b60025481565b33600160a060020a038116600090815260036020526040812054610c6e9291600190611170565b50565b60075433600160a060020a03908116911614610c8957fe5b6109c4811115610c9857600080fd5b600655565b60036020526000908152604090205481565b600160a060020a0316600090815260086020526040902080546001909101549091565b60075433600160a060020a03908116911614610cea57fe5b600160a060020a0333161515610cfc57fe5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105145780601f106104e957610100808354040283529160200191610514565b60096020526000908152604090205481565b600080808080600160a060020a0333161515610dc057fe5b600160a060020a03331660009081526003602052604090205486901015610de657600080fd5b600160a060020a0387166000908152600360205260409020548681011015610e0d57600080fd5b600160a060020a033316600090815260036020908152604080832054600890925282208892610e3d929190610ab0565b1015610e4857600080fd5b86600160a060020a031633600160a060020a031614151515610e6957600080fd5b600160a060020a0380881660008181526003602052604080822080543390951680845282842080548d81039091559385905281548c019091559397509095509091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9089905190815260200160405180910390a3610eeb3384600080611170565b9150610efa8785600085611170565b9050600160a060020a03331682156108fc0283604051600060405180830381858888f193505050501515610f2d57600080fd5b600160a060020a03871681156108fc0282604051600060405180830381858888f193505050501515610f5e57600080fd5b5060019695505050505050565b60075433600160a060020a03908116911614610f8357fe5b6001818051610f9692916020019061134c565b5050565b60086020526000828152604090208160028110610fb357fe5b01549150829050565b60075433600160a060020a03908116911614610fd457fe5b6000818051610f9692916020019061134c565b600460209081526000928352604080842090915290825290205481565b60008282111561101057fe5b50900390565b600160a060020a03811660009081526008602052604081208101557f2c17af88255f44baf25735c2e20abad7d9b092ecbd02218b697e4c20bf18563b81604051600160a060020a03909116815260200160405180910390a150565b60008083151561108457600091506110a0565b5082820282848281151561109457fe5b041461109c57fe5b8091505b5092915050565b600160a060020a03331615156110b957fe5b600160a060020a038316600090815260036020526040902054819010156110df57600080fd5b600160a060020a038216600090815260036020526040902054818101101561110657600080fd5b600160a060020a038084166000818152600360205260408082208054869003905592851680825290839020805485019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a3505050565b60008080808615156111c7576111a461119e61119830600160a060020a031631600a546112ff565b34611004565b86611004565b600160a060020a03331660009081526009602052604081209190915593506112f4565b34600a5430600160a060020a0316310103925061120983600960008b600160a060020a0316600160a060020a0316815260200190815260200160002054611004565b915060055482880281151561121a57fe5b04905080600a5401600a8190555061124d61119e61119861124730600160a060020a031631600a546112ff565b84611004565b600160a060020a03891660009081526009602052604090819020919091557fa578b4c05763eb039caef37b2d7b949c22914c3838384c9c73cefb78c4a8ed0a908990839051600160a060020a03909216825260208201526040908101905180910390a185156112f057600160a060020a03881681156108fc0282604051600060405180830381858888f1935050505015156112e757600080fd5b600093506112f4565b8093505b505050949350505050565b60008282018381101561109c57fe5b826002810192821561133c579160200282015b8281111561133c578251825591602001919060010190611321565b506113489291506113b9565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061138d57805160ff191683800117855561133c565b8280016001018555821561133c579182018281111561133c578251825591602001919060010190611321565b6113d391905b8082111561134857600081556001016113bf565b905600a165627a7a723058202688bb0556bd07c9e120475ad6d92499dae457a0c8b26170917feac537bf23950029ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

Deployed Bytecode

0x60606040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461011e578063095ea7b3146101a857806318160ddd146101de57806318eacb96146102035780631adf2bec146102225780631bd983a4146102355780631cbc5ab11461024e57806323b872dd14610268578063313ce5671461029057806357ea89b6146102a357806369fe0e2d146102b657806370a08231146102cc57806382b1b617146102eb578063859524541461032257806395d89b41146103415780639ca9e24114610354578063a9059cbb14610373578063b84c824614610395578063be07bb59146103e6578063c47f002714610408578063dd62ed3e14610459575b005b341561012957600080fd5b61013161047e565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561016d578082015183820152602001610155565b50505050905090810190601f16801561019a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101b357600080fd5b6101ca600160a060020a036004351660243561051c565b604051901515815260200160405180910390f35b34156101e957600080fd5b6101f16105d4565b60405190815260200160405180910390f35b341561020e57600080fd5b6101f1600160a060020a03600435166105da565b341561022d57600080fd5b61011c610655565b341561024057600080fd5b61011c600435602435610660565b61011c600160a060020a0360043516602435604435610728565b341561027357600080fd5b6101ca600160a060020a0360043581169060243516604435610a53565b341561029b57600080fd5b6101f1610c41565b34156102ae57600080fd5b61011c610c47565b34156102c157600080fd5b61011c600435610c71565b34156102d757600080fd5b6101f1600160a060020a0360043516610c9d565b34156102f657600080fd5b61030a600160a060020a0360043516610caf565b60405191825260208201526040908101905180910390f35b341561032d57600080fd5b61011c600160a060020a0360043516610cd2565b341561034c57600080fd5b610131610d2b565b341561035f57600080fd5b6101f1600160a060020a0360043516610d96565b341561037e57600080fd5b6101ca600160a060020a0360043516602435610da8565b34156103a057600080fd5b61011c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610f6b95505050505050565b34156103f157600080fd5b6101f1600160a060020a0360043516602435610f9a565b341561041357600080fd5b61011c60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610fbc95505050505050565b341561046457600080fd5b6101f1600160a060020a0360043581169060243516610fe7565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105145780601f106104e957610100808354040283529160200191610514565b820191906000526020600020905b8154815290600101906020018083116104f757829003601f168201915b505050505081565b6000600160a060020a033316151561053057fe5b8115806105605750600160a060020a03338116600090815260046020908152604080832093871683529290522054155b151561056b57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60055481565b600080600080600a5430600160a060020a031631019250610620836009600088600160a060020a0316600160a060020a0316815260200190815260200160002054611004565b600554600160a060020a03871660009081526003602052604090205491935090830281151561064b57fe5b0495945050505050565b61065e33611016565b565b6000811161066d57600080fd5b600160a060020a0333166000908152600360205260409020548290101561069357600080fd5b6040805190810160409081528382526020808301849052600160a060020a03331660009081526008909152206106ca91600261130e565b507f9f2bccb32bc17f7191f8752950d8d036bb9c6c8a0e91e658052bf2b578ad61ff3383836040518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a15050565b600160a060020a03831660009081526008602052604081205481908190819081908190819081908190819081901161075f57600080fd5b600160a060020a038d1660009081526008602052604090208b9060010154111561078857600080fd5b600160a060020a038d166000908152600860205260409020600101549950896107b634600254600a0a611071565b8115156107bf57fe5b600160a060020a038f16600090815260086020526040902054919004995089111561080057600160a060020a038d1660009081526008602052604090205498505b8b89111561080c578b98505b600254600a0a61081c8a8c611071565b81151561082557fe5b0497506000891180156108385750600088115b151561084357600080fd5b61271061085289600654611071565b81151561085b57fe5b04965086880395508734039450600360008e600160a060020a0316600160a060020a031681526020019081526020016000205493506003600033600160a060020a0316600160a060020a031681526020019081526020016000205492506108c38d338b6110a7565b600160a060020a038d166000908152600860205260409020546108e6908a611004565b600160a060020a038e16600090815260086020526040812090015561090e8d85600080611170565b915061091d3384600085611170565b90508c600160a060020a03166108fc61093688856112ff565b9081150290604051600060405180830381858888f19350505050151561095b57600080fd5b600061096786836112ff565b11156109a95733600160a060020a03166108fc61098487846112ff565b9081150290604051600060405180830381858888f1935050505015156109a957600080fd5b60008711156109e557600754600160a060020a031687156108fc0288604051600060405180830381858888f1935050505015156109e557600080fd5b7ff7be775cc3960db8ff8db869fd87759afec2db4cbee1e7e716aeca02915cfd4a338e8b8d8a604051600160a060020a0395861681529390941660208401526040808401929092526060830152608082019290925260a001905180910390a150505050505050505050505050565b600080808080600160a060020a0333161515610a6b57fe5b600160a060020a038881169088161415610a8457600080fd5b600160a060020a038816600090815260036020908152604080832054600890925282208892610ab79291905b0154611004565b1015610ac257600080fd5b600160a060020a0387166000908152600360205260409020548681011015610ae957600080fd5b600160a060020a038089166000908152600460209081526040808320339094168352929052205486901015610b1d57600080fd5b600160a060020a03878116600081815260036020908152604080832080548e871680865283862080548f840190945580548f9003905560048552838620339098168652969093529281902080548c900390559097509095509091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9089905190815260200160405180910390a3610bb3610655565b610bc08884600080611170565b9150610bcf8785600084611170565b9050600160a060020a03881682156108fc0283604051600060405180830381858888f193505050501515610c0257600080fd5b600160a060020a03871681156108fc0282604051600060405180830381858888f193505050501515610c3357600080fd5b506001979650505050505050565b60025481565b33600160a060020a038116600090815260036020526040812054610c6e9291600190611170565b50565b60075433600160a060020a03908116911614610c8957fe5b6109c4811115610c9857600080fd5b600655565b60036020526000908152604090205481565b600160a060020a0316600090815260086020526040902080546001909101549091565b60075433600160a060020a03908116911614610cea57fe5b600160a060020a0333161515610cfc57fe5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105145780601f106104e957610100808354040283529160200191610514565b60096020526000908152604090205481565b600080808080600160a060020a0333161515610dc057fe5b600160a060020a03331660009081526003602052604090205486901015610de657600080fd5b600160a060020a0387166000908152600360205260409020548681011015610e0d57600080fd5b600160a060020a033316600090815260036020908152604080832054600890925282208892610e3d929190610ab0565b1015610e4857600080fd5b86600160a060020a031633600160a060020a031614151515610e6957600080fd5b600160a060020a0380881660008181526003602052604080822080543390951680845282842080548d81039091559385905281548c019091559397509095509091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9089905190815260200160405180910390a3610eeb3384600080611170565b9150610efa8785600085611170565b9050600160a060020a03331682156108fc0283604051600060405180830381858888f193505050501515610f2d57600080fd5b600160a060020a03871681156108fc0282604051600060405180830381858888f193505050501515610f5e57600080fd5b5060019695505050505050565b60075433600160a060020a03908116911614610f8357fe5b6001818051610f9692916020019061134c565b5050565b60086020526000828152604090208160028110610fb357fe5b01549150829050565b60075433600160a060020a03908116911614610fd457fe5b6000818051610f9692916020019061134c565b600460209081526000928352604080842090915290825290205481565b60008282111561101057fe5b50900390565b600160a060020a03811660009081526008602052604081208101557f2c17af88255f44baf25735c2e20abad7d9b092ecbd02218b697e4c20bf18563b81604051600160a060020a03909116815260200160405180910390a150565b60008083151561108457600091506110a0565b5082820282848281151561109457fe5b041461109c57fe5b8091505b5092915050565b600160a060020a03331615156110b957fe5b600160a060020a038316600090815260036020526040902054819010156110df57600080fd5b600160a060020a038216600090815260036020526040902054818101101561110657600080fd5b600160a060020a038084166000818152600360205260408082208054869003905592851680825290839020805485019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a3505050565b60008080808615156111c7576111a461119e61119830600160a060020a031631600a546112ff565b34611004565b86611004565b600160a060020a03331660009081526009602052604081209190915593506112f4565b34600a5430600160a060020a0316310103925061120983600960008b600160a060020a0316600160a060020a0316815260200190815260200160002054611004565b915060055482880281151561121a57fe5b04905080600a5401600a8190555061124d61119e61119861124730600160a060020a031631600a546112ff565b84611004565b600160a060020a03891660009081526009602052604090819020919091557fa578b4c05763eb039caef37b2d7b949c22914c3838384c9c73cefb78c4a8ed0a908990839051600160a060020a03909216825260208201526040908101905180910390a185156112f057600160a060020a03881681156108fc0282604051600060405180830381858888f1935050505015156112e757600080fd5b600093506112f4565b8093505b505050949350505050565b60008282018381101561109c57fe5b826002810192821561133c579160200282015b8281111561133c578251825591602001919060010190611321565b506113489291506113b9565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061138d57805160ff191683800117855561133c565b8280016001018555821561133c579182018281111561133c578251825591602001919060010190611321565b6113d391905b8082111561134857600081556001016113bf565b905600a165627a7a723058202688bb0556bd07c9e120475ad6d92499dae457a0c8b26170917feac537bf23950029

Swarm Source

bzzr://2688bb0556bd07c9e120475ad6d92499dae457a0c8b26170917feac537bf2395
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.