ETH Price: $2,709.52 (+2.85%)

Token

Global Sharing Platform (GSP)
 

Overview

Max Total Supply

10,000,000,000 GSP

Holders

199

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
288,001 GSP

Value
$0.00
0xb2b305b06ff090c7f00a19e488cb36776d0803e3
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:
StandardToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-01-13
*/

pragma solidity ^0.4.24;

library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        assert(c / a == b);
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a / b;
        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

contract Ownable {
    address public owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor() public {
        owner = msg.sender;
    }
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }
    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }

}

contract Manager is Ownable {
    
    address[] managers;

    modifier onlyManagers() {
        bool exist = false;
        if(owner == msg.sender) {
            exist = true;
        } else {
            uint index = 0;
            (exist, index) = existManager(msg.sender);
        }
        require(exist);
        _;
    }
    
    function getManagers() public view returns (address[] memory){
        return managers;
    }
    
    function existManager(address _to) private view returns (bool, uint) {
        for (uint i = 0 ; i < managers.length; i++) {
            if (managers[i] == _to) {
                return (true, i);
            }
        }
        return (false, 0);
    }
    function addManager(address _to) onlyOwner public {
        bool exist = false;
        uint index = 0;
        (exist, index) = existManager(_to);
        
        require(!exist);
        
        managers.push(_to);
    }
    function deleteManager(address _to) onlyOwner public {
        bool exist = false;
        uint index = 0;
        (exist, index) = existManager(_to);
        
        require(exist);
   
        uint lastElementIndex = managers.length - 1; 
        managers[index] = managers[lastElementIndex];

        delete managers[managers.length - 1];
        managers.length--;
    }

}

contract Pausable is Manager {
    event Pause();
    event Unpause();

    bool public paused = false;

    modifier whenNotPaused() {
        require(!paused);
        _;
    }

    modifier whenPaused() {
        require(paused);
        _;
    }

    function pause() onlyManagers whenNotPaused public {
        paused = true;
        emit Pause();
    }

    function unpause() onlyManagers whenPaused public {
        paused = false;
        emit Unpause();
    }
}

contract ERC20 {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function allowance(address owner, address spender) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);
    function transferFrom(address from, address to, uint256 value) public returns (bool);

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

contract Token is ERC20, Pausable {

    struct sUserInfo {
        uint256 balance;
        bool lock;
        mapping(address => uint256) allowed;
    }
    
    using SafeMath for uint256;

    string public name;
    string public symbol;
    uint8 public decimals;
    uint256 public totalSupply;

  

    mapping(address => sUserInfo) user;

    event Mint(uint256 value);
    event Burn(uint256 value);

   
    
    function () public payable {
        revert();
    }
    
    function validTransfer(address _from, address _to, uint256 _value, bool _lockCheck) internal view returns (bool) {
        require(_to != address(this));
        require(_to != address(0));
        require(user[_from].balance >= _value);
        if(_lockCheck) {
            require(user[_from].lock == false);
        }
    }

    function lock(address _owner) public onlyManagers returns (bool) {
        require(user[_owner].lock == false);
       
        user[_owner].lock = true;
        return true;
    }
    function unlock(address _owner) public onlyManagers returns (bool) {
        require(user[_owner].lock == true);
        user[_owner].lock = false;
       return true;
    }
 
    function burn(uint256 _value) public onlyOwner returns (bool) {
        require(_value <= user[msg.sender].balance);
        user[msg.sender].balance = user[msg.sender].balance.sub(_value);
        totalSupply = totalSupply.sub(_value);
        emit Burn(_value);
        return true;
    }

    function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) {
        require(_value == 0 || user[msg.sender].allowed[_spender] == 0); 
        user[msg.sender].allowed[_spender] = _value; 
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) {
        validTransfer(_from, _to, _value, true);
        require(_value <=  user[_from].allowed[msg.sender]);

        user[_from].balance = user[_from].balance.sub(_value);
        user[_to].balance = user[_to].balance.add(_value);

        user[_from].allowed[msg.sender] = user[_from].allowed[msg.sender].sub(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }
    
    function transfer(address _to, uint256 _value) public whenNotPaused returns (bool) {
        validTransfer(msg.sender, _to, _value, true);

        user[msg.sender].balance = user[msg.sender].balance.sub(_value);
        user[_to].balance = user[_to].balance.add(_value);

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

    
    function totalSupply() public view returns (uint256) {
        return totalSupply;
    }
    function balanceOf(address _owner) public view returns (uint256) {
        return user[_owner].balance;
    }
    function lockState(address _owner) public view returns (bool) {
        return user[_owner].lock;
    }
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return user[_owner].allowed[_spender];
    }
    
}

contract LockBalance is Manager {
    

    struct sLockInfo {
        uint256[] lockBalanceStandard;
        uint256[] endTime;
    }
    
    using SafeMath for uint256;

    mapping(address => sLockInfo) lockUser;

    event Lock(address indexed from, uint256 value, uint256 endTime);
    
    function setLockUser(address _to, uint256 _value, uint256 _endTime) onlyManagers public {
        require(_endTime > now); 
        require(_value > 0); 
        lockUser[_to].lockBalanceStandard.push(_value);
        lockUser[_to].endTime.push(_endTime);

        emit Lock(_to, _value, _endTime);
    }
    function setLockUsers(address[] _to, uint256[] _value, uint256[] _endTime) onlyManagers public {  
        require(_to.length > 0);
        require(_to.length == _value.length);
        require(_to.length == _endTime.length);
      
        for(uint256 i = 0; i < _to.length; i++){
            setLockUser(_to[i], _value[i], _endTime[i]);
        }
    }
    
  
    function lockBalanceIndividual(address _owner, uint _index) internal view returns (uint256) {
        if(now < lockUser[_owner].endTime[_index]) {
            return lockUser[_owner].lockBalanceStandard[_index];
        } else {
            return 0;
        }
    }
    
    function clearLockUserInfo(address _holder) onlyManagers public {
        lockUser[_holder].endTime.length = 0;
        lockUser[_holder].lockBalanceStandard.length = 0;
    }
    function deleteLockUserInfoIdx(address _holder, uint256 idx) onlyManagers public {
        require(idx < lockUser[_holder].endTime.length);

        if (idx != lockUser[_holder].endTime.length - 1) {
            lockUser[_holder].endTime[idx] = lockUser[_holder].endTime[lockUser[_holder].endTime.length - 1];
            lockUser[_holder].lockBalanceStandard[idx] = lockUser[_holder].lockBalanceStandard[lockUser[_holder].lockBalanceStandard.length - 1];
        }
        lockUser[_holder].endTime.length--;
        lockUser[_holder].lockBalanceStandard.length--;
        
    }
    function _deleteLockUserInfo(address _to, uint256 _endTime) internal {

        bool isExists = false;
        uint256 index = 0;
        for(uint256 i = 0; i < lockUser[_to].endTime.length; i++) {
            if(lockUser[_to].endTime[i] == _endTime) {
                isExists = true;
                index = i;
                break;
            }
        }
        require(isExists);

        deleteLockUserInfoIdx(_to, index);
    }
    function deleteLockUserInfos(address _to, uint256[] _endTime) onlyManagers public {
        for(uint256 i = 0; i < _endTime.length; i++){
            _deleteLockUserInfo(_to, _endTime[i]);
        }
    }

    function lockUserInfo(address _owner, uint256 idx) public view returns (uint256, uint256) {
        return (
            lockUser[_owner].lockBalanceStandard[idx],
        lockUser[_owner].endTime[idx]);
    }
    function lockUserInfo(address _owner) public view returns (uint256[], uint256[]) {
        
        return (
        lockUser[_owner].lockBalanceStandard,
        lockUser[_owner].endTime);
    }
    function lockBalanceAll(address _owner) public view returns (uint256) {
        uint256 lockBalance = 0;
        for(uint256 i = 0; i < lockUser[_owner].lockBalanceStandard.length; i++){
            lockBalance = lockBalance.add(lockBalanceIndividual(_owner, i));
        }
        return lockBalance;
    }
    
}

contract StandardToken is Token, LockBalance {

    constructor(string memory name_, string memory symbol_, uint8 decimals_, uint256 supply_) public {
        name = name_;
        symbol = symbol_;
        decimals = decimals_;
        uint256 initialSupply = supply_;
        totalSupply = initialSupply * 10 ** uint(decimals);
        user[owner].balance = totalSupply;
        emit Transfer(address(0), owner, totalSupply);
    }

    bool public finishMint = false; 
    bool public finishRestore = false; 
    
    function isFinishMint() public onlyOwner { 
        finishMint = true; 
    }
    function isFinishRestore() public onlyOwner { 
        finishRestore = true; 
    }     
  
    function validTransfer(address _from, address _to, uint256 _value, bool _lockCheck) internal view returns (bool) {
        super.validTransfer(_from, _to, _value, _lockCheck);
        if(_lockCheck) {
            require(_value <= useBalanceOf(_from));
        }
    }

    function transferWithtLockUser(address _to, uint256 _amount, uint256[] _lockAmount, uint256[] _endTime) onlyManagers public {  
        require(_lockAmount.length > 0);
        require(_lockAmount.length == _endTime.length);
        
        transfer(_to, _amount);
        
        for(uint256 i = 0; i < _lockAmount.length; i++){
            setLockUser(_to, _lockAmount[i], _endTime[i]);
        }
        
    }
 
    function mint(uint256 _value) public onlyOwner returns (bool) {
        require(!finishMint);
        require(_value > 0);
        user[msg.sender].balance = user[msg.sender].balance.add(_value);
        totalSupply = totalSupply.add(_value);
        emit Transfer(address(0), msg.sender, _value);
        return true;
    }
 
    function transferRestore(address _from, address _to, uint256 _value) public onlyOwner returns (bool) {
        require(!finishRestore);

        require(_to != address(this));
        require(_to != address(0));
        require(user[_from].balance >= _value);
        
        user[_from].balance = user[_from].balance.sub(_value);
        user[_to].balance = user[_to].balance.add(_value);

        emit Transfer(_from, _to, _value);
        return true;
    }
    function useBalanceOf(address _owner) public view returns (uint256) {
        return balanceOf(_owner).sub(lockBalanceAll(_owner));
    }
  

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"lockBalanceAll","outputs":[{"name":"","type":"uint256"}],"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":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_endTime","type":"uint256"}],"name":"setLockUser","outputs":[],"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":false,"inputs":[{"name":"_holder","type":"address"}],"name":"clearLockUserInfo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_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":"_owner","type":"address"},{"name":"idx","type":"uint256"}],"name":"lockUserInfo","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"addManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"unlock","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":"isFinishRestore","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferRestore","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"},{"name":"idx","type":"uint256"}],"name":"deleteLockUserInfoIdx","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"isFinishMint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"useBalanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":"_to","type":"address[]"},{"name":"_value","type":"uint256[]"},{"name":"_endTime","type":"uint256[]"}],"name":"setLockUsers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"finishRestore","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"lockState","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"deleteManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_endTime","type":"uint256[]"}],"name":"deleteLockUserInfos","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getManagers","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"lockUserInfo","outputs":[{"name":"","type":"uint256[]"},{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","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"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_lockAmount","type":"uint256[]"},{"name":"_endTime","type":"uint256[]"}],"name":"transferWithtLockUser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"finishMint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"lock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"name_","type":"string"},{"name":"symbol_","type":"string"},{"name":"decimals_","type":"uint8"},{"name":"supply_","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"endTime","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"value","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]

60806040526000600260006101000a81548160ff0219169083151502179055506000600960006101000a81548160ff0219169083151502179055506000600960016101000a81548160ff0219169083151502179055503480156200006257600080fd5b5060405162003d5938038062003d59833981018060405281019080805182019291906020018051820192919060200180519060200190929190805190602001909291905050506000336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600390805190602001906200010292919062000256565b5083600490805190602001906200011b92919062000256565b5082600560006101000a81548160ff021916908360ff160217905550819050600560009054906101000a900460ff1660ff16600a0a8102600681905550600654600760008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040518082815260200191505060405180910390a3505050505062000305565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200029957805160ff1916838001178555620002ca565b82800160010185558215620002ca579182015b82811115620002c9578251825591602001919060010190620002ac565b5b509050620002d99190620002dd565b5090565b6200030291905b80821115620002fe576000816000905550600101620002e4565b5090565b90565b613a4480620003156000396000f3006080604052600436106101cd576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063015d200f146101d257806306fdde0314610229578063072f3b67146102b9578063095ea7b314610310578063106ac57b1461037557806318160ddd146103b857806323b872dd146103e357806328d080f1146104685780632d06177a146104d05780632f6c493c14610513578063313ce5671461056e578063351779991461059f5780633f4ba83a146105b65780634149953d146105cd57806342966c681461065257806351ecf2c214610697578063572b4032146106e45780635c975abb146106fb57806369132d431461072a57806370a08231146107815780637e26b62d146107d85780638456cb59146108c45780638da5cb5b146108db57806390e99b091461093257806394dbc70e1461096157806395d89b41146109bc5780639679976014610a4c578063a0712d6814610a8f578063a19c77c714610ad4578063a8d088bb14610b5a578063a9059cbb14610bc6578063ac1a717514610c2b578063dd62ed3e14610d0b578063e0c3e1e714610d82578063e4cc18be14610e55578063f2fde38b14610e84578063f435f5a714610ec7575b600080fd5b3480156101de57600080fd5b50610213600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f22565b6040518082815260200191505060405180910390f35b34801561023557600080fd5b5061023e610fb1565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027e578082015181840152602081019050610263565b50505050905090810190601f1680156102ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c557600080fd5b5061030e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061104f565b005b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611228565b604051808215151515815260200191505060405180910390f35b34801561038157600080fd5b506103b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113d2565b005b3480156103c457600080fd5b506103cd6114fe565b6040518082815260200191505060405180910390f35b3480156103ef57600080fd5b5061044e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561047457600080fd5b506104b3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061187d565b604051808381526020018281526020019250505060405180910390f35b3480156104dc57600080fd5b50610511600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061193f565b005b34801561051f57600080fd5b50610554600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a2e565b604051808215151515815260200191505060405180910390f35b34801561057a57600080fd5b50610583611b7e565b604051808260ff1660ff16815260200191505060405180910390f35b3480156105ab57600080fd5b506105b4611b91565b005b3480156105c257600080fd5b506105cb611c09565b005b3480156105d957600080fd5b50610638600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cf6565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b5061067d60048036038101908080359060200190929190505050611fdd565b604051808215151515815260200191505060405180910390f35b3480156106a357600080fd5b506106e2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612181565b005b3480156106f057600080fd5b506106f961255d565b005b34801561070757600080fd5b506107106125d5565b604051808215151515815260200191505060405180910390f35b34801561073657600080fd5b5061076b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125e8565b6040518082815260200191505060405180910390f35b34801561078d57600080fd5b506107c2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612614565b6040518082815260200191505060405180910390f35b3480156107e457600080fd5b506108c2600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050612660565b005b3480156108d057600080fd5b506108d961278b565b005b3480156108e757600080fd5b506108f0612879565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561093e57600080fd5b5061094761289e565b604051808215151515815260200191505060405180910390f35b34801561096d57600080fd5b506109a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506128b1565b604051808215151515815260200191505060405180910390f35b3480156109c857600080fd5b506109d161290a565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a115780820151818401526020810190506109f6565b50505050905090810190601f168015610a3e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a5857600080fd5b50610a8d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506129a8565b005b348015610a9b57600080fd5b50610aba60048036038101908080359060200190929190505050612b26565b604051808215151515815260200191505060405180910390f35b348015610ae057600080fd5b50610b58600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050612cd3565b005b348015610b6657600080fd5b50610b6f612d9e565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610bb2578082015181840152602081019050610b97565b505050509050019250505060405180910390f35b348015610bd257600080fd5b50610c11600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612e2c565b604051808215151515815260200191505060405180910390f35b348015610c3757600080fd5b50610c6c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612ffd565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610cb3578082015181840152602081019050610c98565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500194505050505060405180910390f35b348015610d1757600080fd5b50610d6c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613131565b6040518082815260200191505060405180910390f35b348015610d8e57600080fd5b50610e53600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506131bb565b005b348015610e6157600080fd5b50610e6a6132cb565b604051808215151515815260200191505060405180910390f35b348015610e9057600080fd5b50610ec5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506132de565b005b348015610ed357600080fd5b50610f08600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613433565b604051808215151515815260200191505060405180910390f35b6000806000809150600090505b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050811015610fa757610f98610f898583613583565b8361365290919063ffffffff16565b91508080600101915050610f2f565b8192505050919050565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110475780601f1061101c57610100808354040283529160200191611047565b820191906000526020600020905b81548152906001019060200180831161102a57829003601f168201915b505050505081565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156110b457600191506110ca565b600090506110c133613670565b80925081935050505b8115156110d657600080fd5b42831115156110e457600080fd5b6000841115156110f357600080fd5b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001849080600181540180825580915050906001820390600052602060002001600090919290919091505550600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018390806001815401808255809150509060018203906000526020600020016000909192909190915055508473ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b8585604051808381526020018281526020019250505060405180910390a25050505050565b6000600260009054906101000a900460ff1615151561124657600080fd5b60008214806112d457506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b15156112df57600080fd5b81600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611437576001915061144d565b6000905061144433613670565b80925081935050505b81151561145957600080fd5b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101816114a8919061399b565b506000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001816114f8919061399b565b50505050565b6000600654905090565b6000600260009054906101000a900460ff1615151561152657600080fd5b611533848484600161371d565b50600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156115c257600080fd5b61161782600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506116b282600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061178a82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001838154811015156118cf57fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018481548110151561192957fe5b9060005260206000200154915091509250929050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561199d57600080fd5b60009150600090506119ae83613670565b8092508193505050811515156119c357600080fd5b60018390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611a945760019150611aaa565b60009050611aa133613670565b80925081935050505b811515611ab657600080fd5b60011515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff161515141515611b1857600080fd5b6000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550600192505050919050565b600560009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bec57600080fd5b6001600960016101000a81548160ff021916908315150217905550565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611c6e5760019150611c84565b60009050611c7b33613670565b80925081935050505b811515611c9057600080fd5b600260009054906101000a900460ff161515611cab57600080fd5b6000600260006101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a15050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d5357600080fd5b600960019054906101000a900460ff16151515611d6f57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611daa57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611de657600080fd5b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410151515611e3757600080fd5b611e8c82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550611f2782600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561203a57600080fd5b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154821115151561208b57600080fd5b6120e082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061213b8260065461375290919063ffffffff16565b6006819055507fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb826040518082815260200191505060405180910390a160019050919050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156121e657600191506121fc565b600090506121f333613670565b80925081935050505b81151561220857600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490508310151561225b57600080fd5b6001600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054905003831415156124ab57600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016001600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490500381548110151561234357fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018481548110151561239d57fe5b9060005260206000200181905550600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016001600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490500381548110151561244257fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018481548110151561249c57fe5b90600052602060002001819055505b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805480919060019003612500919061399b565b50600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805480919060019003612556919061399b565b5050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156125b857600080fd5b6001600960006101000a81548160ff021916908315150217905550565b600260009054906101000a900460ff1681565b600061260d6125f683610f22565b6125ff84612614565b61375290919063ffffffff16565b9050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156126c657600191506126dc565b600090506126d333613670565b80925081935050505b8115156126e857600080fd5b600086511115156126f857600080fd5b8451865114151561270857600080fd5b8351865114151561271857600080fd5b600092505b855183101561278357612776868481518110151561273757fe5b90602001906020020151868581518110151561274f57fe5b90602001906020020151868681518110151561276757fe5b9060200190602002015161104f565b828060010193505061271d565b505050505050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156127f05760019150612806565b600090506127fd33613670565b80925081935050505b81151561281257600080fd5b600260009054906101000a900460ff1615151561282e57600080fd5b6001600260006101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960019054906101000a900460ff1681565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff169050919050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129a05780601f10612975576101008083540402835291602001916129a0565b820191906000526020600020905b81548152906001019060200180831161298357829003601f168201915b505050505081565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a0857600080fd5b6000925060009150612a1984613670565b8093508194505050821515612a2d57600080fd5b60018080549050039050600181815481101515612a4657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600183815481101515612a8057fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600180808054905003815481101515612add57fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001805480919060019003612b1f91906139c7565b5050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b8357600080fd5b600960009054906101000a900460ff16151515612b9f57600080fd5b600082111515612bae57600080fd5b612c0382600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612c5e8260065461365290919063ffffffff16565b6006819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415612d395760019150612d4f565b60009050612d4633613670565b80925081935050505b811515612d5b57600080fd5b600092505b8351831015612d9757612d8a858585815181101515612d7b57fe5b9060200190602002015161376b565b8280600101935050612d60565b5050505050565b60606001805480602002602001604051908101604052809291908181526020018280548015612e2257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612dd8575b5050505050905090565b6000600260009054906101000a900460ff16151515612e4a57600080fd5b612e57338484600161371d565b50612ead82600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612f4882600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b606080600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101818054806020026020016040519081016040528092919081815260200182805480156130cf57602002820191906000526020600020905b8154815260200190600101908083116130bb575b505050505091508080548060200260200160405190810160405280929190818152602001828054801561312157602002820191906000526020600020905b81548152602001906001019080831161310d575b5050505050905091509150915091565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156132215760019150613237565b6000905061322e33613670565b80925081935050505b81151561324357600080fd5b6000855111151561325357600080fd5b8351855114151561326357600080fd5b61326d8787612e2c565b50600092505b84518310156132c2576132b587868581518110151561328e57fe5b9060200190602002015186868151811015156132a657fe5b9060200190602002015161104f565b8280600101935050613273565b50505050505050565b600960009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561333957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561337557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561349957600191506134af565b600090506134a633613670565b80925081935050505b8115156134bb57600080fd5b60001515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff16151514151561351d57600080fd5b6001600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550600192505050919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101828154811015156135d457fe5b906000526020600020015442101561364757600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018281548110151561363557fe5b9060005260206000200154905061364c565b600090505b92915050565b600080828401905083811015151561366657fe5b8091505092915050565b60008060008090505b60018054905081101561370c578373ffffffffffffffffffffffffffffffffffffffff166001828154811015156136ac57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156136ff5760018192509250613717565b8080600101915050613679565b600080809050925092505b50915091565b600061372b85858585613860565b50811561374a5761373b856125e8565b831115151561374957600080fd5b5b949350505050565b600082821115151561376057fe5b818303905092915050565b600080600080925060009150600090505b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490508110156138435783600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018281548110151561381957fe5b906000526020600020015414156138365760019250809150613843565b808060010191505061377c565b82151561384f57600080fd5b6138598583612181565b5050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561389d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156138d957600080fd5b82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015151561392a57600080fd5b81156139935760001515600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff16151514151561399257600080fd5b5b949350505050565b8154818355818111156139c2578183600052602060002091820191016139c191906139f3565b5b505050565b8154818355818111156139ee578183600052602060002091820191016139ed91906139f3565b5b505050565b613a1591905b80821115613a115760008160009055506001016139f9565b5090565b905600a165627a7a72305820d6cd386057fa5fd8bf1e89678740b21b34fb46d707c4a79fec7785a91cf22b660029000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000002540be4000000000000000000000000000000000000000000000000000000000000000017476c6f62616c2053686172696e6720506c6174666f726d00000000000000000000000000000000000000000000000000000000000000000000000000000000034753500000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101cd576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063015d200f146101d257806306fdde0314610229578063072f3b67146102b9578063095ea7b314610310578063106ac57b1461037557806318160ddd146103b857806323b872dd146103e357806328d080f1146104685780632d06177a146104d05780632f6c493c14610513578063313ce5671461056e578063351779991461059f5780633f4ba83a146105b65780634149953d146105cd57806342966c681461065257806351ecf2c214610697578063572b4032146106e45780635c975abb146106fb57806369132d431461072a57806370a08231146107815780637e26b62d146107d85780638456cb59146108c45780638da5cb5b146108db57806390e99b091461093257806394dbc70e1461096157806395d89b41146109bc5780639679976014610a4c578063a0712d6814610a8f578063a19c77c714610ad4578063a8d088bb14610b5a578063a9059cbb14610bc6578063ac1a717514610c2b578063dd62ed3e14610d0b578063e0c3e1e714610d82578063e4cc18be14610e55578063f2fde38b14610e84578063f435f5a714610ec7575b600080fd5b3480156101de57600080fd5b50610213600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f22565b6040518082815260200191505060405180910390f35b34801561023557600080fd5b5061023e610fb1565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027e578082015181840152602081019050610263565b50505050905090810190601f1680156102ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c557600080fd5b5061030e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061104f565b005b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611228565b604051808215151515815260200191505060405180910390f35b34801561038157600080fd5b506103b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113d2565b005b3480156103c457600080fd5b506103cd6114fe565b6040518082815260200191505060405180910390f35b3480156103ef57600080fd5b5061044e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561047457600080fd5b506104b3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061187d565b604051808381526020018281526020019250505060405180910390f35b3480156104dc57600080fd5b50610511600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061193f565b005b34801561051f57600080fd5b50610554600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a2e565b604051808215151515815260200191505060405180910390f35b34801561057a57600080fd5b50610583611b7e565b604051808260ff1660ff16815260200191505060405180910390f35b3480156105ab57600080fd5b506105b4611b91565b005b3480156105c257600080fd5b506105cb611c09565b005b3480156105d957600080fd5b50610638600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cf6565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b5061067d60048036038101908080359060200190929190505050611fdd565b604051808215151515815260200191505060405180910390f35b3480156106a357600080fd5b506106e2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612181565b005b3480156106f057600080fd5b506106f961255d565b005b34801561070757600080fd5b506107106125d5565b604051808215151515815260200191505060405180910390f35b34801561073657600080fd5b5061076b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125e8565b6040518082815260200191505060405180910390f35b34801561078d57600080fd5b506107c2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612614565b6040518082815260200191505060405180910390f35b3480156107e457600080fd5b506108c2600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050612660565b005b3480156108d057600080fd5b506108d961278b565b005b3480156108e757600080fd5b506108f0612879565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561093e57600080fd5b5061094761289e565b604051808215151515815260200191505060405180910390f35b34801561096d57600080fd5b506109a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506128b1565b604051808215151515815260200191505060405180910390f35b3480156109c857600080fd5b506109d161290a565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a115780820151818401526020810190506109f6565b50505050905090810190601f168015610a3e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a5857600080fd5b50610a8d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506129a8565b005b348015610a9b57600080fd5b50610aba60048036038101908080359060200190929190505050612b26565b604051808215151515815260200191505060405180910390f35b348015610ae057600080fd5b50610b58600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050612cd3565b005b348015610b6657600080fd5b50610b6f612d9e565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610bb2578082015181840152602081019050610b97565b505050509050019250505060405180910390f35b348015610bd257600080fd5b50610c11600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612e2c565b604051808215151515815260200191505060405180910390f35b348015610c3757600080fd5b50610c6c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612ffd565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610cb3578082015181840152602081019050610c98565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500194505050505060405180910390f35b348015610d1757600080fd5b50610d6c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613131565b6040518082815260200191505060405180910390f35b348015610d8e57600080fd5b50610e53600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506131bb565b005b348015610e6157600080fd5b50610e6a6132cb565b604051808215151515815260200191505060405180910390f35b348015610e9057600080fd5b50610ec5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506132de565b005b348015610ed357600080fd5b50610f08600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613433565b604051808215151515815260200191505060405180910390f35b6000806000809150600090505b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050811015610fa757610f98610f898583613583565b8361365290919063ffffffff16565b91508080600101915050610f2f565b8192505050919050565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110475780601f1061101c57610100808354040283529160200191611047565b820191906000526020600020905b81548152906001019060200180831161102a57829003601f168201915b505050505081565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156110b457600191506110ca565b600090506110c133613670565b80925081935050505b8115156110d657600080fd5b42831115156110e457600080fd5b6000841115156110f357600080fd5b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001849080600181540180825580915050906001820390600052602060002001600090919290919091505550600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018390806001815401808255809150509060018203906000526020600020016000909192909190915055508473ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b8585604051808381526020018281526020019250505060405180910390a25050505050565b6000600260009054906101000a900460ff1615151561124657600080fd5b60008214806112d457506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b15156112df57600080fd5b81600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611437576001915061144d565b6000905061144433613670565b80925081935050505b81151561145957600080fd5b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101816114a8919061399b565b506000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001816114f8919061399b565b50505050565b6000600654905090565b6000600260009054906101000a900460ff1615151561152657600080fd5b611533848484600161371d565b50600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156115c257600080fd5b61161782600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506116b282600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061178a82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001838154811015156118cf57fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018481548110151561192957fe5b9060005260206000200154915091509250929050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561199d57600080fd5b60009150600090506119ae83613670565b8092508193505050811515156119c357600080fd5b60018390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611a945760019150611aaa565b60009050611aa133613670565b80925081935050505b811515611ab657600080fd5b60011515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff161515141515611b1857600080fd5b6000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550600192505050919050565b600560009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bec57600080fd5b6001600960016101000a81548160ff021916908315150217905550565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611c6e5760019150611c84565b60009050611c7b33613670565b80925081935050505b811515611c9057600080fd5b600260009054906101000a900460ff161515611cab57600080fd5b6000600260006101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a15050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d5357600080fd5b600960019054906101000a900460ff16151515611d6f57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611daa57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611de657600080fd5b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410151515611e3757600080fd5b611e8c82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550611f2782600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561203a57600080fd5b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154821115151561208b57600080fd5b6120e082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061213b8260065461375290919063ffffffff16565b6006819055507fb90306ad06b2a6ff86ddc9327db583062895ef6540e62dc50add009db5b356eb826040518082815260200191505060405180910390a160019050919050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156121e657600191506121fc565b600090506121f333613670565b80925081935050505b81151561220857600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490508310151561225b57600080fd5b6001600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018054905003831415156124ab57600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016001600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490500381548110151561234357fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018481548110151561239d57fe5b9060005260206000200181905550600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016001600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490500381548110151561244257fe5b9060005260206000200154600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018481548110151561249c57fe5b90600052602060002001819055505b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805480919060019003612500919061399b565b50600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805480919060019003612556919061399b565b5050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156125b857600080fd5b6001600960006101000a81548160ff021916908315150217905550565b600260009054906101000a900460ff1681565b600061260d6125f683610f22565b6125ff84612614565b61375290919063ffffffff16565b9050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156126c657600191506126dc565b600090506126d333613670565b80925081935050505b8115156126e857600080fd5b600086511115156126f857600080fd5b8451865114151561270857600080fd5b8351865114151561271857600080fd5b600092505b855183101561278357612776868481518110151561273757fe5b90602001906020020151868581518110151561274f57fe5b90602001906020020151868681518110151561276757fe5b9060200190602002015161104f565b828060010193505061271d565b505050505050565b600080600091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156127f05760019150612806565b600090506127fd33613670565b80925081935050505b81151561281257600080fd5b600260009054906101000a900460ff1615151561282e57600080fd5b6001600260006101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960019054906101000a900460ff1681565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff169050919050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129a05780601f10612975576101008083540402835291602001916129a0565b820191906000526020600020905b81548152906001019060200180831161298357829003601f168201915b505050505081565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a0857600080fd5b6000925060009150612a1984613670565b8093508194505050821515612a2d57600080fd5b60018080549050039050600181815481101515612a4657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600183815481101515612a8057fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600180808054905003815481101515612add57fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001805480919060019003612b1f91906139c7565b5050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b8357600080fd5b600960009054906101000a900460ff16151515612b9f57600080fd5b600082111515612bae57600080fd5b612c0382600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612c5e8260065461365290919063ffffffff16565b6006819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415612d395760019150612d4f565b60009050612d4633613670565b80925081935050505b811515612d5b57600080fd5b600092505b8351831015612d9757612d8a858585815181101515612d7b57fe5b9060200190602002015161376b565b8280600101935050612d60565b5050505050565b60606001805480602002602001604051908101604052809291908181526020018280548015612e2257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612dd8575b5050505050905090565b6000600260009054906101000a900460ff16151515612e4a57600080fd5b612e57338484600161371d565b50612ead82600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461375290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612f4882600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461365290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b606080600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101818054806020026020016040519081016040528092919081815260200182805480156130cf57602002820191906000526020600020905b8154815260200190600101908083116130bb575b505050505091508080548060200260200160405190810160405280929190818152602001828054801561312157602002820191906000526020600020905b81548152602001906001019080831161310d575b5050505050905091509150915091565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156132215760019150613237565b6000905061322e33613670565b80925081935050505b81151561324357600080fd5b6000855111151561325357600080fd5b8351855114151561326357600080fd5b61326d8787612e2c565b50600092505b84518310156132c2576132b587868581518110151561328e57fe5b9060200190602002015186868151811015156132a657fe5b9060200190602002015161104f565b8280600101935050613273565b50505050505050565b600960009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561333957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561337557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008091503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561349957600191506134af565b600090506134a633613670565b80925081935050505b8115156134bb57600080fd5b60001515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff16151514151561351d57600080fd5b6001600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550600192505050919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101828154811015156135d457fe5b906000526020600020015442101561364757600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018281548110151561363557fe5b9060005260206000200154905061364c565b600090505b92915050565b600080828401905083811015151561366657fe5b8091505092915050565b60008060008090505b60018054905081101561370c578373ffffffffffffffffffffffffffffffffffffffff166001828154811015156136ac57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156136ff5760018192509250613717565b8080600101915050613679565b600080809050925092505b50915091565b600061372b85858585613860565b50811561374a5761373b856125e8565b831115151561374957600080fd5b5b949350505050565b600082821115151561376057fe5b818303905092915050565b600080600080925060009150600090505b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805490508110156138435783600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018281548110151561381957fe5b906000526020600020015414156138365760019250809150613843565b808060010191505061377c565b82151561384f57600080fd5b6138598583612181565b5050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561389d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156138d957600080fd5b82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015151561392a57600080fd5b81156139935760001515600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff16151514151561399257600080fd5b5b949350505050565b8154818355818111156139c2578183600052602060002091820191016139c191906139f3565b5b505050565b8154818355818111156139ee578183600052602060002091820191016139ed91906139f3565b5b505050565b613a1591905b80821115613a115760008160009055506001016139f9565b5090565b905600a165627a7a72305820d6cd386057fa5fd8bf1e89678740b21b34fb46d707c4a79fec7785a91cf22b660029

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000002540be4000000000000000000000000000000000000000000000000000000000000000017476c6f62616c2053686172696e6720506c6174666f726d00000000000000000000000000000000000000000000000000000000000000000000000000000000034753500000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): Global Sharing Platform
Arg [1] : symbol_ (string): GSP
Arg [2] : decimals_ (uint8): 18
Arg [3] : supply_ (uint256): 10000000000

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000017
Arg [5] : 476c6f62616c2053686172696e6720506c6174666f726d000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 4753500000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

10377:2403:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4166:8;;;10051:313;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10051:313:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3887:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3887:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3887:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7195:311;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7195:311:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5216:301;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5216:301:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8174:178;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8174:178:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6408:90;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6408:90:0;;;;;;;;;;;;;;;;;;;;;;;5523:504;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5523:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9626:213;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9626:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1904:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1904:232:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4726:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4726:177:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3939:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3939:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10998:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10998:85:0;;;;;;2923:108;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2923:108:0;;;;;;12153:473;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12153:473:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4912:296;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4912:296:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8358:590;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8358:590:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10913:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10913:79:0;;;;;;2618:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2618:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;12632:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12632:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6504:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6504:111:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7512:362;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7512:362:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2809:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2809:106:0;;;;;;701:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;701:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10866:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10866:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6621:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6621:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3912:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3912:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3912:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2142:387;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2142:387:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11813:331;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11813:331:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9410:208;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9410:208:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1531:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1531:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1531:95:0;;;;;;;;;;;;;;;;;6039:355;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6039:355:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9845:200;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9845:200:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;9845:200:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;9845:200:0;;;;;;;;;;;;;;;;;;;6732:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6732:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11379:425;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11379:425:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10828:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10828:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;976:192;;8:9:-1;5:2;;;30:1;27;20:12;5:2;976:192:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4535:185;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4535:185:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10051:313;10112:7;10132:19;10170:9;10154:1;10132:23;;10182:1;10170:13;;10166:162;10189:8;:16;10198:6;10189:16;;;;;;;;;;;;;;;:36;;:43;;;;10185:1;:47;10166:162;;;10267:49;10283:32;10305:6;10313:1;10283:21;:32::i;:::-;10267:11;:15;;:49;;;;:::i;:::-;10253:63;;10234:3;;;;;;;10166:162;;;10345:11;10338:18;;10051:313;;;;;:::o;3887:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7195:311::-;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;7313:3;7302:8;:14;7294:23;;;;;;;;7346:1;7337:6;:10;7329:19;;;;;;;;7360:8;:13;7369:3;7360:13;;;;;;;;;;;;;;;:33;;7399:6;7360:46;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;7360:46:0;;;;;;;;;;;;;;;;;;;;;;7417:8;:13;7426:3;7417:13;;;;;;;;;;;;;;;:21;;7444:8;7417:36;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;7417:36:0;;;;;;;;;;;;;;;;;;;;;;7476:3;7471:27;;;7481:6;7489:8;7471:27;;;;;;;;;;;;;;;;;;;;;;;;7195:311;;;;;:::o;5216:301::-;5297:4;2698:6;;;;;;;;;;;2697:7;2689:16;;;;;;;;5332:1;5322:6;:11;:54;;;;5375:1;5337:4;:16;5342:10;5337:16;;;;;;;;;;;;;;;:24;;:34;5362:8;5337:34;;;;;;;;;;;;;;;;:39;5322:54;5314:63;;;;;;;;5426:6;5389:4;:16;5394:10;5389:16;;;;;;;;;;;;;;;:24;;:34;5414:8;5389:34;;;;;;;;;;;;;;;:43;;;;5470:8;5449:38;;5458:10;5449:38;;;5480:6;5449:38;;;;;;;;;;;;;;;;;;5505:4;5498:11;;5216:301;;;;:::o;8174:178::-;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;8284:1;8249:8;:17;8258:7;8249:17;;;;;;;;;;;;;;;:25;;:36;;;;;:::i;:::-;;8343:1;8296:8;:17;8305:7;8296:17;;;;;;;;;;;;;;;:37;;:48;;;;;:::i;:::-;;8174:178;;;:::o;6408:90::-;6452:7;6479:11;;6472:18;;6408:90;:::o;5523:504::-;5619:4;2698:6;;;;;;;;;;;2697:7;2689:16;;;;;;;;5636:39;5650:5;5657:3;5662:6;5670:4;5636:13;:39::i;:::-;;5705:4;:11;5710:5;5705:11;;;;;;;;;;;;;;;:19;;:31;5725:10;5705:31;;;;;;;;;;;;;;;;5694:6;:42;;5686:51;;;;;;;;5772:31;5796:6;5772:4;:11;5777:5;5772:11;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;5750:4;:11;5755:5;5750:11;;;;;;;;;;;;;;;:19;;:53;;;;5834:29;5856:6;5834:4;:9;5839:3;5834:9;;;;;;;;;;;;;;;:17;;;:21;;:29;;;;:::i;:::-;5814:4;:9;5819:3;5814:9;;;;;;;;;;;;;;;:17;;:49;;;;5910:43;5946:6;5910:4;:11;5915:5;5910:11;;;;;;;;;;;;;;;:19;;:31;5930:10;5910:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;5876:4;:11;5881:5;5876:11;;;;;;;;;;;;;;;:19;;:31;5896:10;5876:31;;;;;;;;;;;;;;;:77;;;;5985:3;5969:28;;5978:5;5969:28;;;5990:6;5969:28;;;;;;;;;;;;;;;;;;6015:4;6008:11;;5523:504;;;;;:::o;9626:213::-;9698:7;9707;9749:8;:16;9758:6;9749:16;;;;;;;;;;;;;;;:36;;9786:3;9749:41;;;;;;;;;;;;;;;;;;9801:8;:16;9810:6;9801:16;;;;;;;;;;;;;;;:24;;9826:3;9801:29;;;;;;;;;;;;;;;;;;9727:104;;;;9626:213;;;;;:::o;1904:232::-;1965:10;1994;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;1978:5;1965:18;;2007:1;1994:14;;2036:17;2049:3;2036:12;:17::i;:::-;2019:34;;;;;;;;2083:5;2082:6;2074:15;;;;;;;;2110:8;2124:3;2110:18;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2110:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1904:232;;;:::o;4726:177::-;4787:4;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;4833:4;4812:25;;:4;:12;4817:6;4812:12;;;;;;;;;;;;;;;:17;;;;;;;;;;;;:25;;;4804:34;;;;;;;;4869:5;4849:4;:12;4854:6;4849:12;;;;;;;;;;;;;;;:17;;;:25;;;;;;;;;;;;;;;;;;4891:4;4884:11;;4726:177;;;;;:::o;3939:21::-;;;;;;;;;;;;;:::o;10998:85::-;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;11070:4;11054:13;;:20;;;;;;;;;;;;;;;;;;10998:85::o;2923:108::-;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;2774:6;;;;;;;;;;;2766:15;;;;;;;;2993:5;2984:6;;:14;;;;;;;;;;;;;;;;;;3014:9;;;;;;;;;;2923:108;;:::o;12153:473::-;12248:4;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;12274:13;;;;;;;;;;;12273:14;12265:23;;;;;;;;12324:4;12309:20;;:3;:20;;;;12301:29;;;;;;;;12364:1;12349:17;;:3;:17;;;;12341:26;;;;;;;;12409:6;12386:4;:11;12391:5;12386:11;;;;;;;;;;;;;;;:19;;;:29;;12378:38;;;;;;;;12459:31;12483:6;12459:4;:11;12464:5;12459:11;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;12437:4;:11;12442:5;12437:11;;;;;;;;;;;;;;;:19;;:53;;;;12521:29;12543:6;12521:4;:9;12526:3;12521:9;;;;;;;;;;;;;;;:17;;;:21;;:29;;;;:::i;:::-;12501:4;:9;12506:3;12501:9;;;;;;;;;;;;;;;:17;;:49;;;;12584:3;12568:28;;12577:5;12568:28;;;12589:6;12568:28;;;;;;;;;;;;;;;;;;12614:4;12607:11;;12153:473;;;;;:::o;4912:296::-;4968:4;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;5003:4;:16;5008:10;5003:16;;;;;;;;;;;;;;;:24;;;4993:6;:34;;4985:43;;;;;;;;5066:36;5095:6;5066:4;:16;5071:10;5066:16;;;;;;;;;;;;;;;:24;;;:28;;:36;;;;:::i;:::-;5039:4;:16;5044:10;5039:16;;;;;;;;;;;;;;;:24;;:63;;;;5127:23;5143:6;5127:11;;:15;;:23;;;;:::i;:::-;5113:11;:37;;;;5166:12;5171:6;5166:12;;;;;;;;;;;;;;;;;;5196:4;5189:11;;4912:296;;;:::o;8358:590::-;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;8464:8;:17;8473:7;8464:17;;;;;;;;;;;;;;;:25;;:32;;;;8458:3;:38;8450:47;;;;;;;;8556:1;8521:8;:17;8530:7;8521:17;;;;;;;;;;;;;;;:25;;:32;;;;:36;8514:3;:43;;8510:319;;;8607:8;:17;8616:7;8607:17;;;;;;;;;;;;;;;:25;;8668:1;8633:8;:17;8642:7;8633:17;;;;;;;;;;;;;;;:25;;:32;;;;:36;8607:63;;;;;;;;;;;;;;;;;;8574:8;:17;8583:7;8574:17;;;;;;;;;;;;;;;:25;;8600:3;8574:30;;;;;;;;;;;;;;;;;:96;;;;8730:8;:17;8739:7;8730:17;;;;;;;;;;;;;;;:37;;8815:1;8768:8;:17;8777:7;8768:17;;;;;;;;;;;;;;;:37;;:44;;;;:48;8730:87;;;;;;;;;;;;;;;;;;8685:8;:17;8694:7;8685:17;;;;;;;;;;;;;;;:37;;8723:3;8685:42;;;;;;;;;;;;;;;;;:132;;;;8510:319;8839:8;:17;8848:7;8839:17;;;;;;;;;;;;;;;:25;;:34;;;;;;;;;;;;:::i;:::-;;8884:8;:17;8893:7;8884:17;;;;;;;;;;;;;;;:37;;:46;;;;;;;;;;;;:::i;:::-;;8358:590;;;;:::o;10913:79::-;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;10979:4;10966:10;;:17;;;;;;;;;;;;;;;;;;10913:79::o;2618:26::-;;;;;;;;;;;;;:::o;12632:139::-;12691:7;12718:45;12740:22;12755:6;12740:14;:22::i;:::-;12718:17;12728:6;12718:9;:17::i;:::-;:21;;:45;;;;:::i;:::-;12711:52;;12632:139;;;:::o;6504:111::-;6560:7;6587:4;:12;6592:6;6587:12;;;;;;;;;;;;;;;:20;;;6580:27;;6504:111;;;:::o;7512:362::-;7762:9;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;7641:1;7628:3;:10;:14;7620:23;;;;;;;;7676:6;:13;7662:3;:10;:27;7654:36;;;;;;;;7723:8;:15;7709:3;:10;:29;7701:38;;;;;;;;7774:1;7762:13;;7758:109;7781:3;:10;7777:1;:14;7758:109;;;7812:43;7824:3;7828:1;7824:6;;;;;;;;;;;;;;;;;;7832;7839:1;7832:9;;;;;;;;;;;;;;;;;;7843:8;7852:1;7843:11;;;;;;;;;;;;;;;;;;7812;:43::i;:::-;7793:3;;;;;;;7758:109;;;7512:362;;;;;;:::o;2809:106::-;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;2698:6;;;;;;;;;;;2697:7;2689:16;;;;;;;;2880:4;2871:6;;:13;;;;;;;;;;;;;;;;;;2900:7;;;;;;;;;;2809:106;;:::o;701:20::-;;;;;;;;;;;;;:::o;10866:33::-;;;;;;;;;;;;;:::o;6621:105::-;6677:4;6701;:12;6706:6;6701:12;;;;;;;;;;;;;;;:17;;;;;;;;;;;;6694:24;;6621:105;;;:::o;3912:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2142:387::-;2206:10;2235;2345:21;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;2219:5;2206:18;;2248:1;2235:14;;2277:17;2290:3;2277:12;:17::i;:::-;2260:34;;;;;;;;2323:5;2315:14;;;;;;;;2387:1;2369:8;:15;;;;:19;2345:43;;2418:8;2427:16;2418:26;;;;;;;;;;;;;;;;;;;;;;;;;;;2400:8;2409:5;2400:15;;;;;;;;;;;;;;;;;;:44;;;;;;;;;;;;;;;;;;2464:8;2491:1;2473:8;:15;;;;:19;2464:29;;;;;;;;;;;;;;;;;;2457:36;;;;;;;;;;;2504:8;:17;;;;;;;;;;;;:::i;:::-;;2142:387;;;;:::o;11813:331::-;11869:4;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;11895:10;;;;;;;;;;;11894:11;11886:20;;;;;;;;11934:1;11925:6;:10;11917:19;;;;;;;;11974:36;12003:6;11974:4;:16;11979:10;11974:16;;;;;;;;;;;;;;;:24;;;:28;;:36;;;;:::i;:::-;11947:4;:16;11952:10;11947:16;;;;;;;;;;;;;;;:24;;:63;;;;12035:23;12051:6;12035:11;;:15;;:23;;;;:::i;:::-;12021:11;:37;;;;12095:10;12074:40;;12091:1;12074:40;;;12107:6;12074:40;;;;;;;;;;;;;;;;;;12132:4;12125:11;;11813:331;;;:::o;9410:208::-;9507:9;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;9519:1;9507:13;;9503:108;9526:8;:15;9522:1;:19;9503:108;;;9562:37;9582:3;9587:8;9596:1;9587:11;;;;;;;;;;;;;;;;;;9562:19;:37::i;:::-;9543:3;;;;;;;9503:108;;;9410:208;;;;;:::o;1531:95::-;1575:9;1610:8;1603:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1531:95;:::o;6039:355::-;6116:4;2698:6;;;;;;;;;;;2697:7;2689:16;;;;;;;;6133:44;6147:10;6159:3;6164:6;6172:4;6133:13;:44::i;:::-;;6217:36;6246:6;6217:4;:16;6222:10;6217:16;;;;;;;;;;;;;;;:24;;;:28;;:36;;;;:::i;:::-;6190:4;:16;6195:10;6190:16;;;;;;;;;;;;;;;:24;;:63;;;;6284:29;6306:6;6284:4;:9;6289:3;6284:9;;;;;;;;;;;;;;;:17;;;:21;;:29;;;;:::i;:::-;6264:4;:9;6269:3;6264:9;;;;;;;;;;;;;;;:17;;:49;;;;6352:3;6331:33;;6340:10;6331:33;;;6357:6;6331:33;;;;;;;;;;;;;;;;;;6382:4;6375:11;;6039:355;;;;:::o;9845:200::-;9904:9;9915;9965:8;:16;9974:6;9965:16;;;;;;;;;;;;;;;:36;;10012:8;:16;10021:6;10012:16;;;;;;;;;;;;;;;:24;;9947:90;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9845:200;;;:::o;6732:139::-;6806:7;6833:4;:12;6838:6;6833:12;;;;;;;;;;;;;;;:20;;:30;6854:8;6833:30;;;;;;;;;;;;;;;;6826:37;;6732:139;;;;:::o;11379:425::-;11672:9;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;11545:1;11524:11;:18;:22;11516:31;;;;;;;;11588:8;:15;11566:11;:18;:37;11558:46;;;;;;;;11625:22;11634:3;11639:7;11625:8;:22::i;:::-;;11684:1;11672:13;;11668:119;11691:11;:18;11687:1;:22;11668:119;;;11730:45;11742:3;11747:11;11759:1;11747:14;;;;;;;;;;;;;;;;;;11763:8;11772:1;11763:11;;;;;;;;;;;;;;;;;;11730;:45::i;:::-;11711:3;;;;;;;11668:119;;;11379:425;;;;;;;:::o;10828:30::-;;;;;;;;;;;;;:::o;976:192::-;944:5;;;;;;;;;;;930:19;;:10;:19;;;922:28;;;;;;;;1077:1;1057:22;;:8;:22;;;;1049:31;;;;;;;;1124:8;1096:37;;1117:5;;;;;;;;;;;1096:37;;;;;;;;;;;;1152:8;1144:5;;:16;;;;;;;;;;;;;;;;;;976:192;:::o;4535:185::-;4594:4;1280:10;1393;1293:5;1280:18;;1321:10;1312:19;;:5;;;;;;;;;;;:19;;;1309:166;;;1356:4;1348:12;;1309:166;;;1406:1;1393:14;;1439:24;1452:10;1439:12;:24::i;:::-;1422:41;;;;;;;;1309:166;1493:5;1485:14;;;;;;;;4640:5;4619:26;;:4;:12;4624:6;4619:12;;;;;;;;;;;;;;;:17;;;;;;;;;;;;:26;;;4611:35;;;;;;;;4686:4;4666;:12;4671:6;4666:12;;;;;;;;;;;;;;;:17;;;:24;;;;;;;;;;;;;;;;;;4708:4;4701:11;;4535:185;;;;;:::o;7890:272::-;7973:7;8002:8;:16;8011:6;8002:16;;;;;;;;;;;;;;;:24;;8027:6;8002:32;;;;;;;;;;;;;;;;;;7996:3;:38;7993:162;;;8058:8;:16;8067:6;8058:16;;;;;;;;;;;;;;;:36;;8095:6;8058:44;;;;;;;;;;;;;;;;;;8051:51;;;;7993:162;8142:1;8135:8;;7890:272;;;;;:::o;523:147::-;581:7;601:9;617:1;613;:5;601:17;;641:1;636;:6;;629:14;;;;;;661:1;654:8;;523:147;;;;;:::o;1638:260::-;1695:4;1701;1723:6;1732:1;1723:10;;1718:145;1740:8;:15;;;;1736:1;:19;1718:145;;;1796:3;1781:18;;:8;1790:1;1781:11;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;1777:75;;;1828:4;1834:1;1820:16;;;;;;1777:75;1757:3;;;;;;;1718:145;;;1881:5;1888:1;1873:17;;;;;;;1638:260;;;;;:::o;11098:273::-;11205:4;11222:51;11242:5;11249:3;11254:6;11262:10;11222:19;:51::i;:::-;;11287:10;11284:80;;;11332:19;11345:5;11332:12;:19::i;:::-;11322:6;:29;;11314:38;;;;;;;;11284:80;11098:273;;;;;;:::o;394:123::-;452:7;484:1;479;:6;;472:14;;;;;;508:1;504;:5;497:12;;394:123;;;;:::o;8954:450::-;9036:13;9068;9100:9;9052:5;9036:21;;9084:1;9068:17;;9112:1;9100:13;;9096:227;9119:8;:13;9128:3;9119:13;;;;;;;;;;;;;;;:21;;:28;;;;9115:1;:32;9096:227;;;9200:8;9172;:13;9181:3;9172:13;;;;;;;;;;;;;;;:21;;9194:1;9172:24;;;;;;;;;;;;;;;;;;:36;9169:143;;;9240:4;9229:15;;9271:1;9263:9;;9291:5;;9169:143;9149:3;;;;;;;9096:227;;;9341:8;9333:17;;;;;;;;9363:33;9385:3;9390:5;9363:21;:33::i;:::-;8954:450;;;;;:::o;4194:333::-;4301:4;4341;4326:20;;:3;:20;;;;4318:29;;;;;;;;4381:1;4366:17;;:3;:17;;;;4358:26;;;;;;;;4426:6;4403:4;:11;4408:5;4403:11;;;;;;;;;;;;;;;:19;;;:29;;4395:38;;;;;;;;4447:10;4444:76;;;4502:5;4482:25;;:4;:11;4487:5;4482:11;;;;;;;;;;;;;;;:16;;;;;;;;;;;;:25;;;4474:34;;;;;;;;4444:76;4194:333;;;;;;:::o;10377:2403::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

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