ETH Price: $2,528.73 (+13.47%)
 

Overview

Max Total Supply

1,000,000,000 MAYA

Holders

626

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0 MAYA

Value
$0.00
0xe17af391158597b631e2cde56d7ca8506db144e3
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:
MAYA

Compiler Version
v0.4.23+commit.124ca40d

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-06-23
*/

pragma solidity ^0.4.23;
/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic 
{
    function totalSupply() public view returns (uint256);
    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 SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath 
{
    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) 
    {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        assert(c  / a == b);
        return c;
    }
    /**
    * @dev Integer division of two numbers, truncating the quotient.
    */
    function div(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        return a  / b;
    }
    /**
    * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) 
    {
        assert(b <= a);
        return a - b;
    }
    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) 
    {
        c = a + b;
        assert(c >= a);
        return c;
    }
}
pragma solidity ^0.4.23;
/**
 * @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 Owner
{
    address internal owner;
    mapping(address => bool) internal admins;
    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    modifier onlyAdmin {
        require(admins[msg.sender] == true || msg.sender == owner);
        _;
    }
    function changeOwner(address newOwner) public onlyOwner returns(bool)
    {
        owner = newOwner;
        return true;
    }
    function setAdmin(address addr) public onlyOwner returns(bool) 
    {
        admins[addr] = true;
        return true;
    }
    function delAdmin(address addr) public onlyOwner returns(bool) 
    {
        admins[addr] = false;
        return true;
    }
}
pragma solidity ^0.4.23;
contract MayaPlus is Owner 
{
    mapping(address => uint256) internal balances;
    function parse2wei(uint _value) internal pure returns(uint)
    {
        uint decimals = 18;
        return _value * (10 ** uint256(decimals));
    }
    address public ADDR_MAYA_ORG;
    address public ADDR_MAYA_MARKETING ;
    address public ADDR_MAYA_TEAM;
    address public ADDR_MAYA_ASSOCIATION;
    struct IcoRule
    {
        uint startTime;
        uint endTime;
        uint rate;
        uint shareRuleGroupId;
        address[] addrList;
        bool canceled;
    }
    IcoRule[] icoRuleList;
    mapping (address => uint[] ) addr2icoRuleIdList;
    event GetIcoRule(uint startTime, uint endTime, uint rate, uint shareRuleGroupId, bool canceled);
    function icoRuleAdd(uint startTime, uint endTime, uint rate, uint shareRuleGroupId) public onlyOwner returns (bool) 
    {
        address[] memory addr;
        bool canceled = false;
        IcoRule memory item = IcoRule(startTime, endTime, rate, shareRuleGroupId, addr, canceled);
        icoRuleList.push(item);
        return true;
    }
    function icoRuleUpdate(uint index, uint startTime, uint endTime, uint rate, uint shareRuleGroupId) public onlyOwner returns (bool) 
    {
        require(icoRuleList.length > index);
        if (startTime > 0) {
            icoRuleList[index].startTime = startTime;
        }
        if (endTime > 0) {
            icoRuleList[index].endTime = endTime;
        }
        if (rate > 0) {
            icoRuleList[index].rate = rate;
        }
        icoRuleList[index].shareRuleGroupId = shareRuleGroupId;
        return true;
    }
    function icoPushAddr(uint index, address addr) internal returns (bool) 
    {
        icoRuleList[index].addrList.push(addr);
        return true;
    }
    function icoRuleCancel(uint index) public onlyOwner returns (bool) 
    {
        require(icoRuleList.length > index);
        icoRuleList[index].canceled = true;
        return true;
    }
    function getIcoRuleList() public returns (uint count) 
    {
        count = icoRuleList.length;
        for (uint i = 0; i < count ; i++)
        {
            emit GetIcoRule(icoRuleList[i].startTime, icoRuleList[i].endTime, icoRuleList[i].rate, icoRuleList[i].shareRuleGroupId, 
            icoRuleList[i].canceled);
        }
    }
    function getIcoAddrCount(uint icoRuleId) public view onlyOwner returns (uint count) 
    {
        count = icoRuleList[icoRuleId - 1].addrList.length;
    }
    function getIcoAddrListByIcoRuleId(uint icoRuleId, uint index) public view onlyOwner returns (address addr) 
    {
        addr = icoRuleList[icoRuleId - 1].addrList[index];
    }
    function initIcoRule() internal returns(bool) 
    {
        icoRuleAdd(1529424001, 1532275199, 2600, 0);
        icoRuleAdd(1532275201, 1533484799, 2100, 0);
        icoRuleAdd(1533484801, 1534694399, 1700, 0);
        icoRuleAdd(1534694401, 1535903999, 1400, 0);
        icoRuleAdd(1535904001, 1537113599, 1100, 0);
    }
    struct ShareRule {
        uint startTime;
        uint endTime;
        uint rateDenominator;
    }
    event GetShareRule(address addr, uint startTime, uint endTime, uint rateDenominator);
    mapping (uint => ShareRule[]) shareRuleGroup;
    mapping (address => uint) addr2shareRuleGroupId;
    mapping (address => uint ) sharedAmount;
    mapping (address => uint ) icoAmount;
    ShareRule[] srlist_Team;
    function initShareRule4Publicity() internal returns( bool )
    {
        ShareRule memory sr;
        sr = ShareRule(1548432001, 1579967999, 5);
        srlist_Team.push( sr );
        sr = ShareRule(1579968001, 1611590399, 5);
        srlist_Team.push( sr );
        sr = ShareRule(1611590401, 1643126399, 5);
        srlist_Team.push( sr );
        sr = ShareRule(1643126401, 1674662399, 5);
        srlist_Team.push( sr );
        sr = ShareRule(1674662401, 1706198399, 5);
        srlist_Team.push( sr );
        shareRuleGroup[2] = srlist_Team;
        addr2shareRuleGroupId[ADDR_MAYA_TEAM] = 2;
        return true;
    }
    function initPublicityAddr() internal 
    {
        ADDR_MAYA_MARKETING = address(0xb92863581E6C3Ba7eDC78fFa45CdbBa59A4aD03C);
        balances[ADDR_MAYA_MARKETING] = parse2wei(50000000);
        ADDR_MAYA_ASSOCIATION = address(0xff849bf00Fd77C357A7B9A09E572a1510ff7C0dC);
        balances[ADDR_MAYA_ASSOCIATION] = parse2wei(500000000);
        ADDR_MAYA_TEAM = address(0xb391e1b2186DB3b8d2F3D0968F30AB456F1eCa57);
        balances[ADDR_MAYA_TEAM] = parse2wei(100000000);
        initShareRule4Publicity();
    }
    function updateShareRuleGroup(uint id, uint index, uint startTime, uint endTime, uint rateDenominator) public onlyOwner returns(bool)
    {
        if (startTime > 0) {
            shareRuleGroup[id][index].startTime = startTime;
        }
        if (endTime > 0) {
            shareRuleGroup[id][index].endTime = endTime;
        }
        if (rateDenominator > 0) {
            shareRuleGroup[id][index].rateDenominator = rateDenominator;
        }
        return true;
    }
    function tokenShareShow(address addr) public returns(uint shareRuleGroupId) 
    {
        shareRuleGroupId = addr2shareRuleGroupId[addr];
        if (shareRuleGroupId == 0) {
            return 0;
        }
        ShareRule[] memory shareRuleList = shareRuleGroup[shareRuleGroupId];
        uint count = shareRuleList.length;
        for (uint i = 0; i < count ; i++)
        {
            emit GetShareRule(addr, shareRuleList[i].startTime, shareRuleList[i].endTime, shareRuleList[i].rateDenominator);
        }
        return shareRuleGroupId;
    }
    function setAccountShareRuleGroupId(address addr, uint shareRuleGroupId) public onlyOwner returns(bool)
    {
        addr2shareRuleGroupId[addr] = shareRuleGroupId;
        return true;
    }
}
pragma solidity ^0.4.23;
/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic, MayaPlus 
{
    using SafeMath for uint256;
    uint256 internal totalSupply_;
    mapping (address => bool) internal locked;
    mapping (address => bool) internal isAgent;
    mapping (address => uint) internal agentRate;
    function setAgentRate(address addr, uint rate) public onlyAdmin returns(bool)
    {
        require( addr != address(0) );
        agentRate[addr] = rate;
        return true;
    }
    /**
    * alan: lock or unlock account
    */
    function lockAccount(address _addr) public onlyAdmin returns (bool)
    {
        require(_addr != address(0));
        locked[_addr] = true;
        return true;
    }
    function unlockAccount(address _addr) public onlyAdmin returns (bool)
    {
        require(_addr != address(0));
        locked[_addr] = false;
        return true;
    }
    /**
    * alan: get lock status
    */
    function isLocked(address addr) public view returns(bool) 
    {
        return locked[addr];
    }
    bool internal stopped = false;
    modifier running {
        assert (!stopped);
        _;
    }
    function stop() public onlyOwner 
    {
        stopped = true;
    }
    function start() public onlyOwner 
    {
        stopped = false;
    }
    function isStopped() public view returns(bool)
    {
        return stopped;
    }
    /**
    * @dev total number of tokens in existence
    */
    function totalSupply() public view returns (uint256) 
    {
        return totalSupply_;
    }
    function getRemainShareAmount() public view returns(uint)
    {
        return getRemainShareAmountInternal(msg.sender);
    }
    function getRemainShareAmountInternal(address addr) internal view returns(uint)
    {
        uint canTransferAmount = 0;
        uint srgId = addr2shareRuleGroupId[addr];
        bool allowTransfer = false;
        if (srgId == 0) {
            canTransferAmount = balances[addr];
            return canTransferAmount;
        }
        else
        {
            ShareRule[] memory shareRuleList = shareRuleGroup[srgId];
            uint count = shareRuleList.length;
            for (uint i = 0; i < count ; i++)
            {
                if ( shareRuleList[i].startTime < now && now < shareRuleList[i].endTime)
                {
                    canTransferAmount = (i + 1).mul(icoAmount[addr]).div(shareRuleList[i].rateDenominator).sub( sharedAmount[addr]);
                    return canTransferAmount;
                }
            }
            if (allowTransfer == false)
            {
                bool isOverTime = true;
                for (i = 0; i < count ; i++) {
                    if ( now < shareRuleList[i].endTime) {
                        isOverTime = false;
                    }
                }
                if (isOverTime == true) {
                    allowTransfer = true;
                    canTransferAmount = balances[addr];
                    return canTransferAmount;
                }
            }
        }
    }
    /**
    * @dev transfer token for a specified address
    * @param _to The address to transfer to.
    * @param _value The amount to be transferred.
    */
    function transfer(address _to, uint256 _value) public running returns (bool) 
    {
        require(_to != address(0));
        require(_value <= balances[msg.sender]);
        require( locked[msg.sender] != true);
        require( locked[_to] != true);
        require( getRemainShareAmount() >= _value );
        balances[msg.sender] = balances[msg.sender].sub(_value);
        sharedAmount[msg.sender] = sharedAmount[msg.sender].add( _value );
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }
    /**
    * @dev Gets the balance of the specified address.
    * @param _owner The address to query the the balance of.
    * @return An uint256 representing the amount owned by the passed address.
    */
    function balanceOf(address _owner) public view returns (uint256) 
    {
        return balances[_owner];
    }
}
pragma solidity ^0.4.23;
/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken 
{
    mapping (address => mapping (address => uint256)) internal allowed;
    /**
    * @dev Transfer tokens from one address to another
    * @param _from address The address which you want to send tokens from
    * @param _to address The address which you want to transfer to
    * @param _value uint256 the amount of tokens to be transferred
    */
    function transferFrom(address _from, address _to, uint256 _value) public running returns (bool) 
    {
        require(_to != address(0));
        require( locked[_from] != true && locked[_to] != true);
        require(_value <= balances[_from]);
        require(_value <= allowed[_from][msg.sender]);
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }
    /**
    * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
    *
    * Beware that changing an allowance with this method brings the risk that someone may use both the
    old
    * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
    * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
    * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    * @param _spender The address which will spend the funds.
    * @param _value The amount of tokens to be spent.
    */
    function approve(address _spender, uint256 _value) public running returns (bool) 
    {
        require(getRemainShareAmountInternal(msg.sender) >= _value);
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    /**
    * @dev Function to check the amount of tokens that an owner allowed to a spender.
    * @param _owner address The address which owns the funds.
    * @param _spender address The address which will spend the funds.
    * @return A uint256 specifying the amount of tokens still available for the spender.
    */
    function allowance(address _owner, address _spender) public view returns (uint256) 
    {
        return allowed[_owner][_spender];
    }
}
contract AlanPlusToken is StandardToken
{
    event Burn(address indexed from, uint256 value);
    /**
    * Destroy tokens
    * Remove `_value` tokens from the system irreversibly
    * @param _value the amount of money to burn
    */
    function burn(uint256 _value) public onlyOwner running returns (bool success) 
    {
        require(balances[msg.sender] >= _value);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        totalSupply_ = totalSupply_.sub(_value);
        emit Burn(msg.sender, _value);
        return true;
    }
    /**
    * Destroy tokens from other account
    *
    * Remove `_value` tokens from the system irreversibly on behalf of `_from`.
    *
    * @param _from the address of the senderT
    * @param _value the amount of money to burn
    */
    function burnFrom(address _from, uint256 _value) public onlyOwner returns (bool success) 
    {
        require(balances[_from] >= _value);
        if (_value <= allowed[_from][msg.sender]) {
            allowed[_from][msg.sender] -= _value;
        }
        else {
            allowed[_from][msg.sender] = 0;
        }
        balances[_from] -= _value;
        totalSupply_ -= _value;
        emit Burn(_from, _value);
        return true;
    }
}
pragma solidity ^0.4.23;
contract MAYA is AlanPlusToken 
{
    string public constant name = "Maya";
    string public constant symbol = "MAYA";
    uint8 public constant decimals = 18;
    uint256 private constant INITIAL_SUPPLY = 1000000000 * (10 ** uint256(decimals));
    function () public payable 
    {
        uint curIcoRate = 0;
        if (agentRate[msg.sender] > 0) {
            curIcoRate = agentRate[msg.sender];
        }
        else 
        {
            uint icoRuleIndex = 500;
            for (uint i = 0; i < icoRuleList.length ; i++)
            {
                if ((icoRuleList[i].canceled != true) && (icoRuleList[i].startTime < now && now < icoRuleList[i].endTime)) {
                    curIcoRate = icoRuleList[i].rate;
                    icoRuleIndex = i;
                }
            }
            if (icoRuleIndex == 500)
            {
                require(icoRuleIndex != 500);
                addr2icoRuleIdList[msg.sender].push( 0 );
                addr2shareRuleGroupId[msg.sender] = addr2shareRuleGroupId[msg.sender] > 0 ? addr2shareRuleGroupId[msg.sender] : 0;
            }
            else
            {
                addr2shareRuleGroupId[msg.sender] = addr2shareRuleGroupId[msg.sender] > 0 ? addr2shareRuleGroupId[msg.sender] : icoRuleList[icoRuleIndex].shareRuleGroupId;
                addr2icoRuleIdList[msg.sender].push( icoRuleIndex + 1 );
                icoPushAddr(icoRuleIndex, msg.sender);
            }
        }
        uint amountMAYA = 0;
        amountMAYA = msg.value.mul( curIcoRate );
        balances[msg.sender] = balances[msg.sender].add(amountMAYA);
        icoAmount[msg.sender] = icoAmount[msg.sender].add(amountMAYA);
        balances[owner] = balances[owner].sub(amountMAYA);
        ADDR_MAYA_ORG.transfer(msg.value);
    }
    event AddBalance(address addr, uint amount);
    event SubBalance(address addr, uint amount);
    address addrContractCaller;
    modifier isContractCaller {
        require(msg.sender == addrContractCaller);
        _;
    }
    function addBalance(address addr, uint amount) public isContractCaller returns(bool)
    {
        require(addr != address(0));
        balances[addr] = balances[addr].add(amount);
        emit AddBalance(addr, amount);
        return true;
    }
    function subBalance(address addr, uint amount) public isContractCaller returns(bool)
    {
        require(balances[addr] >= amount);
        balances[addr] = balances[addr].sub(amount);
        emit SubBalance(addr, amount);
        return true;
    }
    function setAddrContractCaller(address addr) onlyOwner public returns(bool)
    {
        require(addr != address(0));
        addrContractCaller = addr;
        return true;
    }
    constructor(uint totalSupply) public 
    {
        owner = msg.sender;
        ADDR_MAYA_ORG = owner;
        totalSupply_ = totalSupply > 0 ? totalSupply : INITIAL_SUPPLY;
        uint assignedAmount = 500000000 + 50000000 + 100000000;
        assignedAmount = parse2wei(assignedAmount);
        balances[owner] = totalSupply_.sub( assignedAmount );
        initIcoRule();
        initPublicityAddr();
        lockAccount(ADDR_MAYA_TEAM);
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[{"name":"icoRuleId","type":"uint256"},{"name":"index","type":"uint256"}],"name":"getIcoAddrListByIcoRuleId","outputs":[{"name":"addr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"stop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"shareRuleGroupId","type":"uint256"}],"name":"setAccountShareRuleGroupId","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":"getRemainShareAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"amount","type":"uint256"}],"name":"addBalance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setAddrContractCaller","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isStopped","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"rate","type":"uint256"}],"name":"setAgentRate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"lockAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ADDR_MAYA_ASSOCIATION","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"getIcoRuleList","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ADDR_MAYA_ORG","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"delAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"index","type":"uint256"},{"name":"startTime","type":"uint256"},{"name":"endTime","type":"uint256"},{"name":"rateDenominator","type":"uint256"}],"name":"updateShareRuleGroup","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"}],"name":"burnFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ADDR_MAYA_MARKETING","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"tokenShareShow","outputs":[{"name":"shareRuleGroupId","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"unlockAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"icoRuleId","type":"uint256"}],"name":"getIcoAddrCount","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ADDR_MAYA_TEAM","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[],"name":"start","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"}],"name":"icoRuleCancel","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"},{"name":"startTime","type":"uint256"},{"name":"endTime","type":"uint256"},{"name":"rate","type":"uint256"},{"name":"shareRuleGroupId","type":"uint256"}],"name":"icoRuleUpdate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"amount","type":"uint256"}],"name":"subBalance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"startTime","type":"uint256"},{"name":"endTime","type":"uint256"},{"name":"rate","type":"uint256"},{"name":"shareRuleGroupId","type":"uint256"}],"name":"icoRuleAdd","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"totalSupply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"AddBalance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"SubBalance","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"startTime","type":"uint256"},{"indexed":false,"name":"endTime","type":"uint256"},{"indexed":false,"name":"rate","type":"uint256"},{"indexed":false,"name":"shareRuleGroupId","type":"uint256"},{"indexed":false,"name":"canceled","type":"bool"}],"name":"GetIcoRule","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"startTime","type":"uint256"},{"indexed":false,"name":"endTime","type":"uint256"},{"indexed":false,"name":"rateDenominator","type":"uint256"}],"name":"GetShareRule","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"}]

60806040526000601260006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5060405160208062004d84833981018060405281019080805190602001909291905050506000336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600082116200011157601260ff16600a0a633b9aca000262000113565b815b600e819055506326be368090506200013a816200023d640100000000026401000000009004565b90506200016181600e54620002526401000000000262001674179091906401000000009004565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001de6200026c640100000000026401000000009004565b50620001f86200033e640100000000026401000000009004565b62000234600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16620005e2640100000000026401000000009004565b50505062000d58565b6000806012905080600a0a8302915050919050565b60008282111515156200026157fe5b818303905092915050565b600062000296635b292881635b54a9ff610a2860006200073a640100000000026401000000009004565b50620002bf635b54aa01635b671eff61083460006200073a640100000000026401000000009004565b50620002e8635b671f01635b7993ff6106a460006200073a640100000000026401000000009004565b5062000311635b799401635b8c08ff61057860006200073a640100000000026401000000009004565b506200033a635b8c0901635b9e7dff61044c60006200073a640100000000026401000000009004565b5090565b73b92863581e6c3ba7edc78ffa45cdbba59a4ad03c600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003b16302faf0806200023d640100000000026401000000009004565b60026000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073ff849bf00fd77c357a7b9a09e572a1510ff7c0dc600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000489631dcd65006200023d640100000000026401000000009004565b60026000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073b391e1b2186db3b8d2f3d0968f30ab456f1eca57600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620005616305f5e1006200023d640100000000026401000000009004565b60026000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620005df62000883640100000000026401000000009004565b50565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514806200069057506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156200069c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515620006d957600080fd5b6001600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000606060006200074a62000b73565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620007a657600080fd5b6000915060c0604051908101604052808981526020018881526020018781526020018681526020018481526020018315158152509050600781908060018154018082558091505090600182039060005260206000209060060201600090919290919091506000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040190805190602001906200085092919062000bac565b5060a08201518160050160006101000a81548160ff02191690831515021790555050505060019350505050949350505050565b60006200088f62000c3b565b606060405190810160405280635c4b32818152602001635e2c65ff815260200160058152509050600d8190806001815401808255809150509060018203906000526020600020906003020160009091929091909150600082015181600001556020820151816001015560408201518160020155505050606060405190810160405280635e2c6601815260200163600eeaff815260200160058152509050600d819080600181540180825580915050906001820390600052602060002090600302016000909192909190915060008201518160000155602082015181600101556040820151816002015550505060606040519081016040528063600eeb0181526020016361f01e7f815260200160058152509050600d81908060018154018082558091505090600182039060005260206000209060030201600090919290919091506000820151816000015560208201518160010155604082015181600201555050506060604051908101604052806361f01e8181526020016363d151ff815260200160058152509050600d81908060018154018082558091505090600182039060005260206000209060030201600090919290919091506000820151816000015560208201518160010155604082015181600201555050506060604051908101604052806363d1520181526020016365b2857f815260200160058152509050600d8190806001815401808255809150509060018203906000526020600020906003020160009091929091909150600082015181600001556020820151816001015560408201518160020155505050600d600960006002815260200190815260200160002090805462000b0392919062000c5d565b506002600a6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600191505090565b60c06040519081016040528060008152602001600081526020016000815260200160008152602001606081526020016000151581525090565b82805482825590600052602060002090810192821562000c28579160200282015b8281111562000c275782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000bcd565b5b50905062000c37919062000cd8565b5090565b6060604051908101604052806000815260200160008152602001600081525090565b82805482825590600052602060002090600302810192821562000cc55760005260206000209160030282015b8281111562000cc457828260008201548160000155600182015481600101556002820154816002015550509160030191906003019062000c89565b5b50905062000cd4919062000d1e565b5090565b62000d1b91905b8082111562000d1757600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555060010162000cdf565b5090565b90565b62000d5591905b8082111562000d5157600080820160009055600182016000905560028201600090555060030162000d25565b5090565b90565b61401c8062000d686000396000f3006080604052600436106101d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303e6c1171461089c57806306fdde031461091357806307da68f5146109a357806307e1967a146109ba578063095ea7b314610a1f5780630e0e26da14610a8457806318160ddd14610aaf57806321e5383a14610ada57806323b872dd14610b3f578063313ce56714610bc45780633694532814610bf55780633f683b6a14610c5057806342966c6814610c7f57806346758d0b14610cc457806347a64f4414610d295780634a4fbeec14610d845780634b81780e14610ddf57806357d70c0b14610e365780635897164a14610e6157806362d9185514610eb857806366f928d314610f13578063704b6c0214610f8057806370a0823114610fdb57806379cc6790146110325780637addc7661461109757806386fa0671146110ee578063905295e31461114557806395d89b41146111a057806397172664146112305780639df0a5df14611271578063a6f9dae1146112c8578063a9059cbb14611323578063be9a655514611388578063c08e05aa1461139f578063c0c8821a146113e4578063cf8eeb7e14611451578063db23c5d7146114b6578063dd62ed3e14611519575b600080600080600093506000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561027157601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549350610613565b6101f49250600091505b60078054905082101561034d576001151560078381548110151561029b57fe5b906000526020600020906006020160050160009054906101000a900460ff161515141580156103145750426007838154811015156102d557fe5b90600052602060002090600602016000015410801561031357506007828154811015156102fe57fe5b90600052602060002090600602016001015442105b5b156103405760078281548110151561032857fe5b90600052602060002090600602016002015493508192505b818060010192505061027b565b6101f48314156104a9576101f4831415151561036857600080fd5b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090806001815401808255809150509060018203906000526020600020016000909192909190915055506000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610420576000610461565b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020545b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610612565b6000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610516576007838154811015156104ff57fe5b906000526020600020906006020160030154610557565b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020545b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001840190806001815401808255809150509060018203906000526020600020016000909192909190915055506106108333611590565b505b5b6000905061062a843461162090919063ffffffff16565b905061067e81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061071381600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506107c981600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610895573d6000803e3d6000fd5b5050505050005b3480156108a857600080fd5b506108d1600480360381019080803590602001909291908035906020019092919050505061168d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561091f57600080fd5b5061092861174d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561096857808201518184015260208101905061094d565b50505050905090810190601f1680156109955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109af57600080fd5b506109b8611786565b005b3480156109c657600080fd5b50610a05600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117fe565b604051808215151515815260200191505060405180910390f35b348015610a2b57600080fd5b50610a6a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118a9565b604051808215151515815260200191505060405180910390f35b348015610a9057600080fd5b50610a996119cb565b6040518082815260200191505060405180910390f35b348015610abb57600080fd5b50610ac46119db565b6040518082815260200191505060405180910390f35b348015610ae657600080fd5b50610b25600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119e5565b604051808215151515815260200191505060405180910390f35b348015610b4b57600080fd5b50610baa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b89565b604051808215151515815260200191505060405180910390f35b348015610bd057600080fd5b50610bd961201f565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c0157600080fd5b50610c36600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612024565b604051808215151515815260200191505060405180910390f35b348015610c5c57600080fd5b50610c65612107565b604051808215151515815260200191505060405180910390f35b348015610c8b57600080fd5b50610caa6004803603810190808035906020019092919050505061211e565b604051808215151515815260200191505060405180910390f35b348015610cd057600080fd5b50610d0f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506122e9565b604051808215151515815260200191505060405180910390f35b348015610d3557600080fd5b50610d6a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061242b565b604051808215151515815260200191505060405180910390f35b348015610d9057600080fd5b50610dc5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612580565b604051808215151515815260200191505060405180910390f35b348015610deb57600080fd5b50610df46125d6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e4257600080fd5b50610e4b6125fc565b6040518082815260200191505060405180910390f35b348015610e6d57600080fd5b50610e7661272d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ec457600080fd5b50610ef9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612753565b604051808215151515815260200191505060405180910390f35b348015610f1f57600080fd5b50610f666004803603810190808035906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050612811565b604051808215151515815260200191505060405180910390f35b348015610f8c57600080fd5b50610fc1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061293b565b604051808215151515815260200191505060405180910390f35b348015610fe757600080fd5b5061101c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506129f8565b6040518082815260200191505060405180910390f35b34801561103e57600080fd5b5061107d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612a41565b604051808215151515815260200191505060405180910390f35b3480156110a357600080fd5b506110ac612d38565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156110fa57600080fd5b5061112f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d5e565b6040518082815260200191505060405180910390f35b34801561115157600080fd5b50611186600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f39565b604051808215151515815260200191505060405180910390f35b3480156111ac57600080fd5b506111b561308e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156111f55780820151818401526020810190506111da565b50505050905090810190601f1680156112225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561123c57600080fd5b5061125b600480360381019080803590602001909291905050506130c7565b6040518082815260200191505060405180910390f35b34801561127d57600080fd5b50611286613152565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156112d457600080fd5b50611309600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613178565b604051808215151515815260200191505060405180910390f35b34801561132f57600080fd5b5061136e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061321e565b604051808215151515815260200191505060405180910390f35b34801561139457600080fd5b5061139d6135c7565b005b3480156113ab57600080fd5b506113ca6004803603810190808035906020019092919050505061363f565b604051808215151515815260200191505060405180910390f35b3480156113f057600080fd5b5061143760048036038101908080359060200190929190803590602001909291908035906020019092919080359060200190929190803590602001909291905050506136f1565b604051808215151515815260200191505060405180910390f35b34801561145d57600080fd5b5061149c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613820565b604051808215151515815260200191505060405180910390f35b3480156114c257600080fd5b506114ff600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506139d6565b604051808215151515815260200191505060405180910390f35b34801561152557600080fd5b5061157a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613b1a565b6040518082815260200191505060405180910390f35b60006007838154811015156115a157fe5b90600052602060002090600602016004018290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506001905092915050565b6000808314156116335760009050611652565b818302905081838281151561164457fe5b0414151561164e57fe5b8090505b92915050565b6000818301905082811015151561166b57fe5b80905092915050565b600082821115151561168257fe5b818303905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116ea57600080fd5b6007600184038154811015156116fc57fe5b90600052602060002090600602016004018281548110151561171a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b6040805190810160405280600481526020017f4d6179610000000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117e157600080fd5b6001601260006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561185b57600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000601260009054906101000a900460ff161515156118c457fe5b816118ce33613ba1565b101515156118db57600080fd5b81601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60006119d633613ba1565b905090565b6000600e54905090565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a4357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a7f57600080fd5b611ad182600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f1ac61b78d31c6915e0127f1431c8de204266cefccd98c75728048a1b0a784c2d8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001905092915050565b6000601260009054906101000a900460ff16151515611ba457fe5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611be057600080fd5b60011515600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514158015611c92575060011515600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514155b1515611c9d57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515611ceb57600080fd5b601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515611d7657600080fd5b611dc882600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e5d82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f2f82601360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b601281565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561208157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156120bd57600080fd5b81601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000601260009054906101000a900460ff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561217b57600080fd5b601260009054906101000a900460ff1615151561219457fe5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156121e257600080fd5b61223482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228c82600e5461167490919063ffffffff16565b600e819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515148061239657506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156123a157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156123dd57600080fd5b81601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514806124d857506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156124e357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561251f57600080fd5b6001600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806007805490509150600090505b81811015612729577f3fd09c11ab25d63cb931934aa596b6bde99b04e53cfc0ed5f0ef068c5ebcf21a60078281548110151561264457fe5b90600052602060002090600602016000015460078381548110151561266557fe5b90600052602060002090600602016001015460078481548110151561268657fe5b9060005260206000209060060201600201546007858154811015156126a757fe5b9060005260206000209060060201600301546007868154811015156126c857fe5b906000526020600020906006020160050160009054906101000a900460ff1660405180868152602001858152602001848152602001838152602001821515151581526020019550505050505060405180910390a1808060010191505061260c565b5090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127b057600080fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561286e57600080fd5b60008411156128ae5783600960008881526020019081526020016000208681548110151561289857fe5b9060005260206000209060030201600001819055505b60008311156128ee578260096000888152602001908152602001600020868154811015156128d857fe5b9060005260206000209060030201600101819055505b600082111561292e5781600960008881526020019081526020016000208681548110151561291857fe5b9060005260206000209060030201600201819055505b6001905095945050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561299857600080fd5b60018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a9e57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612aec57600080fd5b601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515612c005781601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550612c83565b6000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600e600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006060600080600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506000841415612db95760009350612f31565b60096000858152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015612e3d578382906000526020600020906003020160606040519081016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190612dec565b50505050925082519150600090505b81811015612f2d577f576be245b78b54839022ee7339b7d29d342aacd35cacde79eba5e4a84206d220858483815181101515612e8457fe5b90602001906020020151600001518584815181101515612ea057fe5b90602001906020020151602001518685815181101515612ebc57fe5b9060200190602002015160400151604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a18080600101915050612e4c565b8393505b505050919050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151480612fe657506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515612ff157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561302d57600080fd5b6000600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6040805190810160405280600481526020017f4d4159410000000000000000000000000000000000000000000000000000000081525081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561312457600080fd5b60076001830381548110151561313657fe5b9060005260206000209060060201600401805490509050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131d557600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000601260009054906101000a900460ff1615151561323957fe5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561327557600080fd5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156132c357600080fd5b60011515600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415151561332357600080fd5b60011515600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415151561338357600080fd5b8161338c6119cb565b1015151561339957600080fd5b6133eb82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061348082600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061351582600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561362257600080fd5b6000601260006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561369c57600080fd5b816007805490501115156136af57600080fd5b60016007838154811015156136c057fe5b906000526020600020906006020160050160006101000a81548160ff02191690831515021790555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561374e57600080fd5b8560078054905011151561376157600080fd5b6000851115613790578460078781548110151561377a57fe5b9060005260206000209060060201600001819055505b60008411156137bf57836007878154811015156137a957fe5b9060005260206000209060060201600101819055505b60008311156137ee57826007878154811015156137d857fe5b9060005260206000209060060201600201819055505b816007878154811015156137fe57fe5b9060005260206000209060060201600301819055506001905095945050505050565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561387e57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156138cc57600080fd5b61391e82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f1a34e7cf4a49ef7e1e4ac9758b3ac9963f037749fd799df2eaedff21dff258d98383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001905092915050565b6000606060006139e4613eea565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613a3f57600080fd5b6000915060c060405190810160405280898152602001888152602001878152602001868152602001848152602001831515815250905060078190806001815401808255809150509060018203906000526020600020906006020160009091929091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004019080519060200190613ae7929190613f23565b5060a08201518160050160006101000a81548160ff02191690831515021790555050505060019350505050949350505050565b6000601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060008060606000806000809650600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549550600094506000861415613c4a57600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549650869750613ec8565b60096000878152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015613cce578382906000526020600020906003020160606040519081016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190613c7d565b50505050935083519250600091505b82821015613e1857428483815181101515613cf457fe5b9060200190602002015160000151108015613d2957508382815181101515613d1857fe5b906020019060200201516020015142105b15613e0b57613e01600b60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613df38685815181101515613d8257fe5b9060200190602002015160400151613de5600c60008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546001880161162090919063ffffffff16565b613ed490919063ffffffff16565b61167490919063ffffffff16565b9650869750613ec8565b8180600101925050613cdd565b600015158515151415613ec75760019050600091505b82821015613e6b578382815181101515613e4457fe5b9060200190602002015160200151421015613e5e57600090505b8180600101925050613e2e565b600115158115151415613ec65760019450600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549650869750613ec8565b5b5b50505050505050919050565b60008183811515613ee157fe5b04905092915050565b60c06040519081016040528060008152602001600081526020016000815260200160008152602001606081526020016000151581525090565b828054828255906000526020600020908101928215613f9c579160200282015b82811115613f9b5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190613f43565b5b509050613fa99190613fad565b5090565b613fed91905b80821115613fe957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101613fb3565b5090565b905600a165627a7a72305820bc5fde8648e9e0ef6e16af85c286ca8bee77a11a388db6e679774e8cfddb62350029

Deployed Bytecode

0x6080604052600436106101d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303e6c1171461089c57806306fdde031461091357806307da68f5146109a357806307e1967a146109ba578063095ea7b314610a1f5780630e0e26da14610a8457806318160ddd14610aaf57806321e5383a14610ada57806323b872dd14610b3f578063313ce56714610bc45780633694532814610bf55780633f683b6a14610c5057806342966c6814610c7f57806346758d0b14610cc457806347a64f4414610d295780634a4fbeec14610d845780634b81780e14610ddf57806357d70c0b14610e365780635897164a14610e6157806362d9185514610eb857806366f928d314610f13578063704b6c0214610f8057806370a0823114610fdb57806379cc6790146110325780637addc7661461109757806386fa0671146110ee578063905295e31461114557806395d89b41146111a057806397172664146112305780639df0a5df14611271578063a6f9dae1146112c8578063a9059cbb14611323578063be9a655514611388578063c08e05aa1461139f578063c0c8821a146113e4578063cf8eeb7e14611451578063db23c5d7146114b6578063dd62ed3e14611519575b600080600080600093506000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561027157601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549350610613565b6101f49250600091505b60078054905082101561034d576001151560078381548110151561029b57fe5b906000526020600020906006020160050160009054906101000a900460ff161515141580156103145750426007838154811015156102d557fe5b90600052602060002090600602016000015410801561031357506007828154811015156102fe57fe5b90600052602060002090600602016001015442105b5b156103405760078281548110151561032857fe5b90600052602060002090600602016002015493508192505b818060010192505061027b565b6101f48314156104a9576101f4831415151561036857600080fd5b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090806001815401808255809150509060018203906000526020600020016000909192909190915055506000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610420576000610461565b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020545b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610612565b6000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610516576007838154811015156104ff57fe5b906000526020600020906006020160030154610557565b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020545b600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001840190806001815401808255809150509060018203906000526020600020016000909192909190915055506106108333611590565b505b5b6000905061062a843461162090919063ffffffff16565b905061067e81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061071381600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506107c981600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610895573d6000803e3d6000fd5b5050505050005b3480156108a857600080fd5b506108d1600480360381019080803590602001909291908035906020019092919050505061168d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561091f57600080fd5b5061092861174d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561096857808201518184015260208101905061094d565b50505050905090810190601f1680156109955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109af57600080fd5b506109b8611786565b005b3480156109c657600080fd5b50610a05600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117fe565b604051808215151515815260200191505060405180910390f35b348015610a2b57600080fd5b50610a6a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118a9565b604051808215151515815260200191505060405180910390f35b348015610a9057600080fd5b50610a996119cb565b6040518082815260200191505060405180910390f35b348015610abb57600080fd5b50610ac46119db565b6040518082815260200191505060405180910390f35b348015610ae657600080fd5b50610b25600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119e5565b604051808215151515815260200191505060405180910390f35b348015610b4b57600080fd5b50610baa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b89565b604051808215151515815260200191505060405180910390f35b348015610bd057600080fd5b50610bd961201f565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c0157600080fd5b50610c36600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612024565b604051808215151515815260200191505060405180910390f35b348015610c5c57600080fd5b50610c65612107565b604051808215151515815260200191505060405180910390f35b348015610c8b57600080fd5b50610caa6004803603810190808035906020019092919050505061211e565b604051808215151515815260200191505060405180910390f35b348015610cd057600080fd5b50610d0f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506122e9565b604051808215151515815260200191505060405180910390f35b348015610d3557600080fd5b50610d6a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061242b565b604051808215151515815260200191505060405180910390f35b348015610d9057600080fd5b50610dc5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612580565b604051808215151515815260200191505060405180910390f35b348015610deb57600080fd5b50610df46125d6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e4257600080fd5b50610e4b6125fc565b6040518082815260200191505060405180910390f35b348015610e6d57600080fd5b50610e7661272d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ec457600080fd5b50610ef9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612753565b604051808215151515815260200191505060405180910390f35b348015610f1f57600080fd5b50610f666004803603810190808035906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050612811565b604051808215151515815260200191505060405180910390f35b348015610f8c57600080fd5b50610fc1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061293b565b604051808215151515815260200191505060405180910390f35b348015610fe757600080fd5b5061101c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506129f8565b6040518082815260200191505060405180910390f35b34801561103e57600080fd5b5061107d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612a41565b604051808215151515815260200191505060405180910390f35b3480156110a357600080fd5b506110ac612d38565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156110fa57600080fd5b5061112f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d5e565b6040518082815260200191505060405180910390f35b34801561115157600080fd5b50611186600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f39565b604051808215151515815260200191505060405180910390f35b3480156111ac57600080fd5b506111b561308e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156111f55780820151818401526020810190506111da565b50505050905090810190601f1680156112225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561123c57600080fd5b5061125b600480360381019080803590602001909291905050506130c7565b6040518082815260200191505060405180910390f35b34801561127d57600080fd5b50611286613152565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156112d457600080fd5b50611309600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613178565b604051808215151515815260200191505060405180910390f35b34801561132f57600080fd5b5061136e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061321e565b604051808215151515815260200191505060405180910390f35b34801561139457600080fd5b5061139d6135c7565b005b3480156113ab57600080fd5b506113ca6004803603810190808035906020019092919050505061363f565b604051808215151515815260200191505060405180910390f35b3480156113f057600080fd5b5061143760048036038101908080359060200190929190803590602001909291908035906020019092919080359060200190929190803590602001909291905050506136f1565b604051808215151515815260200191505060405180910390f35b34801561145d57600080fd5b5061149c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613820565b604051808215151515815260200191505060405180910390f35b3480156114c257600080fd5b506114ff600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506139d6565b604051808215151515815260200191505060405180910390f35b34801561152557600080fd5b5061157a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613b1a565b6040518082815260200191505060405180910390f35b60006007838154811015156115a157fe5b90600052602060002090600602016004018290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506001905092915050565b6000808314156116335760009050611652565b818302905081838281151561164457fe5b0414151561164e57fe5b8090505b92915050565b6000818301905082811015151561166b57fe5b80905092915050565b600082821115151561168257fe5b818303905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116ea57600080fd5b6007600184038154811015156116fc57fe5b90600052602060002090600602016004018281548110151561171a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b6040805190810160405280600481526020017f4d6179610000000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117e157600080fd5b6001601260006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561185b57600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000601260009054906101000a900460ff161515156118c457fe5b816118ce33613ba1565b101515156118db57600080fd5b81601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60006119d633613ba1565b905090565b6000600e54905090565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a4357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a7f57600080fd5b611ad182600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f1ac61b78d31c6915e0127f1431c8de204266cefccd98c75728048a1b0a784c2d8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001905092915050565b6000601260009054906101000a900460ff16151515611ba457fe5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611be057600080fd5b60011515600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514158015611c92575060011515600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514155b1515611c9d57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515611ceb57600080fd5b601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515611d7657600080fd5b611dc882600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e5d82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f2f82601360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b601281565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561208157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156120bd57600080fd5b81601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000601260009054906101000a900460ff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561217b57600080fd5b601260009054906101000a900460ff1615151561219457fe5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156121e257600080fd5b61223482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228c82600e5461167490919063ffffffff16565b600e819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515148061239657506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156123a157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156123dd57600080fd5b81601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514806124d857506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156124e357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561251f57600080fd5b6001600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806007805490509150600090505b81811015612729577f3fd09c11ab25d63cb931934aa596b6bde99b04e53cfc0ed5f0ef068c5ebcf21a60078281548110151561264457fe5b90600052602060002090600602016000015460078381548110151561266557fe5b90600052602060002090600602016001015460078481548110151561268657fe5b9060005260206000209060060201600201546007858154811015156126a757fe5b9060005260206000209060060201600301546007868154811015156126c857fe5b906000526020600020906006020160050160009054906101000a900460ff1660405180868152602001858152602001848152602001838152602001821515151581526020019550505050505060405180910390a1808060010191505061260c565b5090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127b057600080fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561286e57600080fd5b60008411156128ae5783600960008881526020019081526020016000208681548110151561289857fe5b9060005260206000209060030201600001819055505b60008311156128ee578260096000888152602001908152602001600020868154811015156128d857fe5b9060005260206000209060030201600101819055505b600082111561292e5781600960008881526020019081526020016000208681548110151561291857fe5b9060005260206000209060030201600201819055505b6001905095945050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561299857600080fd5b60018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a9e57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612aec57600080fd5b601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515612c005781601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550612c83565b6000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600e600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006060600080600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506000841415612db95760009350612f31565b60096000858152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015612e3d578382906000526020600020906003020160606040519081016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190612dec565b50505050925082519150600090505b81811015612f2d577f576be245b78b54839022ee7339b7d29d342aacd35cacde79eba5e4a84206d220858483815181101515612e8457fe5b90602001906020020151600001518584815181101515612ea057fe5b90602001906020020151602001518685815181101515612ebc57fe5b9060200190602002015160400151604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a18080600101915050612e4c565b8393505b505050919050565b600060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151480612fe657506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515612ff157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561302d57600080fd5b6000600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6040805190810160405280600481526020017f4d4159410000000000000000000000000000000000000000000000000000000081525081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561312457600080fd5b60076001830381548110151561313657fe5b9060005260206000209060060201600401805490509050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131d557600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000601260009054906101000a900460ff1615151561323957fe5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561327557600080fd5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156132c357600080fd5b60011515600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415151561332357600080fd5b60011515600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415151561338357600080fd5b8161338c6119cb565b1015151561339957600080fd5b6133eb82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061348082600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061351582600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165890919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561362257600080fd5b6000601260006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561369c57600080fd5b816007805490501115156136af57600080fd5b60016007838154811015156136c057fe5b906000526020600020906006020160050160006101000a81548160ff02191690831515021790555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561374e57600080fd5b8560078054905011151561376157600080fd5b6000851115613790578460078781548110151561377a57fe5b9060005260206000209060060201600001819055505b60008411156137bf57836007878154811015156137a957fe5b9060005260206000209060060201600101819055505b60008311156137ee57826007878154811015156137d857fe5b9060005260206000209060060201600201819055505b816007878154811015156137fe57fe5b9060005260206000209060060201600301819055506001905095945050505050565b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561387e57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156138cc57600080fd5b61391e82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461167490919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f1a34e7cf4a49ef7e1e4ac9758b3ac9963f037749fd799df2eaedff21dff258d98383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a16001905092915050565b6000606060006139e4613eea565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613a3f57600080fd5b6000915060c060405190810160405280898152602001888152602001878152602001868152602001848152602001831515815250905060078190806001815401808255809150509060018203906000526020600020906006020160009091929091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004019080519060200190613ae7929190613f23565b5060a08201518160050160006101000a81548160ff02191690831515021790555050505060019350505050949350505050565b6000601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060008060606000806000809650600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549550600094506000861415613c4a57600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549650869750613ec8565b60096000878152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015613cce578382906000526020600020906003020160606040519081016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190613c7d565b50505050935083519250600091505b82821015613e1857428483815181101515613cf457fe5b9060200190602002015160000151108015613d2957508382815181101515613d1857fe5b906020019060200201516020015142105b15613e0b57613e01600b60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613df38685815181101515613d8257fe5b9060200190602002015160400151613de5600c60008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546001880161162090919063ffffffff16565b613ed490919063ffffffff16565b61167490919063ffffffff16565b9650869750613ec8565b8180600101925050613cdd565b600015158515151415613ec75760019050600091505b82821015613e6b578382815181101515613e4457fe5b9060200190602002015160200151421015613e5e57600090505b8180600101925050613e2e565b600115158115151415613ec65760019450600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549650869750613ec8565b5b5b50505050505050919050565b60008183811515613ee157fe5b04905092915050565b60c06040519081016040528060008152602001600081526020016000815260200160008152602001606081526020016000151581525090565b828054828255906000526020600020908101928215613f9c579160200282015b82811115613f9b5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190613f43565b5b509050613fa99190613fad565b5090565b613fed91905b80821115613fe957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101613fb3565b5090565b905600a165627a7a72305820bc5fde8648e9e0ef6e16af85c286ca8bee77a11a388db6e679774e8cfddb62350029

Swarm Source

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