ETH Price: $3,218.71 (+3.25%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer134222182021-10-15 10:54:541203 days ago1634295294IN
Fake_Phishing328068
0 ETH0.00284997112.50060552
Transfer134221412021-10-15 10:35:321203 days ago1634294132IN
Fake_Phishing328068
0 ETH0.0022009386.88034973
Transfer91843942019-12-30 5:30:331858 days ago1577683833IN
Fake_Phishing328068
0 ETH0.000221148
Transfer91843892019-12-30 5:28:511858 days ago1577683731IN
Fake_Phishing328068
0 ETH0.000411488
Reward91785452019-12-29 1:30:021859 days ago1577583002IN
Fake_Phishing328068
0 ETH0.003869510
Reward91747822019-12-28 7:34:321860 days ago1577518472IN
Fake_Phishing328068
0 ETH0.0031326410
Reward91383402019-12-21 1:41:001867 days ago1576892460IN
Fake_Phishing328068
0 ETH0.003869510
Reward91364032019-12-20 16:20:491867 days ago1576858849IN
Fake_Phishing328068
0 ETH0.0031326410
Reward91313132019-12-19 15:50:221868 days ago1576770622IN
Fake_Phishing328068
0 ETH0.0002489210
Reward91287932019-12-19 3:42:501869 days ago1576726970IN
Fake_Phishing328068
0 ETH0.0031906110
Reward91077232019-12-14 23:54:061873 days ago1576367646IN
Fake_Phishing328068
0 ETH0.0034617910
Reward90992302019-12-13 9:01:301875 days ago1576227690IN
Fake_Phishing328068
0 ETH0.0031326410
Reward90972902019-12-13 0:39:371875 days ago1576197577IN
Fake_Phishing328068
0 ETH0.003869510
Reward90631982019-12-06 23:54:581881 days ago1575676498IN
Fake_Phishing328068
0 ETH0.00022710
Reward90631952019-12-06 23:54:461881 days ago1575676486IN
Fake_Phishing328068
0 ETH0.0023898710
Reward90518422019-12-04 23:23:191883 days ago1575501799IN
Fake_Phishing328068
0 ETH0.0018807210
Reward90465172019-12-04 0:26:151884 days ago1575419175IN
Fake_Phishing328068
0 ETH0.0026415810
Reward90123582019-11-27 23:09:161890 days ago1574896156IN
Fake_Phishing328068
0 ETH0.0018807210
Reward89897542019-11-24 1:42:441894 days ago1574559764IN
Fake_Phishing328068
0 ETH0.00022710
Reward89897542019-11-24 1:42:441894 days ago1574559764IN
Fake_Phishing328068
0 ETH0.0023898710
Reward89863092019-11-23 12:04:411895 days ago1574510681IN
Fake_Phishing328068
0 ETH0.0026415810
Reward89688362019-11-20 14:22:541897 days ago1574259774IN
Fake_Phishing328068
0 ETH0.0018807210
Reward89471402019-11-16 23:11:241901 days ago1573945884IN
Fake_Phishing328068
0 ETH0.00022710
Reward89471382019-11-16 23:10:401901 days ago1573945840IN
Fake_Phishing328068
0 ETH0.0023898710
Reward89410242019-11-15 22:44:321902 days ago1573857872IN
Fake_Phishing328068
0 ETH0.00022710
View all transactions

Latest 20 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
80048182019-06-22 1:12:432049 days ago1561165963
Fake_Phishing328068
0.3 ETH
78705972019-06-01 0:37:552070 days ago1559349475
Fake_Phishing328068
0.1 ETH
78668842019-05-31 11:02:092071 days ago1559300529
Fake_Phishing328068
0.7 ETH
78648482019-05-31 3:22:302071 days ago1559272950
Fake_Phishing328068
2 ETH
78544262019-05-29 12:13:492073 days ago1559132029
Fake_Phishing328068
0.77 ETH
78537602019-05-29 9:42:352073 days ago1559122955
Fake_Phishing328068
0.381 ETH
78347442019-05-26 10:45:212076 days ago1558867521
Fake_Phishing328068
4.49 ETH
78276752019-05-25 8:15:262077 days ago1558772126
Fake_Phishing328068
17 ETH
77714932019-05-16 13:14:472085 days ago1558012487
Fake_Phishing328068
4.5 ETH
77509022019-05-13 8:11:192089 days ago1557735079
Fake_Phishing328068
5.95 ETH
77507382019-05-13 7:33:182089 days ago1557732798
Fake_Phishing328068
1.44 ETH
77487372019-05-12 23:56:182089 days ago1557705378
Fake_Phishing328068
5.89 ETH
77485172019-05-12 23:05:252089 days ago1557702325
Fake_Phishing328068
5.56 ETH
77457282019-05-12 12:49:562089 days ago1557665396
Fake_Phishing328068
6 ETH
77449102019-05-12 9:34:092090 days ago1557653649
Fake_Phishing328068
5.69 ETH
77437482019-05-12 5:18:462090 days ago1557638326
Fake_Phishing328068
0.359 ETH
77419862019-05-11 22:49:512090 days ago1557614991
Fake_Phishing328068
6.1 ETH
77402512019-05-11 16:20:132090 days ago1557591613
Fake_Phishing328068
5.43 ETH
76415052019-04-26 6:59:002106 days ago1556261940
Fake_Phishing328068
1.3 ETH
74942472019-04-03 8:24:252129 days ago1554279865
Fake_Phishing328068
0.001 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
USDT

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-03-29
*/

pragma solidity ^ 0.4.24;

// ----------------------------------------------------------------------------
// 安全的加减乘除
// ----------------------------------------------------------------------------
library SafeMath {
	function add(uint a, uint b) internal pure returns(uint c) {
		c = a + b;
		require(c >= a);
	}

	function sub(uint a, uint b) internal pure returns(uint c) {
		require(b <= a);
		c = a - b;
	}

	function mul(uint a, uint b) internal pure returns(uint c) {
		c = a * b;
		require(a == 0 || c / a == b);
	}

	function div(uint a, uint b) internal pure returns(uint c) {
		require(b > 0);
		c = a / b;
	}
}

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md
// ----------------------------------------------------------------------------
contract ERC20Interface {
	function totalSupply() public constant returns(uint);

	function balanceOf(address tokenOwner) public constant returns(uint balance);

	function allowance(address tokenOwner, address spender) public constant returns(uint remaining);

	function transfer(address to, uint tokens) public returns(bool success);

	function approve(address spender, uint tokens) public returns(bool success);

	function transferFrom(address from, address to, uint tokens) public returns(bool success);

	event Transfer(address indexed from, address indexed to, uint tokens);
	event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

contract EttToken{
    function tokenAdd(address user,uint tokens) public returns(bool success);
    function tokenSub(address user,uint tokens) public returns(bool success);
    function balanceOf(address tokenOwner) public constant returns(uint balance);
}

// ----------------------------------------------------------------------------
// 核心类
// ----------------------------------------------------------------------------

contract USDT is ERC20Interface{
	using SafeMath for uint;

	string public symbol;
	string public name;
	uint8 public decimals;
	uint _totalSupply;//总发行


//	uint public sellPrice; //出售价格 1枚代币换多少以太 /1000
	uint public buyPrice; //购买价格 多少以太可购买1枚代币 /1000

	
	uint public transper; //转账手续费 /3%
	
	bool public actived;

	uint public teamper1;//团队奖% 
	uint public teamper2;//团队奖% 
	
	//uint public sellper;//15
    uint public sysinteth;

	mapping(address => uint) balances;//总计
	//mapping(address => uint) myeth;//本金
//	mapping(address => uint) froeth;//冻结
	//mapping(address => uint) used;
	mapping(address => mapping(address => uint)) allowed;

	/* 冻结账户 */
	mapping(address => bool) public frozenAccount;

	//上家地址
	mapping(address => address) public fromaddr;
	//管理员帐号
	mapping(address => bool) public admins;
	// 记录各个账户的增量时间
	mapping(address => uint) public crontime;
	// 挖矿次数
//	mapping(address => uint) public mintnum;
	uint[] public permans;
	mapping(address => uint) public teamget;

	struct sunsdata{
		mapping(uint => uint) n;	
		mapping(uint => uint) n_effective;
	}
	
    mapping(address => sunsdata)  suns;
    address public intertoken;
    modifier onlyInterface {
        require(intertoken != address(0));
		require(msg.sender == intertoken);
		_;
	}
	/* 通知 */
	event FrozenFunds(address target, bool frozen);
	address public owner;
	address public financer;
    modifier onlyOwner {
		require(msg.sender == owner);
		_;
	}
	modifier  onlyFinancer {
		require(msg.sender == financer);
		_;
	}
	
	struct record{
			//当前可提现本金
			uint can_draw_capital;
			//当前已投资本金
			uint not_draw_capital;
			//总的应释放利润
			uint total_profit;
			//总的已释放利润
			uint  releasd_profit;
			//投资时间
			uint last_investdate;
			uint history_releasd_profit;
		}
		mapping(address=>record) public user_inverst_record;
		
		struct plan{
			uint account;
			uint times;
		}
		mapping(uint => plan) public plans;
		
		struct node_profit{
				uint menber_counts;
				uint percent;
		}
		mapping(uint => node_profit) public node_profits;
	//	uint public min_investment;
				

		uint  public per;
		uint public OnceWidrawTime;
		mapping(address => bool) _effective_son;
		struct quit_conf{
			uint  interval;
			uint rate1;
			uint rate2;
		}
		quit_conf public quit_config;
		uint teamPrice1;
		uint teamPrice2;
		
        mapping(address=>bool) public isleader;
        mapping(address =>uint) public leader_eth;
        
        mapping(address=>uint) public userineth;
		address [] public leaders;
		EttToken public ett;
		uint public ettRate;
		uint generation;
		uint generation_team;
		mapping(address=>address) public ethtop;
	// ------------------------------------------------------------------------
	// Constructor
	// ------------------------------------------------------------------------
	constructor(EttToken _ettAddress,address [] _supernodes) public {

		symbol = "USDT";
		name = "USDT Coin";
		decimals = 18;
		_totalSupply = 1000000000 ether;
		buyPrice = 138 ether; //购买价格 1eth can buy how much mt
		

		transper = uint(0);//转账手续费 /100

		teamper1 = 10;//团队奖% /100
		teamper2 = 20;//团队奖% /100

		//sellper = 85;// /100
		actived = true;


        permans = [40,10,12,6];
        //permans = [3,3,2,2];//test
		balances[this] = _totalSupply;
		owner = msg.sender;
		financer = msg.sender;
		
        
		per = 1;
		plans[1].account = 7000 ether;
		plans[1].times = 2 ;
		plans[2].account = 35000 ether;
		plans[2].times = 3 ;
		plans[3].account = 70000 ether;
		plans[3].times = 4 ;
		plans[4].account = 210000 ether;
		plans[4].times = 5 ;
	
		for(uint i=1;i<=16;i++){
			node_profits[i].menber_counts = i;
			if(i==1){
				node_profits[i].percent = 100;
			}else if(i==2){
				node_profits[i].percent = 20;
			}else if(i==3){
				node_profits[i].percent = 15;
			}else if(i == 4){
				node_profits[i].percent = 10;
			}else{
				node_profits[i].percent = 5;
			}
		}
		
		OnceWidrawTime = 24 hours;
		//OnceWidrawTime = 10 seconds;
		//min_investment = plans[1].account ;
		//quit_config.interval = 30 days
		//quit_config.interval = 30 seconds;
		quit_config.interval = 30 days;
		quit_config.rate1 = 5;
		quit_config.rate2 = 1;
		teamPrice1 = 100000 ether;
		teamPrice2 = 500000 ether;
		ettRate = 70 ether;
		generation = 16;
		generation_team = 8;
		ett = _ettAddress;
		for(uint m;m<_supernodes.length;m++){
		    addLeader(_supernodes[m]);
		}
		
		emit Transfer(address(0), owner, _totalSupply);

	}

	/* 获取用户金额 */
	function balanceOf(address user) public view returns(uint balance) {
		return balances[user];
	}
	function ethbalance(address user) public view returns(uint _balance) {
	    
		_balance = address(user).balance;
	}

	/*
	 * 获取用户的挖矿时间
	 * @param {Object} address
	 */
	function getaddtime(address _addr) public view returns(uint) {
		if(crontime[_addr] < 2) {
			return(0);
		}else{
		    return(crontime[_addr]);
		}
		
	}
	function getmy(address user) public view returns(
	    uint myblance,
	    uint meth,
	    uint mytime,
	    uint bprice,
	    uint tmoney,
	    uint myineth,
	    bool _isleader,
	    uint _leader_eth,
	    uint [10] _inverst
	    /*
	    uint _can_draw_capital,
	    uint _not_draw_capital,
	    uint _last_investdate,
	    uint _total_profit,
	    uint _releasd_profit,
	    uint _history_releasd_profit
	    */
	){
	    address _user = user;
	    myblance = balances[_user];//0
	    meth = ethbalance(_user);//2
	    mytime = crontime[_user];//5
	    bprice = buyPrice;//6
	    tmoney = balances[this];//9
	    myineth = userineth[_user];
	    _isleader = isleader[_user];
	    _leader_eth = leader_eth[_user];
	    
	    _inverst[0]=user_inverst_record[_user].can_draw_capital;
	    _inverst[1]=user_inverst_record[_user].last_investdate;
	    _inverst[2]=user_inverst_record[_user].not_draw_capital;
	    _inverst[3]=user_inverst_record[_user].total_profit;
	    _inverst[4]=user_inverst_record[_user].releasd_profit;
	    _inverst[5] = user_inverst_record[_user].history_releasd_profit;
	    _inverst[6] = ethbalance(_user);
	    _inverst[7] = getquitfee(_user);
	    _inverst[8] = ettRate;
	    _inverst[9] = getettbalance(_user);
	    /*
	    _can_draw_capital=user_inverst_record[_user].can_draw_capital;
	    _last_investdate=user_inverst_record[_user].last_investdate;
	    _not_draw_capital=user_inverst_record[_user].not_draw_capital;
	    _total_profit=user_inverst_record[_user].total_profit;
	    _releasd_profit=user_inverst_record[_user].releasd_profit;
	    _history_releasd_profit = user_inverst_record[_user].history_releasd_profit;
	    */
	}
	
	function setRwardGeneration(uint _generation,uint _generation_team) public onlyOwner returns(bool){
	    if(_generation_team>1&&_generation>1&&_generation<=16){
	        generation = _generation;
	        generation_team = _generation_team;
	        return true;
	    }else{
	        return false;
	    }
	}
	
	function getRwardGeneration() public view onlyOwner returns(uint _generation,uint _generation_team){
	    _generation = generation;
	    _generation_team = generation_team;
	}
	
	function geteam(address _user) public view returns(
	    
	    uint nn1,//0
	    uint nn2,//1
	    uint n_effective1,
	    uint n_effective2,
	    
	    uint [16]  n,
	    uint [16] n_effective,
	    uint ms,//6
	    uint tm,//7
	    uint lid//11
	){
	    
	    nn1 = suns[_user].n[1];
	    nn2 = suns[_user].n[2];
	    n_effective1 = suns[_user].n_effective[1];
	    n_effective2 = suns[_user].n_effective[2];
        
        for(uint i;i<16;i++){
            
            n[i] = suns[_user].n[i+1];
            n_effective[i] = suns[_user].n_effective[i+1];
        }
	    ms = teamget[_user];
	    tm = getaddtime(_user);


	    if(suns[_user].n_effective[2] >= permans[2] && suns[_user].n_effective[1] >= permans[3]){
	        lid = 1;
	    }
	    if(suns[_user].n_effective[2] >= permans[0] && suns[_user].n_effective[1] >= permans[1]){
	        lid = 2;
	    }
	}
	
	

	function getsys() public view returns(
	    uint tmoney,//0
	    uint _sysinteth
	   
	){
	    tmoney = _totalSupply.sub(balances[this]);
	    _sysinteth = sysinteth;
	    
	}
    function _transfer(address from, address to, uint tokens) private returns(bool success) {
        require(!frozenAccount[from]);
		require(!frozenAccount[to]);
		require(actived == true);
		
		uint addper = tokens*transper/100;

		uint allmoney = tokens + addper;
		require(balances[from] >= allmoney);
		require(tokens > 0 && tokens < _totalSupply);
		// 防止转移到0x0, 用burn代替这个功能
        require(to != 0x0);
		require(from != to);
		// 将此保存为将来的断言, 函数最后会有一个检验103 - 3 + 10
        uint previousBalances = balances[from] - addper + balances[to];
		//如果用户没有上家
		if(fromaddr[to] == address(0) && fromaddr[from] != to) {
			//指定上家地址
			fromaddr[to] = from;
			address top = fromaddr[to];
			
			
			if(isleader[ethtop[top]]){
			    ethtop[to] = ethtop[top];
			}
			if(isleader[top] ){
			    ethtop[to] = top;
			}
			
			
			address _to = to;
			for(uint i = 1;i<=16;i++){
				if(top != address(0) && top !=_to){
					suns[top].n[i] += 1;
					_to = top;
					top = fromaddr[top];
					
					continue;
				}else{
				    break;    
				}
				
			}
			
		} 
		
		balances[from] = balances[from].sub(allmoney);
		balances[this] = balances[this].add(addper);
		balances[to] = balances[to].add(tokens);
		emit Transfer(from, this, addper);
		emit Transfer(from, to, tokens);
		// 断言检测, 不应该为错
        assert(balances[from] + balances[to] == previousBalances);//90 10
		return true;
    }
	/*
	 * 用户转账
	 * @param {Object} address
	 */
	function transfer(address to, uint tokens) public returns(bool success) {
		_transfer(msg.sender, to, tokens);
		success = true;
	}
    function intertransfer(address from, address to, uint tokens) public onlyInterface returns(bool success) {
		_transfer(from, to, tokens);
		success = true;
	}
	/*
	 * 获取上家地址
	 * @param {Object} address
	 */
	function getfrom(address _addr) public view returns(address) {
		return(fromaddr[_addr]);
	}

	function approve(address spender, uint tokens) public returns(bool success) {
	    require(tokens > 1 && tokens < _totalSupply);
	    require(balances[msg.sender] >= tokens);
		allowed[msg.sender][spender] = tokens;
		emit Approval(msg.sender, spender, tokens);
		return true;
	}
	/*
	 * 授权转账
	 * @param {Object} address
	 */
	function transferFrom(address from, address to, uint tokens) public returns(bool success) {
		require(actived == true);
		require(!frozenAccount[from]);
		require(!frozenAccount[to]);
		require(tokens > 1 && tokens < _totalSupply);
		require(balances[from] >= tokens);
		balances[from] = balances[from].sub(tokens);
		allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
		balances[to] = balances[to].add(tokens);
		emit Transfer(from, to, tokens);
		return true;
	}

	/*
	 * 获取授权信息
	 * @param {Object} address
	 */
	function allowance(address tokenOwner, address spender) public view returns(uint remaining) {
		return allowed[tokenOwner][spender];
	}



	/// 冻结 or 解冻账户
	function freezeAccount(address target, bool freeze) public onlyOwner{
		frozenAccount[target] = freeze;
		emit FrozenFunds(target, freeze);
	}
	
	/*
	 * 系统设置
	 * @param {Object} uint
	 	
	 */
	function setconf(
    	uint _per,
    	uint _newOnceWidrawTime, 
    	uint _newBuyPrice,
    	uint _ettRate
    ) public onlyOwner{
        require(_per>0);
        require(ettRate>0);
		per = _per;
		OnceWidrawTime = _newOnceWidrawTime;
		buyPrice = _newBuyPrice;
		ettRate = _ettRate;
	}
	
	
	// * 获取系统设置
	 
	function getconf() public view returns(
	    uint _per,
	    uint _newOnceWidrawTime, 
    	uint _newBuyPrice,
    	uint _ettRate) 
    {
		 _per = per;
		 _newOnceWidrawTime = OnceWidrawTime;
		 _newBuyPrice = buyPrice;
		 _ettRate = ettRate;
	}
	
	function setother(
    	uint _transper,
    	uint _quit_interval,
    	uint _quit_rate1,
    	uint _quit_rate2
	) public onlyOwner{
	    transper = _transper;
		quit_config = quit_conf(_quit_interval,_quit_rate1,_quit_rate2);
	}
	
	function getquitfee(address _user) public view returns(uint ){
	    uint _fee;
	    //require(actived == true&&!frozenAccount[msg.sender]);
		if (user_inverst_record[_user].can_draw_capital > 0){
		    uint interval = now.sub(user_inverst_record[_user].last_investdate);
		    uint rate = quit_config.rate2;
		    if(interval<quit_config.interval){
			    rate = quit_config.rate1;
		    }
		    uint fee = user_inverst_record[_user].can_draw_capital*rate/100;
		}
		_fee = fee;
		return _fee;

	}
	
	function getother() public view returns(
	    uint _onceWidrawTime, 
    	uint newBuyPrice,
    	uint _transper,
    	uint _quit_interval,
    	uint _quit_rate1,
    	uint _quit_rate2
	){
	    _onceWidrawTime = OnceWidrawTime;//0
		newBuyPrice = buyPrice;//1
		_transper = transper;
		_quit_interval = quit_config.interval;
		_quit_rate1 = quit_config.rate1;
		_quit_rate2 = quit_config.rate2;
	}
	
	function setNodeProfit(uint _node,uint _members,uint _percert) public  onlyOwner returns(bool){
	    //require(_node<=16&&_node>=1);
	    require(_node>=1);
	    require(_members>0&&_percert>0&&_percert<=100);
	    node_profits[_node] = node_profit(_members,_percert);
	    return true;
	}
	function setPlan(uint _plan,uint _account,uint _times) public onlyOwner returns(bool){
	    require(_plan<=4&&_plan>=1);
	    require(_account>0&&_times>0);
	    plans[_plan] = plan(_account,_times);
	    
	    return true;
	}
	function getPlan(uint _plan) public view returns(uint _account,uint _times){
	    require(_plan>0 && _plan <=4);
	    _account=plans[_plan].account;
	    _times = plans[_plan].times;
	}
	function getNodeProfit(uint _node) public view returns(uint _members,uint _percert){
	    require(_node>0 && _node <=16);
	    _members = node_profits[_node].menber_counts;
	    _percert = node_profits[_node].percent;
	}
	
	function setsysteam(
        uint _newteamPrice1,
        uint _newteamPrice2,
    	uint teamper1s,
    	uint teamper2s,
    	uint t1,
    	uint t2,
    	uint t3,
    	uint t4
	) public onlyOwner{
        teamPrice1=_newteamPrice1;
        teamPrice2=_newteamPrice2;
	    teamper1 = teamper1s;
		teamper2 = teamper2s;
		permans = [t1,t2,t3,t4];
	}
	function getsysteam() public view returns(
        uint teamprice1,
        uint teamprice2,
    	uint teamper1s,
    	uint teamper2s,
    	uint t1,
    	uint t2,
    	uint t3,
    	uint t4
	){
        teamprice1 = teamPrice1;
        teamprice2 = teamPrice2;
		teamper1s = teamper1;//4
		teamper2s = teamper2;//5
		t1 = permans[0];//6
		t2 = permans[1];//7
		t3 = permans[2];//8
		t4 = permans[3];//9
	}
	/*
	 * 设置是否开启
	 * @param {Object} bool
	 */
	function setactive(bool tags) public onlyOwner {
		actived = tags;
	}

	function setadmin(address adminaddr) onlyOwner public {
	    require(adminaddr != owner && adminaddr != address(0));
		owner = adminaddr;
	}
	function setfinancer(address financeraddr) onlyOwner public {
		financer = financeraddr;
	}
	/*
	 * 获取总发行
	 */
	function totalSupply() public view returns(uint) {
		return _totalSupply;
	}
	function addusermoney(address target, uint256 mintedAmount) private{
	    require(!frozenAccount[target]);
		require(actived == true);
        require(balances[this] > mintedAmount);
		balances[target] = balances[target].add(mintedAmount);
		balances[this] = balances[this].sub(mintedAmount);
		emit Transfer(this, target, mintedAmount);
	}
	function subusermoney(address target, uint256 mintedAmount) private{
	    require(!frozenAccount[target]);
		require(actived == true);
        require(balances[target] > mintedAmount);
		balances[target] = balances[target].sub(mintedAmount);
		balances[this] = balances[this].add(mintedAmount);
		emit Transfer( target,this, mintedAmount);
	}
	/*
	 * 向指定账户拨发资金
	 * @param {Object} address
	 */
	function adduser(address target, uint256 mintedAmount) public onlyFinancer{
		addusermoney(target, mintedAmount);
	}
	function subuser(address target, uint256 mintedAmount) public onlyFinancer{
		subusermoney(target, mintedAmount);
	}
	/*
	function interadduser(address target, uint256 mintedAmount) public onlyInterface{
		addusermoney(target, mintedAmount);
	}
	function intersubuser(address target, uint256 mintedAmount) public onlyInterface{
		subusermoney(target, mintedAmount);
	}
	*/
	
	function setteam(address user, uint amount) private returns(bool) {
		require(amount >0);
		teamget[user] += amount;
	    if(suns[user].n_effective[2] >= permans[2] && suns[user].n_effective[1] >= permans[3]){
	        //teamget[user] += amount;
	        uint chkmoney = teamPrice1;
	        uint sendmoney = teamget[user]*teamper1/100;
	        if(suns[user].n_effective[2] >= permans[0] && suns[user].n_effective[1] >= permans[1]){
	            chkmoney = teamPrice2;
	            sendmoney = teamget[user]*teamper2/100;
	        }
	        if(teamget[user] >= chkmoney) {
	        	_update_user_inverst(user,sendmoney);
	        	teamget[user] = uint(0);
	        	
	        }
	    }
	    return(true);
	}	
	


	function _reset_user_inverst(address user) private returns(bool){
			user_inverst_record[user].can_draw_capital = uint(0);
			user_inverst_record[user].not_draw_capital = uint(0);
			user_inverst_record[user].releasd_profit = uint(0);
			//user_inverst_record[user].last_investdate = uint(0);
			user_inverst_record[user].total_profit = uint(0);
			crontime[user]=uint(0);
			return(true);
	}
	function _update_user_inverst(address user,uint rewards) private returns(uint){
	    
		require(rewards >0);
		uint _mint_account;
		if(user_inverst_record[user].not_draw_capital==uint(0)){
		    return _mint_account;
		}
		/*剩余可释放*/
		uint releasable = user_inverst_record[user].total_profit.sub(user_inverst_record[user].releasd_profit);
		if(releasable<=rewards){
			_reset_user_inverst(user);
			_mint_account = releasable;
		}
		else{
			/*
				修改可提现本金
			*/
			_mint_account = rewards;
			if(user_inverst_record[user].can_draw_capital>0){
				if(user_inverst_record[user].can_draw_capital>rewards){
					user_inverst_record[user].can_draw_capital=user_inverst_record[user].can_draw_capital.sub(rewards);
				}
				else{
					user_inverst_record[user].can_draw_capital = uint(0);
				}
			}
			/*
				修改已释放利润
			*/
			user_inverst_record[user].releasd_profit += _mint_account;
		}
		require(balances[this]>= _mint_account);
		user_inverst_record[user].history_releasd_profit += _mint_account;
		balances[user] += _mint_account;
		balances[this] -= _mint_account;
		emit Transfer(this, user, _mint_account);
		return _mint_account;
	}
	
	function hasReward(address _user)public view returns(bool){
	    if(crontime[_user] <= now - OnceWidrawTime && crontime[_user]!=0){
	        return true;
	    }
	    else{
	        return false;
	    }
	}
	
	function reward() public returns(bool){
	    require(actived == true&&!frozenAccount[msg.sender]);
		address user = msg.sender;
		require(crontime[user] <= now - OnceWidrawTime && crontime[user]!=0);
		/*
		静态
		*/
		uint rewards = user_inverst_record[user].not_draw_capital*per/1000;		
		/*挖矿数量*/
		uint _mint_account = _update_user_inverst(user,rewards);

		
		/*
			动态
		*/
		address  top = fromaddr[user];
		address _user = user;
	 	for(uint i=1;i<=generation;i++){
	 			if(top != address(0) && top != _user){
	 				if(suns[top].n_effective[1]>=node_profits[i].menber_counts){
	 					uint upmoney = _mint_account*node_profits[i].percent/100;
	 					//settop(top, upmoney);
	 					
	 					_update_user_inverst(top,upmoney);
	 					//setteam(top,_mint_account);
	 				}
	 				_user = top;
	 				top = fromaddr[top];
	 				
	 				continue;
                }
                 break;
	 	}
	 	//团队业绩统计
	 	_user = user;
	 	top = fromaddr[user];
	 	for(uint n=1;n<=generation_team;n++){
	 		if(top != address(0) && top != _user){
	 			setteam(top,_mint_account);
	 			_user = top;
	 			top = fromaddr[top];
	 			continue;
	 		}
	 		break;
	 	}
	 	
	 			/*修改下次提现时间*/

		if(crontime[user]>uint(0)){
		    crontime[user] = now + OnceWidrawTime;
		}
		return true;
	}
	
	/*
	 * 用户参与挖矿
	 */

	 function mint(uint _tokens) public {
	 		require(actived == true&&!frozenAccount[msg.sender]);
	 		address user = msg.sender;
  	 		require(_tokens>=plans[1].account && balances[user]>=_tokens);
	 		require(!frozenAccount[user]);
			
			/*16代以内有效用户设置,可以改成N代*/
			address top = fromaddr[user];
			address _user = user;
			for(uint n=1;n<=16;n++){	
				if(top != address(0) && top !=_user){
					if(!_effective_son[user] && n==1){
						++suns[top].n_effective[n];
						_effective_son[user] = true;
						top = fromaddr[top];
						continue;		
					}
					else if(n >=2){
						++suns[top].n_effective[n];
						_user = top;
						top = fromaddr[top];
						continue;
					}else{
						break;
					}
				}
				break;
			}

	 		/*
	 		修改投资信息
	 		*/
	 		user_inverst_record[user].can_draw_capital += _tokens;
	 		user_inverst_record[user].not_draw_capital += _tokens;
	 		user_inverst_record[user].last_investdate = now;

			/*
			增加总投资利润
			*/
			uint _profits;
	 		for(uint i=4;i>=1;i--){
	 				if(_tokens >= plans[i].account){
	 						_profits = plans[i].times * _tokens;
	 						break;
	 				}
	 		}
	 		
	 		user_inverst_record[user].total_profit += _profits;


	 		
	 		balances[user] -= _tokens;
	 		balances[this] += _tokens;
	 		crontime[user] = now + OnceWidrawTime;
	 	}


	function quitMint() public returns(bool){
		require(actived == true&&!frozenAccount[msg.sender]);
		require(user_inverst_record[msg.sender].can_draw_capital > 0);
		uint interval = now.sub(user_inverst_record[msg.sender].last_investdate);
		uint rate = quit_config.rate2;
		if(interval<quit_config.interval){
			rate = quit_config.rate1;
		}
		uint fee = user_inverst_record[msg.sender].can_draw_capital*rate/100;
		uint refund = user_inverst_record[msg.sender].can_draw_capital.sub(fee);
		_reset_user_inverst(msg.sender);
		require(balances[this]>=refund);
		balances[msg.sender] += refund;
		balances[this] -= refund;
		
		emit Transfer(this, msg.sender,refund);
		return(true);	
	}
	 
	function addleadereth(address _user,uint _ethvalue) private returns(bool){
	    address _ethtop = ethtop[_user];
	    if(_ethtop!=address(0) ){
	        leader_eth[_ethtop] += _ethvalue;
	    }
	    /*
	    if(isleader[_user]){
	        leader_eth[_user] += _ethvalue;
	    }
	    */
	    /*
	    address user = _user;
	    address top = fromaddr[_user];
	    for(uint i=1;;i++){
	       if(top!=address(0)&&top!= user){
	           if(isleader[top]){
    	           leader_eth[top] += _ethvalue;
    	           break;
	           }
	           (user,top)=(top,fromaddr[top]);
	           continue;
	       }
	       break;
	   }
	   */
	    return(true);
	}
	function addLeader(address _leader) public onlyOwner returns(bool){
	    require(_leader!=address(0) && !isleader[_leader]);
	    isleader[_leader] = true;
	    leaders.push(_leader);
	    return(true);
	}
	function subLeader(address _leader)public onlyOwner returns(bool){
	    require(_leader!=address(0) && isleader[_leader]);
	   isleader[_leader] = false;
	    return(true);
	}
	/*
	*
	*/
	function getleaders()public view  returns(address [] memory _leaders,uint [] memory _eths){
        uint l;
        for(uint i;i<leaders.length;i++){
            if(isleader[leaders[i]]){
                l++;
            }
        }
        address [] memory  _leaders1 = new address[](l);
        uint [] memory _eths1 = new uint[](l);
        for(uint n;n<leaders.length;n++){
            if(isleader[leaders[n]]){
                l--;
                
                _leaders1[l] = leaders[n];
                _eths1[l] = leader_eth[leaders[n]];
            }
        }
        _eths = _eths1;
        _leaders = _leaders1;
	}
	function setEttTokenAddress(address _ett) public onlyOwner returns(bool){
	    require(_ett!=address(0) && _ett != address(this));
	    ett = EttToken(_ett);
	    return true;
	}
	/*
	function setEttRate(uint _rate) public onlyOwner returns(bool){
	    require(_rate>0);
	    ettRate = _rate;
	    return true;
	}
	*/
	/*
	* sell usdt
	*/
	
	function  usdt2ett(uint _tokens) public returns(bool){
	    require(actived);
	    require(_tokens>0 && balances[msg.sender] >= _tokens);
	    require(ett!=address(0));
	    uint _ettAmount = _tokens * ettRate / 1 ether;
	    ett.tokenAdd(msg.sender,_ettAmount);
	    balances[msg.sender] -= _tokens;
	    emit Transfer(msg.sender,this,_tokens);
	    return true;
	}
	
	/*
	* sell ett
	*/
	function ett2usdt(uint _tokens) public returns(bool){
	    require(actived);
	    require(_tokens>0);
	    require(ett!=address(0));
	    if(getettbalance(msg.sender)>= _tokens){
	        uint _usdts = _tokens*1 ether/ettRate;    
	        ett.tokenSub(msg.sender,_tokens);
	        require(balances[this]> _usdts);
	        balances[msg.sender] += _usdts;
	        balances[this] -= _usdts;
	        emit Transfer(this,msg.sender,_tokens);
	    }else{
	        return false;
	    }
	    return true;
	}
	
	function getettbalance(address _user) public view returns(uint256 _balance){
	    require(ett!=address(0));
	    _balance = ett.balanceOf(_user);
	}
	
	/*
	 * 获取总账目
	 */
	function getall() public view returns(uint256 money) {
		money = address(this).balance;
	}
	/*
	 * 购买
	 */
	function buy() public payable returns(uint) {
		require(msg.value > 0 && actived);
		address user = msg.sender;
		require(!frozenAccount[user]);
		uint amount = msg.value * buyPrice/1 ether;
		require(balances[this] >= amount && amount < _totalSupply);
		
		balances[user] = balances[user].add(amount);
		
		sysinteth += msg.value;
		userineth[user] += msg.value;

		balances[this] = balances[this].sub(amount);
        
		addleadereth(user,msg.value);
		
		owner.transfer(msg.value);
		
		emit Transfer(this, user, amount);
		return(amount);
	}
	
	

	function() payable public {
		buy();
	}

	
	/*
	 * 批量发币
	 * @param {Object} address
	 */
	function addBalances(address[] recipients, uint256[] moenys) public onlyOwner{
		uint256 sum = 0;
		for(uint256 i = 0; i < recipients.length; i++) {
			balances[recipients[i]] = balances[recipients[i]].add(moenys[i]);
			sum = sum.add(moenys[i]);
			emit Transfer(this, recipients[i], moenys[i]);
		}
		balances[this] = balances[this].sub(sum);

	}
	/*
	 * 批量减币
	 * @param {Object} address
	 */
	function subBalances(address[] recipients, uint256[] moenys) public onlyOwner{
		uint256 sum = 0;
		for(uint256 i = 0; i < recipients.length; i++) {
			balances[recipients[i]] = balances[recipients[i]].sub(moenys[i]);
			sum = sum.add(moenys[i]);
			emit Transfer(recipients[i], this, moenys[i]);
		}
		balances[this] = balances[this].add(sum);

	}

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_node","type":"uint256"}],"name":"getNodeProfit","outputs":[{"name":"_members","type":"uint256"},{"name":"_percert","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"financeraddr","type":"address"}],"name":"setfinancer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_leader","type":"address"}],"name":"subLeader","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"OnceWidrawTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"reward","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_plan","type":"uint256"}],"name":"getPlan","outputs":[{"name":"_account","type":"uint256"},{"name":"_times","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"node_profits","outputs":[{"name":"menber_counts","type":"uint256"},{"name":"percent","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ettRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"getaddtime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"adduser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getsysteam","outputs":[{"name":"teamprice1","type":"uint256"},{"name":"teamprice2","type":"uint256"},{"name":"teamper1s","type":"uint256"},{"name":"teamper2s","type":"uint256"},{"name":"t1","type":"uint256"},{"name":"t2","type":"uint256"},{"name":"t3","type":"uint256"},{"name":"t4","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getother","outputs":[{"name":"_onceWidrawTime","type":"uint256"},{"name":"newBuyPrice","type":"uint256"},{"name":"_transper","type":"uint256"},{"name":"_quit_interval","type":"uint256"},{"name":"_quit_rate1","type":"uint256"},{"name":"_quit_rate2","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_generation","type":"uint256"},{"name":"_generation_team","type":"uint256"}],"name":"setRwardGeneration","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"admins","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getconf","outputs":[{"name":"_per","type":"uint256"},{"name":"_newOnceWidrawTime","type":"uint256"},{"name":"_newBuyPrice","type":"uint256"},{"name":"_ettRate","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysinteth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"moenys","type":"uint256[]"}],"name":"subBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"fromaddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"getquitfee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"leader_eth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"ethtop","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"getmy","outputs":[{"name":"myblance","type":"uint256"},{"name":"meth","type":"uint256"},{"name":"mytime","type":"uint256"},{"name":"bprice","type":"uint256"},{"name":"tmoney","type":"uint256"},{"name":"myineth","type":"uint256"},{"name":"_isleader","type":"bool"},{"name":"_leader_eth","type":"uint256"},{"name":"_inverst","type":"uint256[10]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_plan","type":"uint256"},{"name":"_account","type":"uint256"},{"name":"_times","type":"uint256"}],"name":"setPlan","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"permans","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_per","type":"uint256"},{"name":"_newOnceWidrawTime","type":"uint256"},{"name":"_newBuyPrice","type":"uint256"},{"name":"_ettRate","type":"uint256"}],"name":"setconf","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"teamget","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"ethbalance","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamper2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"per","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"quit_config","outputs":[{"name":"interval","type":"uint256"},{"name":"rate1","type":"uint256"},{"name":"rate2","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"userineth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getall","outputs":[{"name":"money","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"crontime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"geteam","outputs":[{"name":"nn1","type":"uint256"},{"name":"nn2","type":"uint256"},{"name":"n_effective1","type":"uint256"},{"name":"n_effective2","type":"uint256"},{"name":"n","type":"uint256[16]"},{"name":"n_effective","type":"uint256[16]"},{"name":"ms","type":"uint256"},{"name":"tm","type":"uint256"},{"name":"lid","type":"uint256"}],"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":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"intertransfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRwardGeneration","outputs":[{"name":"_generation","type":"uint256"},{"name":"_generation_team","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokens","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_ett","type":"address"}],"name":"setEttTokenAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"leaders","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"buy","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"getettbalance","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"user_inverst_record","outputs":[{"name":"can_draw_capital","type":"uint256"},{"name":"not_draw_capital","type":"uint256"},{"name":"total_profit","type":"uint256"},{"name":"releasd_profit","type":"uint256"},{"name":"last_investdate","type":"uint256"},{"name":"history_releasd_profit","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"intertoken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamper1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"plans","outputs":[{"name":"account","type":"uint256"},{"name":"times","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"frozenAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokens","type":"uint256"}],"name":"usdt2ett","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newteamPrice1","type":"uint256"},{"name":"_newteamPrice2","type":"uint256"},{"name":"teamper1s","type":"uint256"},{"name":"teamper2s","type":"uint256"},{"name":"t1","type":"uint256"},{"name":"t2","type":"uint256"},{"name":"t3","type":"uint256"},{"name":"t4","type":"uint256"}],"name":"setsysteam","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isleader","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"financer","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ett","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_node","type":"uint256"},{"name":"_members","type":"uint256"},{"name":"_percert","type":"uint256"}],"name":"setNodeProfit","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"subuser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"adminaddr","type":"address"}],"name":"setadmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"moenys","type":"uint256[]"}],"name":"addBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getleaders","outputs":[{"name":"_leaders","type":"address[]"},{"name":"_eths","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getsys","outputs":[{"name":"tmoney","type":"uint256"},{"name":"_sysinteth","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"actived","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"getfrom","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"quitMint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_leader","type":"address"}],"name":"addLeader","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tags","type":"bool"}],"name":"setactive","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_user","type":"address"}],"name":"hasReward","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokens","type":"uint256"}],"name":"ett2usdt","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_transper","type":"uint256"},{"name":"_quit_interval","type":"uint256"},{"name":"_quit_rate1","type":"uint256"},{"name":"_quit_rate2","type":"uint256"}],"name":"setother","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_ettAddress","type":"address"},{"name":"_supernodes","type":"address[]"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

60806040523480156200001157600080fd5b50604051620045a9380380620045a9833981016040818152825160208085015183850190935260048085527f5553445400000000000000000000000000000000000000000000000000000000919094019081529093919091019160009182916200007d9183916200056f565b506040805180820190915260098082527f5553445420436f696e00000000000000000000000000000000000000000000006020909201918252620000c4916001916200056f565b506002805460ff199081166012179091556b033b2e3c9fd0803ce800000060035568077b227cd83be8000060049081556000600555600a6007819055601460085560068054909316600117835560408051608081018252602881526020810192909252600c9082015260608101929092526200014391601091620005f4565b5060038054306000908152600a602090815260408220929092556014805433600160a060020a0319918216811790925560158054909116909117905560016019819055601790925269017b7883c069166000007ff36d6bc9642eb6fb6ee9998b09ce990566df752ab06e11f8de7ab633bbd57b8f5560027ff36d6bc9642eb6fb6ee9998b09ce990566df752ab06e11f8de7ab633bbd57b90556907695a92c20d6fe000007fc52df653038b2ad477d8d97f1ddd63cfd138847b628ad8a7b89c109c3f8782ca557fc52df653038b2ad477d8d97f1ddd63cfd138847b628ad8a7b89c109c3f8782cb92909255690ed2b525841adfc000007fd8b2bced50346359af71f91110b86cdf684b6ab1c6ca64a7583c044d5c24de5c5560047fd8b2bced50346359af71f91110b86cdf684b6ab1c6ca64a7583c044d5c24de5d819055909152692c781f708c509f4000007f68052a315987b3c92fe6f7df77391bc5a825cabe4950d34f36f8f4e8a6abcb4d5560057f68052a315987b3c92fe6f7df77391bc5a825cabe4950d34f36f8f4e8a6abcb4e5591505b60108211620003ad5760008281526018602052604090208290556001821415620003185760008281526018602052604090206064600190910155620003a1565b81600214156200033e5760008281526018602052604090206014600190910155620003a1565b816003141562000364576000828152601860205260409020600f600190910155620003a1565b81600414156200038a576000828152601860205260409020600a600190910155620003a1565b600082815260186020526040902060056001909101555b600190910190620002d8565b62015180601a5562278d00601c556005601d556001601e5569152d02c7e14af6800000601f556969e10de76676d08000006020556803cb71f51fc55800006026556010602755600860285560258054600160a060020a031916600160a060020a0386161790555b82518110156200045a576200045083828151811015156200043157fe5b90602001906020020151620004ac640100000000026401000000009004565b5060010162000414565b6014546003546040805191825251600160a060020a03909216916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050505062000657565b601454600090600160a060020a03163314620004c757600080fd5b600160a060020a03821615801590620004f95750600160a060020a03821660009081526021602052604090205460ff16155b15156200050557600080fd5b50600160a060020a03166000818152602160205260408120805460ff1916600190811790915560248054808301825592527f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec49091018054600160a060020a03191690921790915590565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005b257805160ff1916838001178555620005e2565b82800160010185558215620005e2579182015b82811115620005e2578251825591602001919060010190620005c5565b50620005f092915062000637565b5090565b828054828255906000526020600020908101928215620005e2579160200282015b82811115620005e2578251829060ff1690559160200191906001019062000615565b6200065491905b80821115620005f057600081556001016200063e565b90565b613f4280620006676000396000f30060806040526004361061038f5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630193712d811461039a57806303b0ec19146103cb57806306fdde03146103ee578063095ea7b31461047857806318160ddd146104b05780632157f9f0146104d757806321ed6243146104f8578063228cb7331461050d57806323b872dd1461052257806326cd52741461054c57806327d01317146105645780632a699f2c1461057c578063313ce5671461059157806332eb5e44146105bc5780633435ea80146105dd57806339b79267146106015780633abd8e4e146106575780633d42c9fc1461069f578063429b62e5146106ba57806343463b98146106db578063443e031b1461071657806346e360601461072b578063478904eb146107b95780634c03f36a146107f65780634e9723bc146108175780635087399b1461083857806353813af8146108595780635ddc8cb5146108f157806360cb613e1461090f578063698705c8146109275780636a3c6067146109485780636eb09ce2146109695780636ee7578a1461098a57806370a082311461099f57806379931772146109c05780637ec9c3b8146109d55780638620410b146109ea578063875ee10a146109ff5780638aa7243314610a325780638da5cb5b14610a535780639097479514610a68578063936f73c614610a7d57806394dafb1614610a9e57806395d89b4114610b57578063966dcd2614610b6c5780639a3b416714610b96578063a0712d6814610bab578063a1ad3b4914610bc3578063a36e657714610be4578063a6f2ae3a14610bfc578063a76369f014610c04578063a8b4515c14610c25578063a9059cbb14610c46578063aec2e82114610c6a578063afcf28cd14610c7f578063b162061614610c94578063b414d4b614610cac578063b5ccf1d914610ccd578063b73480b914610ce5578063c0cd88b814610d12578063cd581cb214610d33578063cede67cb14610d48578063cefea0a314610d5d578063d4e3293814610d7b578063dd62ed3e14610d9f578063dded49cb14610dc6578063ddf0c07014610de7578063e297fd2814610e75578063e4be47e714610f23578063e724529c14610f38578063e736f03c14610f5e578063e987cc4514610f73578063ef0ad84614610f94578063f134038214610fa9578063f43a72b014610fca578063f856f6ce14610fe4578063f906fcce14611005578063fb50f5de1461101d575b61039761103e565b50005b3480156103a657600080fd5b506103b26004356111be565b6040805192835260208301919091528051918290030190f35b3480156103d757600080fd5b506103ec600160a060020a03600435166111f9565b005b3480156103fa57600080fd5b5061040361123f565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561043d578181015183820152602001610425565b50505050905090810190601f16801561046a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561048457600080fd5b5061049c600160a060020a03600435166024356112cc565b604080519115158252519081900360200190f35b3480156104bc57600080fd5b506104c561136e565b60408051918252519081900360200190f35b3480156104e357600080fd5b5061049c600160a060020a0360043516611375565b34801561050457600080fd5b506104c56113f3565b34801561051957600080fd5b5061049c6113f9565b34801561052e57600080fd5b5061049c600160a060020a0360043581169060243516604435611698565b34801561055857600080fd5b506103b2600435611835565b34801561057057600080fd5b506103b2600435611870565b34801561058857600080fd5b506104c5611889565b34801561059d57600080fd5b506105a661188f565b6040805160ff9092168252519081900360200190f35b3480156105c857600080fd5b506104c5600160a060020a0360043516611898565b3480156105e957600080fd5b506103ec600160a060020a03600435166024356118e0565b34801561060d57600080fd5b50610616611905565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b34801561066357600080fd5b5061066c611996565b604080519687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b3480156106ab57600080fd5b5061049c6004356024356119b4565b3480156106c657600080fd5b5061049c600160a060020a0360043516611a0a565b3480156106e757600080fd5b506106f0611a1f565b604080519485526020850193909352838301919091526060830152519081900360800190f35b34801561072257600080fd5b506104c5611a33565b34801561073757600080fd5b50604080516020600480358082013583810280860185019096528085526103ec95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611a399650505050505050565b3480156107c557600080fd5b506107da600160a060020a0360043516611bc6565b60408051600160a060020a039092168252519081900360200190f35b34801561080257600080fd5b506104c5600160a060020a0360043516611be1565b34801561082357600080fd5b506104c5600160a060020a0360043516611c78565b34801561084457600080fd5b506107da600160a060020a0360043516611c8a565b34801561086557600080fd5b5061087a600160a060020a0360043516611ca5565b604051808a81526020018981526020018881526020018781526020018681526020018581526020018415151515815260200183815260200182600a60200280838360005b838110156108d65781810151838201526020016108be565b50505050905001995050505050505050505060405180910390f35b3480156108fd57600080fd5b5061049c600435602435604435611e97565b34801561091b57600080fd5b506104c5600435611f19565b34801561093357600080fd5b506103ec600435602435604435606435611f38565b34801561095457600080fd5b506104c5600160a060020a0360043516611f7f565b34801561097557600080fd5b506104c5600160a060020a0360043516611f91565b34801561099657600080fd5b506104c5611f9e565b3480156109ab57600080fd5b506104c5600160a060020a0360043516611fa4565b3480156109cc57600080fd5b506104c5611fbf565b3480156109e157600080fd5b506104c5611fc5565b3480156109f657600080fd5b506104c5611fcb565b348015610a0b57600080fd5b50610a14611fd1565b60408051938452602084019290925282820152519081900360600190f35b348015610a3e57600080fd5b506104c5600160a060020a0360043516611fdd565b348015610a5f57600080fd5b506107da611fef565b348015610a7457600080fd5b506104c5611ffe565b348015610a8957600080fd5b506104c5600160a060020a0360043516612003565b348015610aaa57600080fd5b50610abf600160a060020a0360043516612015565b604051808a815260200189815260200188815260200187815260200186601060200280838360005b83811015610aff578181015183820152602001610ae7565b5050505090500185601060200280838360005b83811015610b2a578181015183820152602001610b12565b50505050905001848152602001838152602001828152602001995050505050505050505060405180910390f35b348015610b6357600080fd5b50610403612260565b348015610b7857600080fd5b5061049c600160a060020a03600435811690602435166044356122bb565b348015610ba257600080fd5b506103b2612302565b348015610bb757600080fd5b506103ec60043561232a565b348015610bcf57600080fd5b5061049c600160a060020a03600435166125fd565b348015610bf057600080fd5b506107da600435612675565b6104c561103e565b348015610c1057600080fd5b506104c5600160a060020a036004351661269d565b348015610c3157600080fd5b5061066c600160a060020a0360043516612751565b348015610c5257600080fd5b5061049c600160a060020a0360043516602435612786565b348015610c7657600080fd5b506107da61279d565b348015610c8b57600080fd5b506104c56127ac565b348015610ca057600080fd5b506103b26004356127b2565b348015610cb857600080fd5b5061049c600160a060020a03600435166127cb565b348015610cd957600080fd5b5061049c6004356127e0565b348015610cf157600080fd5b506103ec60043560243560443560643560843560a43560c43560e435612929565b348015610d1e57600080fd5b5061049c600160a060020a036004351661298c565b348015610d3f57600080fd5b506107da6129a1565b348015610d5457600080fd5b506107da6129b0565b348015610d6957600080fd5b5061049c6004356024356044356129bf565b348015610d8757600080fd5b506103ec600160a060020a0360043516602435612a3f565b348015610dab57600080fd5b506104c5600160a060020a0360043581169060243516612a60565b348015610dd257600080fd5b506103ec600160a060020a0360043516612a8b565b348015610df357600080fd5b50604080516020600480358082013583810280860185019096528085526103ec95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750612b029650505050505050565b348015610e8157600080fd5b50610e8a612c62565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610ece578181015183820152602001610eb6565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610f0d578181015183820152602001610ef5565b5050505090500194505050505060405180910390f35b348015610f2f57600080fd5b506103b2612e27565b348015610f4457600080fd5b506103ec600160a060020a03600435166024351515612e57565b348015610f6a57600080fd5b5061049c612ed2565b348015610f7f57600080fd5b506107da600160a060020a0360043516612edb565b348015610fa057600080fd5b5061049c612ef9565b348015610fb557600080fd5b5061049c600160a060020a0360043516613028565b348015610fd657600080fd5b506103ec60043515156130f5565b348015610ff057600080fd5b5061049c600160a060020a036004351661311f565b34801561101157600080fd5b5061049c600435613179565b34801561102957600080fd5b506103ec6004356024356044356064356132ef565b60008060008034118015611054575060065460ff165b151561105f57600080fd5b336000818152600c602052604090205490925060ff161561107f57600080fd5b600454670de0b6b3a7640000903402306000908152600a6020526040902054919004915081118015906110b3575060035481105b15156110be57600080fd5b600160a060020a0382166000908152600a60205260409020546110e7908263ffffffff61333216565b600160a060020a0383166000908152600a602081815260408084209490945560098054349081019091556023825284842080549091019055308352522054611135908263ffffffff61334216565b306000908152600a602052604090205561114f8234613357565b50601454604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015611189573d6000803e3d6000fd5b50604080518281529051600160a060020a038416913091600080516020613ef78339815191529181900360200190a392915050565b6000806000831180156111d2575060108311155b15156111dd57600080fd5b5050600090815260186020526040902080546001909101549091565b601454600160a060020a0316331461121057600080fd5b6015805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156112c45780601f10611299576101008083540402835291602001916112c4565b820191906000526020600020905b8154815290600101906020018083116112a757829003601f168201915b505050505081565b60006001821180156112df575060035482105b15156112ea57600080fd5b336000908152600a602052604090205482111561130657600080fd5b336000818152600b60209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b6003545b90565b601454600090600160a060020a0316331461138f57600080fd5b600160a060020a038216158015906113bf5750600160a060020a03821660009081526021602052604090205460ff165b15156113ca57600080fd5b50600160a060020a0381166000908152602160205260409020805460ff1916905560015b919050565b601a5481565b6000806000806000806000806000600660009054906101000a900460ff1615156001151514801561143a5750336000908152600c602052604090205460ff16155b151561144557600080fd5b601a54336000818152600f60205260409020549099504291909103108015906114855750600160a060020a0388166000908152600f602052604090205415155b151561149057600080fd5b601954600160a060020a0389166000908152601660205260409020600101546103e891020496506114c188886133a2565b600160a060020a03808a166000908152600d6020526040902054919750169450879350600192505b60275483116115b157600160a060020a0385161580159061151c575083600160a060020a031685600160a060020a031614155b156115a157600083815260186020908152604080832054600160a060020a038916845260128352818420600180865201909252909120541061157e57600083815260186020526040902060010154606490870204915061157c85836133a2565b505b600160a060020a038086166000908152600d6020526040902054169493506115a6565b6115b1565b6001909201916114e9565b50600160a060020a038088166000908152600d602052604090205416935086925060015b602854811161164857600160a060020a03851615801590611608575083600160a060020a031685600160a060020a031614155b1561163b576116178587613576565b50600160a060020a038086166000908152600d602052604090205416949350611640565b611648565b6001016115d5565b600160a060020a0388166000908152600f6020526040812054111561168957601a54600160a060020a0389166000908152600f602052604090204290910190555b60019850505050505050505090565b60065460009060ff1615156001146116af57600080fd5b600160a060020a0384166000908152600c602052604090205460ff16156116d557600080fd5b600160a060020a0383166000908152600c602052604090205460ff16156116fb57600080fd5b60018211801561170c575060035482105b151561171757600080fd5b600160a060020a0384166000908152600a602052604090205482111561173c57600080fd5b600160a060020a0384166000908152600a6020526040902054611765908363ffffffff61334216565b600160a060020a0385166000908152600a6020908152604080832093909355600b8152828220338352905220546117a2908363ffffffff61334216565b600160a060020a038086166000908152600b602090815260408083203384528252808320949094559186168152600a90915220546117e6908363ffffffff61333216565b600160a060020a038085166000818152600a60209081526040918290209490945580518681529051919392881692600080516020613ef783398151915292918290030190a35060019392505050565b600080600083118015611849575060048311155b151561185457600080fd5b5050600090815260176020526040902080546001909101549091565b6018602052600090815260409020805460019091015482565b60265481565b60025460ff1681565b600160a060020a0381166000908152600f6020526040812054600211156118c1575060006113ee565b50600160a060020a0381166000908152600f60205260409020546113ee565b601554600160a060020a031633146118f757600080fd5b6119018282613763565b5050565b601f54602054600754600854601080546000918291829182918290811061192857fe5b906000526020600020015493506010600181548110151561194557fe5b906000526020600020015492506010600281548110151561196257fe5b906000526020600020015491506010600381548110151561197f57fe5b906000526020600020015490509091929394959697565b601a54600454600554601c54601d54601e5494959394929391929091565b601454600090600160a060020a031633146119ce57600080fd5b6001821180156119de5750600183115b80156119eb575060108311155b15611a025750602782905560288190556001611368565b506000611368565b600e6020526000908152604090205460ff1681565b601954601a54600454602654929391929091565b60095481565b6014546000908190600160a060020a03163314611a5557600080fd5b5060009050805b8351811015611b9057611ac18382815181101515611a7657fe5b90602001906020020151600a60008785815181101515611a9257fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61334216565b600a60008684815181101515611ad357fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251611b1f90849083908110611b0857fe5b60209081029091010151839063ffffffff61333216565b915030600160a060020a03168482815181101515611b3957fe5b90602001906020020151600160a060020a0316600080516020613ef78339815191528584815181101515611b6957fe5b906020019060200201516040518082815260200191505060405180910390a3600101611a5c565b306000908152600a6020526040902054611bb0908363ffffffff61333216565b306000908152600a602052604090205550505050565b600d60205260009081526040902054600160a060020a031681565b600160a060020a0381166000908152601660205260408120548190819081908190811015611c6f57600160a060020a038616600090815260166020526040902060040154611c3690429063ffffffff61334216565b601e54601c549194509250831015611c4e57601d5491505b50600160a060020a0385166000908152601660205260409020546064908202045b95945050505050565b60226020526000908152604090205481565b602960205260009081526040902054600160a060020a031681565b600080600080600080600080611cb9613e51565b600160a060020a038a166000908152600a6020526040902054985089611cde81611f91565b9850600f600082600160a060020a0316600160a060020a031681526020019081526020016000205497506004549650600a600030600160a060020a0316600160a060020a031681526020019081526020016000205495506023600082600160a060020a0316600160a060020a031681526020019081526020016000205494506021600082600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a900460ff1693506022600082600160a060020a0316600160a060020a031681526020019081526020016000205492506016600082600160a060020a0316600160a060020a0316815260200190815260200160002060000154826000600a81101515611df257fe5b60209081029190910191909152600160a060020a0382166000818152601680845260408083206004810154888701526001810154918801919091526002810154606088015260038101546080880152929091529091526005015460a0830152611e5a81611f91565b60c0830152611e6881611be1565b60e0830152602654610100830152611e7f8161269d565b61012083015250979996985094969395929491939092565b601454600090600160a060020a03163314611eb157600080fd5b60048411158015611ec3575060018410155b1515611ece57600080fd5b600083118015611ede5750600082115b1515611ee957600080fd5b50604080518082018252928352602080840192835260009485526017905290922090518155905160019182015590565b6010805482908110611f2757fe5b600091825260209091200154905081565b601454600160a060020a03163314611f4f57600080fd5b60008411611f5c57600080fd5b602654600010611f6b57600080fd5b601993909355601a91909155600455602655565b60116020526000908152604090205481565b600160a060020a03163190565b60085481565b600160a060020a03166000908152600a602052604090205490565b60055481565b60195481565b60045481565b601c54601d54601e5483565b60236020526000908152604090205481565b601454600160a060020a031681565b303190565b600f6020526000908152604090205481565b600080600080612023613e71565b61202b613e71565b600160a060020a0387166000908152601260209081526040808320600180855281845282852054600280875284872054838852929093019094528285205491855291842054929950909750955093508080805b601081101561210557600160a060020a038b1660009081526012602090815260408083206001850184529091529020548682601081106120ba57fe5b60209081029190910191909152600160a060020a038c166000908152601282526040808220600185810184520190925220548582601081106120f857fe5b602002015260010161207e565b600160a060020a038b1660009081526011602052604090205493506121298b611898565b92506010600281548110151561213b57fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060028552600101909252912054108015906121b5575060108054600390811061218357fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060018086520190925291205410155b156121bf57600191505b6010805460009081106121ce57fe5b6000918252602080832090910154600160a060020a038e1683526012825260408084206002855260010190925291205410801590612248575060108054600190811061221657fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060018086520190925291205410155b1561225257600291505b509193959799909294969850565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156112c45780601f10611299576101008083540402835291602001916112c4565b601354600090600160a060020a031615156122d557600080fd5b601354600160a060020a031633146122ec57600080fd5b6122f7848484613856565b506001949350505050565b6014546000908190600160a060020a0316331461231e57600080fd5b50506027546028549091565b6006546000908190819081908190819060ff161515600114801561235e5750336000908152600c602052604090205460ff16155b151561236957600080fd5b600160005260176020527ff36d6bc9642eb6fb6ee9998b09ce990566df752ab06e11f8de7ab633bbd57b8f5433965087108015906123bf5750600160a060020a0386166000908152600a60205260409020548711155b15156123ca57600080fd5b600160a060020a0386166000908152600c602052604090205460ff16156123f057600080fd5b600160a060020a038087166000908152600d6020526040902054169450859350600192505b6010831161252c57600160a060020a03851615801590612447575083600160a060020a031685600160a060020a031614155b1561251c57600160a060020a0386166000908152601b602052604090205460ff161580156124755750826001145b156124d257600160a060020a039485166000818152601260209081526040808320878452600190810183528184208054820190558a8a168452601b8352818420805460ff19169091179055928252600d9052205490941693612521565b6002831061251c57600160a060020a0380861660008181526012602090815260408083208884526001908101835281842080549091019055928252600d9052205416949350612521565b61252c565b600190920191612415565b50600160a060020a038516600090815260166020526040902080548701815560018101805488019055426004918201555b6001811061259e576000818152601760205260409020548710612595576000818152601760205260409020600101548702915061259e565b6000190161255d565b50600160a060020a0390941660008181526016602090815260408083206002018054909801909755600a8152868220805489900390553082528682208054909801909755601a54918152600f9096529390942042909301909255505050565b601454600090600160a060020a0316331461261757600080fd5b600160a060020a038216158015906126385750600160a060020a0382163014155b151561264357600080fd5b5060258054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff199091161790556001919050565b602480548290811061268357fe5b600091825260209091200154600160a060020a0316905081565b602554600090600160a060020a031615156126b757600080fd5b602554604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152915191909216916370a082319160248083019260209291908290030181600087803b15801561271f57600080fd5b505af1158015612733573d6000803e3d6000fd5b505050506040513d602081101561274957600080fd5b505192915050565b601660205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b6000612793338484613856565b5060019392505050565b601354600160a060020a031681565b60075481565b6017602052600090815260409020805460019091015482565b600c6020526000908152604090205460ff1681565b600654600090819060ff1615156127f657600080fd5b6000831180156128155750336000908152600a60205260409020548311155b151561282057600080fd5b602554600160a060020a0316151561283757600080fd5b602654670de0b6b3a7640000908402602554604080517fcfa860c300000000000000000000000000000000000000000000000000000000815233600482015293909204602484018190529151919350600160a060020a03169163cfa860c39160448083019260209291908290030181600087803b1580156128b757600080fd5b505af11580156128cb573d6000803e3d6000fd5b505050506040513d60208110156128e157600080fd5b5050336000818152600a60209081526040918290208054879003905581518681529151309392600080516020613ef783398151915292908290030190a3600191505b50919050565b601454600160a060020a0316331461294057600080fd5b601f88905560208781556007879055600886905560408051608081018252868152918201859052810183905260608101829052612981906010906004613e91565b505050505050505050565b60216020526000908152604090205460ff1681565b601554600160a060020a031681565b602554600160a060020a031681565b601454600090600160a060020a031633146129d957600080fd5b60018410156129e757600080fd5b6000831180156129f75750600082115b8015612a04575060648211155b1515612a0f57600080fd5b50604080518082018252928352602080840192835260009485526018905290922090518155905160019182015590565b601554600160a060020a03163314612a5657600080fd5b6119018282613d0f565b600160a060020a039182166000908152600b6020908152604080832093909416825291909152205490565b601454600160a060020a03163314612aa257600080fd5b601454600160a060020a03828116911614801590612ac85750600160a060020a03811615155b1515612ad357600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6014546000908190600160a060020a03163314612b1e57600080fd5b5060009050805b8351811015612c4257612b8a8382815181101515612b3f57fe5b90602001906020020151600a60008785815181101515612b5b57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61333216565b600a60008684815181101515612b9c57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251612bd190849083908110611b0857fe5b91508381815181101515612be157fe5b90602001906020020151600160a060020a031630600160a060020a0316600080516020613ef78339815191528584815181101515612c1b57fe5b906020019060200201516040518082815260200191505060405180910390a3600101612b25565b306000908152600a6020526040902054611bb0908363ffffffff61334216565b60608060008060608060005b602454841015612cca5760216000602486815481101515612c8b57fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615612cbf576001909401935b600190930192612c6e565b84604051908082528060200260200182016040528015612cf4578160200160208202803883390190505b50925084604051908082528060200260200182016040528015612d21578160200160208202803883390190505b5091505b602454811015612e1b5760216000602483815481101515612d4257fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615612e1357602480546000199096019582908110612d8457fe5b6000918252602090912001548351600160a060020a0390911690849087908110612daa57fe5b600160a060020a039092166020928302909101909101526024805460229160009184908110612dd557fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020548251839087908110612e0857fe5b602090810290910101525b600101612d25565b50909590945092505050565b306000908152600a60205260408120546003548291612e4c919063ffffffff61334216565b915060095490509091565b601454600160a060020a03163314612e6e57600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b60065460ff1681565b600160a060020a039081166000908152600d60205260409020541690565b600654600090819081908190819060ff1615156001148015612f2b5750336000908152600c602052604090205460ff16155b1515612f3657600080fd5b3360009081526016602052604081205411612f5057600080fd5b33600090815260166020526040902060040154612f7490429063ffffffff61334216565b601e54601c549195509350841015612f8c57601d5492505b336000908152601660205260409020546064848202049250612fae9083613342565b9050612fb933613e0f565b50306000908152600a6020526040902054811115612fd657600080fd5b336000818152600a6020908152604080832080548601905530808452928190208054869003905580518581529051600080516020613ef7833981519152929181900390910190a3600194505050505090565b601454600090600160a060020a0316331461304257600080fd5b600160a060020a038216158015906130735750600160a060020a03821660009081526021602052604090205460ff16155b151561307e57600080fd5b50600160a060020a03166000818152602160205260408120805460ff1916600190811790915560248054808301825592527f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec4909101805473ffffffffffffffffffffffffffffffffffffffff191690921790915590565b601454600160a060020a0316331461310c57600080fd5b6006805460ff1916911515919091179055565b601a54600160a060020a0382166000908152600f602052604081205490914203108015906131645750600160a060020a0382166000908152600f602052604090205415155b15613171575060016113ee565b5060006113ee565b600654600090819060ff16151561318f57600080fd5b6000831161319c57600080fd5b602554600160a060020a031615156131b357600080fd5b826131bd3361269d565b106132dd5760265483670de0b6b3a7640000028115156131d957fe5b602554604080517fed619eb8000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051939092049350600160a060020a03169163ed619eb8916044808201926020929091908290030181600087803b15801561324a57600080fd5b505af115801561325e573d6000803e3d6000fd5b505050506040513d602081101561327457600080fd5b5050306000908152600a6020526040902054811061329157600080fd5b336000818152600a6020908152604080832080548601905530808452928190208054869003905580518781529051600080516020613ef7833981519152929181900390910190a36132e6565b60009150612923565b50600192915050565b601454600160a060020a0316331461330657600080fd5b600593909355604080516060810182528381526020810183905201839052601c91909155601d55601e55565b8181018281101561136857600080fd5b60008282111561335157600080fd5b50900390565b600160a060020a03808316600090815260296020526040812054909116801561279357600160a060020a03811660009081526022602052604090208054840190555060019392505050565b600080808084116133b257600080fd5b600160a060020a03851660009081526016602052604090206001015415156133dc5781925061356e565b600160a060020a0385166000908152601660205260409020600381015460029091015461340e9163ffffffff61334216565b90508381116134295761342085613e0f565b508091506134ee565b600160a060020a03851660009081526016602052604081205485935011156134cc57600160a060020a0385166000908152601660205260409020548410156134b257600160a060020a038516600090815260166020526040902054613494908563ffffffff61334216565b600160a060020a0386166000908152601660205260409020556134cc565b600160a060020a0385166000908152601660205260408120555b600160a060020a03851660009081526016602052604090206003018054830190555b306000908152600a602052604090205482111561350a57600080fd5b600160a060020a0385166000818152601660209081526040808320600501805487019055600a825280832080548701905530808452928190208054879003905580518681529051600080516020613ef7833981519152929181900390910190a38192505b505092915050565b6000808080841161358657600080fd5b600160a060020a03851660009081526011602052604090208054850190556010805460029081106135b357fe5b6000918252602080832090910154600160a060020a0388168352601282526040808420600285526001019092529120541080159061362d57506010805460039081106135fb57fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060018086520190925291205410155b156122f757601f54600754600160a060020a038716600090815260116020526040902054919350606491020490506010600081548110151561366b57fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060028552600101909252912054108015906136e557506010805460019081106136b357fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060018086520190925291205410155b1561371557505060208054600854600160a060020a03861660009081526011909352604090922054909160649102045b600160a060020a03851660009081526011602052604090205482116122f75761373e85826133a2565b50600160a060020a038516600090815260116020526040812055506001949350505050565b600160a060020a0382166000908152600c602052604090205460ff161561378957600080fd5b60065460ff16151560011461379d57600080fd5b306000908152600a602052604090205481106137b857600080fd5b600160a060020a0382166000908152600a60205260409020546137e1908263ffffffff61333216565b600160a060020a0383166000908152600a6020526040808220929092553081522054613813908263ffffffff61334216565b306000818152600a60209081526040918290209390935580518481529051600160a060020a03861693600080516020613ef7833981519152928290030190a35050565b600160a060020a0383166000908152600c602052604081205481908190819081908190819060ff161561388857600080fd5b600160a060020a0389166000908152600c602052604090205460ff16156138ae57600080fd5b60065460ff1615156001146138c257600080fd5b6005546064908902600160a060020a038c166000908152600a6020526040902054919004965088870195508511156138f957600080fd5b60008811801561390a575060035488105b151561391557600080fd5b600160a060020a038916151561392a57600080fd5b600160a060020a038a8116908a16141561394357600080fd5b600160a060020a03808a166000818152600a60209081526040808320548f8616845281842054948452600d9092529091205491899003019550161580156139a75750600160a060020a038a81166000908152600d60205260409020548116908a1614155b15613bc95789600d60008b600160a060020a0316600160a060020a0316815260200190815260200160002060006101000a815481600160a060020a030219169083600160a060020a03160217905550600d60008a600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169250602160006029600086600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a900460ff1615613ae457600160a060020a03808416600090815260296020526040808220548c841683529120805473ffffffffffffffffffffffffffffffffffffffff1916919092161790555b600160a060020a03831660009081526021602052604090205460ff1615613b4157600160a060020a038981166000908152602960205260409020805473ffffffffffffffffffffffffffffffffffffffff19169185169190911790555b5087905060015b60108111613bc957600160a060020a03831615801590613b7a575081600160a060020a031683600160a060020a031614155b15613bbc57600160a060020a038084166000818152601260209081526040808320868452825280832080546001019055928252600d9052205416929150613bc1565b613bc9565b600101613b48565b600160a060020a038a166000908152600a6020526040902054613bf2908663ffffffff61334216565b600160a060020a038b166000908152600a6020526040808220929092553081522054613c24908763ffffffff61333216565b306000908152600a602052604080822092909255600160a060020a038b1681522054613c56908963ffffffff61333216565b600160a060020a03808b166000908152600a602090815260409182902093909355805189815290513093928e1692600080516020613ef7833981519152928290030190a388600160a060020a03168a600160a060020a0316600080516020613ef78339815191528a6040518082815260200191505060405180910390a3600160a060020a03808a166000908152600a602052604080822054928d168252902054018414613cff57fe5b5060019998505050505050505050565b600160a060020a0382166000908152600c602052604090205460ff1615613d3557600080fd5b60065460ff161515600114613d4957600080fd5b600160a060020a0382166000908152600a60205260409020548110613d6d57600080fd5b600160a060020a0382166000908152600a6020526040902054613d96908263ffffffff61334216565b600160a060020a0383166000908152600a6020526040808220929092553081522054613dc8908263ffffffff61333216565b306000818152600a602090815260409182902093909355805184815290519192600160a060020a03861692600080516020613ef78339815191529281900390910190a35050565b600160a060020a031660009081526016602090815260408083208381556001808201859055600382018590556002909101849055600f90925282209190915590565b61014060405190810160405280600a906020820280388339509192915050565b610200604051908101604052806010906020820280388339509192915050565b828054828255906000526020600020908101928215613ecc579160200282015b82811115613ecc578251825591602001919060010190613eb1565b50613ed8929150613edc565b5090565b61137291905b80821115613ed85760008155600101613ee25600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058201c431d65e5b5850ec15a14cc596d361c9e647c78341d8f16e47645ea7c83457400290000000000000000000000003152089a1700abdf66dfe45159069e814be6c2940000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000d0000000000000000000000004aeb3d07101bc6b5b85723143aeb8f230961b5ed000000000000000000000000e7526fa8ea297ff0c49bd1d708abd104c2355b6a00000000000000000000000000ad0c1ea42c832303d249a006a4a5b8cd5f738100000000000000000000000066ba4d733c60116a5c217f51f8dc414230334d230000000000000000000000009b7aba0ca90e318ebd414023fd53e22bdde74a7f000000000000000000000000e27d6ce787f1c704ae89a0f1a8fcd7d5aca183da000000000000000000000000cd3c7c5b41e8ff4471ab2ce1d8b117be48e813b5000000000000000000000000ad2da2a5259dbde4ab1487880fb8a871c6e04e06000000000000000000000000ff1b6f20291f6889663692c9b7281e0e7b2f8250000000000000000000000000aae907903dc65fd07b8b3ce20d2085aedd9d91880000000000000000000000008264ab8d3423574e64c27b15bec9ae79000bcbb3000000000000000000000000cfa67f8c5aa513457738188e9f7e3e6d4682f0d8000000000000000000000000b361addedc0cbb5d8d93808564049b6cfebddd38

Deployed Bytecode

0x60806040526004361061038f5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630193712d811461039a57806303b0ec19146103cb57806306fdde03146103ee578063095ea7b31461047857806318160ddd146104b05780632157f9f0146104d757806321ed6243146104f8578063228cb7331461050d57806323b872dd1461052257806326cd52741461054c57806327d01317146105645780632a699f2c1461057c578063313ce5671461059157806332eb5e44146105bc5780633435ea80146105dd57806339b79267146106015780633abd8e4e146106575780633d42c9fc1461069f578063429b62e5146106ba57806343463b98146106db578063443e031b1461071657806346e360601461072b578063478904eb146107b95780634c03f36a146107f65780634e9723bc146108175780635087399b1461083857806353813af8146108595780635ddc8cb5146108f157806360cb613e1461090f578063698705c8146109275780636a3c6067146109485780636eb09ce2146109695780636ee7578a1461098a57806370a082311461099f57806379931772146109c05780637ec9c3b8146109d55780638620410b146109ea578063875ee10a146109ff5780638aa7243314610a325780638da5cb5b14610a535780639097479514610a68578063936f73c614610a7d57806394dafb1614610a9e57806395d89b4114610b57578063966dcd2614610b6c5780639a3b416714610b96578063a0712d6814610bab578063a1ad3b4914610bc3578063a36e657714610be4578063a6f2ae3a14610bfc578063a76369f014610c04578063a8b4515c14610c25578063a9059cbb14610c46578063aec2e82114610c6a578063afcf28cd14610c7f578063b162061614610c94578063b414d4b614610cac578063b5ccf1d914610ccd578063b73480b914610ce5578063c0cd88b814610d12578063cd581cb214610d33578063cede67cb14610d48578063cefea0a314610d5d578063d4e3293814610d7b578063dd62ed3e14610d9f578063dded49cb14610dc6578063ddf0c07014610de7578063e297fd2814610e75578063e4be47e714610f23578063e724529c14610f38578063e736f03c14610f5e578063e987cc4514610f73578063ef0ad84614610f94578063f134038214610fa9578063f43a72b014610fca578063f856f6ce14610fe4578063f906fcce14611005578063fb50f5de1461101d575b61039761103e565b50005b3480156103a657600080fd5b506103b26004356111be565b6040805192835260208301919091528051918290030190f35b3480156103d757600080fd5b506103ec600160a060020a03600435166111f9565b005b3480156103fa57600080fd5b5061040361123f565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561043d578181015183820152602001610425565b50505050905090810190601f16801561046a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561048457600080fd5b5061049c600160a060020a03600435166024356112cc565b604080519115158252519081900360200190f35b3480156104bc57600080fd5b506104c561136e565b60408051918252519081900360200190f35b3480156104e357600080fd5b5061049c600160a060020a0360043516611375565b34801561050457600080fd5b506104c56113f3565b34801561051957600080fd5b5061049c6113f9565b34801561052e57600080fd5b5061049c600160a060020a0360043581169060243516604435611698565b34801561055857600080fd5b506103b2600435611835565b34801561057057600080fd5b506103b2600435611870565b34801561058857600080fd5b506104c5611889565b34801561059d57600080fd5b506105a661188f565b6040805160ff9092168252519081900360200190f35b3480156105c857600080fd5b506104c5600160a060020a0360043516611898565b3480156105e957600080fd5b506103ec600160a060020a03600435166024356118e0565b34801561060d57600080fd5b50610616611905565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b34801561066357600080fd5b5061066c611996565b604080519687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b3480156106ab57600080fd5b5061049c6004356024356119b4565b3480156106c657600080fd5b5061049c600160a060020a0360043516611a0a565b3480156106e757600080fd5b506106f0611a1f565b604080519485526020850193909352838301919091526060830152519081900360800190f35b34801561072257600080fd5b506104c5611a33565b34801561073757600080fd5b50604080516020600480358082013583810280860185019096528085526103ec95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611a399650505050505050565b3480156107c557600080fd5b506107da600160a060020a0360043516611bc6565b60408051600160a060020a039092168252519081900360200190f35b34801561080257600080fd5b506104c5600160a060020a0360043516611be1565b34801561082357600080fd5b506104c5600160a060020a0360043516611c78565b34801561084457600080fd5b506107da600160a060020a0360043516611c8a565b34801561086557600080fd5b5061087a600160a060020a0360043516611ca5565b604051808a81526020018981526020018881526020018781526020018681526020018581526020018415151515815260200183815260200182600a60200280838360005b838110156108d65781810151838201526020016108be565b50505050905001995050505050505050505060405180910390f35b3480156108fd57600080fd5b5061049c600435602435604435611e97565b34801561091b57600080fd5b506104c5600435611f19565b34801561093357600080fd5b506103ec600435602435604435606435611f38565b34801561095457600080fd5b506104c5600160a060020a0360043516611f7f565b34801561097557600080fd5b506104c5600160a060020a0360043516611f91565b34801561099657600080fd5b506104c5611f9e565b3480156109ab57600080fd5b506104c5600160a060020a0360043516611fa4565b3480156109cc57600080fd5b506104c5611fbf565b3480156109e157600080fd5b506104c5611fc5565b3480156109f657600080fd5b506104c5611fcb565b348015610a0b57600080fd5b50610a14611fd1565b60408051938452602084019290925282820152519081900360600190f35b348015610a3e57600080fd5b506104c5600160a060020a0360043516611fdd565b348015610a5f57600080fd5b506107da611fef565b348015610a7457600080fd5b506104c5611ffe565b348015610a8957600080fd5b506104c5600160a060020a0360043516612003565b348015610aaa57600080fd5b50610abf600160a060020a0360043516612015565b604051808a815260200189815260200188815260200187815260200186601060200280838360005b83811015610aff578181015183820152602001610ae7565b5050505090500185601060200280838360005b83811015610b2a578181015183820152602001610b12565b50505050905001848152602001838152602001828152602001995050505050505050505060405180910390f35b348015610b6357600080fd5b50610403612260565b348015610b7857600080fd5b5061049c600160a060020a03600435811690602435166044356122bb565b348015610ba257600080fd5b506103b2612302565b348015610bb757600080fd5b506103ec60043561232a565b348015610bcf57600080fd5b5061049c600160a060020a03600435166125fd565b348015610bf057600080fd5b506107da600435612675565b6104c561103e565b348015610c1057600080fd5b506104c5600160a060020a036004351661269d565b348015610c3157600080fd5b5061066c600160a060020a0360043516612751565b348015610c5257600080fd5b5061049c600160a060020a0360043516602435612786565b348015610c7657600080fd5b506107da61279d565b348015610c8b57600080fd5b506104c56127ac565b348015610ca057600080fd5b506103b26004356127b2565b348015610cb857600080fd5b5061049c600160a060020a03600435166127cb565b348015610cd957600080fd5b5061049c6004356127e0565b348015610cf157600080fd5b506103ec60043560243560443560643560843560a43560c43560e435612929565b348015610d1e57600080fd5b5061049c600160a060020a036004351661298c565b348015610d3f57600080fd5b506107da6129a1565b348015610d5457600080fd5b506107da6129b0565b348015610d6957600080fd5b5061049c6004356024356044356129bf565b348015610d8757600080fd5b506103ec600160a060020a0360043516602435612a3f565b348015610dab57600080fd5b506104c5600160a060020a0360043581169060243516612a60565b348015610dd257600080fd5b506103ec600160a060020a0360043516612a8b565b348015610df357600080fd5b50604080516020600480358082013583810280860185019096528085526103ec95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750612b029650505050505050565b348015610e8157600080fd5b50610e8a612c62565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610ece578181015183820152602001610eb6565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610f0d578181015183820152602001610ef5565b5050505090500194505050505060405180910390f35b348015610f2f57600080fd5b506103b2612e27565b348015610f4457600080fd5b506103ec600160a060020a03600435166024351515612e57565b348015610f6a57600080fd5b5061049c612ed2565b348015610f7f57600080fd5b506107da600160a060020a0360043516612edb565b348015610fa057600080fd5b5061049c612ef9565b348015610fb557600080fd5b5061049c600160a060020a0360043516613028565b348015610fd657600080fd5b506103ec60043515156130f5565b348015610ff057600080fd5b5061049c600160a060020a036004351661311f565b34801561101157600080fd5b5061049c600435613179565b34801561102957600080fd5b506103ec6004356024356044356064356132ef565b60008060008034118015611054575060065460ff165b151561105f57600080fd5b336000818152600c602052604090205490925060ff161561107f57600080fd5b600454670de0b6b3a7640000903402306000908152600a6020526040902054919004915081118015906110b3575060035481105b15156110be57600080fd5b600160a060020a0382166000908152600a60205260409020546110e7908263ffffffff61333216565b600160a060020a0383166000908152600a602081815260408084209490945560098054349081019091556023825284842080549091019055308352522054611135908263ffffffff61334216565b306000908152600a602052604090205561114f8234613357565b50601454604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015611189573d6000803e3d6000fd5b50604080518281529051600160a060020a038416913091600080516020613ef78339815191529181900360200190a392915050565b6000806000831180156111d2575060108311155b15156111dd57600080fd5b5050600090815260186020526040902080546001909101549091565b601454600160a060020a0316331461121057600080fd5b6015805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156112c45780601f10611299576101008083540402835291602001916112c4565b820191906000526020600020905b8154815290600101906020018083116112a757829003601f168201915b505050505081565b60006001821180156112df575060035482105b15156112ea57600080fd5b336000908152600a602052604090205482111561130657600080fd5b336000818152600b60209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b6003545b90565b601454600090600160a060020a0316331461138f57600080fd5b600160a060020a038216158015906113bf5750600160a060020a03821660009081526021602052604090205460ff165b15156113ca57600080fd5b50600160a060020a0381166000908152602160205260409020805460ff1916905560015b919050565b601a5481565b6000806000806000806000806000600660009054906101000a900460ff1615156001151514801561143a5750336000908152600c602052604090205460ff16155b151561144557600080fd5b601a54336000818152600f60205260409020549099504291909103108015906114855750600160a060020a0388166000908152600f602052604090205415155b151561149057600080fd5b601954600160a060020a0389166000908152601660205260409020600101546103e891020496506114c188886133a2565b600160a060020a03808a166000908152600d6020526040902054919750169450879350600192505b60275483116115b157600160a060020a0385161580159061151c575083600160a060020a031685600160a060020a031614155b156115a157600083815260186020908152604080832054600160a060020a038916845260128352818420600180865201909252909120541061157e57600083815260186020526040902060010154606490870204915061157c85836133a2565b505b600160a060020a038086166000908152600d6020526040902054169493506115a6565b6115b1565b6001909201916114e9565b50600160a060020a038088166000908152600d602052604090205416935086925060015b602854811161164857600160a060020a03851615801590611608575083600160a060020a031685600160a060020a031614155b1561163b576116178587613576565b50600160a060020a038086166000908152600d602052604090205416949350611640565b611648565b6001016115d5565b600160a060020a0388166000908152600f6020526040812054111561168957601a54600160a060020a0389166000908152600f602052604090204290910190555b60019850505050505050505090565b60065460009060ff1615156001146116af57600080fd5b600160a060020a0384166000908152600c602052604090205460ff16156116d557600080fd5b600160a060020a0383166000908152600c602052604090205460ff16156116fb57600080fd5b60018211801561170c575060035482105b151561171757600080fd5b600160a060020a0384166000908152600a602052604090205482111561173c57600080fd5b600160a060020a0384166000908152600a6020526040902054611765908363ffffffff61334216565b600160a060020a0385166000908152600a6020908152604080832093909355600b8152828220338352905220546117a2908363ffffffff61334216565b600160a060020a038086166000908152600b602090815260408083203384528252808320949094559186168152600a90915220546117e6908363ffffffff61333216565b600160a060020a038085166000818152600a60209081526040918290209490945580518681529051919392881692600080516020613ef783398151915292918290030190a35060019392505050565b600080600083118015611849575060048311155b151561185457600080fd5b5050600090815260176020526040902080546001909101549091565b6018602052600090815260409020805460019091015482565b60265481565b60025460ff1681565b600160a060020a0381166000908152600f6020526040812054600211156118c1575060006113ee565b50600160a060020a0381166000908152600f60205260409020546113ee565b601554600160a060020a031633146118f757600080fd5b6119018282613763565b5050565b601f54602054600754600854601080546000918291829182918290811061192857fe5b906000526020600020015493506010600181548110151561194557fe5b906000526020600020015492506010600281548110151561196257fe5b906000526020600020015491506010600381548110151561197f57fe5b906000526020600020015490509091929394959697565b601a54600454600554601c54601d54601e5494959394929391929091565b601454600090600160a060020a031633146119ce57600080fd5b6001821180156119de5750600183115b80156119eb575060108311155b15611a025750602782905560288190556001611368565b506000611368565b600e6020526000908152604090205460ff1681565b601954601a54600454602654929391929091565b60095481565b6014546000908190600160a060020a03163314611a5557600080fd5b5060009050805b8351811015611b9057611ac18382815181101515611a7657fe5b90602001906020020151600a60008785815181101515611a9257fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61334216565b600a60008684815181101515611ad357fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251611b1f90849083908110611b0857fe5b60209081029091010151839063ffffffff61333216565b915030600160a060020a03168482815181101515611b3957fe5b90602001906020020151600160a060020a0316600080516020613ef78339815191528584815181101515611b6957fe5b906020019060200201516040518082815260200191505060405180910390a3600101611a5c565b306000908152600a6020526040902054611bb0908363ffffffff61333216565b306000908152600a602052604090205550505050565b600d60205260009081526040902054600160a060020a031681565b600160a060020a0381166000908152601660205260408120548190819081908190811015611c6f57600160a060020a038616600090815260166020526040902060040154611c3690429063ffffffff61334216565b601e54601c549194509250831015611c4e57601d5491505b50600160a060020a0385166000908152601660205260409020546064908202045b95945050505050565b60226020526000908152604090205481565b602960205260009081526040902054600160a060020a031681565b600080600080600080600080611cb9613e51565b600160a060020a038a166000908152600a6020526040902054985089611cde81611f91565b9850600f600082600160a060020a0316600160a060020a031681526020019081526020016000205497506004549650600a600030600160a060020a0316600160a060020a031681526020019081526020016000205495506023600082600160a060020a0316600160a060020a031681526020019081526020016000205494506021600082600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a900460ff1693506022600082600160a060020a0316600160a060020a031681526020019081526020016000205492506016600082600160a060020a0316600160a060020a0316815260200190815260200160002060000154826000600a81101515611df257fe5b60209081029190910191909152600160a060020a0382166000818152601680845260408083206004810154888701526001810154918801919091526002810154606088015260038101546080880152929091529091526005015460a0830152611e5a81611f91565b60c0830152611e6881611be1565b60e0830152602654610100830152611e7f8161269d565b61012083015250979996985094969395929491939092565b601454600090600160a060020a03163314611eb157600080fd5b60048411158015611ec3575060018410155b1515611ece57600080fd5b600083118015611ede5750600082115b1515611ee957600080fd5b50604080518082018252928352602080840192835260009485526017905290922090518155905160019182015590565b6010805482908110611f2757fe5b600091825260209091200154905081565b601454600160a060020a03163314611f4f57600080fd5b60008411611f5c57600080fd5b602654600010611f6b57600080fd5b601993909355601a91909155600455602655565b60116020526000908152604090205481565b600160a060020a03163190565b60085481565b600160a060020a03166000908152600a602052604090205490565b60055481565b60195481565b60045481565b601c54601d54601e5483565b60236020526000908152604090205481565b601454600160a060020a031681565b303190565b600f6020526000908152604090205481565b600080600080612023613e71565b61202b613e71565b600160a060020a0387166000908152601260209081526040808320600180855281845282852054600280875284872054838852929093019094528285205491855291842054929950909750955093508080805b601081101561210557600160a060020a038b1660009081526012602090815260408083206001850184529091529020548682601081106120ba57fe5b60209081029190910191909152600160a060020a038c166000908152601282526040808220600185810184520190925220548582601081106120f857fe5b602002015260010161207e565b600160a060020a038b1660009081526011602052604090205493506121298b611898565b92506010600281548110151561213b57fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060028552600101909252912054108015906121b5575060108054600390811061218357fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060018086520190925291205410155b156121bf57600191505b6010805460009081106121ce57fe5b6000918252602080832090910154600160a060020a038e1683526012825260408084206002855260010190925291205410801590612248575060108054600190811061221657fe5b6000918252602080832090910154600160a060020a038e16835260128252604080842060018086520190925291205410155b1561225257600291505b509193959799909294969850565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156112c45780601f10611299576101008083540402835291602001916112c4565b601354600090600160a060020a031615156122d557600080fd5b601354600160a060020a031633146122ec57600080fd5b6122f7848484613856565b506001949350505050565b6014546000908190600160a060020a0316331461231e57600080fd5b50506027546028549091565b6006546000908190819081908190819060ff161515600114801561235e5750336000908152600c602052604090205460ff16155b151561236957600080fd5b600160005260176020527ff36d6bc9642eb6fb6ee9998b09ce990566df752ab06e11f8de7ab633bbd57b8f5433965087108015906123bf5750600160a060020a0386166000908152600a60205260409020548711155b15156123ca57600080fd5b600160a060020a0386166000908152600c602052604090205460ff16156123f057600080fd5b600160a060020a038087166000908152600d6020526040902054169450859350600192505b6010831161252c57600160a060020a03851615801590612447575083600160a060020a031685600160a060020a031614155b1561251c57600160a060020a0386166000908152601b602052604090205460ff161580156124755750826001145b156124d257600160a060020a039485166000818152601260209081526040808320878452600190810183528184208054820190558a8a168452601b8352818420805460ff19169091179055928252600d9052205490941693612521565b6002831061251c57600160a060020a0380861660008181526012602090815260408083208884526001908101835281842080549091019055928252600d9052205416949350612521565b61252c565b600190920191612415565b50600160a060020a038516600090815260166020526040902080548701815560018101805488019055426004918201555b6001811061259e576000818152601760205260409020548710612595576000818152601760205260409020600101548702915061259e565b6000190161255d565b50600160a060020a0390941660008181526016602090815260408083206002018054909801909755600a8152868220805489900390553082528682208054909801909755601a54918152600f9096529390942042909301909255505050565b601454600090600160a060020a0316331461261757600080fd5b600160a060020a038216158015906126385750600160a060020a0382163014155b151561264357600080fd5b5060258054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff199091161790556001919050565b602480548290811061268357fe5b600091825260209091200154600160a060020a0316905081565b602554600090600160a060020a031615156126b757600080fd5b602554604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152915191909216916370a082319160248083019260209291908290030181600087803b15801561271f57600080fd5b505af1158015612733573d6000803e3d6000fd5b505050506040513d602081101561274957600080fd5b505192915050565b601660205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b6000612793338484613856565b5060019392505050565b601354600160a060020a031681565b60075481565b6017602052600090815260409020805460019091015482565b600c6020526000908152604090205460ff1681565b600654600090819060ff1615156127f657600080fd5b6000831180156128155750336000908152600a60205260409020548311155b151561282057600080fd5b602554600160a060020a0316151561283757600080fd5b602654670de0b6b3a7640000908402602554604080517fcfa860c300000000000000000000000000000000000000000000000000000000815233600482015293909204602484018190529151919350600160a060020a03169163cfa860c39160448083019260209291908290030181600087803b1580156128b757600080fd5b505af11580156128cb573d6000803e3d6000fd5b505050506040513d60208110156128e157600080fd5b5050336000818152600a60209081526040918290208054879003905581518681529151309392600080516020613ef783398151915292908290030190a3600191505b50919050565b601454600160a060020a0316331461294057600080fd5b601f88905560208781556007879055600886905560408051608081018252868152918201859052810183905260608101829052612981906010906004613e91565b505050505050505050565b60216020526000908152604090205460ff1681565b601554600160a060020a031681565b602554600160a060020a031681565b601454600090600160a060020a031633146129d957600080fd5b60018410156129e757600080fd5b6000831180156129f75750600082115b8015612a04575060648211155b1515612a0f57600080fd5b50604080518082018252928352602080840192835260009485526018905290922090518155905160019182015590565b601554600160a060020a03163314612a5657600080fd5b6119018282613d0f565b600160a060020a039182166000908152600b6020908152604080832093909416825291909152205490565b601454600160a060020a03163314612aa257600080fd5b601454600160a060020a03828116911614801590612ac85750600160a060020a03811615155b1515612ad357600080fd5b6014805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6014546000908190600160a060020a03163314612b1e57600080fd5b5060009050805b8351811015612c4257612b8a8382815181101515612b3f57fe5b90602001906020020151600a60008785815181101515612b5b57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61333216565b600a60008684815181101515612b9c57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251612bd190849083908110611b0857fe5b91508381815181101515612be157fe5b90602001906020020151600160a060020a031630600160a060020a0316600080516020613ef78339815191528584815181101515612c1b57fe5b906020019060200201516040518082815260200191505060405180910390a3600101612b25565b306000908152600a6020526040902054611bb0908363ffffffff61334216565b60608060008060608060005b602454841015612cca5760216000602486815481101515612c8b57fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615612cbf576001909401935b600190930192612c6e565b84604051908082528060200260200182016040528015612cf4578160200160208202803883390190505b50925084604051908082528060200260200182016040528015612d21578160200160208202803883390190505b5091505b602454811015612e1b5760216000602483815481101515612d4257fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615612e1357602480546000199096019582908110612d8457fe5b6000918252602090912001548351600160a060020a0390911690849087908110612daa57fe5b600160a060020a039092166020928302909101909101526024805460229160009184908110612dd557fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020548251839087908110612e0857fe5b602090810290910101525b600101612d25565b50909590945092505050565b306000908152600a60205260408120546003548291612e4c919063ffffffff61334216565b915060095490509091565b601454600160a060020a03163314612e6e57600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b60065460ff1681565b600160a060020a039081166000908152600d60205260409020541690565b600654600090819081908190819060ff1615156001148015612f2b5750336000908152600c602052604090205460ff16155b1515612f3657600080fd5b3360009081526016602052604081205411612f5057600080fd5b33600090815260166020526040902060040154612f7490429063ffffffff61334216565b601e54601c549195509350841015612f8c57601d5492505b336000908152601660205260409020546064848202049250612fae9083613342565b9050612fb933613e0f565b50306000908152600a6020526040902054811115612fd657600080fd5b336000818152600a6020908152604080832080548601905530808452928190208054869003905580518581529051600080516020613ef7833981519152929181900390910190a3600194505050505090565b601454600090600160a060020a0316331461304257600080fd5b600160a060020a038216158015906130735750600160a060020a03821660009081526021602052604090205460ff16155b151561307e57600080fd5b50600160a060020a03166000818152602160205260408120805460ff1916600190811790915560248054808301825592527f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec4909101805473ffffffffffffffffffffffffffffffffffffffff191690921790915590565b601454600160a060020a0316331461310c57600080fd5b6006805460ff1916911515919091179055565b601a54600160a060020a0382166000908152600f602052604081205490914203108015906131645750600160a060020a0382166000908152600f602052604090205415155b15613171575060016113ee565b5060006113ee565b600654600090819060ff16151561318f57600080fd5b6000831161319c57600080fd5b602554600160a060020a031615156131b357600080fd5b826131bd3361269d565b106132dd5760265483670de0b6b3a7640000028115156131d957fe5b602554604080517fed619eb8000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051939092049350600160a060020a03169163ed619eb8916044808201926020929091908290030181600087803b15801561324a57600080fd5b505af115801561325e573d6000803e3d6000fd5b505050506040513d602081101561327457600080fd5b5050306000908152600a6020526040902054811061329157600080fd5b336000818152600a6020908152604080832080548601905530808452928190208054869003905580518781529051600080516020613ef7833981519152929181900390910190a36132e6565b60009150612923565b50600192915050565b601454600160a060020a0316331461330657600080fd5b600593909355604080516060810182528381526020810183905201839052601c91909155601d55601e55565b8181018281101561136857600080fd5b60008282111561335157600080fd5b50900390565b600160a060020a03808316600090815260296020526040812054909116801561279357600160a060020a03811660009081526022602052604090208054840190555060019392505050565b600080808084116133b257600080fd5b600160a060020a03851660009081526016602052604090206001015415156133dc5781925061356e565b600160a060020a0385166000908152601660205260409020600381015460029091015461340e9163ffffffff61334216565b90508381116134295761342085613e0f565b508091506134ee565b600160a060020a03851660009081526016602052604081205485935011156134cc57600160a060020a0385166000908152601660205260409020548410156134b257600160a060020a038516600090815260166020526040902054613494908563ffffffff61334216565b600160a060020a0386166000908152601660205260409020556134cc565b600160a060020a0385166000908152601660205260408120555b600160a060020a03851660009081526016602052604090206003018054830190555b306000908152600a602052604090205482111561350a57600080fd5b600160a060020a0385166000818152601660209081526040808320600501805487019055600a825280832080548701905530808452928190208054879003905580518681529051600080516020613ef7833981519152929181900390910190a38192505b505092915050565b6000808080841161358657600080fd5b600160a060020a03851660009081526011602052604090208054850190556010805460029081106135b357fe5b6000918252602080832090910154600160a060020a0388168352601282526040808420600285526001019092529120541080159061362d57506010805460039081106135fb57fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060018086520190925291205410155b156122f757601f54600754600160a060020a038716600090815260116020526040902054919350606491020490506010600081548110151561366b57fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060028552600101909252912054108015906136e557506010805460019081106136b357fe5b6000918252602080832090910154600160a060020a038816835260128252604080842060018086520190925291205410155b1561371557505060208054600854600160a060020a03861660009081526011909352604090922054909160649102045b600160a060020a03851660009081526011602052604090205482116122f75761373e85826133a2565b50600160a060020a038516600090815260116020526040812055506001949350505050565b600160a060020a0382166000908152600c602052604090205460ff161561378957600080fd5b60065460ff16151560011461379d57600080fd5b306000908152600a602052604090205481106137b857600080fd5b600160a060020a0382166000908152600a60205260409020546137e1908263ffffffff61333216565b600160a060020a0383166000908152600a6020526040808220929092553081522054613813908263ffffffff61334216565b306000818152600a60209081526040918290209390935580518481529051600160a060020a03861693600080516020613ef7833981519152928290030190a35050565b600160a060020a0383166000908152600c602052604081205481908190819081908190819060ff161561388857600080fd5b600160a060020a0389166000908152600c602052604090205460ff16156138ae57600080fd5b60065460ff1615156001146138c257600080fd5b6005546064908902600160a060020a038c166000908152600a6020526040902054919004965088870195508511156138f957600080fd5b60008811801561390a575060035488105b151561391557600080fd5b600160a060020a038916151561392a57600080fd5b600160a060020a038a8116908a16141561394357600080fd5b600160a060020a03808a166000818152600a60209081526040808320548f8616845281842054948452600d9092529091205491899003019550161580156139a75750600160a060020a038a81166000908152600d60205260409020548116908a1614155b15613bc95789600d60008b600160a060020a0316600160a060020a0316815260200190815260200160002060006101000a815481600160a060020a030219169083600160a060020a03160217905550600d60008a600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169250602160006029600086600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a900460ff1615613ae457600160a060020a03808416600090815260296020526040808220548c841683529120805473ffffffffffffffffffffffffffffffffffffffff1916919092161790555b600160a060020a03831660009081526021602052604090205460ff1615613b4157600160a060020a038981166000908152602960205260409020805473ffffffffffffffffffffffffffffffffffffffff19169185169190911790555b5087905060015b60108111613bc957600160a060020a03831615801590613b7a575081600160a060020a031683600160a060020a031614155b15613bbc57600160a060020a038084166000818152601260209081526040808320868452825280832080546001019055928252600d9052205416929150613bc1565b613bc9565b600101613b48565b600160a060020a038a166000908152600a6020526040902054613bf2908663ffffffff61334216565b600160a060020a038b166000908152600a6020526040808220929092553081522054613c24908763ffffffff61333216565b306000908152600a602052604080822092909255600160a060020a038b1681522054613c56908963ffffffff61333216565b600160a060020a03808b166000908152600a602090815260409182902093909355805189815290513093928e1692600080516020613ef7833981519152928290030190a388600160a060020a03168a600160a060020a0316600080516020613ef78339815191528a6040518082815260200191505060405180910390a3600160a060020a03808a166000908152600a602052604080822054928d168252902054018414613cff57fe5b5060019998505050505050505050565b600160a060020a0382166000908152600c602052604090205460ff1615613d3557600080fd5b60065460ff161515600114613d4957600080fd5b600160a060020a0382166000908152600a60205260409020548110613d6d57600080fd5b600160a060020a0382166000908152600a6020526040902054613d96908263ffffffff61334216565b600160a060020a0383166000908152600a6020526040808220929092553081522054613dc8908263ffffffff61333216565b306000818152600a602090815260409182902093909355805184815290519192600160a060020a03861692600080516020613ef78339815191529281900390910190a35050565b600160a060020a031660009081526016602090815260408083208381556001808201859055600382018590556002909101849055600f90925282209190915590565b61014060405190810160405280600a906020820280388339509192915050565b610200604051908101604052806010906020820280388339509192915050565b828054828255906000526020600020908101928215613ecc579160200282015b82811115613ecc578251825591602001919060010190613eb1565b50613ed8929150613edc565b5090565b61137291905b80821115613ed85760008155600101613ee25600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058201c431d65e5b5850ec15a14cc596d361c9e647c78341d8f16e47645ea7c8345740029

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

0000000000000000000000003152089a1700abdf66dfe45159069e814be6c2940000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000d0000000000000000000000004aeb3d07101bc6b5b85723143aeb8f230961b5ed000000000000000000000000e7526fa8ea297ff0c49bd1d708abd104c2355b6a00000000000000000000000000ad0c1ea42c832303d249a006a4a5b8cd5f738100000000000000000000000066ba4d733c60116a5c217f51f8dc414230334d230000000000000000000000009b7aba0ca90e318ebd414023fd53e22bdde74a7f000000000000000000000000e27d6ce787f1c704ae89a0f1a8fcd7d5aca183da000000000000000000000000cd3c7c5b41e8ff4471ab2ce1d8b117be48e813b5000000000000000000000000ad2da2a5259dbde4ab1487880fb8a871c6e04e06000000000000000000000000ff1b6f20291f6889663692c9b7281e0e7b2f8250000000000000000000000000aae907903dc65fd07b8b3ce20d2085aedd9d91880000000000000000000000008264ab8d3423574e64c27b15bec9ae79000bcbb3000000000000000000000000cfa67f8c5aa513457738188e9f7e3e6d4682f0d8000000000000000000000000b361addedc0cbb5d8d93808564049b6cfebddd38

-----Decoded View---------------
Arg [0] : _ettAddress (address): 0x3152089A1700abdF66dfE45159069E814BE6C294
Arg [1] : _supernodes (address[]): 0x4aEB3D07101BC6B5b85723143AeB8f230961b5eD,0xE7526fa8Ea297Ff0c49Bd1d708AbD104c2355b6A,0x00ad0C1eA42C832303D249A006a4A5B8CD5f7381,0x66ba4D733c60116A5c217F51f8DC414230334d23,0x9B7abA0Ca90e318eBd414023fD53E22BdDe74A7f,0xE27d6cE787F1C704Ae89A0F1a8FCD7d5acA183da,0xCd3c7C5B41E8FF4471AB2ce1D8B117be48e813B5,0xad2DA2a5259Dbde4Ab1487880fB8a871c6e04e06,0xff1b6F20291f6889663692C9b7281e0e7b2F8250,0xAaE907903dC65Fd07B8B3cE20d2085aEdD9D9188,0x8264Ab8D3423574E64c27B15BEC9AE79000bCBB3,0xcfa67f8c5aA513457738188E9F7E3e6D4682F0d8,0xb361ADDedC0cBB5D8D93808564049B6CFebdDd38

-----Encoded View---------------
16 Constructor Arguments found :
Arg [0] : 0000000000000000000000003152089a1700abdf66dfe45159069e814be6c294
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 000000000000000000000000000000000000000000000000000000000000000d
Arg [3] : 0000000000000000000000004aeb3d07101bc6b5b85723143aeb8f230961b5ed
Arg [4] : 000000000000000000000000e7526fa8ea297ff0c49bd1d708abd104c2355b6a
Arg [5] : 00000000000000000000000000ad0c1ea42c832303d249a006a4a5b8cd5f7381
Arg [6] : 00000000000000000000000066ba4d733c60116a5c217f51f8dc414230334d23
Arg [7] : 0000000000000000000000009b7aba0ca90e318ebd414023fd53e22bdde74a7f
Arg [8] : 000000000000000000000000e27d6ce787f1c704ae89a0f1a8fcd7d5aca183da
Arg [9] : 000000000000000000000000cd3c7c5b41e8ff4471ab2ce1d8b117be48e813b5
Arg [10] : 000000000000000000000000ad2da2a5259dbde4ab1487880fb8a871c6e04e06
Arg [11] : 000000000000000000000000ff1b6f20291f6889663692c9b7281e0e7b2f8250
Arg [12] : 000000000000000000000000aae907903dc65fd07b8b3ce20d2085aedd9d9188
Arg [13] : 0000000000000000000000008264ab8d3423574e64c27b15bec9ae79000bcbb3
Arg [14] : 000000000000000000000000cfa67f8c5aa513457738188e9f7e3e6d4682f0d8
Arg [15] : 000000000000000000000000b361addedc0cbb5d8d93808564049b6cfebddd38


Swarm Source

bzzr://1c431d65e5b5850ec15a14cc596d361c9e647c78341d8f16e47645ea7c834574

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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