Contract Overview
![]() |
|
---|---|
Balance: | 61.38 Ether |
Transactions: | 78 txns |
Token Tracker: | AiKey (AiKey) |
Misc: |
|
|
Contract Creator: | 0x5d997497a6dba2df9d0d6b12d42e05d9e4ae2070at txn 0x29d3e60cba0755cce267d0d5c130d444961f8671ddd88b662e862bbdde03c1a1 | |
Token Balance: |
|
ParentTxHash | Block | Age | From | To | Value | |
---|---|---|---|---|---|---|
0x3b9f811bf34e8c372d9e7f6ea7ae0992c36d2cd536e85c3f54bbf3604939189a | 4878822 | 24 days 10 hrs ago | 0xeed2a2ce9f6ee701b728bf01833fc80045412f81 | 0x321d18a685b088453ec8294d6be0b6a2d1cd85ad | 0.08 Ether | |
0xa67e640d263b2593ded0e6dccda992f037e03e31b55f516c5f6be2b86c0d08c0 | 4878769 | 24 days 11 hrs ago | 0xeed2a2ce9f6ee701b728bf01833fc80045412f81 | 0x5d997497a6dba2df9d0d6b12d42e05d9e4ae2070 | 10 Ether | |
0x90e0d3fb090e669450212c5f1723be53b22f0ef29f00e506f3a1fe21222f3c20 | 4878631 | 24 days 11 hrs ago | 0xeed2a2ce9f6ee701b728bf01833fc80045412f81 | 0x5d997497a6dba2df9d0d6b12d42e05d9e4ae2070 | 1 Ether | |
0x15ef90609852bde1dd053ea7c91d0c9a6e6f45f8fda3213c7575bff96ce460f5 | 4872767 | 25 days 11 hrs ago | 0xeed2a2ce9f6ee701b728bf01833fc80045412f81 | 0x7072034a40df0688b12e2d7a766f6bc0f8a7c832 | 0.03 Ether | |
0xa4b2a86fc39f4c031cbdee1465cf92a71598eb372ec2446a450574db5c89b2c2 | 4871685 | 25 days 14 hrs ago | 0xeed2a2ce9f6ee701b728bf01833fc80045412f81 | 0x5d997497a6dba2df9d0d6b12d42e05d9e4ae2070 | 0.01 Ether |
Contract Name: | AiToken |
Compiler Version: | v0.4.24+commit.e67f0147 |
Optimization Enabled: | Yes |
Runs (Optimiser): | 200 |
pragma solidity ^ 0.4.24; 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 ApproveAndCallFallBack { function receiveApproval(address from, uint256 tokens, address token, bytes data) public; } contract Owned { address public owner; address public newOwner; event OwnershipTransferred(address indexed _from, address indexed _to); constructor() public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } function transferOwnership(address _newOwner) public onlyOwner { newOwner = _newOwner; } function acceptOwnership() public { require(msg.sender == newOwner); emit OwnershipTransferred(owner, newOwner); owner = newOwner; newOwner = address(0); } } // ---------------------------------------------------------------------------- // 核心类 // ---------------------------------------------------------------------------- contract AiToken is ERC20Interface, Owned { string public symbol; string public name; uint8 public decimals; uint _totalSupply; bool public actived; struct keyconf{ uint basekeynum;//5000 uint basekeysub;//5000 uint usedkeynum;//0 uint startprice;//0.01 uint keyprice;//0.01 uint startbasekeynum;//5000 } keyconf private keyconfig; uint[] public worksdata; uint public onceOuttime; uint8 public per; uint[] public pers; address[] public mansdata; uint[] public moneydata; uint[] public timedata; uint public pubper; uint public subper; uint public luckyper; uint public lastmoney; uint public lastper; uint public lasttime; uint public sellkeyper; //bool public isend; uint public tags; //uint public opentime; uint public runper; uint public sellper; uint public sellupper; uint public sysday; uint public cksysday; //uint public nulldayeth; mapping(uint => mapping(uint => uint)) allprize; //uint public allprizeused; mapping(address => uint) balances; mapping(address => mapping(address => uint)) allowed; mapping(address => bool) public frozenAccount; struct usercan{ uint eths; uint used; uint len; uint adds; uint[] times; uint[] moneys; //uint[] amounts; } mapping(address => usercan) mycan; mapping(address => usercan) myrun; struct userdata{ uint systemtag; uint tzs; uint usereths; uint userethsused; uint mylevelid; uint mykeysid; uint mykeyeths; uint prizecount; address fromaddr; //uint[] suns; mapping(uint => uint) mysunsdaynum; mapping(uint => uint) myprizedayget; mapping(uint => uint) daysusereths; mapping(uint => uint) daysuserdraws; mapping(uint => uint) daysuserlucky; mapping(uint => uint) levelget; mapping(uint => bool) hascountprice; } mapping(address => userdata) my; mapping(address => uint) mysunmoney; struct sunsdata{ uint t1; uint t2; uint t3; uint t4; uint t5; uint t6; uint t7; } mapping(address => sunsdata) suns; //与用户钥匙id对应 mapping(uint => address) public myidkeys; //all once day get all mapping(uint => uint) public daysgeteths; mapping(uint => uint) public dayseths; //user once day pay mapping(uint => uint) public daysysdraws; struct tagsdata{ uint ethnum;//用户总资产 uint sysethnum;//系统总eth uint userethnum;//用户总eth uint userethnumused;//用户总eth uint syskeynum;//系统总key } mapping(uint => tagsdata) tg; mapping(address => bool) mangeruser; mapping(address => uint) mangerallowed; string private version; string private downurl; string private notices; uint public hasusednum; uint[] private nullworker; uint[] private defworkper; uint[] private defworkper2; uint public defkeynum; uint public currentkeyid; uint public initkeyid; mapping(uint => uint) public cuid; struct tndata{ uint cid;//1110000001 uint sellid; uint selltime; uint sellmoney; } mapping(address => tndata) tnode; /* 通知 */ event Transfer(address indexed from, address indexed to, uint tokens); event Approval(address indexed tokenOwner, address indexed spender, uint tokens); event FrozenFunds(address target, bool frozen); event ethchange(address indexed from, address indexed to, uint tokens); modifier onlySystemStart() { require(actived == true); require(tags == my[msg.sender].systemtag); require(!frozenAccount[msg.sender]); _; } constructor() public { symbol = "AiKey"; name = "AiKey"; decimals = 18; _totalSupply = 100000000 ether; actived = true; tags = 0; tg[0] = tagsdata(0,0,0,0,0); //keyconfig.currentkeyid = 0; //keyconfig.keyidarr = [10055555,20055555,30055555,40055555,50055555,60055555,70055555,80055555,90055555]; nullworker = [0,0,0,0,0,0,0,0,0]; worksdata = [0,0,0,0,0,0,0,0,0]; defworkper = [2,3,5]; defworkper2 = [10,8]; defkeynum = 1000000000; currentkeyid = 10000; initkeyid = 10000; runper = 10; //mans = [30,20,10,10,10,10,10]; //mms = [2 ether, 10 ether, 30 ether]; pers = [30,20,10,5,5,5,5]; //prizeper = [2,2,2]; //prizeactivetime = [0,0,0]; pubper = 1; subper = 120; luckyper = 5; lastmoney = 0; lastper = 1; sellkeyper = 70; sellper = 5; sellupper = 50; //leveldata = [0,0,0]; //onceOuttime = 24 hours; onceOuttime = 10 seconds;//test //keyconfig.basekeynum = 5000 ether;//4500 //keyconfig.basekeysub = 5000 ether;//500 keyconfig.usedkeynum = 1;//0 keyconfig.startprice = 100 szabo;// keyconfig.keyprice = 100 szabo;// //keyconfig.startbasekeynum = 5000 ether;//4500 keyconfig.basekeynum = 5000 ether;//4500 test keyconfig.basekeysub = 5000 ether;//500 test keyconfig.startbasekeynum = 5000 ether;//4500 test per = 5; /* prizelevelsuns = [20,30,50]; prizelevelmans = [100,300,800]; prizelevelsunsday = [1,3,5]; prizelevelmoneyday = [9 ether,29 ether,49 ether];*/ //lasttime = 8 hours; lasttime = 60 seconds;//test //sysday = 1 days; sysday = 180 seconds;//test //cksysday = 8 hours;//test cksysday = 0; version = '1.01'; balances[this] = _totalSupply; emit Transfer(address(0), this, _totalSupply); } function balanceOf(address tokenOwner) public view returns(uint balance) { return balances[tokenOwner]; } function showlvzhou(address user) public view returns( uint total, uint mykeyid, uint mytzs, //uint daysget, uint prizeget, uint mycans, uint mykeynum, uint keyprices, uint ltkeynum, uint tagss, uint mytags, uint sruns, uint srunscan ){ total = tg[tags].ethnum;//0 mykeyid = my[user].mykeysid;//1 mytzs = my[user].tzs;//2 //daysget = my[user].tzs*per/1000;//3 prizeget = my[user].prizecount;//3 mycans = getcanuse(user);//4 mykeynum = balanceOf(user);//5 keyprices = getbuyprice();//6 ltkeynum = leftnum();//7 tagss = tags;//8 mytags = my[user].systemtag;//9 sruns = myrun[user].eths;//10 srunscan = getcanuserun(user);//11 } function showteam(address user) public view returns( uint daysnum,//0 uint dayseth,//1 uint daysnum1,//2 uint dayseth1,//3 uint man1,//4 uint man2,//5 uint man3,//6 uint man4,//7 uint man5,//8 uint man6,//9 uint man7//10 ){ uint d = gettoday(); uint t = getyestoday(); daysnum = my[user].mysunsdaynum[d];//5 dayseth = my[user].myprizedayget[d];//6 daysnum1 = my[user].mysunsdaynum[t];//5 dayseth1 = my[user].myprizedayget[t];//6 man1 = suns[user].t1;//2 man2 = suns[user].t2;//3 man3 = suns[user].t3;//4 man4 = suns[user].t4;//4 man5 = suns[user].t5;//4 man6 = suns[user].t6;//4 man7 = suns[user].t7;//4 } function showethconf(address user) public view returns( uint todaymyeth, uint todaymydraw, uint todaysyseth, uint todaysysdraw, uint yestodaymyeth, uint yestodaymydraw, uint yestodaysyseth, uint yestodaysysdraw ){ uint d = gettoday(); uint t = getyestoday(); todaymyeth = my[user].daysusereths[d]; todaymydraw = my[user].daysuserdraws[d]; todaysyseth = dayseths[d]; todaysysdraw = daysysdraws[d]; yestodaymyeth = my[user].daysusereths[t]; yestodaymydraw = my[user].daysuserdraws[t]; yestodaysyseth = dayseths[t]; yestodaysysdraw = daysysdraws[t]; } function showprize(address user) public view returns( uint lttime,//0 uint ltmoney,//1 address ltaddr,//2 uint lastmoneys,//3 address lastuser,//4 uint luckymoney,//5 address luckyuser,//6 uint luckyget//7 ){ if(timedata.length > 0) { lttime = timedata[timedata.length - 1];//1 }else{ lttime = 0; } if(moneydata.length > 0) { ltmoney = moneydata[moneydata.length - 1];//2 }else{ ltmoney = 0; } if(mansdata.length > 0) { ltaddr = mansdata[mansdata.length - 1];//3 }else{ ltaddr = address(0); } lastmoneys = lastmoney; lastuser = getlastuser(); uint d = getyestoday(); if(dayseths[d] > 0) { luckymoney = dayseths[d]*luckyper/1000; luckyuser = getluckyuser(); luckyget = my[user].daysuserlucky[d]; } } function interuser(address user) public view returns( uint skeyid, uint stzs, uint seths, uint sethcan, uint sruns, uint srunscan, uint skeynum ){ skeyid = my[user].mykeysid;//0 stzs = my[user].tzs;//1 seths = mycan[user].eths;//2 sethcan = getcanuse(user);//3 sruns = myrun[user].eths;//4 srunscan = getcanuserun(user);//5 skeynum = balances[user];//6 } function showworker() public view returns( uint w0, uint w1, uint w2, uint w3, uint w4, uint w5, uint w6, uint w7, uint w8 ){ w0 = worksdata[0]; w1 = worksdata[1]; w2 = worksdata[2]; w3 = worksdata[3]; w4 = worksdata[4]; w5 = worksdata[5]; w6 = worksdata[6]; w7 = worksdata[7]; w8 = worksdata[8]; } function addmoney(address _addr, uint256 _money, uint _day) private returns(bool){ mycan[_addr].eths += _money; mycan[_addr].len++; //mycan[_addr].amounts.push(_amount); mycan[_addr].moneys.push(_money); if(_day > 0){ mycan[_addr].times.push(0); }else{ mycan[_addr].times.push(now); } } function reducemoney(address _addr, uint256 _money) private returns(bool){ if(mycan[_addr].eths >= _money && my[_addr].tzs >= _money) { mycan[_addr].used += _money; mycan[_addr].eths -= _money; my[_addr].tzs -= _money; return(true); }else{ return(false); } } function addrunmoney(address _addr, uint256 _money, uint _day) private { myrun[_addr].eths += _money; myrun[_addr].len++; //myrun[_addr].amounts.push(_amount); myrun[_addr].moneys.push(_money); if(_day > 0){ myrun[_addr].times.push(0); }else{ myrun[_addr].times.push(now); } } function reducerunmoney(address _addr, uint256 _money) private { myrun[_addr].eths -= _money; myrun[_addr].used += _money; } function getcanuse(address user) public view returns(uint _left) { if(mycan[user].len > 0) { for(uint i = 0; i < mycan[user].len; i++) { uint stime = mycan[user].times[i]; if(stime == 0) { _left += mycan[user].moneys[i]; }else{ if(now - stime >= onceOuttime) { uint smoney = mycan[user].moneys[i] * ((now - stime)/onceOuttime) * per/ 1000; if(smoney <= mycan[user].moneys[i]){ _left += smoney; }else{ _left += mycan[user].moneys[i]; } } } } } _left += mycan[user].adds; if(_left < mycan[user].used) { return(0); } if(_left > mycan[user].eths) { return(mycan[user].eths); } return(_left - mycan[user].used); } function getcanuserun(address user) public view returns(uint _left) { if(myrun[user].len > 0) { for(uint i = 0; i < myrun[user].len; i++) { uint stime = myrun[user].times[i]; if(stime == 0) { _left += myrun[user].moneys[i]; }else{ if(now - stime >= onceOuttime) { uint smoney = myrun[user].moneys[i] * ((now - stime)/onceOuttime) * per/ 1000; if(smoney <= myrun[user].moneys[i]){ _left += smoney; }else{ _left += myrun[user].moneys[i]; } } } } } if(_left < myrun[user].used) { return(0); } if(_left > myrun[user].eths) { return(myrun[user].eths); } return(_left - myrun[user].used); } function _transfer(address from, address to, uint tokens) private{ require(!frozenAccount[from]); require(!frozenAccount[to]); require(actived == true); require(from != to); require(to != 0x0); require(balances[from] >= tokens); require(balances[to] + tokens > balances[to]); uint previousBalances = balances[from] + balances[to]; balances[from] -= tokens; balances[to] += tokens; assert(balances[from] + balances[to] == previousBalances); emit Transfer(from, to, tokens); } function transfer(address _to, uint256 _value) public returns(bool){ _transfer(msg.sender, _to, _value); return(true); } function activekey() public returns(bool) { require(actived == true); address addr = msg.sender; uint keyval = 1 ether; require(balances[addr] >= keyval); require(my[addr].mykeysid < 1); if(balances[addr] == keyval) { keyval -= 1; } address top = my[addr].fromaddr; uint kid; uint topkeyid = my[top].mykeysid; if(top != address(0) && topkeyid > 0) { if(topkeyid < defkeynum) { kid = currentkeyid; currentkeyid++; }else{ uint d0; uint d1; uint d2; uint ld; (d0, d1, d2, ld) = chknodenumber(topkeyid); uint nodeid = d0*defkeynum + d1*defkeynum/10 + d2*defkeynum/100; if(cuid[nodeid] <= topkeyid) { cuid[nodeid] = topkeyid + 1; } kid = cuid[nodeid]; cuid[nodeid]++; } //kid = topkeyid + 1; }else{ if(currentkeyid == initkeyid) { tnode[addr] = tndata(0, defkeynum,now,1 ether); /* nodetop[0].cid = defkeynum; nodetop[0].fdata = tndata(0,defkeynum,now,100 ether); nodetop[0].per = defworkper;*/ } kid = currentkeyid; currentkeyid++; } require(myidkeys[kid] == address(0)); my[addr].mykeysid = kid; myidkeys[kid] = addr; balances[addr] -= keyval; balances[owner] += keyval; emit Transfer(addr, owner, keyval); return(true); } function setnodemoney(address addr, uint amount) private returns(bool){ uint mykid = my[addr].mykeysid; if(mykid > defkeynum) { uint d0; uint d1; uint d2; uint ld; (d0, d1, d2, ld) = chknodenumber(mykid); if(ld < 1) { uint nodeid3 = d0*defkeynum + d1*defkeynum/10 + d2*defkeynum/100;//1110000000 uint nodeid2 = d0*defkeynum + d1*defkeynum/10;//110000000 uint nodeid1 = d0*defkeynum;//1000000000 if(d1 == 0 && d2 == 0 && d0 > 0 && myidkeys[nodeid1] != address(0)) { addrunmoney(myidkeys[nodeid1], amount*defworkper2[0]/100,0); } else if(d2 == 0 && d1 > 0 && d0 > 0 && myidkeys[nodeid1] != address(0) && myidkeys[nodeid2] != address(0)) { addrunmoney(myidkeys[nodeid1], amount*defworkper[0]/100,0); addrunmoney(myidkeys[nodeid2], amount*defworkper2[1]/100,0); } else if(d2 > 0 && d1 > 0 && d0 > 0 && myidkeys[nodeid1] != address(0) && myidkeys[nodeid2] != address(0) && myidkeys[nodeid3] != address(0)) { addrunmoney(myidkeys[nodeid1], amount*defworkper[0]/100,0); addrunmoney(myidkeys[nodeid2], amount*defworkper[1]/100,0); addrunmoney(myidkeys[nodeid3], amount*defworkper[2]/100,0); } } } } function getnodeparam(address user) public view returns(uint ld,uint cid,uint nodeid){ uint keyid = my[user].mykeysid; cid = tnode[user].cid; uint d0; uint d1; uint d2; if(keyid == initkeyid) { d0 = 1; d1 = 0; d2 = 0; ld = 1; nodeid = (tnode[user].cid + 1)*defkeynum; } if(keyid >= defkeynum){ (d0, d1, d2, ld) = chknodenumber(keyid); if(ld > 0) { if(d1 < 1) { nodeid = d0*defkeynum + (tnode[user].cid + 1)*defkeynum/10; }else{ nodeid = d0*defkeynum + d1*defkeynum/10 + (tnode[user].cid + 1)*defkeynum/100; } } } } function gettnode(address addr) public view returns(uint cids, uint nid, uint t, uint m){ cids = tnode[addr].cid; nid = tnode[addr].sellid; t = tnode[addr].selltime; m = tnode[addr].sellmoney; } function sellnode(uint money) public returns(bool){ address user = msg.sender; (uint ld,uint cid, uint nodeid) = getnodeparam(user); require(nodeid > 0 && ld > 0 && ld < 3 && cid < 9); tnode[user] = tndata(cid, nodeid,now,money); } function getbuynode(address user) public view returns(uint nodeid,uint money) { address top = my[user].fromaddr; if(top != address(0) && my[top].mykeysid > 0) { uint ld; uint cid; (ld,cid, nodeid) = getnodeparam(top); if(ld > 0 && tnode[top].selltime > 0) { money = tnode[top].sellmoney; } } } function buynode(uint keyid) public payable returns(bool) { require(myidkeys[keyid] == address(0)); //tndata tn = tnode[user]; address addr = msg.sender; require(my[addr].mykeysid < 1); address top = my[addr].fromaddr; uint amount = msg.value; require(top != address(0)); require(my[top].mykeysid > 0); require(tnode[top].selltime > 1); require(amount >= tnode[top].sellmoney); require(addr.balance > amount); uint usekey = (amount*1 ether)/(10*keyconfig.keyprice); require(usekey <= balances[addr]); balances[addr] -= usekey; balances[owner] += usekey; emit Transfer(addr, owner, usekey); my[addr].mykeysid = keyid; myidkeys[keyid] = addr; top.transfer(amount); tnode[top].cid++; tnode[top].selltime = 1; } function chknodenumber(uint keyid) public view returns(uint d0, uint d1, uint d2, uint ld){ //uint keyid = my[_addr].mykeysid; if(keyid >= defkeynum){ //topkeyid 9928 uint n = keyid/defkeynum;//9 uint ln = keyid - (defkeynum*n);// 928 uint k10 = defkeynum/10;//100 uint k100 = defkeynum/100;//10 //uint k1000 = defkeynum/1000; if(ln < k10){//is root d0 = n; d1 = 0; d2 = 0; if(ln < 1) { ld = 1; }else{ ld = 0; } }else{ uint nn = ln/k10;//9 uint ln2 = ln - nn*k10;//28 if(ln2 < k100) { d0 = n; d1 = nn; d2 = 0; if(ln2 < 1) { ld = 2; }else{ ld = 0; } }else{ uint nnn = ln2/k100;//2 uint ln3 = ln2 - nnn*k100;//8 d0 = n; d1 = nn; d2 = nnn; if(ln3 < 1) { ld = 3; }else{ ld = 0; } } } }else{ return(0,0,0,0); } } function getfrom(address _addr) public view returns(address) { return(my[_addr].fromaddr); } function gettopid(address addr) public view returns(uint) { address topaddr = my[addr].fromaddr; if(topaddr == address(0)) { return(0); } uint keyid = my[topaddr].mykeysid; if(keyid > 0 && myidkeys[keyid] == topaddr) { return(keyid); }else{ return(0); } } function approve(address spender, uint tokens) public returns(bool success) { require(actived == true); allowed[msg.sender][spender] = tokens; emit Approval(msg.sender, spender, tokens); return true; } function transferFrom(address from, address to, uint tokens) public returns(bool success) { require(actived == true); require(!frozenAccount[from]); require(!frozenAccount[to]); balances[from] -= tokens; allowed[from][msg.sender] -= tokens; balances[to] += tokens; emit Transfer(from, to, tokens); return true; } function allowance(address tokenOwner, address spender) public view returns(uint remaining) { return allowed[tokenOwner][spender]; } function setactive(bool t) public onlyOwner{ actived = t; } function getyestoday() public view returns(uint d) { uint today = gettoday(); d = today - sysday; } function gettoday() public view returns(uint d) { uint n = now; d = n - n%sysday - cksysday; } function totalSupply() public view returns(uint) { return(_totalSupply - balances[this]); } function getbuyprice() public view returns(uint kp) { if(keyconfig.usedkeynum == keyconfig.basekeynum) { kp = keyconfig.keyprice + keyconfig.startprice; }else{ kp = keyconfig.keyprice; } } function leftnum() public view returns(uint num) { if(keyconfig.usedkeynum == keyconfig.basekeynum) { num = keyconfig.basekeynum + keyconfig.basekeysub; }else{ num = keyconfig.basekeynum - keyconfig.usedkeynum + 1; } } function getfromsun(address addr, uint money, uint amount) private returns(bool){ address f1 = my[addr].fromaddr; uint d = gettoday(); if(f1 != address(0) && f1 != addr) { addrunmoney(f1, (money*pers[0])/100, 0); my[f1].myprizedayget[d] += amount; setnodemoney(addr, amount); if(my[f1].mykeysid > defkeynum) { worksdata[((my[f1].mykeysid/defkeynum) - 1)] += amount; } address f2 = my[f1].fromaddr; if(f2 != address(0) && f2 != addr) { if(suns[f2].t1 > 1){ addrunmoney(f2, (money*pers[1])/100, 0); } my[f2].myprizedayget[d] += amount; address f3 = my[f2].fromaddr; if(f3 != address(0) && f3 != addr) { if(suns[f3].t1 > 2){ addrunmoney(f3, (money*pers[2])/100, 0); } my[f3].myprizedayget[d] += amount; address f4 = my[f3].fromaddr; if(f4 != address(0) && f4 != addr) { if(suns[f4].t1 > 3){ addrunmoney(f4,(money*pers[3])/100, 0); } my[f4].myprizedayget[d] += amount; address f5 = my[f4].fromaddr; if(f5 != address(0) && f5 != addr) { if(suns[f5].t1 > 4){ addrunmoney(f5, (money*pers[4])/100, 0); } my[f5].myprizedayget[d] += amount; address f6 = my[f5].fromaddr; if(f6 != address(0) && f6 != addr) { if(suns[f6].t1 > 5){ addrunmoney(f6, (money*pers[5])/100, 0); } my[f6].myprizedayget[d] += amount; address f7 = my[f6].fromaddr; if(f7 != address(0) && f7 != addr) { if(suns[f7].t1 > 6){ addrunmoney(f7, (money*pers[6])/100, 0); } my[f6].myprizedayget[d] += amount; } } } } } } } } function setpubprize(uint sendmoney) private returns(bool) { uint len = moneydata.length; if(len > 0) { uint all = 0; uint start = 0; uint m = 0; if(len > 3) { start = len - 3; } for(uint i = start; i < len; i++) { all += moneydata[i]; } //uint sendmoney = amount*pubper/100; for(; start < len; start++) { m = (sendmoney*moneydata[start])/all; addrunmoney(mansdata[start], m, 0); my[mansdata[start]].prizecount += m; } } return(true); } function getluckyuser() public view returns(address addr) { if(moneydata.length > 0){ uint d = gettoday(); uint t = getyestoday(); uint maxmoney = 1 ether; for(uint i = 0; i < moneydata.length; i++) { if(timedata[i] > t && timedata[i] < d && moneydata[i] >= maxmoney) { maxmoney = moneydata[i]; addr = mansdata[i]; } } } } function getluckyprize() onlySystemStart() public returns(bool) { address user = msg.sender; require(user != address(0)); require(user == getluckyuser()); uint d = getyestoday(); require(my[user].daysusereths[d] > 0); require(my[user].daysuserlucky[d] == 0); uint money = dayseths[d]*luckyper/1000; addrunmoney(user, money, 100); my[user].daysuserlucky[d] += money; my[user].prizecount += money; } function runtoeth(uint amount) onlySystemStart() public returns(bool) { address user = msg.sender; uint usekey = (amount*runper*1 ether)/(100*keyconfig.keyprice); require(usekey < balances[user]); //uint mu = getcanuse(user); require(getcanuserun(user) >= amount); require(my[user].tzs > getcanuse(user)); require(amount <= my[user].tzs - getcanuse(user)); balances[user] -= usekey; balances[owner] += usekey; emit Transfer(user, owner, usekey); reducerunmoney(user, amount); mycan[user].adds += amount; //addrunmoney(user, amount, 100); } function getlastuser() public view returns(address user) { if(timedata.length > 0) { if(lastmoney > 0 && now - timedata[timedata.length - 1] > lasttime) { user = mansdata[mansdata.length - 1]; } } } function getlastmoney() public returns(bool) { require(actived == true); address user = getlastuser(); require(user != address(0)); require(user == msg.sender); require(lastmoney > 0); require(lastmoney <= address(this).balance/2); user.transfer(lastmoney); lastmoney = 0; } function buy(uint keyid) onlySystemStart() public payable returns(bool) { address user = msg.sender; require(msg.value > 0); uint amount = msg.value; require(amount >= 100 finney); //require(amount%(100 finney) == 0); require(my[user].usereths <= 1000 ether); uint money = amount*3; uint d = gettoday(); //uint t = getyestoday(); bool ifadd = false; //if has no top if(my[user].fromaddr == address(0)) { address topaddr = myidkeys[keyid]; if(keyid > 0 && topaddr != address(0) && topaddr != user) { my[user].fromaddr = topaddr; suns[topaddr].t1++; my[topaddr].mysunsdaynum[d]++; //mysunmoney[topaddr] += amount; address top2 = my[topaddr].fromaddr; if(top2 != address(0) && top2 != user){ suns[top2].t2++; address top3 = my[top2].fromaddr; if(top3 != address(0) && top3 != user){ suns[top3].t3++; address top4 = my[top3].fromaddr; if(top4 != address(0) && top4 != user){ suns[top4].t4++; address top5 = my[top4].fromaddr; if(top5 != address(0) && top5 != user){ suns[top5].t5++; address top6 = my[top5].fromaddr; if(top6 != address(0) && top6 != user){ suns[top6].t6++; address top7 = my[top6].fromaddr; if(top7 != address(0) && top7 != user){ ++suns[top7].t7; } } } } } } ifadd = true; } }else{ ifadd = true; //mysunmoney[my[user].fromaddr] += amount; } if(ifadd == true) { money = amount*4; getfromsun(user, money, amount); } setpubprize(amount*pubper/100); mansdata.push(user); moneydata.push(amount); timedata.push(now); daysgeteths[d] += money; dayseths[d] += amount; tg[tags].sysethnum += amount; tg[tags].userethnum += amount; my[user].daysusereths[d] += amount; my[user].tzs += money; lastmoney += amount*lastper/100; tg[tags].ethnum += money; my[user].usereths += amount; addmoney(user, money, 0); return(true); } function buykey(uint buynum) onlySystemStart() public payable returns(bool){ uint money = msg.value; address user = msg.sender; require(buynum >= 1 ether); require(buynum%(1 ether) == 0); require(keyconfig.usedkeynum + buynum -1 <= keyconfig.basekeynum); require(money >= keyconfig.keyprice); require(user.balance >= money); require(mycan[user].eths > 0); require(((keyconfig.keyprice*buynum)/1 ether) == money); my[user].mykeyeths += money; tg[tags].sysethnum += money; tg[tags].syskeynum += buynum; if(keyconfig.usedkeynum + buynum -1 == keyconfig.basekeynum) { keyconfig.basekeynum = keyconfig.basekeynum + keyconfig.basekeysub; keyconfig.usedkeynum = 1; keyconfig.keyprice = keyconfig.keyprice + keyconfig.startprice; }else{ keyconfig.usedkeynum += buynum; } _transfer(this, user, buynum); } function keybuy(uint m) onlySystemStart() public returns(bool) { address user = msg.sender; require(m >= 1 ether); require(balances[user] >= m); uint amount = (m*keyconfig.keyprice)/(1 ether); require(amount >= 100 finney); uint money = amount*3; //uint d = gettoday(); //uint t = getyestoday(); if(my[user].fromaddr != address(0)) { money = amount*4; } tg[tags].ethnum += money; my[user].tzs += money; my[user].usereths += amount; addmoney(user, money, 0); balances[user] -= m; balances[owner] += m; emit Transfer(user, owner, m); return(true); } function ethbuy(uint amount) onlySystemStart() public returns(bool) { address user = msg.sender; uint canmoney = getcanuse(user); require(canmoney >= amount); //require(amount >= 1 ether); //require(amount%(1 ether) == 0); require(amount >= 100 finney); require(mycan[user].eths >= amount); require(my[user].tzs >= amount); uint money = amount*3; //uint d = gettoday(); //uint t = getyestoday(); if(my[user].fromaddr == address(0)) { money = amount*2; } addmoney(user, money, 0); my[user].tzs += money; mycan[user].used += amount; my[user].usereths += amount; tg[tags].ethnum += money; return(true); } function charge() public payable returns(bool) { return(true); } function() payable public { buy(0); } function sell(uint256 amount) onlySystemStart() public returns(bool success) { address user = msg.sender; uint d = gettoday(); uint t = getyestoday(); uint256 canuse = getcanuse(user); require(canuse >= amount); require(address(this).balance > amount); uint p = sellper; if((daysysdraws[d] + amount) > (dayseths[d] + dayseths[t])){ p = sellupper; } uint useper = (amount*p*(1 ether))/(keyconfig.keyprice*100); require(balances[user] >= useper); require(reducemoney(user, amount) == true); my[user].userethsused += amount; tg[tags].userethnumused += amount; my[user].daysuserdraws[d] += amount; daysysdraws[d] += amount; //_transfer(user, owner, useper); balances[user] -= useper; balances[owner] += useper; emit Transfer(user, owner, useper); user.transfer(amount); setend(); return(true); } function sellkey(uint256 amount) onlySystemStart() public returns(bool) { address user = msg.sender; require(balances[user] >= amount); require(keyconfig.keyprice >= keyconfig.startprice*10); uint d = gettoday(); uint t = getyestoday(); uint money = (keyconfig.keyprice*amount*sellkeyper)/(100 ether); if((daysysdraws[d] + money) > dayseths[t] + dayseths[d]){ money = (keyconfig.keyprice*amount)/(2 ether); } require(address(this).balance > money); //require(tg[tags].userethnumused + money <= tg[tags].userethnum/2); my[user].userethsused += money; tg[tags].userethnumused += money; daysysdraws[d] += money; balances[user] -= amount; balances[owner] += amount; emit Transfer(user, owner, amount); user.transfer(money); setend(); } function setend() private returns(bool) { if(tg[tags].userethnum > 0 && tg[tags].userethnumused > tg[tags].userethnum/2) { tags++; keyconfig.keyprice = keyconfig.startprice; keyconfig.basekeynum = keyconfig.startbasekeynum; keyconfig.usedkeynum = 1; return(true); } } function ended(bool ifget) public returns(bool) { require(actived == true); address user = msg.sender; require(my[user].systemtag < tags); require(!frozenAccount[user]); if(ifget == true) { my[user].prizecount = 1; my[user].tzs = 1; my[user].prizecount = 1; mycan[user].eths = 1; mycan[user].used = 1; if(mycan[user].len > 0) { delete mycan[user].times; //delete mycan[user].amounts; delete mycan[user].moneys; } mycan[user].len = 0; if(my[user].usereths/2 > my[user].userethsused) { uint money = my[user].usereths/2 - my[user].userethsused; require(address(this).balance > money); user.transfer(money); } my[user].usereths = 1; my[user].userethsused = 1; }else{ uint amount = my[user].usereths - my[user].userethsused; tg[tags].ethnum += my[user].tzs; tg[tags].sysethnum += amount; tg[tags].userethnum += amount; } my[user].systemtag = tags; } function setmangeruser(address user, bool t) public onlyOwner{ mangeruser[user] = t; } function freezeAccount(address target, bool freeze) public{ require(actived == true); require(mangeruser[msg.sender] == true); frozenAccount[target] = freeze; emit FrozenFunds(target, freeze); } function transto(address _to, uint money) public onlyOwner{ require(actived == true); require(_to != 0x0); require(balances[this] >= money); balances[_to] += money; balances[this] -= money; emit Transfer(this, _to, money); } function setper(uint onceOuttimes,uint8 perss,uint runpers,uint pubpers,uint subpers,uint luckypers,uint lastpers,uint sellkeypers,uint sellpers,uint selluppers,uint lasttimes,uint sysdays,uint sellupperss) public onlyOwner{ onceOuttime = onceOuttimes; per = perss; runper = runpers; pubper = pubpers; subper = subpers; luckyper = luckypers; lastper = lastpers; sellkeyper = sellkeypers; sellper = sellpers; sellupper = selluppers; lasttime = lasttimes;//9 sysday = sysdays; sellupper = sellupperss; } function setnotice( string versions, string downurls, string noticess ) public returns(bool){ require(actived == true); require(mangeruser[msg.sender] == true); version = versions; downurl = downurls; notices = noticess; } function getnotice() public view returns( string versions, string downurls, string noticess, bool isadm ){ versions = version; downurls = downurl; noticess = notices; isadm = mangeruser[msg.sender]; } }
[{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"showethconf","outputs":[{"name":"todaymyeth","type":"uint256"},{"name":"todaymydraw","type":"uint256"},{"name":"todaysyseth","type":"uint256"},{"name":"todaysysdraw","type":"uint256"},{"name":"yestodaymyeth","type":"uint256"},{"name":"yestodaymydraw","type":"uint256"},{"name":"yestodaysyseth","type":"uint256"},{"name":"yestodaysysdraw","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"money","type":"uint256"}],"name":"transto","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":"money","type":"uint256"}],"name":"sellnode","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[{"name":"keyid","type":"uint256"}],"name":"buynode","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"getluckyuser","outputs":[{"name":"addr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"runtoeth","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"cuid","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasusednum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lasttime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":"keyid","type":"uint256"}],"name":"chknodenumber","outputs":[{"name":"d0","type":"uint256"},{"name":"d1","type":"uint256"},{"name":"d2","type":"uint256"},{"name":"ld","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"timedata","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":"user","type":"address"}],"name":"getcanuse","outputs":[{"name":"_left","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gettoday","outputs":[{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"user","type":"address"},{"name":"t","type":"bool"}],"name":"setmangeruser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getlastmoney","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"myidkeys","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"luckyper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cksysday","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"ethbuy","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"charge","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"getluckyprize","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"gettnode","outputs":[{"name":"cids","type":"uint256"},{"name":"nid","type":"uint256"},{"name":"t","type":"uint256"},{"name":"m","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"worksdata","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pubper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"dayseths","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"showteam","outputs":[{"name":"daysnum","type":"uint256"},{"name":"dayseth","type":"uint256"},{"name":"daysnum1","type":"uint256"},{"name":"dayseth1","type":"uint256"},{"name":"man1","type":"uint256"},{"name":"man2","type":"uint256"},{"name":"man3","type":"uint256"},{"name":"man4","type":"uint256"},{"name":"man5","type":"uint256"},{"name":"man6","type":"uint256"},{"name":"man7","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"daysysdraws","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getbuyprice","outputs":[{"name":"kp","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"showprize","outputs":[{"name":"lttime","type":"uint256"},{"name":"ltmoney","type":"uint256"},{"name":"ltaddr","type":"address"},{"name":"lastmoneys","type":"uint256"},{"name":"lastuser","type":"address"},{"name":"luckymoney","type":"uint256"},{"name":"luckyuser","type":"address"},{"name":"luckyget","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"moneydata","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastmoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"interuser","outputs":[{"name":"skeyid","type":"uint256"},{"name":"stzs","type":"uint256"},{"name":"seths","type":"uint256"},{"name":"sethcan","type":"uint256"},{"name":"sruns","type":"uint256"},{"name":"srunscan","type":"uint256"},{"name":"skeynum","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sellupper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sellkeyper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysday","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"per","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"showworker","outputs":[{"name":"w0","type":"uint256"},{"name":"w1","type":"uint256"},{"name":"w2","type":"uint256"},{"name":"w3","type":"uint256"},{"name":"w4","type":"uint256"},{"name":"w5","type":"uint256"},{"name":"w6","type":"uint256"},{"name":"w7","type":"uint256"},{"name":"w8","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"getcanuserun","outputs":[{"name":"_left","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"sellkey","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"showlvzhou","outputs":[{"name":"total","type":"uint256"},{"name":"mykeyid","type":"uint256"},{"name":"mytzs","type":"uint256"},{"name":"prizeget","type":"uint256"},{"name":"mycans","type":"uint256"},{"name":"mykeynum","type":"uint256"},{"name":"keyprices","type":"uint256"},{"name":"ltkeynum","type":"uint256"},{"name":"tagss","type":"uint256"},{"name":"mytags","type":"uint256"},{"name":"sruns","type":"uint256"},{"name":"srunscan","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"buynum","type":"uint256"}],"name":"buykey","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"activekey","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"gettopid","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"runper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"subper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sellper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getnotice","outputs":[{"name":"versions","type":"string"},{"name":"downurls","type":"string"},{"name":"noticess","type":"string"},{"name":"isadm","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"leftnum","outputs":[{"name":"num","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"versions","type":"string"},{"name":"downurls","type":"string"},{"name":"noticess","type":"string"}],"name":"setnotice","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"pers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"m","type":"uint256"}],"name":"keybuy","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getlastuser","outputs":[{"name":"user","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"initkeyid","outputs":[{"name":"","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":true,"inputs":[{"name":"user","type":"address"}],"name":"getnodeparam","outputs":[{"name":"ld","type":"uint256"},{"name":"cid","type":"uint256"},{"name":"nodeid","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentkeyid","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"getbuynode","outputs":[{"name":"nodeid","type":"uint256"},{"name":"money","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getyestoday","outputs":[{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"keyid","type":"uint256"}],"name":"buy","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","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":true,"inputs":[],"name":"tags","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"mansdata","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"ifget","type":"bool"}],"name":"ended","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"sell","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"defkeynum","outputs":[{"name":"","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":"onceOuttimes","type":"uint256"},{"name":"perss","type":"uint8"},{"name":"runpers","type":"uint256"},{"name":"pubpers","type":"uint256"},{"name":"subpers","type":"uint256"},{"name":"luckypers","type":"uint256"},{"name":"lastpers","type":"uint256"},{"name":"sellkeypers","type":"uint256"},{"name":"sellpers","type":"uint256"},{"name":"selluppers","type":"uint256"},{"name":"lasttimes","type":"uint256"},{"name":"sysdays","type":"uint256"},{"name":"sellupperss","type":"uint256"}],"name":"setper","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"t","type":"bool"}],"name":"setactive","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onceOuttime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"daysgeteths","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"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"},{"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":"ethchange","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
60806040523480156200001157600080fd5b5060008054600160a060020a031916331790556040805180820190915260058082527f41694b657900000000000000000000000000000000000000000000000000000060209092019182526200006a9160029162000449565b506040805180820190915260058082527f41694b65790000000000000000000000000000000000000000000000000000006020909201918252620000b19160039162000449565b506004805460ff199081166012179091556a52b7d2dcc80cd2e40000006005556006805490911660011790556000601b8190556040805160a081810183528382526020808301858152838501868152606080860188815260808088018a81528a8052602e875297517f5f2b51c23aa64fc2445ffee23e9f4db80c998ca5b1b72e6b1c86169cbbc084be5593517f5f2b51c23aa64fc2445ffee23e9f4db80c998ca5b1b72e6b1c86169cbbc084bf5591517f5f2b51c23aa64fc2445ffee23e9f4db80c998ca5b1b72e6b1c86169cbbc084c05590517f5f2b51c23aa64fc2445ffee23e9f4db80c998ca5b1b72e6b1c86169cbbc084c15593517f5f2b51c23aa64fc2445ffee23e9f4db80c998ca5b1b72e6b1c86169cbbc084c25584516101208101865286815291820186905293810185905291820184905291810183905290810182905260c0810182905260e081018290526101008101919091526200021c906035906009620004ce565b506040805161012081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101919091526200027690600d906009620004ce565b506040805160608101825260028152600360208201819052600592820192909252620002a69160369190620004ce565b5060408051808201909152600a815260086020820152620002cc906037906002620004ce565b50633b9aca006038556127106039819055603a55600a601c8190556040805160e081018252601e815260146020820152908101919091526005606082018190526080820181905260a0820181905260c08201526200032f906010906007620004ce565b50600160148190556078601555600560168190556000601781905560188390556046601a55601d8290556032601e55600a600e819055600993909355655af3107a400092839055600b9290925569010f0cf064dd5920000060078190556008819055600c55600f805460ff19169091179055603c60195560b4601f5560209081556040805180820190915260048082527f312e30310000000000000000000000000000000000000000000000000000000091909201908152620003f6916031919062000449565b50600554306000818152602260209081526040808320859055805194855251929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a362000531565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200048c57805160ff1916838001178555620004bc565b82800160010185558215620004bc579182015b82811115620004bc5782518255916020019190600101906200049f565b50620004ca92915062000511565b5090565b828054828255906000526020600020908101928215620004bc579160200282015b82811115620004bc578251829060ff16905591602001919060010190620004ef565b6200052e91905b80821115620004ca576000815560010162000518565b90565b61586780620005416000396000f3006080604052600436106103dc5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663018d6f7a81146103e957806301e3d7181461044b57806306fdde0314610471578063091e97f9146104fb578063095ea7b3146105275780630abb691b1461054b5780630b1b9aa51461055657806310797bab1461058757806310a0c2761461059f57806318160ddd146105c95780631e2c541c146105de57806323a58292146105f357806323b872dd1461060857806329a2d339146106325780632e94341c14610670578063313ce56714610688578063332559d3146106b35780633670e072146106d45780633f8a92b3146106e95780634705d8881461070f5780634e6ebf0514610724578063536b55761461073c57806354750b761461075157806354db454714610766578063551619131461077e578063561bbe1e14610786578063570e997d1461079b57806359651da8146107bc57806359ff6a79146107d45780635b46ff8e146107e95780635c43fce3146108015780635c546039146108785780635f8f29c01461088d5780636cd61739146108a55780636d5210d9146108ba5780636d608fb6146109275780636f00ad8a1461093f57806370a082311461095457806371d93cb01461097557806379ba5097146109ce5780637bc65fc2146109e35780637d482171146109f85780637e00e38114610a0d5780637ec9c3b814610a225780638860bf9414610a375780638d1d863914610a935780638d95f24514610ab45780638da5cb5b14610acc57806391c3e7f814610ae157806392c8412f14610b61578063938d963214610b6c57806393a2f88d14610b8157806395d89b4114610ba257806396cef94714610bb7578063992427da14610bcc5780639a24fb4814610be15780639ae9d38314610bf6578063a280e67a14610d57578063a6474a5814610d6c578063a7159cce14610e41578063a7d0c49014610e59578063a87253c714610e71578063a9059cbb14610e86578063aceca54514610eaa578063b414d4b614610ebf578063b8eaffcc14610ee0578063c91b134214610f1f578063cd4d057014610f34578063d3626d0914610f6e578063d4ee1d9014610f83578063d96a094a14610f98578063dd62ed3e14610fa3578063de6b7e0914610fca578063e3b2ef9d14610fdf578063e3fc43b214610ff7578063e4849b3214611011578063e60f3aa414611029578063e724529c1461103e578063e736f03c14611064578063e987cc4514611079578063ecf1fdea1461109a578063f2fde38b146110de578063f43a72b0146110ff578063f9589eb314611119578063ff1d34361461112e575b6103e66000611146565b50005b3480156103f557600080fd5b5061040a600160a060020a0360043516611829565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b34801561045757600080fd5b5061046f600160a060020a03600435166024356119a1565b005b34801561047d57600080fd5b50610486611a51565b6040805160208082528351818301528351919283929083019185019080838360005b838110156104c05781810151838201526020016104a8565b50505050905090810190601f1680156104ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561050757600080fd5b50610513600435611adf565b604080519115158252519081900360200190f35b34801561053357600080fd5b50610513600160a060020a0360043516602435611b80565b610513600435611bff565b34801561056257600080fd5b5061056b611e48565b60408051600160a060020a039092168252519081900360200190f35b34801561059357600080fd5b50610513600435611f46565b3480156105ab57600080fd5b506105b76004356120e4565b60408051918252519081900360200190f35b3480156105d557600080fd5b506105b76120f6565b3480156105ea57600080fd5b506105b761210e565b3480156105ff57600080fd5b506105b7612114565b34801561061457600080fd5b50610513600160a060020a036004358116906024351660443561211a565b34801561063e57600080fd5b5061064a6004356121f4565b604080519485526020850193909352838301919091526060830152519081900360800190f35b34801561067c57600080fd5b506105b76004356122f8565b34801561069457600080fd5b5061069d612317565b6040805160ff9092168252519081900360200190f35b3480156106bf57600080fd5b506105b7600160a060020a0360043516612320565b3480156106e057600080fd5b506105b761257d565b3480156106f557600080fd5b5061046f600160a060020a0360043516602435151561259c565b34801561071b57600080fd5b506105136125de565b34801561073057600080fd5b5061056b60043561268e565b34801561074857600080fd5b506105b76126a9565b34801561075d57600080fd5b506105b76126af565b34801561077257600080fd5b506105136004356126b5565b610513612823565b34801561079257600080fd5b50610513612828565b3480156107a757600080fd5b5061064a600160a060020a036004351661297f565b3480156107c857600080fd5b506105b76004356129b0565b3480156107e057600080fd5b506105b76129be565b3480156107f557600080fd5b506105b76004356129c4565b34801561080d57600080fd5b50610822600160a060020a03600435166129d6565b604080519b8c5260208c019a909a528a8a019890985260608a0196909652608089019490945260a088019290925260c087015260e086015261010085015261012084015261014083015251908190036101600190f35b34801561088457600080fd5b506105b7612c2c565b34801561089957600080fd5b506105b7600435612c32565b3480156108b157600080fd5b506105b7612c44565b3480156108c657600080fd5b506108db600160a060020a0360043516612c67565b604080519889526020890197909752600160a060020a03958616888801526060880194909452918416608087015260a086015290911660c084015260e083015251908190036101000190f35b34801561093357600080fd5b506105b7600435612da7565b34801561094b57600080fd5b506105b7612db5565b34801561096057600080fd5b506105b7600160a060020a0360043516612dbb565b34801561098157600080fd5b50610996600160a060020a0360043516612dd6565b604080519788526020880196909652868601949094526060860192909252608085015260a084015260c0830152519081900360e00190f35b3480156109da57600080fd5b5061046f612e65565b3480156109ef57600080fd5b506105b7612eed565b348015610a0457600080fd5b506105b7612ef3565b348015610a1957600080fd5b506105b7612ef9565b348015610a2e57600080fd5b5061069d612eff565b348015610a4357600080fd5b50610a4c612f08565b60408051998a5260208a0198909852888801969096526060880194909452608087019290925260a086015260c085015260e084015261010083015251908190036101200190f35b348015610a9f57600080fd5b506105b7600160a060020a0360043516613026565b348015610ac057600080fd5b50610513600435613276565b348015610ad857600080fd5b5061056b613455565b348015610aed57600080fd5b50610b02600160a060020a0360043516613464565b604080519c8d5260208d019b909b528b8b019990995260608b019790975260808a019590955260a089019390935260c088019190915260e087015261010086015261012085015261014084015261016083015251908190036101800190f35b61051360043561351c565b348015610b7857600080fd5b506105136136b4565b348015610b8d57600080fd5b506105b7600160a060020a036004351661398e565b348015610bae57600080fd5b50610486613a1a565b348015610bc357600080fd5b506105b7613a72565b348015610bd857600080fd5b506105b7613a78565b348015610bed57600080fd5b506105b7613a7e565b348015610c0257600080fd5b50610c0b613a84565b604080518215156060820152608080825286519082015285519091829160208084019284019160a08501918a019080838360005b83811015610c57578181015183820152602001610c3f565b50505050905090810190601f168015610c845780820380516001836020036101000a031916815260200191505b50848103835287518152875160209182019189019080838360005b83811015610cb7578181015183820152602001610c9f565b50505050905090810190601f168015610ce45780820380516001836020036101000a031916815260200191505b50848103825286518152865160209182019188019080838360005b83811015610d17578181015183820152602001610cff565b50505050905090810190601f168015610d445780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390f35b348015610d6357600080fd5b506105b7613c5d565b348015610d7857600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261051394369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a99988101979196509182019450925082915084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a999881019791965091820194509250829150840183828082843750949750613c879650505050505050565b348015610e4d57600080fd5b506105b7600435613d02565b348015610e6557600080fd5b50610513600435613d10565b348015610e7d57600080fd5b5061056b613ea9565b348015610e9257600080fd5b50610513600160a060020a0360043516602435613f18565b348015610eb657600080fd5b506105b7613f2e565b348015610ecb57600080fd5b50610513600160a060020a0360043516613f34565b348015610eec57600080fd5b50610f01600160a060020a0360043516613f49565b60408051938452602084019290925282820152519081900360600190f35b348015610f2b57600080fd5b506105b7614052565b348015610f4057600080fd5b50610f55600160a060020a0360043516614058565b6040805192835260208301919091528051918290030190f35b348015610f7a57600080fd5b506105b761410e565b348015610f8f57600080fd5b5061056b614124565b610513600435611146565b348015610faf57600080fd5b506105b7600160a060020a0360043581169060243516614133565b348015610fd657600080fd5b506105b761415e565b348015610feb57600080fd5b5061056b600435614164565b34801561100357600080fd5b50610513600435151561418c565b34801561101d57600080fd5b506105136004356143f2565b34801561103557600080fd5b506105b76146f9565b34801561104a57600080fd5b5061046f600160a060020a036004351660243515156146ff565b34801561107057600080fd5b50610513614798565b34801561108557600080fd5b5061056b600160a060020a03600435166147a1565b3480156110a657600080fd5b5061046f60043560ff6024351660443560643560843560a43560c43560e43561010435610124356101443561016435610184356147c2565b3480156110ea57600080fd5b5061046f600160a060020a0360043516614821565b34801561110b57600080fd5b5061046f6004351515614867565b34801561112557600080fd5b506105b7614891565b34801561113a57600080fd5b506105b7600435614897565b6000806000806000806000806000806000806000600660009054906101000a900460ff1615156001151514151561117c57600080fd5b33600090815260276020526040902054601b541461119957600080fd5b3360009081526024602052604090205460ff16156111b657600080fd5b339b50600034116111c657600080fd5b349a5067016345785d8a00008b10156111de57600080fd5b600160a060020a038c16600090815260276020526040902060020154683635c9adc5dea00000101561120f57600080fd5b8a600302995061121d61257d565b600160a060020a038d8116600090815260276020526040812060080154929b5099501615156115cf5760008e8152602a6020526040812054600160a060020a031697508e1180156112765750600160a060020a03871615155b801561129457508b600160a060020a031687600160a060020a031614155b156115ca5786602760008e600160a060020a0316600160a060020a0316815260200190815260200160002060080160006101000a815481600160a060020a030219169083600160a060020a031602179055506029600088600160a060020a0316600160a060020a03168152602001908152602001600020600001600081548092919060010191905055506027600088600160a060020a0316600160a060020a0316815260200190815260200160002060090160008a8152602001908152602001600020600081548092919060010191905055506027600088600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031695506000600160a060020a031686600160a060020a0316141580156113da57508b600160a060020a031686600160a060020a031614155b156115c557600160a060020a0380871660009081526029602090815260408083206001908101805490910190556027909152902060080154169450841580159061143657508b600160a060020a031685600160a060020a031614155b156115c557600160a060020a038086166000908152602960209081526040808320600201805460010190556027909152902060080154169350831580159061149057508b600160a060020a031684600160a060020a031614155b156115c557600160a060020a03808516600090815260296020908152604080832060030180546001019055602790915290206008015416925082158015906114ea57508b600160a060020a031683600160a060020a031614155b156115c557600160a060020a038084166000908152602960209081526040808320600401805460010190556027909152902060080154169150811580159061154457508b600160a060020a031682600160a060020a031614155b156115c55750600160a060020a03808216600090815260296020908152604080832060050180546001019055602790915290206008015416801580159061159d57508b600160a060020a031681600160a060020a031614155b156115c557600160a060020a0381166000908152602960205260409020600601805460010190555b600197505b6115d4565b600197505b600188151514156115f2578a60040299506115f08c8b8d6148a9565b505b601454611604906064908d0204614f72565b5060118c90806001815401808255809150509060018203906000526020600020016000909192909190916101000a815481600160a060020a030219169083600160a060020a031602179055505060128b9080600181540180825580915050906001820390600052602060002001600090919290919091505550601342908060018154018082558091505090600182039060005260206000200160009091929091909150555089602b60008b8152602001908152602001600020600082825401925050819055508a602c60008b8152602001908152602001600020600082825401925050819055508a602e6000601b548152602001908152602001600020600101600082825401925050819055508a602e6000601b548152602001908152602001600020600201600082825401925050819055508a602760008e600160a060020a0316600160a060020a03168152602001908152602001600020600b0160008b81526020019081526020016000206000828254019250508190555089602760008e600160a060020a0316600160a060020a031681526020019081526020016000206001016000828254019250508190555060646018548c028115156117c457fe5b60178054929091049091019055601b546000908152602e6020908152604080832080548e019055600160a060020a038f1683526027909152812060020180548d019055611814908d908c9061508c565b5060019e9d5050505050505050505050505050565b60008060008060008060008060008061184061257d565b915061184a61410e565b9050602760008c600160a060020a0316600160a060020a03168152602001908152602001600020600b016000838152602001908152602001600020549950602760008c600160a060020a0316600160a060020a03168152602001908152602001600020600c016000838152602001908152602001600020549850602c6000838152602001908152602001600020549750602d6000838152602001908152602001600020549650602760008c600160a060020a0316600160a060020a03168152602001908152602001600020600b016000828152602001908152602001600020549550602760008c600160a060020a0316600160a060020a03168152602001908152602001600020600c016000828152602001908152602001600020549450602c6000828152602001908152602001600020549350602d60008281526020019081526020016000205492505050919395975091939597565b600054600160a060020a031633146119b857600080fd5b60065460ff1615156001146119cc57600080fd5b600160a060020a03821615156119e157600080fd5b306000908152602260205260409020548111156119fd57600080fd5b600160a060020a03821660008181526022602090815260408083208054860190553080845292819020805486900390558051858152905160008051602061581c833981519152929181900390910190a35050565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015611ad75780601f10611aac57610100808354040283529160200191611ad7565b820191906000526020600020905b815481529060010190602001808311611aba57829003601f168201915b505050505081565b600033818080611aee84613f49565b925092509250600081118015611b045750600083115b8015611b105750600383105b8015611b1c5750600982105b1515611b2757600080fd5b6040805160808101825292835260208084019283524284830190815260608501988952600160a060020a039096166000908152603c90915220915182555160018201559151600283015550915160039092019190915590565b60065460009060ff161515600114611b9757600080fd5b336000818152602360209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b6000818152602a60205260408120548190819081908190600160a060020a031615611c2957600080fd5b33600081815260276020526040902060050154909450600111611c4b57600080fd5b600160a060020a03808516600090815260276020526040902060080154169250349150821515611c7a57600080fd5b600160a060020a03831660009081526027602052604081206005015411611ca057600080fd5b600160a060020a0383166000908152603c6020526040902060020154600110611cc857600080fd5b600160a060020a0383166000908152603c6020526040902060030154821015611cf057600080fd5b600160a060020a038416318210611d0657600080fd5b600b54600a02670de0b6b3a76400008302811515611d2057fe5b600160a060020a0386166000908152602260205260409020549190049150811115611d4a57600080fd5b600160a060020a0380851660008181526022602090815260408083208054879003905582548516835280832080548701905591548251868152925194169360008051602061581c8339815191529281900390910190a3600160a060020a0380851660008181526027602090815260408083206005018b90558a8352602a909152808220805473ffffffffffffffffffffffffffffffffffffffff191690931790925590519185169184156108fc0291859190818181858888f19350505050158015611e19573d6000803e3d6000fd5b505050600160a060020a03166000908152603c6020526040902080546001908101825560029091015550919050565b6000806000806000806012805490501115611f3f57611e6561257d565b9350611e6f61410e565b9250670de0b6b3a76400009150600090505b601254811015611f3f5782601382815481101515611e9b57fe5b9060005260206000200154118015611ecb575083601382815481101515611ebe57fe5b9060005260206000200154105b8015611ef0575081601282815481101515611ee257fe5b906000526020600020015410155b15611f37576012805482908110611f0357fe5b90600052602060002001549150601181815481101515611f1f57fe5b600091825260209091200154600160a060020a031694505b600101611e81565b5050505090565b6006546000908190819060ff161515600114611f6157600080fd5b33600090815260276020526040902054601b5414611f7e57600080fd5b3360009081526024602052604090205460ff1615611f9b57600080fd5b339150600760040154606402601c548502670de0b6b3a764000002811515611fbf57fe5b600160a060020a03841660009081526022602052604090205491900491508110611fe857600080fd5b83611ff283613026565b1015611ffd57600080fd5b61200682612320565b600160a060020a0383166000908152602760205260409020600101541161202c57600080fd5b61203582612320565b600160a060020a0383166000908152602760205260409020600101540384111561205e57600080fd5b600160a060020a0380831660008181526022602090815260408083208054879003905582548516835280832080548701905591548251868152925194169360008051602061581c8339815191529281900390910190a36120be828561513e565b50600160a060020a03166000908152602560205260409020600301805490920190915590565b603b6020526000908152604090205481565b30600090815260226020526040902054600554035b90565b60345481565b60195481565b60065460009060ff16151560011461213157600080fd5b600160a060020a03841660009081526024602052604090205460ff161561215757600080fd5b600160a060020a03831660009081526024602052604090205460ff161561217d57600080fd5b600160a060020a03808516600081815260226020818152604080842080548990039055602382528084203385528252808420805489900390559488168084529181529184902080548701905583518681529351909360008051602061581c83398151915292908290030190a35060015b9392505050565b6000806000806000806000806000806000806038548d1015156122db576038548d81151561221e57fe5b60385491900498508881028e039750600a810496506064900494508587101561226857879b5060009a5060009950600187101561225e5760019850612263565b600098505b6122d6565b858781151561227357fe5b04935085840287039250848310156122a157879b50839a5060009950600183101561225e5760029850612263565b84838115156122ac57fe5b04915084820283039050879b50839a5081995060018110156122d157600398506122d6565b600098505b6122e9565b60009b508b9a508a99508998505b50505050505050509193509193565b601380548290811061230657fe5b600091825260209091200154905081565b60045460ff1681565b600160a060020a0381166000908152602560205260408120600201548190819081908110156124de57600092505b600160a060020a0385166000908152602560205260409020600201548310156124de57600160a060020a038516600090815260256020526040902060040180548490811061239857fe5b9060005260206000200154915081600014156123e957600160a060020a03851660009081526025602052604090206005018054849081106123d557fe5b9060005260206000200154840193506124d3565b600e5442839003106124d357600f54600e546103e89160ff16904285900381151561241057fe5b600160a060020a0389166000908152602560205260409020600501805492909104918790811061243c57fe5b9060005260206000200154020281151561245257fe5b600160a060020a03871660009081526025602052604090206005018054929091049250908490811061248057fe5b90600052602060002001548111151561249c57928301926124d3565b600160a060020a03851660009081526025602052604090206005018054849081106124c357fe5b9060005260206000200154840193505b60019092019161234e565b600160a060020a038516600090815260256020526040902060038101546001909101549401938410156125145760009350612575565b600160a060020a03851660009081526025602052604090205484111561255457600160a060020a0385166000908152602560205260409020549350612575565b600160a060020a038516600090815260256020526040902060010154909303925b505050919050565b602054601f5460009142918281151561259257fe5b0682030391505090565b600054600160a060020a031633146125b357600080fd5b600160a060020a03919091166000908152602f60205260409020805460ff1916911515919091179055565b600654600090819060ff1615156001146125f757600080fd5b6125ff613ea9565b9050600160a060020a038116151561261657600080fd5b600160a060020a038116331461262b57600080fd5b60175460001061263a57600080fd5b6017546002303104101561264d57600080fd5b601754604051600160a060020a0383169180156108fc02916000818181858888f19350505050158015612684573d6000803e3d6000fd5b5050600060175590565b602a60205260009081526040902054600160a060020a031681565b60165481565b60205481565b60065460009081908190819060ff1615156001146126d257600080fd5b33600090815260276020526040902054601b54146126ef57600080fd5b3360009081526024602052604090205460ff161561270c57600080fd5b33925061271883612320565b91508482101561272757600080fd5b67016345785d8a000085101561273c57600080fd5b600160a060020a03831660009081526025602052604090205485111561276157600080fd5b600160a060020a03831660009081526027602052604090206001015485111561278957600080fd5b50600160a060020a0382811660009081526027602052604090206008015460038602911615156127b95750600284025b6127c58382600061508c565b50600160a060020a0383166000908152602760209081526040808320600180820180548701905560258452828520810180548b019055600290910180548a019055601b548452602e9092529091208054830190559350505050919050565b600190565b60065460009081908190819060ff16151560011461284557600080fd5b33600090815260276020526040902054601b541461286257600080fd5b3360009081526024602052604090205460ff161561287f57600080fd5b33925082151561288e57600080fd5b612896611e48565b600160a060020a038481169116146128ad57600080fd5b6128b561410e565b600160a060020a0384166000908152602760209081526040808320848452600b01909152812054919350106128e957600080fd5b600160a060020a0383166000908152602760209081526040808320858452600d019091529020541561291a57600080fd5b506016546000828152602c60205260409020546103e891020461293f8382606461516a565b600160a060020a039092166000818152602760208181526040808420958452600d8601825283208054870190559290915290526007018054909101905590565b600160a060020a03166000908152603c60205260409020805460018201546002830154600390930154919390929190565b600d80548290811061230657fe5b60145481565b602c6020526000908152604090205481565b60008060008060008060008060008060008060006129f261257d565b91506129fc61410e565b9050602760008f600160a060020a0316600160a060020a031681526020019081526020016000206009016000838152602001908152602001600020549c50602760008f600160a060020a0316600160a060020a03168152602001908152602001600020600a016000838152602001908152602001600020549b50602760008f600160a060020a0316600160a060020a031681526020019081526020016000206009016000828152602001908152602001600020549a50602760008f600160a060020a0316600160a060020a03168152602001908152602001600020600a016000828152602001908152602001600020549950602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600001549850602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600101549750602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600201549650602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600301549550602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600401549450602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600501549350602960008f600160a060020a0316600160a060020a03168152602001908152602001600020600601549250505091939597999b90929496989a50565b60185481565b602d6020526000908152604090205481565b6007546009546000911415612c605750600a54600b540161210b565b50600b5490565b6000806000806000806000806000806013805490501115612ca657601380546000198101908110612c9457fe5b90600052602060002001549850612cab565b600098505b60125460001015612cda57601280546000198101908110612cc857fe5b90600052602060002001549750612cdf565b600097505b60115460001015612d1857601180546000198101908110612cfc57fe5b600091825260209091200154600160a060020a03169650612d1d565b600096505b6017549550612d2a613ea9565b9450612d3461410e565b6000818152602c60205260408120549192501015612d9b576016546000828152602c60205260409020546103e89102049350612d6e611e48565b600160a060020a038b166000908152602760209081526040808320858452600d0190915290205490935091505b50919395975091939597565b601280548290811061230657fe5b60175481565b600160a060020a031660009081526022602052604090205490565b600160a060020a038116600090815260276020908152604080832060058101546001909101546025909352908320549092808080612e1388612320565b600160a060020a0389166000908152602660205260409020549094509250612e3a88613026565b600160a060020a03909816600090815260226020526040902054969895979496939592949392915050565b600154600160a060020a03163314612e7c57600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b601e5481565b601a5481565b601f5481565b600f5460ff1681565b6000806000806000806000806000600d6000815481101515612f2657fe5b90600052602060002001549850600d6001815481101515612f4357fe5b90600052602060002001549750600d6002815481101515612f6057fe5b90600052602060002001549650600d6003815481101515612f7d57fe5b90600052602060002001549550600d6004815481101515612f9a57fe5b90600052602060002001549450600d6005815481101515612fb757fe5b90600052602060002001549350600d6006815481101515612fd457fe5b90600052602060002001549250600d6007815481101515612ff157fe5b90600052602060002001549150600d600881548110151561300e57fe5b90600052602060002001549050909192939495969798565b600160a060020a0381166000908152602660205260408120600201548190819081908110156131e457600092505b600160a060020a0385166000908152602660205260409020600201548310156131e457600160a060020a038516600090815260266020526040902060040180548490811061309e57fe5b9060005260206000200154915081600014156130ef57600160a060020a03851660009081526026602052604090206005018054849081106130db57fe5b9060005260206000200154840193506131d9565b600e5442839003106131d957600f54600e546103e89160ff16904285900381151561311657fe5b600160a060020a0389166000908152602660205260409020600501805492909104918790811061314257fe5b9060005260206000200154020281151561315857fe5b600160a060020a03871660009081526026602052604090206005018054929091049250908490811061318657fe5b9060005260206000200154811115156131a257928301926131d9565b600160a060020a03851660009081526026602052604090206005018054849081106131c957fe5b9060005260206000200154840193505b600190920191613054565b600160a060020a0385166000908152602660205260409020600101548410156132105760009350612575565b600160a060020a03851660009081526026602052604090205484111561325057600160a060020a0385166000908152602660205260409020549350612575565b505050600160a060020a0391909116600090815260266020526040902060010154900390565b600654600090819081908190819060ff16151560011461329557600080fd5b33600090815260276020526040902054601b54146132b257600080fd5b3360009081526024602052604090205460ff16156132cf57600080fd5b336000818152602260205260409020549094508611156132ee57600080fd5b600a8054600b549102111561330257600080fd5b61330a61257d565b925061331461410e565b601a54600b5491935068056bc75e2d63100000918802026000858152602c602090815260408083205487845281842054898552602d9093529220549390920493500190820111156133715750600b54671bc16d674ec80000908602045b3031811061337e57600080fd5b600160a060020a0380851660008181526027602090815260408083206003908101805488019055601b548452602e835281842001805487019055878352602d82528083208054870190558383526022825280832080548c9003905582548516835280832080548c019055915482518b8152925194169360008051602061581c8339815191529281900390910190a3604051600160a060020a0385169082156108fc029083906000818181858888f19350505050158015613442573d6000803e3d6000fd5b5061344b61521a565b5050505050919050565b600054600160a060020a031681565b601b546000908152602e6020908152604080832054600160a060020a038516845260279092528220600581015460018201546007909201549293909290808080808080806134b18d612320565b97506134bc8d612dbb565b96506134c6612c44565b95506134d0613c5d565b601b54600160a060020a038f166000908152602760209081526040808320546026909252909120549297509095509350915061350b8d613026565b905091939597999b5091939597999b565b6006546000908190819060ff16151560011461353757600080fd5b33600090815260276020526040902054601b541461355457600080fd5b3360009081526024602052604090205460ff161561357157600080fd5b5034905033670de0b6b3a764000084101561358b57600080fd5b670de0b6b3a76400008406156135a057600080fd5b60075460095485016000190111156135b757600080fd5b600b548210156135c657600080fd5b600160a060020a038116318211156135dd57600080fd5b600160a060020a0381166000908152602560205260408120541161360057600080fd5b600b54670de0b6b3a764000090850204821461361b57600080fd5b600160a060020a0381166000908152602760209081526040808320600601805486019055601b80548452602e9092528083206001018054860190559054825290206004018054850190556007546009548501600019011415613699576008546007805490910190556001600955600a54600b805490910190556136a2565b60098054850190555b6136ad308286615281565b5050919050565b6000806000806000806000806000806000600660009054906101000a900460ff161515600115151415156136e757600080fd5b33600081815260226020526040902054909a50670de0b6b3a7640000995089111561371157600080fd5b600160a060020a038a1660009081526027602052604090206005015460011161373957600080fd5b600160a060020a038a16600090815260226020526040902054891415613760576001890398505b600160a060020a03808b1660009081526027602052604080822060080154909216808252919020600501549098509550871580159061379f5750600086115b15613836576038548610156137c05760398054600181019091559650613831565b6137c9866121f4565b603854600a8482020485820201606491840291909104016000818152603b6020526040902054949950929750909550935091508610613817576000818152603b602052604090206001870190555b6000818152603b6020526040902080546001810190915596505b6138ce565b603a5460395414156138c057608060405190810160405280600081526020016038548152602001428152602001670de0b6b3a7640000815250603c60008c600160a060020a0316600160a060020a03168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301559050505b603980546001810190915596505b6000878152602a6020526040902054600160a060020a0316156138f057600080fd5b600160a060020a03808b1660008181526027602090815260408083206005018c90558b8352602a8252808320805473ffffffffffffffffffffffffffffffffffffffff1916851790558383526022825280832080548f9003905582548516835280832080548f019055915482518e8152925194169360008051602061581c8339815191529281900390910190a360019a505050505050505050505090565b600160a060020a03808216600090815260276020526040812060080154909116818115156139bf57600092506136ad565b50600160a060020a0381166000908152602760205260408120600501549081118015613a0457506000818152602a6020526040902054600160a060020a038381169116145b15613a11578092506136ad565b600092506136ad565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015611ad75780601f10611aac57610100808354040283529160200191611ad7565b601c5481565b60155481565b601d5481565b6031805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152606093849384936000939291830182828015613b145780601f10613ae957610100808354040283529160200191613b14565b820191906000526020600020905b815481529060010190602001808311613af757829003601f168201915b505060328054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152969a5091945092508401905082828015613ba55780601f10613b7a57610100808354040283529160200191613ba5565b820191906000526020600020905b815481529060010190602001808311613b8857829003601f168201915b505060338054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815296995091945092508401905082828015613c365780601f10613c0b57610100808354040283529160200191613c36565b820191906000526020600020905b815481529060010190602001808311613c1957829003601f168201915b5050336000908152602f602052604090205497989697939660ff9094169550929350505050565b6007546009546000911415613c7957506008546007540161210b565b506009546007540360010190565b60065460009060ff161515600114613c9e57600080fd5b336000908152602f602052604090205460ff161515600114613cbf57600080fd5b8351613cd2906031906020870190615762565b508251613ce6906032906020860190615762565b508151613cfa906033906020850190615762565b509392505050565b601080548290811061230657fe5b60065460009081908190819060ff161515600114613d2d57600080fd5b33600090815260276020526040902054601b5414613d4a57600080fd5b3360009081526024602052604090205460ff1615613d6757600080fd5b339250670de0b6b3a7640000851015613d7f57600080fd5b600160a060020a038316600090815260226020526040902054851115613da457600080fd5b600b54670de0b6b3a764000090860204915067016345785d8a0000821015613dcb57600080fd5b50600160a060020a0382811660009081526027602052604090206008015460038302911615613dfa5750600481025b601b546000908152602e60209081526040808320805485019055600160a060020a03861683526027909152812060018101805484019055600201805484019055613e47908490839061508c565b50600160a060020a03808416600081815260226020908152604080832080548b9003905582548516835280832080548b019055915482518a8152925194169360008051602061581c8339815191529281900390910190a3506001949350505050565b60135460009081101561210b576000601754118015613ee75750601954601380546000198101908110613ed857fe5b90600052602060002001544203115b1561210b57601180546000198101908110613efe57fe5b600091825260209091200154600160a060020a0316905090565b6000613f25338484615281565b50600192915050565b603a5481565b60246020526000908152604090205460ff1681565b600160a060020a038116600090815260276020908152604080832060050154603c909252822054603a5490918391829081908190841415613fb2575050603854600160a060020a0387166000908152603c60205260408120546001975087019091029350859150805b603854841061404757613fc4846121f4565b995091945092509050600087111561404757600182101561401257603854600160a060020a0389166000908152603c6020526040902054600a91600190910102046038548402019450614047565b603854600160a060020a0389166000908152603c6020526040902054848202600a858402040160646001909201909202040194505b505050509193909250565b60395481565b600160a060020a038082166000908152602760205260408120600801549091829116818082158015906140a45750600160a060020a038316600090815260276020526040812060050154115b15614106576140b283613f49565b965090925090506000821180156140e25750600160a060020a0383166000908152603c6020526040812060020154115b1561410657600160a060020a0383166000908152603c602052604090206003015493505b505050915091565b60008061411961257d565b601f54900392915050565b600154600160a060020a031681565b600160a060020a03918216600090815260236020908152604080832093909416825291909152205490565b601b5481565b601180548290811061417257fe5b600091825260209091200154600160a060020a0316905081565b60065460009081908190819060ff1615156001146141a957600080fd5b601b5433600081815260276020526040902054909450106141c957600080fd5b600160a060020a03831660009081526024602052604090205460ff16156141ef57600080fd5b6001851515141561436657600160a060020a0383166000908152602760209081526040808320600160078201819055908101819055602590925282208181558082019190915560020154111561428d57600160a060020a0383166000908152602560205260408120614266916004909101906157e0565b600160a060020a038316600090815260256020526040812061428d916005909101906157e0565b600160a060020a03831660009081526025602090815260408083206002908101849055602790925290912060038101549082015490919004111561433a57600160a060020a03831660009081526027602052604090206003810154600291820154909190040391503031821061430257600080fd5b604051600160a060020a0384169083156108fc029084906000818181858888f19350505050158015614338573d6000803e3d6000fd5b505b600160a060020a03831660009081526027602052604090206001600282018190556003909101556143ce565b50600160a060020a03821660009081526027602090815260408083206003810154600280830154600193840154601b80548952602e90975285882080549091019055855487528487209093018054929093039182019092559254845292209091018054820190555b5050601b54600160a060020a03909116600090815260276020526040902055919050565b60065460009081908190819081908190819060ff16151560011461441557600080fd5b33600090815260276020526040902054601b541461443257600080fd5b3360009081526024602052604090205460ff161561444f57600080fd5b33955061445a61257d565b945061446461410e565b935061446f86612320565b92508783101561447e57600080fd5b3031881061448b57600080fd5b601d546000858152602c602090815260408083205489845281842054602d9093529220549294500190890111156144c257601e5491505b600b54606402670de0b6b3a7640000898402028115156144de57fe5b600160a060020a038816600090815260226020526040902054919004915081111561450857600080fd5b61451286896153da565b151560011461452057600080fd5b876027600088600160a060020a0316600160a060020a031681526020019081526020016000206003016000828254019250508190555087602e6000601b54815260200190815260200160002060030160008282540192505081905550876027600088600160a060020a0316600160a060020a03168152602001908152602001600020600c0160008781526020019081526020016000206000828254019250508190555087602d600087815260200190815260200160002060008282540192505081905550806022600088600160a060020a0316600160a060020a031681526020019081526020016000206000828254039250508190555080602260008060009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020600082825401925050819055506000809054906101000a9004600160a060020a0316600160a060020a031686600160a060020a031660008051602061581c833981519152836040518082815260200191505060405180910390a3604051600160a060020a0387169089156108fc02908a906000818181858888f193505050501580156146e1573d6000803e3d6000fd5b506146ea61521a565b50600198975050505050505050565b60385481565b60065460ff16151560011461471357600080fd5b336000908152602f602052604090205460ff16151560011461473457600080fd5b600160a060020a038216600081815260246020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b60065460ff1681565b600160a060020a039081166000908152602760205260409020600801541690565b600054600160a060020a031633146147d957600080fd5b600e9c909c55600f805460ff191660ff9c909c169b909b17909a55601c9890985550601495909555601593909355601691909155601855601a55601d55601955601f55601e55565b600054600160a060020a0316331461483857600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a0316331461487e57600080fd5b6006805460ff1916911515919091179055565b600e5481565b602b6020526000908152604090205481565b600160a060020a03808416600090815260276020526040812060080154909116818080808080806148d861257d565b9650600160a060020a0388161580159061490457508b600160a060020a031688600160a060020a031614155b15614f635761493d8860646010600081548110151561491f57fe5b90600052602060002001548e0281151561493557fe5b04600061516a565b600160a060020a03881660009081526027602090815260408083208a8452600a01909152902080548b0190556149738c8b61546f565b50603854600160a060020a03891660009081526027602052604090206005015411156149eb57603854600160a060020a0389166000908152602760205260409020600501548b91600d91600191908115156149ca57fe5b04038154811015156149d857fe5b6000918252602090912001805490910190555b600160a060020a038089166000908152602760205260409020600801541695508515801590614a2c57508b600160a060020a031686600160a060020a031614155b15614f6357600160a060020a03861660009081526029602052604090205460011015614a6857614a688660646010600181548110151561491f57fe5b896027600088600160a060020a0316600160a060020a03168152602001908152602001600020600a016000898152602001908152602001600020600082825401925050819055506027600087600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031694506000600160a060020a031685600160a060020a031614158015614b2257508b600160a060020a031685600160a060020a031614155b15614f6357600160a060020a03851660009081526029602052604090205460021015614b5e57614b5e8560646010600281548110151561491f57fe5b896027600087600160a060020a0316600160a060020a03168152602001908152602001600020600a016000898152602001908152602001600020600082825401925050819055506027600086600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031693506000600160a060020a031684600160a060020a031614158015614c1857508b600160a060020a031684600160a060020a031614155b15614f6357600160a060020a03841660009081526029602052604090205460031015614c5457614c548460646010600381548110151561491f57fe5b896027600086600160a060020a0316600160a060020a03168152602001908152602001600020600a016000898152602001908152602001600020600082825401925050819055506027600085600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031692506000600160a060020a031683600160a060020a031614158015614d0e57508b600160a060020a031683600160a060020a031614155b15614f6357600160a060020a03831660009081526029602052604090205460041015614d4a57614d4a8360646010600481548110151561491f57fe5b896027600085600160a060020a0316600160a060020a03168152602001908152602001600020600a016000898152602001908152602001600020600082825401925050819055506027600084600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031691506000600160a060020a031682600160a060020a031614158015614e0457508b600160a060020a031682600160a060020a031614155b15614f6357600160a060020a03821660009081526029602052604090205460051015614e4057614e408260646010600581548110151561491f57fe5b896027600084600160a060020a0316600160a060020a03168152602001908152602001600020600a016000898152602001908152602001600020600082825401925050819055506027600083600160a060020a0316600160a060020a0316815260200190815260200160002060080160009054906101000a9004600160a060020a031690506000600160a060020a031681600160a060020a031614158015614efa57508b600160a060020a031681600160a060020a031614155b15614f6357600160a060020a03811660009081526029602052604090205460061015614f3657614f368160646010600681548110151561491f57fe5b600160a060020a03821660009081526027602090815260408083208a8452600a01909152902080548b0190555b50505050505050509392505050565b601254600090818080808085111561507f576000935060009250600091506003851115614fa0576003850392505b50815b84811015614fd2576012805482908110614fb957fe5b6000918252602090912001549390930192600101614fa3565b8483101561507f5783601284815481101515614fea57fe5b9060005260206000200154880281151561500057fe5b04915061503160118481548110151561501557fe5b6000918252602082200154600160a060020a031690849061516a565b816027600060118681548110151561504557fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190206007018054909101905560019290920191614fd2565b5060019695505050505050565b600160a060020a0383166000908152602560209081526040822080548501815560028101805460019081019091556005909101805491820181558352908220018390558082111561510957600160a060020a03841660009081526025602090815260408220600401805460018101825590835290822001556121ed565b600160a060020a0384166000908152602560209081526040822060040180546001810182559083529120429101559392505050565b600160a060020a0390911660009081526026602052604090208054829003815560010180549091019055565b600160a060020a0383166000908152602660209081526040822080548501815560028101805460019081019091556005909101805491820181558352908220018390558111156151e657600160a060020a0383166000908152602660209081526040822060040180546001810182559083529082200155615215565b600160a060020a0383166000908152602660209081526040822060040180546001810182559083529120429101555b505050565b601b546000908152602e6020526040812060020154811080156152595750601b546000908152602e602052604090206002808201546003909201549104105b1561210b5750601b80546001908101909155600a54600b55600c54600755600981905561210b565b600160a060020a03831660009081526024602052604081205460ff16156152a757600080fd5b600160a060020a03831660009081526024602052604090205460ff16156152cd57600080fd5b60065460ff1615156001146152e157600080fd5b600160a060020a0384811690841614156152fa57600080fd5b600160a060020a038316151561530f57600080fd5b600160a060020a03841660009081526022602052604090205482111561533457600080fd5b600160a060020a0383166000908152602260205260409020548281011161535a57600080fd5b50600160a060020a03828116600090815260226020526040808220805493871683529120805484810382558254850192839055905492019101811461539b57fe5b82600160a060020a031684600160a060020a031660008051602061581c833981519152846040518082815260200191505060405180910390a350505050565b600160a060020a038216600090815260256020526040812054821180159061541d5750600160a060020a0383166000908152602760205260409020600101548211155b156154675750600160a060020a0382166000908152602560209081526040808320600180820180548701905581548690039091556027909252909120810180548390039055611bf9565b506000611bf9565b600160a060020a0382166000908152602760205260408120600501546038548290819081908190819081908190881115615754576154ac886121f4565b9299509097509550935060018410156157545760385460648682020490600a90880204603854890201019250600a60385487028115156154e857fe5b603854890291900481019250905085158015615502575084155b801561550e5750600087115b801561553057506000818152602a6020526040902054600160a060020a031615155b1561557f576000818152602a60205260408120546037805461557a93600160a060020a039093169260649291811061556457fe5b90600052602060002001548d0281151561493557fe5b615754565b8415801561558d5750600086115b80156155995750600087115b80156155bb57506000818152602a6020526040902054600160a060020a031615155b80156155dd57506000828152602a6020526040902054600160a060020a031615155b15615640576000818152602a60205260408120546036805461561193600160a060020a039093169260649291811061556457fe5b6000828152602a60205260409020546037805461557a92600160a060020a031691606491600190811061556457fe5b6000851180156156505750600086115b801561565c5750600087115b801561567e57506000818152602a6020526040902054600160a060020a031615155b80156156a057506000828152602a6020526040902054600160a060020a031615155b80156156c257506000838152602a6020526040902054600160a060020a031615155b15615754576000818152602a6020526040812054603680546156f693600160a060020a039093169260649291811061556457fe5b6000828152602a60205260409020546036805461572592600160a060020a031691606491600190811061556457fe5b6000838152602a60205260409020546036805461575492600160a060020a031691606491600290811061556457fe5b505050505050505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106157a357805160ff19168380011785556157d0565b828001600101855582156157d0579182015b828111156157d05782518255916020019190600101906157b5565b506157dc929150615801565b5090565b50805460008255906000526020600020908101906157fe9190615801565b50565b61210b91905b808211156157dc57600081556001016158075600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058209b51c3e9e40f39dc6cf6c075692e24e09559a8c8ce2e2b884d94a67c4e59e30d0029
bzzr://9b51c3e9e40f39dc6cf6c075692e24e09559a8c8ce2e2b884d94a67c4e59e30d
Block | Age | transaction | Difficulty | GasUsed | Reward |
---|
Block | Age | UncleNumber | Difficulty | GasUsed | Reward |
---|