ETH Price: $2,287.44 (+0.47%)

Token

OMNIS-BIT (OMNIS)
 

Overview

Max Total Supply

820,000,000 OMNIS

Holders

536

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
100 OMNIS

Value
$0.00
0x3ac30f9b52610bff8ef08f4fd1f3733eabf03cfd
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:
OMNIS

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-04-12
*/

pragma solidity 0.4.25;
/** 
 _____                   __  __      ______      ____                 ____       ______      ______   
/\  __`\     /'\_/`\    /\ \/\ \    /\__  _\    /\  _`\              /\  _`\    /\__  _\    /\__  _\  
\ \ \/\ \   /\      \   \ \ `\\ \   \/_/\ \/    \ \,\L\_\            \ \ \L\ \  \/_/\ \/    \/_/\ \/  
 \ \ \ \ \  \ \ \__\ \   \ \ , ` \     \ \ \     \/_\__ \    _______  \ \  _ <'    \ \ \       \ \ \  
  \ \ \_\ \  \ \ \_/\ \   \ \ \`\ \     \_\ \__    /\ \L\ \ /\______\  \ \ \L\ \    \_\ \__     \ \ \ 
   \ \_____\  \ \_\\ \_\   \ \_\ \_\    /\_____\   \ `\____\\/______/   \ \____/    /\_____\     \ \_\
    \/_____/   \/_/ \/_/    \/_/\/_/    \/_____/    \/_____/             \/___/     \/_____/      \/_/

    WEBSITE: omnis-bit.com
 */

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns(uint256) {
        uint256 c = a * b;
        assert(a == 0 || 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;
    }
}

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
    address public owner;

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    constructor() public {
        owner = msg.sender;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function transferOwnership(address newOwner) onlyOwner public {
        require(newOwner != address(0));
        owner = newOwner;
    }

}

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
    uint256 public totalSupply;

    function balanceOf(address who) public view returns(uint256);

    function transfer(address to, uint256 value) public returns(bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) public view returns(uint256);

    function transferFrom(address from, address to, uint256 value) public returns(bool);

    function approve(address spender, uint256 value) public returns(bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract StakerToken {
    uint256 public stakeStartTime;
    uint256 public stakeMinAge;
    uint256 public stakeMaxAge;

    function claimStake() public returns(bool);

    function coinAge() public view returns(uint256);

    function annualInterest() public view returns(uint256);
    event ClaimStake(address indexed _address, uint _reward);
}

contract OMNIS is ERC20, StakerToken, Ownable {
    using SafeMath
    for uint256;

    string public name = "OMNIS-BIT";
    string public symbol = "OMNIS";
    uint public decimals = 18;

    uint public chainStartTime;
    uint public chainStartBlockNumber;
    uint public stakeStartTime;
    uint public stakeMinAge = 3 days;
    uint public stakeMaxAge = 90 days;

    uint public totalSupply;
    uint public maxTotalSupply;
    uint public totalInitialSupply;

    struct Airdrop {
        uint value;
        bool claimed;
    }

    mapping(address => Airdrop) public airdrops;

    //ESCROW RELATED
    enum PaymentStatus {
        Pending,
        Completed,
        Refunded
    }

    event NewFeeRate(uint newFee);
    event NewCollectionWallet(address newWallet);
    event PaymentCreation(uint indexed orderId, address indexed customer, uint value);
    event PaymentCompletion(uint indexed orderId, address indexed provider, address indexed customer, uint value, PaymentStatus status);

    struct Payment {
        address provider;
        address customer;
        uint value;
        PaymentStatus status;
        bool refundApproved;
    }

    uint escrowCounter;
    uint public escrowFeePercent = 5; //0.5%

    mapping(uint => Payment) public payments;
    address public collectionAddress;
    //ESCROW SECTION END

    struct transferInStruct {
        uint128 amount;
        uint64 time;
    }

    mapping(address => uint256) balances;
    mapping(address => mapping(address => uint256)) allowed;
    mapping(address => transferInStruct[]) transferIns;

    modifier canPoSclaimStake() {
        require(totalSupply < maxTotalSupply);
        _;
    }

    constructor() public {
        maxTotalSupply = 1000000000 * 10 ** 18;
        totalInitialSupply = 820000000 * 10 ** 18;

        chainStartTime = now; //Original Time
        chainStartBlockNumber = block.number; //Original Block

        totalSupply = totalInitialSupply;
        
        collectionAddress = msg.sender; //Initially collection address to owner

        balances[msg.sender] = totalInitialSupply;
        emit Transfer(address(0), msg.sender, totalInitialSupply);
    }

    function setCurrentEscrowFee(uint _newFee) onlyOwner public {
        require(_newFee != 0 && _newFee < 1000);
        escrowFeePercent = _newFee;
        emit NewFeeRate(escrowFeePercent);
    }

    function setCollectionWallet(address _newWallet) onlyOwner public {
        require(_newWallet != address(0));
        collectionAddress = _newWallet;
        emit NewCollectionWallet(collectionAddress);
    }

    function transfer(address _to, uint256 _value) public returns(bool) {
        require(_to != address(0));

        if (msg.sender == _to) return claimStake();
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender];
        uint64 _now = uint64(now);
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now));
        transferIns[_to].push(transferInStruct(uint128(_value), _now));
        return true;
    }

    function balanceOf(address _owner) public view returns(uint256 balance) {
        return balances[_owner];
    }

    function transferFrom(address _from, address _to, uint256 _value) public returns(bool) {
        require(_to != address(0));

        uint256 _allowance = allowed[_from][msg.sender];
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = _allowance.sub(_value);
        emit Transfer(_from, _to, _value);
        if (transferIns[_from].length > 0) delete transferIns[_from];
        uint64 _now = uint64(now);
        transferIns[_from].push(transferInStruct(uint128(balances[_from]), _now));
        transferIns[_to].push(transferInStruct(uint128(_value), _now));
        return true;
    }

    function approve(address _spender, uint256 _value) public returns(bool) {
        require((_value == 0) || (allowed[msg.sender][_spender] == 0));

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

    function allowance(address _owner, address _spender) public view returns(uint256 remaining) {
        return allowed[_owner][_spender];
    }

    /**
     * @dev claimStake
     * @dev Allow any user to claim stake earned
     */
    function claimStake() canPoSclaimStake public returns(bool) {
        if (balances[msg.sender] <= 0) return false;
        if (transferIns[msg.sender].length <= 0) return false;

        uint reward = getProofOfStakeReward(msg.sender);
        if (reward <= 0) return false;

        totalSupply = totalSupply.add(reward);
        balances[msg.sender] = balances[msg.sender].add(reward);
        delete transferIns[msg.sender];
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), uint64(now)));

        emit Transfer(address(0),msg.sender,reward);
        emit ClaimStake(msg.sender, reward);
        return true;
    }

    /**
     * @dev getBlockNumber
     * @dev Returns the block number since deployment
     */
    function getBlockNumber() public view returns(uint blockNumber) {
        blockNumber = block.number.sub(chainStartBlockNumber);
    }

    /**
     * @dev coinAge
     * @dev Returns the coinage for the callers account
     */
    function coinAge() public view returns(uint myCoinAge) {
        myCoinAge = getCoinAge(msg.sender, now);
    }

    /**
     * @dev annualInterest
     * @dev Returns the current interest rate
     */
    function annualInterest() public view returns(uint interest) {
        uint _now = now;
        interest = 0;
        if ((_now.sub(stakeStartTime)).div(365 days) == 0) {
            interest = (106 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 1) {
            interest = (49 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 2) {
            interest = (24 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 3) {
            interest = (13 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 4) {
            interest = (11 * 1e15);
        }
    }

    /**
     * @dev getProofOfStakeReward
     * @dev Returns the current stake of a wallet
     * @param _address is the user wallet
     */
    function getProofOfStakeReward(address _address) public view returns(uint) {
        require((now >= stakeStartTime) && (stakeStartTime > 0));

        uint _now = now;
        uint _coinAge = getCoinAge(_address, _now);
        if (_coinAge <= 0) return 0;

        uint interest = 0;

        if ((_now.sub(stakeStartTime)).div(365 days) == 0) {
            interest = (106 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 1) {
            interest = (49 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 2) {
            interest = (24 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 3) {
            interest = (13 * 1e15);
        } else if ((_now.sub(stakeStartTime)).div(365 days) == 4) {
            interest = (11 * 1e1);
        }

        return (_coinAge * interest).div(365 * (10 ** decimals));
    }

    function getCoinAge(address _address, uint _now) internal view returns(uint _coinAge) {
        if (transferIns[_address].length <= 0) return 0;

        for (uint i = 0; i < transferIns[_address].length; i++) {
            if (_now < uint(transferIns[_address][i].time).add(stakeMinAge)) continue;

            uint nCoinSeconds = _now.sub(uint(transferIns[_address][i].time));
            if (nCoinSeconds > stakeMaxAge) nCoinSeconds = stakeMaxAge;

            _coinAge = _coinAge.add(uint(transferIns[_address][i].amount) * nCoinSeconds.div(1 days));
        }
    }


    /**
     * @dev ownerSetStakeStartTime
     * @dev Used by the owner to define the staking period start
     * @param timestamp time in UNIX format
     */
    function ownerSetStakeStartTime(uint timestamp) onlyOwner public {
        require((stakeStartTime <= 0) && (timestamp >= chainStartTime));
        stakeStartTime = timestamp;
    }

    /**
     * @dev batchTransfer
     * @dev Used by the owner to deliver several transfers at the same time (Airdrop)
     * @param _recipients Array of addresses
     * @param _values Array of values
     */
    function batchTransfer(address[] _recipients, uint[] _values) onlyOwner external returns(bool) {
        //Check data sizes
        require(_recipients.length > 0 && _recipients.length == _values.length);
        //Total value calc
        uint total = 0;
        for (uint i = 0; i < _values.length; i++) {
            total = total.add(_values[i]);
        }
        //Sender must hold funds
        require(total <= balances[msg.sender]);
        //Make transfers
        uint64 _now = uint64(now);
        for (uint j = 0; j < _recipients.length; j++) {
            balances[_recipients[j]] = balances[_recipients[j]].add(_values[j]);
            transferIns[_recipients[j]].push(transferInStruct(uint128(_values[j]), _now));
            emit Transfer(msg.sender, _recipients[j], _values[j]);
        }
        //Reduce all balance on a single transaction from sender
        balances[msg.sender] = balances[msg.sender].sub(total);
        if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender];
        if (balances[msg.sender] > 0) transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now));

        return true;
    }

    /**
     * @dev dropSet
     * @dev Used by the owner to set several self-claiming drops at the same time (Airdrop)
     * @param _recipients Array of addresses
     * @param _values Array of values
     */
    function dropSet(address[] _recipients, uint[] _values) onlyOwner external returns(bool) {
        //Check data sizes 
        require(_recipients.length > 0 && _recipients.length == _values.length);

        for (uint j = 0; j < _recipients.length; j++) {
            //Store user drop info
            airdrops[_recipients[j]].value = _values[j];
            airdrops[_recipients[j]].claimed = false;
        }

        return true;
    }

    /**
     * @dev claimAirdrop
     * @dev Allow any user with a drop set to claim it
     */
    function claimAirdrop() external returns(bool) {
        //Check if not claimed
        require(airdrops[msg.sender].claimed == false);
        require(airdrops[msg.sender].value != 0);

        //Set Claim to True
        airdrops[msg.sender].claimed = true;
        //Clear value
        airdrops[msg.sender].value = 0;

        //Tokens are on owner wallet
        address _from = owner;
        //Tokens goes to costumer
        address _to = msg.sender;
        //Original value
        uint _value = airdrops[msg.sender].value;

        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(_from, _to, _value);
        if (transferIns[_from].length > 0) delete transferIns[_from];
        uint64 _now = uint64(now);
        transferIns[_from].push(transferInStruct(uint128(balances[_from]), _now));
        transferIns[_to].push(transferInStruct(uint128(_value), _now));
        return true;

    }

    //ESCROW SECTION
    /**
     * @dev createPayment
     * @dev Allow a user to start a Escrow process
     * @param _customer Counterpart that will receive payment on success
     * @param _value Amount to be escrowed
     */
    function createPayment(address _customer, uint _value) external returns(uint) {

        address _to = address(this);
        require(_value > 0);

        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        if (transferIns[msg.sender].length > 0) delete transferIns[msg.sender];
        uint64 _now = uint64(now);
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]), _now));

        payments[escrowCounter] = Payment(msg.sender, _customer, _value, PaymentStatus.Pending, false);
        emit PaymentCreation(escrowCounter, _customer, _value);

        escrowCounter = escrowCounter.add(1);
        return escrowCounter - 1;
    }

    /**
     * @dev release
     * @dev Allow a user to release a payment
     * @param _orderId Ticket number of the escrow service
     */
    function release(uint _orderId) external returns(bool) {
        //Get Payment Handler
        Payment storage payment = payments[_orderId];
        //Only if pending
        require(payment.status == PaymentStatus.Pending);
        //Only owner or token provider
        require(msg.sender == owner || msg.sender == payment.provider);
        //Tokens are on contract
        address _from = address(this);
        //Tokens goes to costumer
        address _to = payment.customer;
        //Original value
        uint _value = payment.value;
        //Fee calculation
        uint _fee = _value.mul(escrowFeePercent).div(1000);
        //Value less fees
        _value = _value.sub(_fee);
        //Costumer transfer
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(_from, _to, _value);
        //collectionAddress fee recolection
        balances[_from] = balances[_from].sub(_fee);
        balances[collectionAddress] = balances[collectionAddress].add(_fee);
        emit Transfer(_from, collectionAddress, _fee);
        //Delete any staking from contract address itself
        if (transferIns[_from].length > 0) delete transferIns[_from];
        //Store staking information for receivers
        uint64 _now = uint64(now);
        //Costumer
        transferIns[_to].push(transferInStruct(uint128(_value), _now));
        //collectionAddress
        transferIns[collectionAddress].push(transferInStruct(uint128(_fee), _now));
        //Payment Escrow Completed
        payment.status = PaymentStatus.Completed;
        //Emit Event
        emit PaymentCompletion(_orderId, payment.provider, payment.customer, payment.value, payment.status);

        return true;
    }

    /**
     * @dev refund
     * @dev Allow a user to refund a payment
     * @param _orderId Ticket number of the escrow service
     */
    function refund(uint _orderId) external returns(bool) {
        //Get Payment Handler
        Payment storage payment = payments[_orderId];
        //Only if pending
        require(payment.status == PaymentStatus.Pending);
        //Only if refund was approved
        require(payment.refundApproved);
        //Tokens are on contract
        address _from = address(this);
        //Tokens go back to provider
        address _to = payment.provider;
        //Original value
        uint _value = payment.value;
        //Provider transfer
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(_from, _to, _value);
        //Delete any staking from contract address itself
        if (transferIns[_from].length > 0) delete transferIns[_from];
        //Store staking information for receivers
        uint64 _now = uint64(now);
        transferIns[_to].push(transferInStruct(uint128(_value), _now));
        //Payment Escrow Refunded
        payment.status = PaymentStatus.Refunded;
        //Emit Event
        emit PaymentCompletion(_orderId, payment.provider, payment.customer, payment.value, payment.status);

        return true;
    }

    /**
     * @dev approveRefund
     * @dev Allow a user to approve a refund
     * @param _orderId Ticket number of the escrow service
     */
    function approveRefund(uint _orderId) external returns(bool) {
        //Get Payment Handler
        Payment storage payment = payments[_orderId];
        //Only if pending
        require(payment.status == PaymentStatus.Pending);
        //Only owner or costumer
        require(msg.sender == owner || msg.sender == payment.customer);
        //Approve Refund
        payment.refundApproved = true;

        return true;
    }
    //ESCROW SECTION END
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_customer","type":"address"},{"name":"_value","type":"uint256"}],"name":"createPayment","outputs":[{"name":"","type":"uint256"}],"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":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"getProofOfStakeReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newFee","type":"uint256"}],"name":"setCurrentEscrowFee","outputs":[],"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":"coinAge","outputs":[{"name":"myCoinAge","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"refund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"timestamp","type":"uint256"}],"name":"ownerSetStakeStartTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxTotalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"escrowFeePercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"approveRefund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderId","type":"uint256"}],"name":"release","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getBlockNumber","outputs":[{"name":"blockNumber","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chainStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimAirdrop","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"collectionAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakeStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"payments","outputs":[{"name":"provider","type":"address"},{"name":"customer","type":"address"},{"name":"value","type":"uint256"},{"name":"status","type":"uint8"},{"name":"refundApproved","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_recipients","type":"address[]"},{"name":"_values","type":"uint256[]"}],"name":"batchTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_recipients","type":"address[]"},{"name":"_values","type":"uint256[]"}],"name":"dropSet","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"airdrops","outputs":[{"name":"value","type":"uint256"},{"name":"claimed","type":"bool"}],"payable":false,"stateMutability":"view","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":true,"inputs":[],"name":"totalInitialSupply","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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"annualInterest","outputs":[{"name":"interest","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakeMinAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chainStartBlockNumber","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":true,"inputs":[],"name":"stakeMaxAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimStake","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newWallet","type":"address"}],"name":"setCollectionWallet","outputs":[],"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"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newFee","type":"uint256"}],"name":"NewFeeRate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newWallet","type":"address"}],"name":"NewCollectionWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderId","type":"uint256"},{"indexed":true,"name":"customer","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"PaymentCreation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderId","type":"uint256"},{"indexed":true,"name":"provider","type":"address"},{"indexed":true,"name":"customer","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"status","type":"uint8"}],"name":"PaymentCompletion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_reward","type":"uint256"}],"name":"ClaimStake","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":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

60c0604052600960808190527f4f4d4e49532d424954000000000000000000000000000000000000000000000060a09081526200004091600591906200014c565b506040805180820190915260058082527f4f4d4e4953000000000000000000000000000000000000000000000000000000602090920191825262000087916006916200014c565b5060126007556203f480600b556276a700600c556005601255348015620000ad57600080fd5b506004805433600160a060020a031991821681179092556b033b2e3c9fd0803ce8000000600e556b02a649c112686927b4000000600f8190554260085543600955600d819055601480549092168317909155600082815260156020908152604080832084905580519384525191927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a3620001f1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018f57805160ff1916838001178555620001bf565b82800160010185558215620001bf579182015b82811115620001bf578251825591602001919060010190620001a2565b50620001cd929150620001d1565b5090565b620001ee91905b80821115620001cd5760008155600101620001d8565b90565b6125be80620002016000396000f3006080604052600436106101cc5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306a669fc81146101d157806306fdde0314610207578063095ea7b3146102915780630d6dcab3146102c95780631623ef5f146102ea57806318160ddd146103045780631e1b13c01461031957806323b872dd1461032e578063278ecde1146103585780632a9edf6f146103705780632ab4d052146103885780632c3ce5fa1461039d578063313ce567146103b2578063348a71a6146103c757806337bdc99b146103df57806342cbb15c146103f75780635b054f9b1461040c5780635b88349d146104215780636aa003711461043657806370a08231146104675780637419f1901461048857806387d817891461049d57806388d695b2146105025780638bfa92071461052e5780638c86f0a71461055a5780638da5cb5b1461059457806395d89b41146105a95780639fd4da40146105be578063a9059cbb146105d3578063b2552fc4146105f7578063cbd8877e1461060c578063cd474b0414610621578063dd62ed3e14610636578063e1c3bac61461065d578063eb32117314610672578063ee78b83314610687578063f2fde38b146106a8575b600080fd5b3480156101dd57600080fd5b506101f5600160a060020a03600435166024356106c9565b60408051918252519081900360200190f35b34801561021357600080fd5b5061021c61095b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025657818101518382015260200161023e565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029d57600080fd5b506102b5600160a060020a03600435166024356109e9565b604080519115158252519081900360200190f35b3480156102d557600080fd5b506101f5600160a060020a0360043516610a8b565b3480156102f657600080fd5b50610302600435610bfd565b005b34801561031057600080fd5b506101f5610c6a565b34801561032557600080fd5b506101f5610c70565b34801561033a57600080fd5b506102b5600160a060020a0360043581169060243516604435610c81565b34801561036457600080fd5b506102b5600435610eaa565b34801561037c57600080fd5b506103026004356110fc565b34801561039457600080fd5b506101f5611138565b3480156103a957600080fd5b506101f561113e565b3480156103be57600080fd5b506101f5611144565b3480156103d357600080fd5b506102b560043561114a565b3480156103eb57600080fd5b506102b56004356111be565b34801561040357600080fd5b506101f561156c565b34801561041857600080fd5b506101f5611583565b34801561042d57600080fd5b506102b5611589565b34801561044257600080fd5b5061044b6117bb565b60408051600160a060020a039092168252519081900360200190f35b34801561047357600080fd5b506101f5600160a060020a03600435166117ca565b34801561049457600080fd5b506101f56117e5565b3480156104a957600080fd5b506104b56004356117eb565b60408051600160a060020a03808816825286166020820152908101849052606081018360028111156104e357fe5b60ff168152911515602083015250604080519182900301945092505050f35b34801561050e57600080fd5b506102b5602460048035828101929082013591813591820191013561182b565b34801561053a57600080fd5b506102b56024600480358281019290820135918135918201910135611bcf565b34801561056657600080fd5b5061057b600160a060020a0360043516611cca565b6040805192835290151560208301528051918290030190f35b3480156105a057600080fd5b5061044b611ce6565b3480156105b557600080fd5b5061021c611cf5565b3480156105ca57600080fd5b506101f5611d50565b3480156105df57600080fd5b506102b5600160a060020a0360043516602435611d56565b34801561060357600080fd5b506101f5611f38565b34801561061857600080fd5b506101f5612041565b34801561062d57600080fd5b506101f5612047565b34801561064257600080fd5b506101f5600160a060020a036004358116906024351661204d565b34801561066957600080fd5b506101f5612078565b34801561067e57600080fd5b506102b561207e565b34801561069357600080fd5b50610302600160a060020a0360043516612230565b3480156106b457600080fd5b50610302600160a060020a03600435166122c3565b600030818084116106d957600080fd5b336000908152601560205260409020546106f9908563ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a0384168152205461072b908563ffffffff61233016565b600160a060020a0383166000818152601560209081526040918290209390935580518781529051919233926000805160206125738339815191529281900390910190a333600090815260176020526040812054111561079c5733600090815260176020526040812061079c916124f9565b503360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff42818116848801908152855460018082018855968a52888a209551950180549151909316608060020a02600080516020612553833981519152959094166001608060020a03199091161793909316919091179055825160a081018452958652600160a060020a038a81168786019081528785018b81526060890188815260808a0189905260115489526013909752949096208751815490831673ffffffffffffffffffffffffffffffffffffffff199182161782559651818501805491909316971696909617905591516002808601919091559251600385018054939695949193909260ff199091169184908111156108c957fe5b021790555060809190910151600390910180549115156101000261ff0019909216919091179055601154604080518681529051600160a060020a03881692917f116f78e400432d6399c491c22c98e7a457200ae66fc2cec42ddbe99ac276db02919081900360200190a360115461094790600163ffffffff61233016565b60118190556000190192505b505092915050565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b820191906000526020600020905b8154815290600101906020018083116109c457829003601f168201915b505050505081565b6000811580610a195750336000908152601660209081526040808320600160a060020a0387168452909152902054155b1515610a2457600080fd5b336000818152601660209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600080600080600a544210158015610aa557506000600a54115b1515610ab057600080fd5b429250610abd8584612346565b915060008211610ad05760009350610bf5565b60009050610afd6301e13380610af1600a548661231e90919063ffffffff16565b9063ffffffff6124be16565b1515610b12575067017896703a310000610bd4565b610b2f6301e13380610af1600a548661231e90919063ffffffff16565b60011415610b45575066ae153d89fe8000610bd4565b610b626301e13380610af1600a548661231e90919063ffffffff16565b60021415610b785750665543df729c0000610bd4565b610b956301e13380610af1600a548661231e90919063ffffffff16565b60031415610bab5750662e2f6e5e148000610bd4565b610bc86301e13380610af1600a548661231e90919063ffffffff16565b60041415610bd45750606e5b610bf2600754600a0a61016d028284026124be90919063ffffffff16565b93505b505050919050565b600454600160a060020a03163314610c1457600080fd5b8015801590610c2457506103e881105b1515610c2f57600080fd5b60128190556040805182815290517f788980e82f4651cc86d1cc00916685528f16c9abb21b2afe72325496c18c94ae9181900360200190a150565b600d5481565b6000610c7c3342612346565b905090565b60008080600160a060020a0385161515610c9a57600080fd5b600160a060020a03861660008181526016602090815260408083203384528252808320549383526015909152902054909250610cdc908563ffffffff61231e16565b600160a060020a038088166000908152601560205260408082209390935590871681522054610d11908563ffffffff61233016565b600160a060020a038616600090815260156020526040902055610d3a828563ffffffff61231e16565b600160a060020a0380881660008181526016602090815260408083203384528252918290209490945580518881529051928916939192600080516020612573833981519152929181900390910190a3600160a060020a0386166000908152601760205260408120541115610dc957600160a060020a0386166000908152601760205260408120610dc9916124f9565b505050600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018181018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a559888529490962092519290960180549451909316909602931691909516179091161790915590565b60008181526013602052604081208180808080600386015460ff166002811115610ed057fe5b14610eda57600080fd5b6003850154610100900460ff161515610ef257600080fd5b8454600286015430600081815260156020526040902054909650600160a060020a0390921694509250610f2b908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054610f60908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a0384166000908152601760205260408120541115610fe557600160a060020a0384166000908152601760205260408120610fe5916124f9565b50600160a060020a038281166000908152601760209081526040808320815180830183526001608060020a03878116825267ffffffffffffffff42818116848801908152855460018082018855968a529888902094519490980180549851909216608060020a02600080516020612553833981519152949093166001608060020a03199098169790971792909216179055600389018054600260ff19909116811791829055918a01548a54838c015494518581529697918216969116948d947feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b694909360ff16929182019083908111156110db57fe5b60ff1681526020019250505060405180910390a45060019695505050505050565b600454600160a060020a0316331461111357600080fd5b6000600a541115801561112857506008548110155b151561113357600080fd5b600a55565b600e5481565b60125481565b60075481565b600081815260136020526040812081600382015460ff16600281111561116c57fe5b1461117657600080fd5b600454600160a060020a031633148061119b57506001810154600160a060020a031633145b15156111a657600080fd5b600301805461ff001916610100179055506001919050565b6000818152601360205260408120818080808080600387015460ff1660028111156111e557fe5b146111ef57600080fd5b600454600160a060020a031633148061121157508554600160a060020a031633145b151561121c57600080fd5b60018601546002870154601254309750600160a060020a0390921695509350611254906103e890610af190869063ffffffff6124d516565b9150611266838363ffffffff61231e16565b600160a060020a038616600090815260156020526040902054909350611292908463ffffffff61231e16565b600160a060020a0380871660009081526015602052604080822093909355908616815220546112c7908463ffffffff61233016565b600160a060020a03808616600081815260156020908152604091829020949094558051878152905191939289169260008051602061257383398151915292918290030190a3600160a060020a038516600090815260156020526040902054611335908363ffffffff61231e16565b600160a060020a03808716600090815260156020526040808220939093556014549091168152205461136d908363ffffffff61233016565b60148054600160a060020a0390811660009081526015602090815260409182902094909455915482518681529251908216939189169260008051602061257383398151915292908290030190a3600160a060020a03851660009081526017602052604081205411156113fa57600160a060020a03851660009081526017602052604081206113fa916124f9565b50600160a060020a038084166000908152601760208181526040808420815180830183526001608060020a03808a16825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155601454909c168b52988852868a2087518089019098528c8516885287890191825280548088018255908b529790992095519590960180549851909116909802931695909416949094179092169190911790925560038701805460ff1916828002179055506001860154865460028089015460038a0154604051828152600160a060020a0395861695909416938d937feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b6939260ff1691906020820190839081111561154a57fe5b60ff1681526020019250505060405180910390a4506001979650505050505050565b6000610c7c6009544361231e90919063ffffffff16565b60085481565b33600090815260106020526040812060010154819081908190819060ff16156115b157600080fd5b3360009081526010602052604090205415156115cc57600080fd5b3360008181526010602090815260408083206001818101805460ff19169091179055839055600454600160a060020a031680845260159092528220549096509194509250611620908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054611655908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a03841660009081526017602052604081205411156116da57600160a060020a03841660009081526017602052604081206116da916124f9565b50600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018082018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a5598885294909620925192909601805494519093169096029316919095161790911617909155919050565b601454600160a060020a031681565b600160a060020a031660009081526015602052604090205490565b600a5481565b6013602052600090815260409020805460018201546002830154600390930154600160a060020a0392831693919092169160ff8082169161010090041685565b6004546000908190819081908190600160a060020a0316331461184d57600080fd5b60008811801561185c57508786145b151561186757600080fd5b60009350600092505b858310156118aa5761189d87878581811061188757fe5b905060200201358561233090919063ffffffff16565b9350600190920191611870565b336000908152601560205260409020548411156118c657600080fd5b5042905060005b87811015611ac45761193c8787838181106118e457fe5b90506020020135601560008c8c8681811015156118fd57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000205461233090919063ffffffff16565b601560008b8b8581811061194c57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002081905550601760008a8a84818110151561199257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020604080519081016040528089898581811015156119db57fe5b602090810292909201356001608060020a03908116845267ffffffffffffffff88811694840194909452855460018101875560009687529583902085519601805495909301516001608060020a031990951695169490941760008051602061255383398151915216608060020a939092169290920217905550888882818110611a6057fe5b90506020020135600160a060020a0316600160a060020a031633600160a060020a03166000805160206125738339815191528989858181101515611aa057fe5b905060200201356040518082815260200191505060405180910390a36001016118cd565b33600090815260156020526040902054611ae4908563ffffffff61231e16565b3360009081526015602090815260408083209390935560179052908120541115611b2057336000908152601760205260408120611b20916124f9565b336000908152601560205260408120541115611bc0573360009081526017602090815260408083208151808301835260158452918420546001608060020a03908116835267ffffffffffffffff80881684860190815283546001810185559387529490952092519290910180549351909416608060020a02600080516020612553833981519152929091166001608060020a031990931692909217161790555b50600198975050505050505050565b6004546000908190600160a060020a03163314611beb57600080fd5b600085118015611bfa57508483145b1515611c0557600080fd5b5060005b84811015611cbe57838382818110611c1d57fe5b90506020020135601060008888858181101515611c3657fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020600001819055506000601060008888858181101515611c8157fe5b60209081029290920135600160a060020a03168352508101919091526040016000206001908101805460ff19169215159290921790915501611c09565b50600195945050505050565b6010602052600090815260409020805460019091015460ff1682565b600454600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b600f5481565b600080600160a060020a0384161515611d6e57600080fd5b33600160a060020a0385161415611d8e57611d8761207e565b9150611f31565b33600090815260156020526040902054611dae908463ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a03861681522054611de0908463ffffffff61233016565b600160a060020a0385166000818152601560209081526040918290209390935580518681529051919233926000805160206125738339815191529281900390910190a3336000908152601760205260408120541115611e5157336000908152601760205260408120611e51916124f9565b50503360009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155600160a060020a038e168c52998952878b208851808a019099528c86168952888a0192835280548089018255908c5298909a2096519690970180549751909216909702949091169490961693909317909216179092555b5092915050565b600a546000904290611f5b906301e1338090610af190849063ffffffff61231e16565b1515611f715767017896703a310000915061203d565b611f8e6301e13380610af1600a548461231e90919063ffffffff16565b60011415611fa55766ae153d89fe8000915061203d565b611fc26301e13380610af1600a548461231e90919063ffffffff16565b60021415611fd957665543df729c0000915061203d565b611ff66301e13380610af1600a548461231e90919063ffffffff16565b6003141561200d57662e2f6e5e148000915061203d565b61202a6301e13380610af1600a548461231e90919063ffffffff16565b6004141561203d57662714711487800091505b5090565b600b5481565b60095481565b600160a060020a03918216600090815260166020908152604080832093909416825291909152205490565b600c5481565b600080600e54600d5410151561209357600080fd5b33600090815260156020526040812054116120b1576000915061203d565b33600090815260176020526040812054116120cf576000915061203d565b6120d833610a8b565b9050600081116120eb576000915061203d565b600d546120fe908263ffffffff61233016565b600d5533600090815260156020526040902054612121908263ffffffff61233016565b3360009081526015602090815260408083209390935560179052908120612147916124f9565b3360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff428116838701908152845460018101865594885286882093519390940180549451909116608060020a02600080516020612553833981519152939092166001608060020a0319909416939093179190911617905580518581529051600080516020612573833981519152929181900390910190a360408051828152905133917f157fac8fd4f41c05fc4eb4fc76efaff83b44dde65830c8474bbda846b6cebbcb919081900360200190a2600191505090565b600454600160a060020a0316331461224757600080fd5b600160a060020a038116151561225c57600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051929091168252517fb408f9ca0555ebd07984cfda88b709f9637edae44f4be9b3e1a2c54e5ea10b5d916020908290030190a150565b600454600160a060020a031633146122da57600080fd5b600160a060020a03811615156122ef57600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561232a57fe5b50900390565b60008282018381101561233f57fe5b9392505050565b600160a060020a0382166000908152601760205260408120548190819081106123725760009250610953565b600091505b600160a060020a03851660009081526017602052604090205482101561095357600b54600160a060020a038616600090815260176020526040902080546123e7929190859081106123c457fe5b600091825260209091200154608060020a900467ffffffffffffffff1690612330565b8410156123f3576124b3565b600160a060020a0385166000908152601760205260409020805461244091908490811061241c57fe5b6000918252602090912001548590608060020a900467ffffffffffffffff1661231e565b9050600c548111156124515750600c545b6124b0612467826201518063ffffffff6124be16565b600160a060020a038716600090815260176020526040902080548590811061248b57fe5b60009182526020909120015485916001608060020a039091160263ffffffff61233016565b92505b600190910190612377565b60008082848115156124cc57fe5b04949350505050565b60008282028315806124f157508284828115156124ee57fe5b04145b151561233f57fe5b5080546000825590600052602060002090810190612517919061251a565b50565b61254f91905b8082111561203d57805477ffffffffffffffffffffffffffffffffffffffffffffffff19168155600101612520565b905600ffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffffddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b3010029

Deployed Bytecode

0x6080604052600436106101cc5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306a669fc81146101d157806306fdde0314610207578063095ea7b3146102915780630d6dcab3146102c95780631623ef5f146102ea57806318160ddd146103045780631e1b13c01461031957806323b872dd1461032e578063278ecde1146103585780632a9edf6f146103705780632ab4d052146103885780632c3ce5fa1461039d578063313ce567146103b2578063348a71a6146103c757806337bdc99b146103df57806342cbb15c146103f75780635b054f9b1461040c5780635b88349d146104215780636aa003711461043657806370a08231146104675780637419f1901461048857806387d817891461049d57806388d695b2146105025780638bfa92071461052e5780638c86f0a71461055a5780638da5cb5b1461059457806395d89b41146105a95780639fd4da40146105be578063a9059cbb146105d3578063b2552fc4146105f7578063cbd8877e1461060c578063cd474b0414610621578063dd62ed3e14610636578063e1c3bac61461065d578063eb32117314610672578063ee78b83314610687578063f2fde38b146106a8575b600080fd5b3480156101dd57600080fd5b506101f5600160a060020a03600435166024356106c9565b60408051918252519081900360200190f35b34801561021357600080fd5b5061021c61095b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025657818101518382015260200161023e565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029d57600080fd5b506102b5600160a060020a03600435166024356109e9565b604080519115158252519081900360200190f35b3480156102d557600080fd5b506101f5600160a060020a0360043516610a8b565b3480156102f657600080fd5b50610302600435610bfd565b005b34801561031057600080fd5b506101f5610c6a565b34801561032557600080fd5b506101f5610c70565b34801561033a57600080fd5b506102b5600160a060020a0360043581169060243516604435610c81565b34801561036457600080fd5b506102b5600435610eaa565b34801561037c57600080fd5b506103026004356110fc565b34801561039457600080fd5b506101f5611138565b3480156103a957600080fd5b506101f561113e565b3480156103be57600080fd5b506101f5611144565b3480156103d357600080fd5b506102b560043561114a565b3480156103eb57600080fd5b506102b56004356111be565b34801561040357600080fd5b506101f561156c565b34801561041857600080fd5b506101f5611583565b34801561042d57600080fd5b506102b5611589565b34801561044257600080fd5b5061044b6117bb565b60408051600160a060020a039092168252519081900360200190f35b34801561047357600080fd5b506101f5600160a060020a03600435166117ca565b34801561049457600080fd5b506101f56117e5565b3480156104a957600080fd5b506104b56004356117eb565b60408051600160a060020a03808816825286166020820152908101849052606081018360028111156104e357fe5b60ff168152911515602083015250604080519182900301945092505050f35b34801561050e57600080fd5b506102b5602460048035828101929082013591813591820191013561182b565b34801561053a57600080fd5b506102b56024600480358281019290820135918135918201910135611bcf565b34801561056657600080fd5b5061057b600160a060020a0360043516611cca565b6040805192835290151560208301528051918290030190f35b3480156105a057600080fd5b5061044b611ce6565b3480156105b557600080fd5b5061021c611cf5565b3480156105ca57600080fd5b506101f5611d50565b3480156105df57600080fd5b506102b5600160a060020a0360043516602435611d56565b34801561060357600080fd5b506101f5611f38565b34801561061857600080fd5b506101f5612041565b34801561062d57600080fd5b506101f5612047565b34801561064257600080fd5b506101f5600160a060020a036004358116906024351661204d565b34801561066957600080fd5b506101f5612078565b34801561067e57600080fd5b506102b561207e565b34801561069357600080fd5b50610302600160a060020a0360043516612230565b3480156106b457600080fd5b50610302600160a060020a03600435166122c3565b600030818084116106d957600080fd5b336000908152601560205260409020546106f9908563ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a0384168152205461072b908563ffffffff61233016565b600160a060020a0383166000818152601560209081526040918290209390935580518781529051919233926000805160206125738339815191529281900390910190a333600090815260176020526040812054111561079c5733600090815260176020526040812061079c916124f9565b503360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff42818116848801908152855460018082018855968a52888a209551950180549151909316608060020a02600080516020612553833981519152959094166001608060020a03199091161793909316919091179055825160a081018452958652600160a060020a038a81168786019081528785018b81526060890188815260808a0189905260115489526013909752949096208751815490831673ffffffffffffffffffffffffffffffffffffffff199182161782559651818501805491909316971696909617905591516002808601919091559251600385018054939695949193909260ff199091169184908111156108c957fe5b021790555060809190910151600390910180549115156101000261ff0019909216919091179055601154604080518681529051600160a060020a03881692917f116f78e400432d6399c491c22c98e7a457200ae66fc2cec42ddbe99ac276db02919081900360200190a360115461094790600163ffffffff61233016565b60118190556000190192505b505092915050565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b820191906000526020600020905b8154815290600101906020018083116109c457829003601f168201915b505050505081565b6000811580610a195750336000908152601660209081526040808320600160a060020a0387168452909152902054155b1515610a2457600080fd5b336000818152601660209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600080600080600a544210158015610aa557506000600a54115b1515610ab057600080fd5b429250610abd8584612346565b915060008211610ad05760009350610bf5565b60009050610afd6301e13380610af1600a548661231e90919063ffffffff16565b9063ffffffff6124be16565b1515610b12575067017896703a310000610bd4565b610b2f6301e13380610af1600a548661231e90919063ffffffff16565b60011415610b45575066ae153d89fe8000610bd4565b610b626301e13380610af1600a548661231e90919063ffffffff16565b60021415610b785750665543df729c0000610bd4565b610b956301e13380610af1600a548661231e90919063ffffffff16565b60031415610bab5750662e2f6e5e148000610bd4565b610bc86301e13380610af1600a548661231e90919063ffffffff16565b60041415610bd45750606e5b610bf2600754600a0a61016d028284026124be90919063ffffffff16565b93505b505050919050565b600454600160a060020a03163314610c1457600080fd5b8015801590610c2457506103e881105b1515610c2f57600080fd5b60128190556040805182815290517f788980e82f4651cc86d1cc00916685528f16c9abb21b2afe72325496c18c94ae9181900360200190a150565b600d5481565b6000610c7c3342612346565b905090565b60008080600160a060020a0385161515610c9a57600080fd5b600160a060020a03861660008181526016602090815260408083203384528252808320549383526015909152902054909250610cdc908563ffffffff61231e16565b600160a060020a038088166000908152601560205260408082209390935590871681522054610d11908563ffffffff61233016565b600160a060020a038616600090815260156020526040902055610d3a828563ffffffff61231e16565b600160a060020a0380881660008181526016602090815260408083203384528252918290209490945580518881529051928916939192600080516020612573833981519152929181900390910190a3600160a060020a0386166000908152601760205260408120541115610dc957600160a060020a0386166000908152601760205260408120610dc9916124f9565b505050600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018181018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a559888529490962092519290960180549451909316909602931691909516179091161790915590565b60008181526013602052604081208180808080600386015460ff166002811115610ed057fe5b14610eda57600080fd5b6003850154610100900460ff161515610ef257600080fd5b8454600286015430600081815260156020526040902054909650600160a060020a0390921694509250610f2b908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054610f60908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a0384166000908152601760205260408120541115610fe557600160a060020a0384166000908152601760205260408120610fe5916124f9565b50600160a060020a038281166000908152601760209081526040808320815180830183526001608060020a03878116825267ffffffffffffffff42818116848801908152855460018082018855968a529888902094519490980180549851909216608060020a02600080516020612553833981519152949093166001608060020a03199098169790971792909216179055600389018054600260ff19909116811791829055918a01548a54838c015494518581529697918216969116948d947feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b694909360ff16929182019083908111156110db57fe5b60ff1681526020019250505060405180910390a45060019695505050505050565b600454600160a060020a0316331461111357600080fd5b6000600a541115801561112857506008548110155b151561113357600080fd5b600a55565b600e5481565b60125481565b60075481565b600081815260136020526040812081600382015460ff16600281111561116c57fe5b1461117657600080fd5b600454600160a060020a031633148061119b57506001810154600160a060020a031633145b15156111a657600080fd5b600301805461ff001916610100179055506001919050565b6000818152601360205260408120818080808080600387015460ff1660028111156111e557fe5b146111ef57600080fd5b600454600160a060020a031633148061121157508554600160a060020a031633145b151561121c57600080fd5b60018601546002870154601254309750600160a060020a0390921695509350611254906103e890610af190869063ffffffff6124d516565b9150611266838363ffffffff61231e16565b600160a060020a038616600090815260156020526040902054909350611292908463ffffffff61231e16565b600160a060020a0380871660009081526015602052604080822093909355908616815220546112c7908463ffffffff61233016565b600160a060020a03808616600081815260156020908152604091829020949094558051878152905191939289169260008051602061257383398151915292918290030190a3600160a060020a038516600090815260156020526040902054611335908363ffffffff61231e16565b600160a060020a03808716600090815260156020526040808220939093556014549091168152205461136d908363ffffffff61233016565b60148054600160a060020a0390811660009081526015602090815260409182902094909455915482518681529251908216939189169260008051602061257383398151915292908290030190a3600160a060020a03851660009081526017602052604081205411156113fa57600160a060020a03851660009081526017602052604081206113fa916124f9565b50600160a060020a038084166000908152601760208181526040808420815180830183526001608060020a03808a16825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155601454909c168b52988852868a2087518089019098528c8516885287890191825280548088018255908b529790992095519590960180549851909116909802931695909416949094179092169190911790925560038701805460ff1916828002179055506001860154865460028089015460038a0154604051828152600160a060020a0395861695909416938d937feeb3d73e98eda8ed2fbd6111857bb2e2c00d32813b18f57f482393a15bceb9b6939260ff1691906020820190839081111561154a57fe5b60ff1681526020019250505060405180910390a4506001979650505050505050565b6000610c7c6009544361231e90919063ffffffff16565b60085481565b33600090815260106020526040812060010154819081908190819060ff16156115b157600080fd5b3360009081526010602052604090205415156115cc57600080fd5b3360008181526010602090815260408083206001818101805460ff19169091179055839055600454600160a060020a031680845260159092528220549096509194509250611620908363ffffffff61231e16565b600160a060020a038086166000908152601560205260408082209390935590851681522054611655908363ffffffff61233016565b600160a060020a03808516600081815260156020908152604091829020949094558051868152905191939288169260008051602061257383398151915292918290030190a3600160a060020a03841660009081526017602052604081205411156116da57600160a060020a03841660009081526017602052604081206116da916124f9565b50600160a060020a0392831660009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff428116838701818152855460018082018855968b52888b2095519501805491518416608060020a9081026000805160206125538339815191529787166001608060020a0319948516178816179091559b909c1689529686528488208551808701909652988216855284860196875288548085018a5598885294909620925192909601805494519093169096029316919095161790911617909155919050565b601454600160a060020a031681565b600160a060020a031660009081526015602052604090205490565b600a5481565b6013602052600090815260409020805460018201546002830154600390930154600160a060020a0392831693919092169160ff8082169161010090041685565b6004546000908190819081908190600160a060020a0316331461184d57600080fd5b60008811801561185c57508786145b151561186757600080fd5b60009350600092505b858310156118aa5761189d87878581811061188757fe5b905060200201358561233090919063ffffffff16565b9350600190920191611870565b336000908152601560205260409020548411156118c657600080fd5b5042905060005b87811015611ac45761193c8787838181106118e457fe5b90506020020135601560008c8c8681811015156118fd57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000205461233090919063ffffffff16565b601560008b8b8581811061194c57fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002081905550601760008a8a84818110151561199257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020604080519081016040528089898581811015156119db57fe5b602090810292909201356001608060020a03908116845267ffffffffffffffff88811694840194909452855460018101875560009687529583902085519601805495909301516001608060020a031990951695169490941760008051602061255383398151915216608060020a939092169290920217905550888882818110611a6057fe5b90506020020135600160a060020a0316600160a060020a031633600160a060020a03166000805160206125738339815191528989858181101515611aa057fe5b905060200201356040518082815260200191505060405180910390a36001016118cd565b33600090815260156020526040902054611ae4908563ffffffff61231e16565b3360009081526015602090815260408083209390935560179052908120541115611b2057336000908152601760205260408120611b20916124f9565b336000908152601560205260408120541115611bc0573360009081526017602090815260408083208151808301835260158452918420546001608060020a03908116835267ffffffffffffffff80881684860190815283546001810185559387529490952092519290910180549351909416608060020a02600080516020612553833981519152929091166001608060020a031990931692909217161790555b50600198975050505050505050565b6004546000908190600160a060020a03163314611beb57600080fd5b600085118015611bfa57508483145b1515611c0557600080fd5b5060005b84811015611cbe57838382818110611c1d57fe5b90506020020135601060008888858181101515611c3657fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020600001819055506000601060008888858181101515611c8157fe5b60209081029290920135600160a060020a03168352508101919091526040016000206001908101805460ff19169215159290921790915501611c09565b50600195945050505050565b6010602052600090815260409020805460019091015460ff1682565b600454600160a060020a031681565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109e15780601f106109b6576101008083540402835291602001916109e1565b600f5481565b600080600160a060020a0384161515611d6e57600080fd5b33600160a060020a0385161415611d8e57611d8761207e565b9150611f31565b33600090815260156020526040902054611dae908463ffffffff61231e16565b3360009081526015602052604080822092909255600160a060020a03861681522054611de0908463ffffffff61233016565b600160a060020a0385166000818152601560209081526040918290209390935580518681529051919233926000805160206125738339815191529281900390910190a3336000908152601760205260408120541115611e5157336000908152601760205260408120611e51916124f9565b50503360009081526017602081815260408084208151808301835260158452828620546001608060020a03908116825267ffffffffffffffff42818116848801818152865460018181018955978c52898c2096519601805491518516608060020a9081026000805160206125538339815191529888166001608060020a031994851617891617909155600160a060020a038e168c52998952878b208851808a019099528c86168952888a0192835280548089018255908c5298909a2096519690970180549751909216909702949091169490961693909317909216179092555b5092915050565b600a546000904290611f5b906301e1338090610af190849063ffffffff61231e16565b1515611f715767017896703a310000915061203d565b611f8e6301e13380610af1600a548461231e90919063ffffffff16565b60011415611fa55766ae153d89fe8000915061203d565b611fc26301e13380610af1600a548461231e90919063ffffffff16565b60021415611fd957665543df729c0000915061203d565b611ff66301e13380610af1600a548461231e90919063ffffffff16565b6003141561200d57662e2f6e5e148000915061203d565b61202a6301e13380610af1600a548461231e90919063ffffffff16565b6004141561203d57662714711487800091505b5090565b600b5481565b60095481565b600160a060020a03918216600090815260166020908152604080832093909416825291909152205490565b600c5481565b600080600e54600d5410151561209357600080fd5b33600090815260156020526040812054116120b1576000915061203d565b33600090815260176020526040812054116120cf576000915061203d565b6120d833610a8b565b9050600081116120eb576000915061203d565b600d546120fe908263ffffffff61233016565b600d5533600090815260156020526040902054612121908263ffffffff61233016565b3360009081526015602090815260408083209390935560179052908120612147916124f9565b3360008181526017602090815260408083208151808301835260158452828520546001608060020a03908116825267ffffffffffffffff428116838701908152845460018101865594885286882093519390940180549451909116608060020a02600080516020612553833981519152939092166001608060020a0319909416939093179190911617905580518581529051600080516020612573833981519152929181900390910190a360408051828152905133917f157fac8fd4f41c05fc4eb4fc76efaff83b44dde65830c8474bbda846b6cebbcb919081900360200190a2600191505090565b600454600160a060020a0316331461224757600080fd5b600160a060020a038116151561225c57600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051929091168252517fb408f9ca0555ebd07984cfda88b709f9637edae44f4be9b3e1a2c54e5ea10b5d916020908290030190a150565b600454600160a060020a031633146122da57600080fd5b600160a060020a03811615156122ef57600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561232a57fe5b50900390565b60008282018381101561233f57fe5b9392505050565b600160a060020a0382166000908152601760205260408120548190819081106123725760009250610953565b600091505b600160a060020a03851660009081526017602052604090205482101561095357600b54600160a060020a038616600090815260176020526040902080546123e7929190859081106123c457fe5b600091825260209091200154608060020a900467ffffffffffffffff1690612330565b8410156123f3576124b3565b600160a060020a0385166000908152601760205260409020805461244091908490811061241c57fe5b6000918252602090912001548590608060020a900467ffffffffffffffff1661231e565b9050600c548111156124515750600c545b6124b0612467826201518063ffffffff6124be16565b600160a060020a038716600090815260176020526040902080548590811061248b57fe5b60009182526020909120015485916001608060020a039091160263ffffffff61233016565b92505b600190910190612377565b60008082848115156124cc57fe5b04949350505050565b60008282028315806124f157508284828115156124ee57fe5b04145b151561233f57fe5b5080546000825590600052602060002090810190612517919061251a565b50565b61254f91905b8082111561203d57805477ffffffffffffffffffffffffffffffffffffffffffffffff19168155600101612520565b905600ffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffffddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b3010029

Swarm Source

bzzr://807adeda907c573622d08cd63f3f64aee4267c4dcb932586a55f86daa940b301
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.