ETH Price: $3,331.30 (+0.27%)
Gas: 7.64 Gwei
 
Transaction Hash
Method
Block
From
To
Transfer216475482025-01-17 23:38:476 days ago1737157127IN
Social Activity Token
0 ETH0.0031479390
Transfer216474442025-01-17 23:17:476 days ago1737155867IN
Social Activity Token
0 ETH0.0046869390
Transfer216041052025-01-11 22:04:1113 days ago1736633051IN
Social Activity Token
0 ETH0.000204864.33544969
Transfer215826102025-01-08 22:01:1116 days ago1736373671IN
Social Activity Token
0 ETH0.000283786.00571131
Transfer215473032025-01-03 23:41:2320 days ago1735947683IN
Social Activity Token
0 ETH0.000392668.30989131
Transfer206583302024-09-01 21:13:59145 days ago1725225239IN
Social Activity Token
0 ETH0.00007061.49382379
Transfer204531312024-08-04 5:35:11173 days ago1722749711IN
Social Activity Token
0 ETH0.000051551
Transfer199650392024-05-28 1:19:47241 days ago1716859187IN
Social Activity Token
0 ETH0.0046858590
Transfer199323772024-05-23 11:46:47246 days ago1716464807IN
Social Activity Token
0 ETH0.0006742514.26531554
Transfer192386232024-02-16 6:15:47343 days ago1708064147IN
Social Activity Token
0 ETH0.0011593924.52959526
Transfer192374222024-02-16 2:14:23343 days ago1708049663IN
Social Activity Token
0 ETH0.0013579726.09434495
Approve175695402023-06-27 8:31:11577 days ago1687854671IN
Social Activity Token
0 ETH0.0005880512.63666513
Transfer166594802023-02-19 1:49:59705 days ago1676771399IN
Social Activity Token
0 ETH0.0008963518.96927577
Transfer162180382022-12-19 10:07:11767 days ago1671444431IN
Social Activity Token
0 ETH0.0003736112.39056237
Transfer162179952022-12-19 9:58:23767 days ago1671443903IN
Social Activity Token
0 ETH0.000624813.22245632
Transfer161453322022-12-09 6:21:59777 days ago1670566919IN
Social Activity Token
0 ETH0.0006538412.56122992
Transfer159486352022-11-11 18:42:47805 days ago1668192167IN
Social Activity Token
0 ETH0.0005972520.38061303
Transfer154579412022-09-02 7:47:53875 days ago1662104873IN
Social Activity Token
0 ETH0.000397388.40972881
Transfer153661272022-08-18 16:46:35890 days ago1660841195IN
Social Activity Token
0 ETH0.0007839726
Transfer152922332022-08-07 1:25:31901 days ago1659835531IN
Social Activity Token
0 ETH0.000175836
Transfer148701402022-05-30 2:53:12970 days ago1653879192IN
Social Activity Token
0 ETH0.0026545288
Transfer148640252022-05-29 2:52:41971 days ago1653792761IN
Social Activity Token
0 ETH0.000406648.6036
Approve148451692022-05-26 1:29:41974 days ago1653528581IN
Social Activity Token
0 ETH0.0014125953.63932029
Transfer137740212021-12-09 23:47:381141 days ago1639093658IN
Social Activity Token
0 ETH0.0020570358.8312859
Transfer137066562021-11-29 4:58:491152 days ago1638161929IN
Social Activity Token
0 ETH0.00549138157
View all transactions

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
54537892018-04-17 0:09:392474 days ago1523923779
Social Activity Token
93.31368237 ETH
50851922018-02-13 22:02:032537 days ago1518559323
Social Activity Token
3.20340032 ETH
50816202018-02-13 7:34:202537 days ago1518507260
Social Activity Token
2.5978814 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SocialActivityToken

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
Yes with 200 runs

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

/*
Social Activity Token (SAT) - Official Smart Contract
Sphere Social LTD
https://sphere.social
*/
pragma solidity 0.4.19;

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library 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;
    }

    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 c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

contract ERC20 {

    function totalSupply()public view returns (uint total_Supply);
    function balanceOf(address who)public view returns (uint256);
    function allowance(address owner, address spender)public view returns (uint);
    function transferFrom(address from, address to, uint value)public returns (bool ok);
    function approve(address spender, uint value)public returns (bool ok);
    function transfer(address to, uint value)public returns (bool ok);

    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);

}

contract FiatContract
{
    function USD(uint _id) constant returns (uint256);
}


contract SocialActivityToken is ERC20
{ 
    using SafeMath for uint256;

    FiatContract price = FiatContract(0x8055d0504666e2B6942BeB8D6014c964658Ca591); // MAINNET ADDRESS

    // Name of the token
    string public constant name = "Social Activity Token";
    // Symbol of token
    string public constant symbol = "SAT";
    uint8 public constant decimals = 8;
    uint public _totalsupply = 1000000000 * (uint256(10) ** decimals); // 1 billion SAT
    address public owner;
    bool stopped = false;
    uint256 public startdate;
    uint256 ico_first;
    uint256 ico_second;
    uint256 ico_third;
    uint256 ico_fourth;
    address central_account;
    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    
    enum Stages {
        NOTSTARTED,
        ICO,
        PAUSED,
        ENDED
    }

    Stages public stage;
    
    modifier atStage(Stages _stage) {
        if (stage != _stage)
            // Contract not in expected state
            revert();
        _;
    }
    
    modifier onlyOwner() {
        if (msg.sender != owner) {
            revert();
        }
        _;
    }

    modifier onlycentralAccount {
        require(msg.sender == central_account);
        _;
    }

    function SocialActivityToken() public
    {
        owner = msg.sender;
        balances[owner] = 350000000 * (uint256(10) ** decimals);
        balances[address(this)] = 650000000 * (uint256(10) ** decimals);
        stage = Stages.NOTSTARTED;
        Transfer(0, owner, balances[owner]);
        Transfer(0, address(this), balances[address(this)]);
    }
    
    function () public payable atStage(Stages.ICO)
    {
        require(msg.value >= 1 finney); //for round up and security measures
        require(!stopped && msg.sender != owner);

        uint256 ethCent = price.USD(0); //one USD cent in wei
        uint256 tokPrice = ethCent.mul(14); //1Sat = 14 USD cent
        
        tokPrice = tokPrice.div(10 ** 8); //limit to 10 places
        uint256 no_of_tokens = msg.value.div(tokPrice);
        
        uint256 bonus_token = 0;
        
        // Determine the bonus based on the time and the purchased amount
        if (now < ico_first)
        {
            if (no_of_tokens >=  2000 * (uint256(10)**decimals) &&
                no_of_tokens <= 19999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(50).div(100); // 50% bonus
            }
            else if (no_of_tokens >   19999 * (uint256(10)**decimals) &&
                     no_of_tokens <= 149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(55).div(100); // 55% bonus
            }
            else if (no_of_tokens > 149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(60).div(100); // 60% bonus
            }
            else
            {
                bonus_token = no_of_tokens.mul(45).div(100); // 45% bonus
            }
        }
        else if (now >= ico_first && now < ico_second)
        {
            if (no_of_tokens >=  2000 * (uint256(10)**decimals) &&
                no_of_tokens <= 19999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(40).div(100); // 40% bonus
            }
            else if (no_of_tokens >   19999 * (uint256(10)**decimals) &&
                     no_of_tokens <= 149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(45).div(100); // 45% bonus
            }
            else if (no_of_tokens >  149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(50).div(100); // 50% bonus
            }
            else
            {
                bonus_token = no_of_tokens.mul(35).div(100); // 35% bonus
            }
        }
        else if (now >= ico_second && now < ico_third)
        {
            if (no_of_tokens >=  2000 * (uint256(10)**decimals) &&
                no_of_tokens <= 19999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(30).div(100); // 30% bonus
            }
            else if (no_of_tokens >   19999 * (uint256(10)**decimals) &&
                     no_of_tokens <= 149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(35).div(100); // 35% bonus
            }
            else if (no_of_tokens >  149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(40).div(100); // 40% bonus
            }
            else
            {
                bonus_token = no_of_tokens.mul(25).div(100); // 25% bonus
            }
        }
        else if (now >= ico_third && now < ico_fourth)
        {
            if (no_of_tokens >=  2000 * (uint256(10)**decimals) &&
                no_of_tokens <= 19999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(20).div(100); // 20% bonus
            }
            else if (no_of_tokens >   19999 * (uint256(10)**decimals) &&
                     no_of_tokens <= 149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(25).div(100); // 25% bonus
            }
            else if (no_of_tokens >  149999 * (uint256(10)**decimals))
            {
                bonus_token = no_of_tokens.mul(30).div(100); // 30% bonus
            }
            else
            {
                bonus_token = no_of_tokens.mul(15).div(100); // 15% bonus
            }
        }
        
        uint256 total_token = no_of_tokens + bonus_token;
        this.transfer(msg.sender, total_token);
    }
    
    function start_ICO() public onlyOwner atStage(Stages.NOTSTARTED) {

        stage = Stages.ICO;
        stopped = false;
        startdate = now;
        ico_first = now + 14 days;
        ico_second = ico_first + 14 days;
        ico_third = ico_second + 14 days;
        ico_fourth = ico_third + 14 days;
    
    }
    
    // called by the owner, pause ICO
    function StopICO() external onlyOwner atStage(Stages.ICO) {
    
        stopped = true;
        stage = Stages.PAUSED;
    
    }

    // called by the owner , resumes ICO
    function releaseICO() external onlyOwner atStage(Stages.PAUSED) {
    
        stopped = false;
        stage = Stages.ICO;
    
    }
    
    function end_ICO() external onlyOwner atStage(Stages.ICO) {
    
        require(now > ico_fourth);
        stage = Stages.ENDED;
   
    }
    
    function burn(uint256 _amount) external onlyOwner
    {
        require(_amount <= balances[address(this)]);
        
        _totalsupply = _totalsupply.sub(_amount);
        balances[address(this)] = balances[address(this)].sub(_amount);
        balances[0x0] = balances[0x0].add(_amount);
        Transfer(address(this), 0x0, _amount);
    }
     
    function set_centralAccount(address central_Acccount) external onlyOwner {
    
        central_account = central_Acccount;
    
    }



    // what is the total supply of SAT
    function totalSupply() public view returns (uint256 total_Supply) {
    
        total_Supply = _totalsupply;
    
    }
    
    // What is the balance of a particular account?
    function balanceOf(address _owner)public view returns (uint256 balance) {
    
        return balances[_owner];
    
    }
    
    // Send _value amount of tokens from address _from to address _to
    // The transferFrom method is used for a withdraw workflow, allowing contracts to send
    // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
    // fees in sub-currencies; the command should fail unless the _from account has
    // deliberately authorized the sender of the message via some mechanism; we propose
    // these standardized APIs for approval:
    function transferFrom( address _from, address _to, uint256 _amount )public returns (bool success) {
    
        require( _to != 0x0);
    
        balances[_from] = balances[_from].sub(_amount);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_amount);
        balances[_to] = balances[_to].add(_amount);
    
        Transfer(_from, _to, _amount);
    
        return true;
    }
    
    // Allow _spender to withdraw from your account, multiple times, up to the _value amount.
    // If this function is called again it overwrites the current allowance with _value.
    function approve(address _spender, uint256 _amount)public returns (bool success) {
        require(_amount == 0 || allowed[msg.sender][_spender] == 0);
        require( _spender != 0x0);
    
        allowed[msg.sender][_spender] = _amount;
    
        Approval(msg.sender, _spender, _amount);
    
        return true;
    }
  
    function allowance(address _owner, address _spender)public view returns (uint256 remaining) {
    
        require( _owner != 0x0 && _spender !=0x0);
    
        return allowed[_owner][_spender];
   
   }

    // Transfer the balance from owner's account to another account
    function transfer(address _to, uint256 _amount)public returns (bool success) {
    
        require( _to != 0x0);
        
        balances[msg.sender] = balances[msg.sender].sub(_amount);
        balances[_to] = balances[_to].add(_amount);
    
        Transfer(msg.sender, _to, _amount);
    
        return true;
    }
    
    function transferby(address _from,address _to,uint256 _amount) external onlycentralAccount returns(bool success) {
    
        require( _to != 0x0);
        
        // Only allow transferby() to transfer from 0x0 and the ICO account
        require(_from == address(this));
        
        balances[_from] = (balances[_from]).sub(_amount);
        balances[_to] = (balances[_to]).add(_amount);
        if (_from == 0x0)
        {
            _totalsupply = _totalsupply.add(_amount);
        }
    
        Transfer(_from, _to, _amount);
    
        return true;
    }

    //In case the ownership needs to be transferred
    function transferOwnership(address newOwner)public onlyOwner {

        balances[newOwner] = balances[newOwner].add(balances[owner]);
        balances[owner] = 0;
        owner = newOwner;
    
    }

    function drain() external onlyOwner {
    
        owner.transfer(this.balance);
    
    }
    
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"end_ICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"releaseICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"total_Supply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"StopICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"start_ICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"central_Acccount","type":"address"}],"name":"set_centralAccount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"drain","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_totalsupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"stage","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startdate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferby","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","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"}]

606060405260008054600160a060020a031916738055d0504666e2b6942beb8d6014c964658ca59117905567016345785d8a00006001556002805460a060020a60ff0219169055341561005157600080fd5b60028054600160a060020a03191633600160a060020a03908116919091178083558116600090815260096020526040808220667c5850872380009055308316825280822066e6ed27d66680009055600b805460ff1916905592549091168082528282205490926000805160206113ca83398151915291905190815260200160405180910390a3600160a060020a033016600081815260096020526040808220546000805160206113ca833981519152915190815260200160405180910390a36112ab8061011f6000396000f30060606040526004361061010e5763ffffffff60e060020a60003504166302c3d7f681146105c657806306fdde03146105db578063095ea7b314610665578063124d33961461069b57806318160ddd146106ae57806323b872dd146106d3578063313ce567146106fb5780633dbedbd41461072457806342966c681461073757806370a082311461074d578063807d2da31461076c5780638da5cb5b1461077f57806395d89b41146107ae57806397668720146107c15780639890220b146107e0578063a393dc44146107f3578063a9059cbb14610806578063c040e6b814610828578063cde9f2ea1461085f578063dd62ed3e14610872578063eb9763ed14610897578063f2fde38b146108bf575b600080808080600180600b5460ff16600381111561012857fe5b1461013257600080fd5b66038d7ea4c6800034101561014657600080fd5b60025474010000000000000000000000000000000000000000900460ff16158015610180575060025433600160a060020a03908116911614155b151561018b57600080fd5b60008054600160a060020a031690630c560c6490806040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156101dd57600080fd5b6102c65a03f115156101ee57600080fd5b5050506040518051965061020b905086600e63ffffffff6108de16565b9450610221856305f5e10063ffffffff61091416565b9450610233348663ffffffff61091416565b93506000925060045442101561030457642e90edd000841080159061025e57506501d1a3543f008411155b1561028c57610285606461027986603263ffffffff6108de16565b9063ffffffff61091416565b92506102ff565b6501d1a3543f00841180156102a75750650da46fb60f008411155b156102c257610285606461027986603763ffffffff6108de16565b650da46fb60f008411156102e657610285606461027986603c63ffffffff6108de16565b6102fc606461027986602d63ffffffff6108de16565b92505b610541565b6004544210158015610317575060055442105b156103c257642e90edd000841080159061033757506501d1a3543f008411155b1561035257610285606461027986602863ffffffff6108de16565b6501d1a3543f008411801561036d5750650da46fb60f008411155b1561038857610285606461027986602d63ffffffff6108de16565b650da46fb60f008411156103ac57610285606461027986603263ffffffff6108de16565b6102fc606461027986602363ffffffff6108de16565b60055442101580156103d5575060065442105b1561048057642e90edd00084108015906103f557506501d1a3543f008411155b1561041057610285606461027986601e63ffffffff6108de16565b6501d1a3543f008411801561042b5750650da46fb60f008411155b1561044657610285606461027986602363ffffffff6108de16565b650da46fb60f0084111561046a57610285606461027986602863ffffffff6108de16565b6102fc606461027986601963ffffffff6108de16565b6006544210158015610493575060075442105b1561054157642e90edd00084108015906104b357506501d1a3543f008411155b156104ce576102fc606461027986601463ffffffff6108de16565b6501d1a3543f00841180156104e95750650da46fb60f008411155b15610504576102fc606461027986601963ffffffff6108de16565b650da46fb60f00841115610528576102fc606461027986601e63ffffffff6108de16565b61053e606461027986600f63ffffffff6108de16565b92505b828401915030600160a060020a031663a9059cbb338460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156105a357600080fd5b6102c65a03f115156105b457600080fd5b50505060405180515050505050505050005b34156105d157600080fd5b6105d961092b565b005b34156105e657600080fd5b6105ee61098a565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561062a578082015183820152602001610612565b50505050905090810190601f1680156106575780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561067057600080fd5b610687600160a060020a03600435166024356109c1565b604051901515815260200160405180910390f35b34156106a657600080fd5b6105d9610a7c565b34156106b957600080fd5b6106c1610ae6565b60405190815260200160405180910390f35b34156106de57600080fd5b610687600160a060020a0360043581169060243516604435610aec565b341561070657600080fd5b61070e610c04565b60405160ff909116815260200160405180910390f35b341561072f57600080fd5b6105d9610c09565b341561074257600080fd5b6105d9600435610c87565b341561075857600080fd5b6106c1600160a060020a0360043516610db3565b341561077757600080fd5b6105d9610dce565b341561078a57600080fd5b610792610e5e565b604051600160a060020a03909116815260200160405180910390f35b34156107b957600080fd5b6105ee610e6d565b34156107cc57600080fd5b6105d9600160a060020a0360043516610ea4565b34156107eb57600080fd5b6105d9610eee565b34156107fe57600080fd5b6106c1610f44565b341561081157600080fd5b610687600160a060020a0360043516602435610f4a565b341561083357600080fd5b61083b61100e565b6040518082600381111561084b57fe5b60ff16815260200191505060405180910390f35b341561086a57600080fd5b6106c1611017565b341561087d57600080fd5b6106c1600160a060020a036004358116906024351661101d565b34156108a257600080fd5b610687600160a060020a0360043581169060243516604435611076565b34156108ca57600080fd5b6105d9600160a060020a03600435166111a2565b6000808315156108f1576000915061090d565b5082820282848281151561090157fe5b041461090957fe5b8091505b5092915050565b600080828481151561092257fe5b04949350505050565b60025433600160a060020a0390811691161461094657600080fd5b600180600b5460ff16600381111561095a57fe5b1461096457600080fd5b600754421161097257600080fd5b600b80546003919060ff19166001835b021790555050565b60408051908101604052601581527f536f6369616c20416374697669747920546f6b656e0000000000000000000000602082015281565b60008115806109f35750600160a060020a033381166000908152600a6020908152604080832093871683529290522054155b15156109fe57600080fd5b600160a060020a0383161515610a1357600080fd5b600160a060020a033381166000818152600a6020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025433600160a060020a03908116911614610a9757600080fd5b600280600b5460ff166003811115610aab57fe5b14610ab557600080fd5b6002805474ff000000000000000000000000000000000000000019169055600b80546001919060ff19168280610982565b60015490565b6000600160a060020a0383161515610b0357600080fd5b600160a060020a038416600090815260096020526040902054610b2c908363ffffffff61123e16565b600160a060020a03808616600090815260096020908152604080832094909455600a8152838220339093168252919091522054610b6f908363ffffffff61123e16565b600160a060020a038086166000908152600a602090815260408083203385168452825280832094909455918616815260099091522054610bb5908363ffffffff61125016565b600160a060020a03808516600081815260096020526040908190209390935591908616906000805160206112608339815191529085905190815260200160405180910390a35060019392505050565b600881565b60025433600160a060020a03908116911614610c2457600080fd5b600180600b5460ff166003811115610c3857fe5b14610c4257600080fd5b6002805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000178155600b805460ff1916600183610982565b60025433600160a060020a03908116911614610ca257600080fd5b600160a060020a033016600090815260096020526040902054811115610cc757600080fd5b600154610cda908263ffffffff61123e16565b600155600160a060020a033016600090815260096020526040902054610d06908263ffffffff61123e16565b600160a060020a03301660009081526009602052604081209190915580527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b54610d56908263ffffffff61125016565b600080805260096020527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b9190915530600160a060020a03166000805160206112608339815191528360405190815260200160405180910390a350565b600160a060020a031660009081526009602052604090205490565b60025433600160a060020a03908116911614610de957600080fd5b600080600b5460ff166003811115610dfd57fe5b14610e0757600080fd5b50600b805460ff191660011790556002805474ff0000000000000000000000000000000000000000191690554260038190556212750081016004556224ea00810160055562375f0081016006556249d40001600755565b600254600160a060020a031681565b60408051908101604052600381527f5341540000000000000000000000000000000000000000000000000000000000602082015281565b60025433600160a060020a03908116911614610ebf57600080fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025433600160a060020a03908116911614610f0957600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f193505050501515610f4257600080fd5b565b60015481565b6000600160a060020a0383161515610f6157600080fd5b600160a060020a033316600090815260096020526040902054610f8a908363ffffffff61123e16565b600160a060020a033381166000908152600960205260408082209390935590851681522054610fbf908363ffffffff61125016565b600160a060020a0380851660008181526009602052604090819020939093559133909116906000805160206112608339815191529085905190815260200160405180910390a350600192915050565b600b5460ff1681565b60035481565b6000600160a060020a0383161580159061103f5750600160a060020a03821615155b151561104a57600080fd5b50600160a060020a039182166000908152600a6020908152604080832093909416825291909152205490565b60085460009033600160a060020a0390811691161461109457600080fd5b600160a060020a03831615156110a957600080fd5b30600160a060020a031684600160a060020a03161415156110c957600080fd5b600160a060020a0384166000908152600960205260409020546110f2908363ffffffff61123e16565b600160a060020a038086166000908152600960205260408082209390935590851681522054611127908363ffffffff61125016565b600160a060020a03808516600090815260096020526040902091909155841615156111635760015461115f908363ffffffff61125016565b6001555b82600160a060020a031684600160a060020a03166000805160206112608339815191528460405190815260200160405180910390a35060019392505050565b60025433600160a060020a039081169116146111bd57600080fd5b600254600160a060020a039081166000908152600960205260408082205492841682529020546111f29163ffffffff61125016565b600160a060020a039182166000818152600960205260408082209390935560028054909416815291822091909155815473ffffffffffffffffffffffffffffffffffffffff1916179055565b60008282111561124a57fe5b50900390565b60008282018381101561090957fe00ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820a1c42cdc6fc9eb09efc77750532b747c24197c4fe0cb0693534aa5cdeaba5ec20029ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

Deployed Bytecode

0x60606040526004361061010e5763ffffffff60e060020a60003504166302c3d7f681146105c657806306fdde03146105db578063095ea7b314610665578063124d33961461069b57806318160ddd146106ae57806323b872dd146106d3578063313ce567146106fb5780633dbedbd41461072457806342966c681461073757806370a082311461074d578063807d2da31461076c5780638da5cb5b1461077f57806395d89b41146107ae57806397668720146107c15780639890220b146107e0578063a393dc44146107f3578063a9059cbb14610806578063c040e6b814610828578063cde9f2ea1461085f578063dd62ed3e14610872578063eb9763ed14610897578063f2fde38b146108bf575b600080808080600180600b5460ff16600381111561012857fe5b1461013257600080fd5b66038d7ea4c6800034101561014657600080fd5b60025474010000000000000000000000000000000000000000900460ff16158015610180575060025433600160a060020a03908116911614155b151561018b57600080fd5b60008054600160a060020a031690630c560c6490806040516020015260405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156101dd57600080fd5b6102c65a03f115156101ee57600080fd5b5050506040518051965061020b905086600e63ffffffff6108de16565b9450610221856305f5e10063ffffffff61091416565b9450610233348663ffffffff61091416565b93506000925060045442101561030457642e90edd000841080159061025e57506501d1a3543f008411155b1561028c57610285606461027986603263ffffffff6108de16565b9063ffffffff61091416565b92506102ff565b6501d1a3543f00841180156102a75750650da46fb60f008411155b156102c257610285606461027986603763ffffffff6108de16565b650da46fb60f008411156102e657610285606461027986603c63ffffffff6108de16565b6102fc606461027986602d63ffffffff6108de16565b92505b610541565b6004544210158015610317575060055442105b156103c257642e90edd000841080159061033757506501d1a3543f008411155b1561035257610285606461027986602863ffffffff6108de16565b6501d1a3543f008411801561036d5750650da46fb60f008411155b1561038857610285606461027986602d63ffffffff6108de16565b650da46fb60f008411156103ac57610285606461027986603263ffffffff6108de16565b6102fc606461027986602363ffffffff6108de16565b60055442101580156103d5575060065442105b1561048057642e90edd00084108015906103f557506501d1a3543f008411155b1561041057610285606461027986601e63ffffffff6108de16565b6501d1a3543f008411801561042b5750650da46fb60f008411155b1561044657610285606461027986602363ffffffff6108de16565b650da46fb60f0084111561046a57610285606461027986602863ffffffff6108de16565b6102fc606461027986601963ffffffff6108de16565b6006544210158015610493575060075442105b1561054157642e90edd00084108015906104b357506501d1a3543f008411155b156104ce576102fc606461027986601463ffffffff6108de16565b6501d1a3543f00841180156104e95750650da46fb60f008411155b15610504576102fc606461027986601963ffffffff6108de16565b650da46fb60f00841115610528576102fc606461027986601e63ffffffff6108de16565b61053e606461027986600f63ffffffff6108de16565b92505b828401915030600160a060020a031663a9059cbb338460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156105a357600080fd5b6102c65a03f115156105b457600080fd5b50505060405180515050505050505050005b34156105d157600080fd5b6105d961092b565b005b34156105e657600080fd5b6105ee61098a565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561062a578082015183820152602001610612565b50505050905090810190601f1680156106575780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561067057600080fd5b610687600160a060020a03600435166024356109c1565b604051901515815260200160405180910390f35b34156106a657600080fd5b6105d9610a7c565b34156106b957600080fd5b6106c1610ae6565b60405190815260200160405180910390f35b34156106de57600080fd5b610687600160a060020a0360043581169060243516604435610aec565b341561070657600080fd5b61070e610c04565b60405160ff909116815260200160405180910390f35b341561072f57600080fd5b6105d9610c09565b341561074257600080fd5b6105d9600435610c87565b341561075857600080fd5b6106c1600160a060020a0360043516610db3565b341561077757600080fd5b6105d9610dce565b341561078a57600080fd5b610792610e5e565b604051600160a060020a03909116815260200160405180910390f35b34156107b957600080fd5b6105ee610e6d565b34156107cc57600080fd5b6105d9600160a060020a0360043516610ea4565b34156107eb57600080fd5b6105d9610eee565b34156107fe57600080fd5b6106c1610f44565b341561081157600080fd5b610687600160a060020a0360043516602435610f4a565b341561083357600080fd5b61083b61100e565b6040518082600381111561084b57fe5b60ff16815260200191505060405180910390f35b341561086a57600080fd5b6106c1611017565b341561087d57600080fd5b6106c1600160a060020a036004358116906024351661101d565b34156108a257600080fd5b610687600160a060020a0360043581169060243516604435611076565b34156108ca57600080fd5b6105d9600160a060020a03600435166111a2565b6000808315156108f1576000915061090d565b5082820282848281151561090157fe5b041461090957fe5b8091505b5092915050565b600080828481151561092257fe5b04949350505050565b60025433600160a060020a0390811691161461094657600080fd5b600180600b5460ff16600381111561095a57fe5b1461096457600080fd5b600754421161097257600080fd5b600b80546003919060ff19166001835b021790555050565b60408051908101604052601581527f536f6369616c20416374697669747920546f6b656e0000000000000000000000602082015281565b60008115806109f35750600160a060020a033381166000908152600a6020908152604080832093871683529290522054155b15156109fe57600080fd5b600160a060020a0383161515610a1357600080fd5b600160a060020a033381166000818152600a6020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025433600160a060020a03908116911614610a9757600080fd5b600280600b5460ff166003811115610aab57fe5b14610ab557600080fd5b6002805474ff000000000000000000000000000000000000000019169055600b80546001919060ff19168280610982565b60015490565b6000600160a060020a0383161515610b0357600080fd5b600160a060020a038416600090815260096020526040902054610b2c908363ffffffff61123e16565b600160a060020a03808616600090815260096020908152604080832094909455600a8152838220339093168252919091522054610b6f908363ffffffff61123e16565b600160a060020a038086166000908152600a602090815260408083203385168452825280832094909455918616815260099091522054610bb5908363ffffffff61125016565b600160a060020a03808516600081815260096020526040908190209390935591908616906000805160206112608339815191529085905190815260200160405180910390a35060019392505050565b600881565b60025433600160a060020a03908116911614610c2457600080fd5b600180600b5460ff166003811115610c3857fe5b14610c4257600080fd5b6002805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000178155600b805460ff1916600183610982565b60025433600160a060020a03908116911614610ca257600080fd5b600160a060020a033016600090815260096020526040902054811115610cc757600080fd5b600154610cda908263ffffffff61123e16565b600155600160a060020a033016600090815260096020526040902054610d06908263ffffffff61123e16565b600160a060020a03301660009081526009602052604081209190915580527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b54610d56908263ffffffff61125016565b600080805260096020527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b9190915530600160a060020a03166000805160206112608339815191528360405190815260200160405180910390a350565b600160a060020a031660009081526009602052604090205490565b60025433600160a060020a03908116911614610de957600080fd5b600080600b5460ff166003811115610dfd57fe5b14610e0757600080fd5b50600b805460ff191660011790556002805474ff0000000000000000000000000000000000000000191690554260038190556212750081016004556224ea00810160055562375f0081016006556249d40001600755565b600254600160a060020a031681565b60408051908101604052600381527f5341540000000000000000000000000000000000000000000000000000000000602082015281565b60025433600160a060020a03908116911614610ebf57600080fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025433600160a060020a03908116911614610f0957600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f193505050501515610f4257600080fd5b565b60015481565b6000600160a060020a0383161515610f6157600080fd5b600160a060020a033316600090815260096020526040902054610f8a908363ffffffff61123e16565b600160a060020a033381166000908152600960205260408082209390935590851681522054610fbf908363ffffffff61125016565b600160a060020a0380851660008181526009602052604090819020939093559133909116906000805160206112608339815191529085905190815260200160405180910390a350600192915050565b600b5460ff1681565b60035481565b6000600160a060020a0383161580159061103f5750600160a060020a03821615155b151561104a57600080fd5b50600160a060020a039182166000908152600a6020908152604080832093909416825291909152205490565b60085460009033600160a060020a0390811691161461109457600080fd5b600160a060020a03831615156110a957600080fd5b30600160a060020a031684600160a060020a03161415156110c957600080fd5b600160a060020a0384166000908152600960205260409020546110f2908363ffffffff61123e16565b600160a060020a038086166000908152600960205260408082209390935590851681522054611127908363ffffffff61125016565b600160a060020a03808516600090815260096020526040902091909155841615156111635760015461115f908363ffffffff61125016565b6001555b82600160a060020a031684600160a060020a03166000805160206112608339815191528460405190815260200160405180910390a35060019392505050565b60025433600160a060020a039081169116146111bd57600080fd5b600254600160a060020a039081166000908152600960205260408082205492841682529020546111f29163ffffffff61125016565b600160a060020a039182166000818152600960205260408082209390935560028054909416815291822091909155815473ffffffffffffffffffffffffffffffffffffffff1916179055565b60008282111561124a57fe5b50900390565b60008282018381101561090957fe00ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820a1c42cdc6fc9eb09efc77750532b747c24197c4fe0cb0693534aa5cdeaba5ec20029

Swarm Source

bzzr://a1c42cdc6fc9eb09efc77750532b747c24197c4fe0cb0693534aa5cdeaba5ec2

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.