ERC-20
Overview
Max Total Supply
5,000,000,000 MToken
Holders
1,128
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
106,904.200160000000000001 MTokenValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
MT
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-02-19 */ pragma solidity ^ 0.4.24; // ---------------------------------------------------------------------------- // 安全的加减乘除 // ---------------------------------------------------------------------------- library SafeMath { function add(uint a, uint b) internal pure returns(uint c) { c = a + b; require(c >= a); } function sub(uint a, uint b) internal pure returns(uint c) { require(b <= a); c = a - b; } function mul(uint a, uint b) internal pure returns(uint c) { c = a * b; require(a == 0 || c / a == b); } function div(uint a, uint b) internal pure returns(uint c) { require(b > 0); c = a / b; } } // ---------------------------------------------------------------------------- // ERC Token Standard #20 Interface // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md // ---------------------------------------------------------------------------- contract ERC20Interface { function totalSupply() public constant returns(uint); function balanceOf(address tokenOwner) public constant returns(uint balance); function allowance(address tokenOwner, address spender) public constant returns(uint remaining); function transfer(address to, uint tokens) public returns(bool success); function approve(address spender, uint tokens) public returns(bool success); function transferFrom(address from, address to, uint tokens) public returns(bool success); event Transfer(address indexed from, address indexed to, uint tokens); event Approval(address indexed tokenOwner, address indexed spender, uint tokens); } // ---------------------------------------------------------------------------- // 核心类 // ---------------------------------------------------------------------------- contract MT is ERC20Interface{ using SafeMath for uint; string public symbol; string public name; uint8 public decimals; uint _totalSupply;//总发行 uint public sysusermoney;//流通 uint public sysoutmoney;//矿池 uint public sellPrice; //出售价格 1枚代币换多少以太 /1000 uint public buyPrice; //购买价格 多少以太可购买1枚代币 /1000 uint public sysPer; //挖矿的增量百分比 /2% uint public sysPrice1; //挖矿的衡量值10000 uint public sysPrice2; //挖矿的衡量值100000 uint public sysPrice3; //挖矿的衡量值300000 uint public sysPrice4; //挖矿的衡量值500000 uint public sysPer1; //挖矿的增量百分比 /3% uint public sysPer2; //挖矿的增量百分比 /4% uint public sysPer3; //挖矿的增量百分比 /5% uint public sysPer4; //挖矿的增量百分比 /6% uint public systime1;//120 uint public systime2;//240 uint public systime3;//360 uint public systime4;//720 uint public outper1;//退出锁仓20 uint public outper2;//退出锁仓30 uint public outper3;//退出锁仓40 uint public outper4;//退出锁仓50 uint public transper; //转账手续费 /3% bool public actived; uint public onceAddTime; //挖矿的时间 10 days uint public upper1;//团队奖% uint public upper2;//团队奖% uint public upper3;//团队奖% uint public upper4;//团队奖% uint public upper5;//团队奖% uint public upper6;//团队奖% uint public teamper1;//团队奖% uint public teamper2;//团队奖% uint public sellper;//15 uint public sysminteth; uint public hasoutmony; uint public hasbuymoney; uint public hassellmoney; uint public hasbuyeth; uint public hasselleth; mapping(address => uint) balances;//总计 mapping(address => uint) myeth;//本金 mapping(address => uint) froeth;//冻结 //mapping(address => uint) used; mapping(address => mapping(address => uint)) allowed; /* 冻结账户 */ mapping(address => bool) public frozenAccount; //上家地址 mapping(address => address) public fromaddr; //管理员帐号 mapping(address => bool) public admins; // 记录各个账户的增量时间 mapping(address => uint) public crontime; // 挖矿次数 mapping(address => uint) public mintnum; uint[] public permans; mapping(address => uint) public teamget; struct sunsdata{ uint n1; uint n2; uint n3; uint n4; uint n5; uint n6; uint getmoney; } mapping(address => sunsdata) public suns; address public intertoken; modifier onlyInterface { require(intertoken != address(0)); require(msg.sender == intertoken); _; } /* 通知 */ event FrozenFunds(address target, bool frozen); address public owner; address public financer; modifier onlyOwner { require(msg.sender == owner); _; } modifier onlyFinancer { require(msg.sender == financer); _; } // ------------------------------------------------------------------------ // Constructor // ------------------------------------------------------------------------ constructor() public { symbol = "MToken"; name = "MToken"; decimals = 18; _totalSupply = 5000000000 ether;//总发行 sysusermoney = 2500000000 ether;//流通 sysoutmoney = 2500000000 ether;//矿池 sellPrice = 7251 ether; //出售价格 1mt can buy how much eth buyPrice = 7251 ether; //购买价格 1eth can buy how much mt //sysPrice1 = 3 ether;//test sysPer = 2; //挖矿的增量百分比 /100 sysPer1 = 3; //挖矿的增量百分比 /100 sysPer2 = 4; //挖矿的增量百分比 /100 sysPer3 = 5; //挖矿的增量百分比 /100 sysPer4 = 6; //挖矿的增量百分比 /100 sysPrice1 = 10000 ether; //挖矿的衡量值 sysPrice2 = 100000 ether; //挖矿的衡量值 sysPrice3 = 300000 ether; //挖矿的衡量值 sysPrice4 = 500000 ether; //挖矿的衡量值 transper = 3;//转账手续费 /100 upper1 = 10;//第1代挖矿分润 upper2 = 7;//第2代挖矿分润 upper3 = 6;//第2代挖矿分润 upper4 = 5;//第2代挖矿分润 upper5 = 4;//第2代挖矿分润 upper6 = 3;//第2代挖矿分润 teamper1 = 10;//团队奖% /100 teamper2 = 20;//团队奖% /100 outper1 = 80;//退出锁仓 /100 outper2 = 70;//退出锁仓 /100 outper3 = 60;//退出锁仓 /100 outper4 = 60;//退出锁仓 /100 sellper = 85;// /100 actived = true; onceAddTime = 10 days; //挖矿的时间 正式 //onceAddTime = 60 seconds;//test systime1 = 13; systime2 = 25; systime3 = 37; systime4 = 73; permans = [40,20,12,6]; //permans = [3,3,2,2];//test balances[this] = _totalSupply; owner = msg.sender; financer = msg.sender; emit Transfer(address(0), owner, _totalSupply); } /* 获取用户金额 */ function balanceOf(address user) public view returns(uint balance) { return balances[user]; } function ethbalance(address user) public view returns(uint balance) { return user.balance; } function addcrontime(address addr) private{ if(crontime[addr] < now) { crontime[addr] = now + onceAddTime; } } function addusertime(address addr) private{ if(balances[addr] < 2) { addcrontime(addr); } } /* * 获取用户的挖矿时间 * @param {Object} address */ function getaddtime(address _addr) public view returns(uint) { if(crontime[_addr] < 2) { return(0); }else{ return(crontime[_addr]); } } function getmy(address user) public view returns( uint myblance, uint meth, uint myeths, uint mypro, uint mytime, uint bprice, uint tmoney, uint myall ){ myblance = balances[user];//0 meth = address(user).balance;//2 myeths = myeth[user];//3 mypro = froeth[user];//4 mytime = crontime[user];//5 bprice = buyPrice;//6 tmoney = balances[this];//9 myall = myblance.add(mypro);//10 } function geteam(address user) public view returns( uint nn1,//0 uint nn2,//1 uint nn3,//2 uint nn4,//3 uint nn5,//4 uint nn6,//5 uint ms,//6 uint tm,//7 uint mintmoneys,//8 uint usermoneys,//9 uint fromoneys,//10 uint lid//11 ){ nn1 = suns[user].n1; nn2 = suns[user].n2; nn3 = suns[user].n3; nn4 = suns[user].n4; nn5 = suns[user].n5; nn6 = suns[user].n6; ms = teamget[user]; tm = getaddtime(user); mintmoneys = sysoutmoney; usermoneys = sysusermoney; fromoneys = sysminteth; if(suns[user].n2 >= permans[2] && suns[user].n1 >= permans[3]){ lid = 1; } if(suns[user].n2 >= permans[0] && suns[user].n1 >= permans[1]){ lid = 2; } } function getsys() public view returns( uint tmoney,//0 uint outm,//1 uint um,//2 uint from,//3 uint hasout,//4 uint hasbuy,//5 uint hassell,//6 uint hasbuyeths,//9 uint hasselleths//10 ){ tmoney = _totalSupply.sub(balances[this]); outm = sysoutmoney; um = sysusermoney; from = sysminteth; hasout = hasoutmony; hasbuy = hasbuymoney; hassell = hassellmoney; hasbuyeths = hasbuyeth; hasselleths = hasselleth; } function _transfer(address from, address to, uint tokens) private returns(bool success) { require(!frozenAccount[from]); require(!frozenAccount[to]); require(actived == true); uint addper = tokens*transper/100; uint allmoney = tokens + addper; require(balances[from] >= allmoney); require(tokens > 1 && tokens < _totalSupply); // 防止转移到0x0, 用burn代替这个功能 require(to != 0x0); require(from != to); // 将此保存为将来的断言, 函数最后会有一个检验103 - 3 + 10 uint previousBalances = balances[from] - addper + balances[to]; //如果用户没有上家 if(fromaddr[to] == address(0) && fromaddr[from] != to) { //指定上家地址 fromaddr[to] = from; suns[from].n1++; address top = fromaddr[from]; if(top != address(0)) { suns[top].n2++; top = fromaddr[top]; if(top != address(0)) { suns[top].n3++; top = fromaddr[top]; if(top != address(0)) { suns[top].n4++; top = fromaddr[top]; if(top != address(0)) { suns[top].n5++; top = fromaddr[top]; if(top != address(0)) { suns[top].n6++; } } } } } } balances[from] = balances[from].sub(allmoney); if(balances[from] < myeth[from]) { myeth[from] = balances[from]; } balances[this] = balances[this].add(addper); balances[to] = balances[to].add(tokens); myeth[to] = myeth[to].add(tokens); addcrontime(to); emit Transfer(from, this, addper); emit Transfer(from, to, tokens); // 断言检测, 不应该为错 assert(balances[from] + balances[to] == previousBalances);//90 10 return true; } /* * 用户转账 * @param {Object} address */ function transfer(address to, uint tokens) public returns(bool success) { _transfer(msg.sender, to, tokens); success = true; } function intertransfer(address from, address to, uint tokens) public onlyInterface returns(bool success) { _transfer(from, to, tokens); success = true; } /* * 获取上家地址 * @param {Object} address */ function getfrom(address _addr) public view returns(address) { return(fromaddr[_addr]); } function approve(address spender, uint tokens) public returns(bool success) { require(tokens > 1 && tokens < _totalSupply); require(balances[msg.sender] >= tokens); allowed[msg.sender][spender] = tokens; emit Approval(msg.sender, spender, tokens); return true; } /* * 授权转账 * @param {Object} address */ function transferFrom(address from, address to, uint tokens) public returns(bool success) { require(actived == true); require(!frozenAccount[from]); require(!frozenAccount[to]); require(tokens > 1 && tokens < _totalSupply); require(balances[from] >= tokens); balances[from] = balances[from].sub(tokens); allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens); balances[to] = balances[to].add(tokens); emit Transfer(from, to, tokens); return true; } /* * 获取授权信息 * @param {Object} address */ function allowance(address tokenOwner, address spender) public view returns(uint remaining) { return allowed[tokenOwner][spender]; } /// 冻结 or 解冻账户 function freezeAccount(address target, bool freeze) public onlyOwner{ frozenAccount[target] = freeze; emit FrozenFunds(target, freeze); } /* * 系统设置 * @param {Object} uint */ function setconf( uint systyPrice1, uint systyPrice2, uint systyPrice3, uint systyPrice4, uint sysPermit1, uint sysPermit2, uint sysPermit3, uint sysPermit4, uint systime1s, uint systime2s, uint systime3s, uint systime4s ) public onlyOwner{ sysPrice1 = systyPrice1; sysPrice2 = systyPrice2; sysPrice3 = systyPrice3; sysPrice4 = systyPrice4; sysPer1 = sysPermit1; sysPer2 = sysPermit2; sysPer3 = sysPermit3; sysPer4 = sysPermit4; systime1 = systime1s + 1; systime2 = systime2s + 1; systime3 = systime3s + 1; systime4 = systime4s + 1; } /* * 获取系统设置 */ function getconf() public view returns( uint systyPrice1, uint systyPrice2, uint systyPrice3, uint systyPrice4, uint sysPermit1, uint sysPermit2, uint sysPermit3, uint sysPermit4, uint systime1s, uint systime2s, uint systime3s, uint systime4s ) { systyPrice1 = sysPrice1;//0 systyPrice2 = sysPrice2;//1 systyPrice3 = sysPrice3;//2 systyPrice4 = sysPrice4;//3 sysPermit1 = sysPer1;//4 sysPermit2 = sysPer2;//5 sysPermit3 = sysPer3;//6 sysPermit4 = sysPer4;//7 systime1s = systime1 - 1;//8 systime2s = systime2 - 1;//9 systime3s = systime3 - 1;//10 systime4s = systime4 - 1;//11 } function setother( uint newonceaddtime, uint newBuyPrice, uint newSellPrice, uint sysPermit, uint transpers, uint sellpers, uint upper1s, uint upper2s, uint upper3s, uint upper4s, uint upper5s, uint upper6s ) public onlyOwner{ onceAddTime = newonceaddtime; buyPrice = newBuyPrice; sellPrice = newSellPrice; sysPer = sysPermit; transper = transpers; sellper = sellpers; upper1 = upper1s; upper2 = upper2s; upper3 = upper3s; upper4 = upper4s; upper5 = upper5s; upper6 = upper6s; } function getother() public view returns( uint newonceaddtime, uint newBuyPrice, uint newSellPrice, uint sysPermit, uint transpers, uint sellpers, uint upper1s, uint upper2s, uint upper3s, uint upper4s, uint upper5s, uint upper6s ){ newonceaddtime = onceAddTime;//0 newBuyPrice = buyPrice;//1 newSellPrice = sellPrice;//2 sysPermit = sysPer;//3 transpers = transper;//4 sellpers = sellper;//5 upper1s = upper1;//6 upper2s = upper2;//7 upper3s = upper3;//8 upper4s = upper4;//9 upper5s = upper5;//10 upper6s = upper6;//11 } function setsysteam( uint outper1s, uint outper2s, uint outper3s, uint outper4s, uint teamper1s, uint teamper2s, uint t1, uint t2, uint t3, uint t4 ) public onlyOwner{ outper1 = outper1s; outper2 = outper2s; outper3 = outper3s; outper4 = outper4s; teamper1 = teamper1s; teamper2 = teamper2s; permans = [t1,t2,t3,t4]; } function getsysteam() public view returns( uint outper1s, uint outper2s, uint outper3s, uint outper4s, uint teamper1s, uint teamper2s, uint t1, uint t2, uint t3, uint t4 ){ outper1s = outper1;//0 outper2s = outper2;//1 outper3s = outper3;//2 outper4s = outper4;//3 teamper1s = teamper1;//4 teamper2s = teamper2;//5 t1 = permans[0];//6 t2 = permans[1];//7 t3 = permans[2];//8 t4 = permans[3];//9 } /* * 设置是否开启 * @param {Object} bool */ function setactive(bool tags) public onlyOwner { actived = tags; } function settoken(address tokensaddr) onlyOwner public { intertoken = tokensaddr; } function setadmin(address adminaddr) onlyOwner public { owner = adminaddr; } function setfinancer(address financeraddr) onlyOwner public { financer = financeraddr; } /* * 获取总发行 */ function totalSupply() public view returns(uint) { return _totalSupply; } function addusermoney(address target, uint256 mintedAmount) private{ require(!frozenAccount[target]); require(actived == true); require(balances[this] > mintedAmount); balances[target] = balances[target].add(mintedAmount); myeth[target] = myeth[target].add(mintedAmount); balances[this] = balances[this].sub(mintedAmount); sysusermoney = sysusermoney.sub(mintedAmount); hasoutmony = hasoutmony.add(mintedAmount); addcrontime(target); emit Transfer(this, target, mintedAmount); } function subusermoney(address target, uint256 mintedAmount) private{ require(!frozenAccount[target]); require(actived == true); require(balances[target] > mintedAmount); balances[target] = balances[target].sub(mintedAmount); if(balances[target] < myeth[target]) { myeth[target] = balances[target]; } balances[this] = balances[this].add(mintedAmount); sysusermoney = sysusermoney.add(mintedAmount); emit Transfer( target,this, mintedAmount); } /* * 向指定账户拨发资金 * @param {Object} address */ function adduser(address target, uint256 mintedAmount) public onlyFinancer{ addusermoney(target, mintedAmount); } function subuser(address target, uint256 mintedAmount) public onlyFinancer{ subusermoney(target, mintedAmount); } function interadduser(address target, uint256 mintedAmount) public onlyInterface{ addusermoney(target, mintedAmount); } function intersubuser(address target, uint256 mintedAmount) public onlyInterface{ subusermoney(target, mintedAmount); } function mintadd() public{ address user = msg.sender; require(!frozenAccount[user]); require(actived == true); require(balances[user] >= sysPrice1); froeth[user] = froeth[user].add(balances[user]); sysminteth = sysminteth.add(balances[user]); emit Transfer(user, this, balances[user]); balances[user] = 1; myeth[user] = 1; if(froeth[user] >= sysPrice4) { mintnum[user] = systime4; } else if(froeth[user] >= sysPrice3) { mintnum[user] = systime3; } else if(froeth[user] >= sysPrice2) { mintnum[user] = systime2; }else{ mintnum[user] = systime1; } crontime[user] = now + onceAddTime; } function mintsub() public{ address user = msg.sender; require(!frozenAccount[user]); require(actived == true); require(mintnum[user] > 1); require(froeth[user] >= sysPrice1); uint getamount = froeth[user]*outper1/100; if(froeth[user] >= sysPrice4) { getamount = froeth[user]*outper4/100; } else if(froeth[user] >= sysPrice3) { getamount = froeth[user]*outper3/100; } else if(froeth[user] >= sysPrice2) { getamount = froeth[user]*outper2/100; } uint addthis = froeth[user].sub(getamount); balances[this] = balances[this].add(addthis); emit Transfer(user, this, addthis); sysminteth = sysminteth.add(uint(1)).sub(froeth[user]); froeth[user] = 1; mintnum[user] = 1; balances[user] = balances[user].add(getamount); myeth[user] = myeth[user].add(getamount); emit Transfer(this, user, getamount); } function setteam(address user, uint amount) private returns(bool) { if(suns[user].n2 >= permans[2] && suns[user].n1 >= permans[3]){ teamget[user] = teamget[user].add(amount); uint chkmoney = sysPrice2; uint sendmoney = teamget[user]*teamper1/100; if(suns[user].n2 >= permans[0] && suns[user].n1 >= permans[1]){ chkmoney = sysPrice4; sendmoney = teamget[user]*teamper2/100; } if(teamget[user] >= chkmoney) { require(balances[this] > sendmoney); require(sysoutmoney > sendmoney); suns[user].getmoney = suns[user].getmoney.add(sendmoney); balances[user] = balances[user].add(sendmoney); teamget[user] = 1; balances[this] = balances[this].sub(sendmoney); sysoutmoney = sysoutmoney.sub(sendmoney); sysusermoney = sysusermoney.add(sendmoney); emit Transfer(this, user, sendmoney); } return(true); } } function settop(address top, uint upmoney) private{ require(balances[this] > upmoney); require(sysoutmoney > upmoney); balances[top] = balances[top].add(upmoney); balances[this] = balances[this].sub(upmoney); sysoutmoney = sysoutmoney.sub(upmoney); sysusermoney = sysusermoney.add(upmoney); emit Transfer(this, top, upmoney); setteam(top, upmoney); } /* * 用户每隔10天挖矿一次 */ function mint() public { address user = msg.sender; require(!frozenAccount[user]); require(actived == true); require(crontime[user] > 1); require(now > crontime[user]); uint amount; uint usmoney; uint mintmoney; if(myeth[user] > 1) { usmoney = myeth[user] * sysPer / 100; } if(froeth[user] >= sysPrice1 && mintnum[user] > 1) { mintmoney = froeth[user] * sysPer1 / 100; if(froeth[user] >= sysPrice4) { mintmoney = froeth[user] * sysPer4 / 100; } else if(froeth[user] >= sysPrice3) { mintmoney = froeth[user] * sysPer3 / 100; } else if(froeth[user] >= sysPrice2) { mintmoney = froeth[user] * sysPer2 / 100; } } amount = usmoney.add(mintmoney); require(balances[this] > amount); require(sysoutmoney > amount); balances[user] = balances[user].add(amount); balances[this] = balances[this].sub(amount); sysoutmoney = sysoutmoney.sub(amount); sysusermoney = sysusermoney.add(amount); crontime[user] = now + onceAddTime; if(usmoney > 0) { emit Transfer(this, user, usmoney); } if(mintmoney > 0) { emit Transfer(this, user, mintmoney); mintnum[user]--; if(mintnum[user] < 2) { balances[user] = balances[user].add(froeth[user]); myeth[user] = myeth[user].add(froeth[user]); sysminteth = sysminteth.sub(froeth[user]); emit Transfer(this, user, froeth[user]); froeth[user] = 1; } } address top = fromaddr[user]; if(top != address(0) && top != user) { uint upmoney = amount*upper1/100; settop(top, upmoney); top = fromaddr[top]; if(top != address(0) && top != user) { upmoney = amount*upper2/100; settop(top, upmoney); top = fromaddr[top]; if(top != address(0) && top != user) { upmoney = amount*upper3/100; settop(top, upmoney); top = fromaddr[top]; if(top != address(0) && top != user) { upmoney = amount*upper4/100; settop(top, upmoney); top = fromaddr[top]; if(top != address(0) && top != user) { upmoney = amount*upper5/100; settop(top, upmoney); top = fromaddr[top]; if(top != address(0) && top != user) { upmoney = amount*upper6/100; settop(top, upmoney); } } } } } } //emit Transfer(this, user, amount); } /* * 获取总账目 */ function getall() public view returns(uint256 money) { money = address(this).balance; } /* * 购买 */ function buy() public payable returns(uint) { require(actived == true); address user = msg.sender; require(!frozenAccount[user]); require(msg.value > 0); uint amount = (msg.value * buyPrice)/1 ether; require(balances[this] > amount); require(amount > 1 && amount < _totalSupply); balances[user] = balances[user].add(amount); myeth[user] = myeth[user].add(amount); balances[this] = balances[this].sub(amount); sysusermoney = sysusermoney.sub(amount); hasbuymoney = hasbuymoney.add(amount); hasbuyeth = hasbuyeth.add(msg.value); addcrontime(user); owner.transfer(msg.value); emit Transfer(this, user, amount); return(amount); } /* * 系统充值 */ function charge() public payable returns(bool) { return(true); } function() payable public { buy(); } /* * 系统提现 * @param {Object} address */ function withdraw(address _to, uint money) public onlyOwner { require(actived == true); require(!frozenAccount[_to]); require(address(this).balance > money); require(money > 0); _to.transfer(money); } /* * 出售 * @param {Object} uint256 */ function sell(uint256 amount) public returns(bool success) { require(actived == true); address user = msg.sender; require(!frozenAccount[user]); require(amount < _totalSupply); require(amount > 1); require(balances[user] >= amount); uint moneys = (amount * sellper * 10 finney)/sellPrice; require(address(this).balance > moneys); user.transfer(moneys); uint previousBalances = balances[user] + balances[this]; balances[user] = balances[user].sub(amount); if(balances[user] < myeth[user]) { myeth[user] = balances[user]; } balances[this] = balances[this].add(amount); sysusermoney = sysusermoney.add(amount); hassellmoney = hassellmoney.add(amount); hasselleth = hasselleth.add(moneys); emit Transfer(user, this, amount); // 断言检测, 不应该为错 assert(balances[user] + balances[this] == previousBalances); return(true); } /* * 批量发币 * @param {Object} address */ function addBalances(address[] recipients, uint256[] moenys) public onlyOwner{ uint256 sum = 0; for(uint256 i = 0; i < recipients.length; i++) { balances[recipients[i]] = balances[recipients[i]].add(moenys[i]); sum = sum.add(moenys[i]); addusertime(recipients[i]); emit Transfer(this, recipients[i], moenys[i]); } balances[this] = balances[this].sub(sum); sysusermoney = sysusermoney.sub(sum); } /* * 批量减币 * @param {Object} address */ function subBalances(address[] recipients, uint256[] moenys) public onlyOwner{ uint256 sum = 0; for(uint256 i = 0; i < recipients.length; i++) { balances[recipients[i]] = balances[recipients[i]].sub(moenys[i]); sum = sum.add(moenys[i]); emit Transfer(recipients[i], this, moenys[i]); } balances[this] = balances[this].add(sum); sysusermoney = sysusermoney.add(sum); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"sysPer3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"financeraddr","type":"address"}],"name":"setfinancer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"outper4","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"systyPrice1","type":"uint256"},{"name":"systyPrice2","type":"uint256"},{"name":"systyPrice3","type":"uint256"},{"name":"systyPrice4","type":"uint256"},{"name":"sysPermit1","type":"uint256"},{"name":"sysPermit2","type":"uint256"},{"name":"sysPermit3","type":"uint256"},{"name":"sysPermit4","type":"uint256"},{"name":"systime1s","type":"uint256"},{"name":"systime2s","type":"uint256"},{"name":"systime3s","type":"uint256"},{"name":"systime4s","type":"uint256"}],"name":"setconf","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sysPer","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"systime1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onceAddTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"outper1s","type":"uint256"},{"name":"outper2s","type":"uint256"},{"name":"outper3s","type":"uint256"},{"name":"outper4s","type":"uint256"},{"name":"teamper1s","type":"uint256"},{"name":"teamper2s","type":"uint256"},{"name":"t1","type":"uint256"},{"name":"t2","type":"uint256"},{"name":"t3","type":"uint256"},{"name":"t4","type":"uint256"}],"name":"setsysteam","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","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":"sysPer4","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":"hassellmoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"getaddtime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"adduser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getsysteam","outputs":[{"name":"outper1s","type":"uint256"},{"name":"outper2s","type":"uint256"},{"name":"outper3s","type":"uint256"},{"name":"outper4s","type":"uint256"},{"name":"teamper1s","type":"uint256"},{"name":"teamper2s","type":"uint256"},{"name":"t1","type":"uint256"},{"name":"t2","type":"uint256"},{"name":"t3","type":"uint256"},{"name":"t4","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getother","outputs":[{"name":"newonceaddtime","type":"uint256"},{"name":"newBuyPrice","type":"uint256"},{"name":"newSellPrice","type":"uint256"},{"name":"sysPermit","type":"uint256"},{"name":"transpers","type":"uint256"},{"name":"sellpers","type":"uint256"},{"name":"upper1s","type":"uint256"},{"name":"upper2s","type":"uint256"},{"name":"upper3s","type":"uint256"},{"name":"upper4s","type":"uint256"},{"name":"upper5s","type":"uint256"},{"name":"upper6s","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysminteth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokensaddr","type":"address"}],"name":"settoken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"upper2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"outper3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"admins","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getconf","outputs":[{"name":"systyPrice1","type":"uint256"},{"name":"systyPrice2","type":"uint256"},{"name":"systyPrice3","type":"uint256"},{"name":"systyPrice4","type":"uint256"},{"name":"sysPermit1","type":"uint256"},{"name":"sysPermit2","type":"uint256"},{"name":"sysPermit3","type":"uint256"},{"name":"sysPermit4","type":"uint256"},{"name":"systime1s","type":"uint256"},{"name":"systime2s","type":"uint256"},{"name":"systime3s","type":"uint256"},{"name":"systime4s","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"moenys","type":"uint256[]"}],"name":"subBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"fromaddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasbuyeth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"getmy","outputs":[{"name":"myblance","type":"uint256"},{"name":"meth","type":"uint256"},{"name":"myeths","type":"uint256"},{"name":"mypro","type":"uint256"},{"name":"mytime","type":"uint256"},{"name":"bprice","type":"uint256"},{"name":"tmoney","type":"uint256"},{"name":"myall","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"outper2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"charge","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"outper1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasselleth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysPrice3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"permans","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"teamget","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysPer2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"ethbalance","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamper2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newonceaddtime","type":"uint256"},{"name":"newBuyPrice","type":"uint256"},{"name":"newSellPrice","type":"uint256"},{"name":"sysPermit","type":"uint256"},{"name":"transpers","type":"uint256"},{"name":"sellpers","type":"uint256"},{"name":"upper1s","type":"uint256"},{"name":"upper2s","type":"uint256"},{"name":"upper3s","type":"uint256"},{"name":"upper4s","type":"uint256"},{"name":"upper5s","type":"uint256"},{"name":"upper6s","type":"uint256"}],"name":"setother","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"mintadd","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transper","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"intersubuser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"interadduser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sysPrice1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"systime3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysPer1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upper1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getall","outputs":[{"name":"money","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"crontime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"geteam","outputs":[{"name":"nn1","type":"uint256"},{"name":"nn2","type":"uint256"},{"name":"nn3","type":"uint256"},{"name":"nn4","type":"uint256"},{"name":"nn5","type":"uint256"},{"name":"nn6","type":"uint256"},{"name":"ms","type":"uint256"},{"name":"tm","type":"uint256"},{"name":"mintmoneys","type":"uint256"},{"name":"usermoneys","type":"uint256"},{"name":"fromoneys","type":"uint256"},{"name":"lid","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"intertransfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"upper3","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":false,"inputs":[],"name":"buy","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"sysPrice2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"intertoken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamper1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"mintsub","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sysPrice4","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":"hasbuymoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"mintnum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"suns","outputs":[{"name":"n1","type":"uint256"},{"name":"n2","type":"uint256"},{"name":"n3","type":"uint256"},{"name":"n4","type":"uint256"},{"name":"n5","type":"uint256"},{"name":"n6","type":"uint256"},{"name":"getmoney","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"systime2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"financer","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysoutmoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upper4","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"subuser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"systime4","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sysusermoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"adminaddr","type":"address"}],"name":"setadmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"moenys","type":"uint256[]"}],"name":"addBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"sell","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getsys","outputs":[{"name":"tmoney","type":"uint256"},{"name":"outm","type":"uint256"},{"name":"um","type":"uint256"},{"name":"from","type":"uint256"},{"name":"hasout","type":"uint256"},{"name":"hasbuy","type":"uint256"},{"name":"hassell","type":"uint256"},{"name":"hasbuyeths","type":"uint256"},{"name":"hasselleths","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":true,"inputs":[],"name":"upper5","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upper6","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"money","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tags","type":"bool"}],"name":"setactive","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"hasoutmony","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":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040805180820190915260068082527f4d546f6b656e0000000000000000000000000000000000000000000000000000602090920191825262000058916000916200025f565b506040805180820190915260068082527f4d546f6b656e000000000000000000000000000000000000000000000000000060209092019182526200009f916001916200025f565b5060028054601260ff19918216811783556b1027e72f1f1281308800000060039081556b0813f3978f894098440000006004818155600591825569018913d6e28e356c000060068181556007918255600897909755600d848155600e839055600f849055601088905569021e19e0c9bab240000060095569152d02c7e14af6800000600a908155693f870857a3e0e3800000600b556969e10de76676d0800000600c9081556019878155601c839055601d94909455601e8a9055601f9590955560208481556021969096556022556014602381905560506015556046601655603c60178190556018556055602455601a8054909816600117909755620d2f00601b55601155909355602560135560498455604080516080810182526028815292830194909452928101929092526060820192909252620001e39160349190620002e4565b50600354306000908152602b602090815260408083208490556038805433600160a060020a03199182168117928390556039805490921617905581519485529051600160a060020a03909116937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92908290030190a362000347565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002a257805160ff1916838001178555620002d2565b82800160010185558215620002d2579182015b82811115620002d2578251825591602001919060010190620002b5565b50620002e092915062000327565b5090565b828054828255906000526020600020908101928215620002d2579160200282015b82811115620002d2578251829060ff1690559160200191906001019062000305565b6200034491905b80821115620002e057600081556001016200032e565b90565b613dba80620003576000396000f30060806040526004361061041e5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663019e17b3811461042957806303b0ec191461045057806306fdde0314610473578063095ea7b3146104fd5780630b0332f6146105355780630e8104521461054a5780630eea10b1146105875780631249c58b1461059c5780631565cf3a146105b157806316496a15146105c657806317340d54146105db57806318160ddd1461061057806323b872dd146106255780632467814d1461064f578063313ce56714610664578063327f0eaf1461068f57806332eb5e44146106a45780633435ea80146106c557806339b79267146106e95780633abd8e4e1461074e5780633bdcaf63146107c25780633dcc0db2146107d75780633f691c5b146107f85780633fa013711461080d578063429b62e51461082257806343463b981461084357806346e3606014610858578063478904eb146108e65780634b75033414610923578063509f31021461093857806353813af81461094d578063547921a8146109af57806355161913146109c457806358657841146109cc5780635ba98896146109e15780635e61cc3d146109f657806360cb613e14610a0b5780636a3c606714610a235780636d89dd1a14610a445780636eb09ce214610a595780636ee7578a14610a7a57806370a0823114610a8f578063721e6b2e14610ab05780637642249c14610aed5780637993177214610b025780637aa064ef14610b175780637fc8b61214610b3b578063827c2b2414610b5f578063856f931014610b745780638620410b14610b8957806387de581c14610b9e5780638da5cb5b14610bb35780638f448a3814610bc85780639097479514610bdd578063936f73c614610bf257806394dafb1614610c1357806395d89b4114610c34578063966dcd2614610c49578063991f360914610c735780639a24fb4814610c88578063a6f2ae3a14610c9d578063a755e41014610ca5578063a9059cbb14610cba578063aec2e82114610cde578063afcf28cd14610cf3578063b1347e9d14610d08578063b2fd51e014610d1d578063b414d4b614610d32578063b868203314610d53578063bd39519a14610d68578063bda4802614610d89578063cb92a2bc14610de2578063cd581cb214610df7578063d12869dc14610e0c578063d4686b8d14610e21578063d4e3293814610e36578063db1bf0e914610e5a578063dcd62cf114610e6f578063dd62ed3e14610e84578063dded49cb14610eab578063ddf0c07014610ecc578063e4849b3214610f5a578063e4be47e714610f72578063e724529c14610fce578063e736f03c14610ff4578063e987cc4514611009578063f19bb5bd1461102a578063f394a1411461103f578063f3fef3a314611054578063f43a72b014611078578063f8fe778f14611092575b6104266110a7565b50005b34801561043557600080fd5b5061043e611299565b60408051918252519081900360200190f35b34801561045c57600080fd5b50610471600160a060020a036004351661129f565b005b34801561047f57600080fd5b506104886112e5565b6040805160208082528351818301528351919283929083019185019080838360005b838110156104c25781810151838201526020016104aa565b50505050905090810190601f1680156104ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561050957600080fd5b50610521600160a060020a0360043516602435611372565b604080519115158252519081900360200190f35b34801561054157600080fd5b5061043e611414565b34801561055657600080fd5b5061047160043560243560443560643560843560a43560c43560e4356101043561012435610144356101643561141a565b34801561059357600080fd5b5061043e611475565b3480156105a857600080fd5b5061047161147b565b3480156105bd57600080fd5b5061043e611b16565b3480156105d257600080fd5b5061043e611b1c565b3480156105e757600080fd5b5061047160043560243560443560643560843560a43560c43560e4356101043561012435611b22565b34801561061c57600080fd5b5061043e611b93565b34801561063157600080fd5b50610521600160a060020a0360043581169060243516604435611b9a565b34801561065b57600080fd5b5061043e611d37565b34801561067057600080fd5b50610679611d3d565b6040805160ff9092168252519081900360200190f35b34801561069b57600080fd5b5061043e611d46565b3480156106b057600080fd5b5061043e600160a060020a0360043516611d4c565b3480156106d157600080fd5b50610471600160a060020a0360043516602435611d95565b3480156106f557600080fd5b506106fe611dba565b604080519a8b5260208b0199909952898901979097526060890195909552608088019390935260a087019190915260c086015260e085015261010084015261012083015251908190036101400190f35b34801561075a57600080fd5b50610763611e53565b604080519c8d5260208d019b909b528b8b019990995260608b019790975260808a019590955260a089019390935260c088019190915260e087015261010086015261012085015261014084015261016083015251908190036101800190f35b3480156107ce57600080fd5b5061043e611e8f565b3480156107e357600080fd5b50610471600160a060020a0360043516611e95565b34801561080457600080fd5b5061043e611edb565b34801561081957600080fd5b5061043e611ee1565b34801561082e57600080fd5b50610521600160a060020a0360043516611ee7565b34801561084f57600080fd5b50610763611efc565b34801561086457600080fd5b506040805160206004803580820135838102808601850190965280855261047195369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611f449650505050505050565b3480156108f257600080fd5b50610907600160a060020a03600435166120e7565b60408051600160a060020a039092168252519081900360200190f35b34801561092f57600080fd5b5061043e612102565b34801561094457600080fd5b5061043e612108565b34801561095957600080fd5b5061096e600160a060020a036004351661210e565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b3480156109bb57600080fd5b5061043e612178565b61052161217e565b3480156109d857600080fd5b5061043e612183565b3480156109ed57600080fd5b5061043e612189565b348015610a0257600080fd5b5061043e61218f565b348015610a1757600080fd5b5061043e600435612195565b348015610a2f57600080fd5b5061043e600160a060020a03600435166121b4565b348015610a5057600080fd5b5061043e6121c6565b348015610a6557600080fd5b5061043e600160a060020a03600435166121cc565b348015610a8657600080fd5b5061043e6121d9565b348015610a9b57600080fd5b5061043e600160a060020a03600435166121df565b348015610abc57600080fd5b5061047160043560243560443560643560843560a43560c43560e435610104356101243561014435610164356121fa565b348015610af957600080fd5b50610471612249565b348015610b0e57600080fd5b5061043e61246d565b348015610b2357600080fd5b50610471600160a060020a0360043516602435612473565b348015610b4757600080fd5b50610471600160a060020a03600435166024356124ab565b348015610b6b57600080fd5b5061043e6124d9565b348015610b8057600080fd5b5061043e6124df565b348015610b9557600080fd5b5061043e6124e5565b348015610baa57600080fd5b5061043e6124eb565b348015610bbf57600080fd5b506109076124f1565b348015610bd457600080fd5b5061043e612500565b348015610be957600080fd5b5061043e612506565b348015610bfe57600080fd5b5061043e600160a060020a036004351661250b565b348015610c1f57600080fd5b50610763600160a060020a036004351661251d565b348015610c4057600080fd5b506104886126cb565b348015610c5557600080fd5b50610521600160a060020a0360043581169060243516604435612726565b348015610c7f57600080fd5b5061043e61276d565b348015610c9457600080fd5b5061043e612773565b61043e6110a7565b348015610cb157600080fd5b5061043e612779565b348015610cc657600080fd5b50610521600160a060020a036004351660243561277f565b348015610cea57600080fd5b50610907612796565b348015610cff57600080fd5b5061043e6127a5565b348015610d1457600080fd5b506104716127ab565b348015610d2957600080fd5b5061043e612a9b565b348015610d3e57600080fd5b50610521600160a060020a0360043516612aa1565b348015610d5f57600080fd5b5061043e612ab6565b348015610d7457600080fd5b5061043e600160a060020a0360043516612abc565b348015610d9557600080fd5b50610daa600160a060020a0360043516612ace565b604080519788526020880196909652868601949094526060860192909252608085015260a084015260c0830152519081900360e00190f35b348015610dee57600080fd5b5061043e612b0b565b348015610e0357600080fd5b50610907612b11565b348015610e1857600080fd5b5061043e612b20565b348015610e2d57600080fd5b5061043e612b26565b348015610e4257600080fd5b50610471600160a060020a0360043516602435612b2c565b348015610e6657600080fd5b5061043e612b43565b348015610e7b57600080fd5b5061043e612b49565b348015610e9057600080fd5b5061043e600160a060020a0360043581169060243516612b4f565b348015610eb757600080fd5b50610471600160a060020a0360043516612b7a565b348015610ed857600080fd5b506040805160206004803580820135838102808601850190965280855261047195369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750612bc09650505050505050565b348015610f6657600080fd5b50610521600435612d63565b348015610f7e57600080fd5b50610f87612f93565b60408051998a5260208a0198909852888801969096526060880194909452608087019290925260a086015260c085015260e084015261010083015251908190036101200190f35b348015610fda57600080fd5b50610471600160a060020a03600435166024351515612ffa565b34801561100057600080fd5b50610521613075565b34801561101557600080fd5b50610907600160a060020a036004351661307e565b34801561103657600080fd5b5061043e61309c565b34801561104b57600080fd5b5061043e6130a2565b34801561106057600080fd5b50610471600160a060020a03600435166024356130a8565b34801561108457600080fd5b50610471600435151561314e565b34801561109e57600080fd5b5061043e613178565b601a546000908190819060ff1615156001146110c257600080fd5b336000818152602f602052604090205490925060ff16156110e257600080fd5b600034116110ef57600080fd5b600754670de0b6b3a7640000903402306000908152602b60205260409020549190049150811061111e57600080fd5b60018111801561112f575060035481105b151561113a57600080fd5b600160a060020a0382166000908152602b6020526040902054611163908263ffffffff61317e16565b600160a060020a0383166000908152602b6020908152604080832093909355602c90522054611198908263ffffffff61317e16565b600160a060020a0383166000908152602c6020908152604080832093909355308252602b905220546111d0908263ffffffff61318e16565b306000908152602b60205260409020556004546111f3908263ffffffff61318e16565b600455602754611209908263ffffffff61317e16565b60275560295461121f903463ffffffff61317e16565b60295561122b826131a3565b603854604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015611264573d6000803e3d6000fd5b50604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a392915050565b600f5481565b603854600160a060020a031633146112b657600080fd5b6039805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561136a5780601f1061133f5761010080835404028352916020019161136a565b820191906000526020600020905b81548152906001019060200180831161134d57829003601f168201915b505050505081565b6000600182118015611385575060035482105b151561139057600080fd5b336000908152602b60205260409020548211156113ac57600080fd5b336000818152602e60209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60185481565b603854600160a060020a0316331461143157600080fd5b60099b909b55600a99909955600b97909755600c95909555600d93909355600e91909155600f55601055600190810160115590810160125590810160135501601455565b60085481565b336000818152602f6020526040812054819081908190819060ff16156114a057600080fd5b601a5460ff1615156001146114b457600080fd5b600160a060020a0386166000908152603260205260409020546001106114d957600080fd5b600160a060020a03861660009081526032602052604090205442116114fd57600080fd5b600160a060020a0386166000908152602c60205260409020546001101561154257600854600160a060020a0387166000908152602c6020526040902054606491020493505b600954600160a060020a0387166000908152602d6020526040902054108015906115845750600160a060020a0386166000908152603360205260409020546001105b1561166c57600d54600160a060020a0387166000908152602d6020526040902054600c546064928202929092049450106115e157601054600160a060020a0387166000908152602d6020526040902054606491025b04925061166c565b600b54600160a060020a0387166000908152602d60205260409020541061162757600f54600160a060020a0387166000908152602d6020526040902054606491026115d9565b600a54600160a060020a0387166000908152602d60205260409020541061166c57600e54600160a060020a0387166000908152602d6020526040902054606491020492505b61167c848463ffffffff61317e16565b306000908152602b6020526040902054909550851061169a57600080fd5b60055485106116a857600080fd5b600160a060020a0386166000908152602b60205260409020546116d1908663ffffffff61317e16565b600160a060020a0387166000908152602b6020526040808220929092553081522054611703908663ffffffff61318e16565b306000908152602b6020526040902055600554611726908663ffffffff61318e16565b60055560045461173c908663ffffffff61317e16565b600455601b54600160a060020a03871660009081526032602052604081204290920190915584111561179757604080518581529051600160a060020a038816913091600080516020613d6f8339815191529181900360200190a35b60008311156118ff57604080518481529051600160a060020a038816913091600080516020613d6f8339815191529181900360200190a3600160a060020a038616600090815260336020526040902080546000190190819055600211156118ff57600160a060020a0386166000908152602d6020908152604080832054602b9092529091205461182c9163ffffffff61317e16565b600160a060020a0387166000908152602b6020908152604080832093909355602d815282822054602c9091529190205461186b9163ffffffff61317e16565b600160a060020a0387166000908152602c6020908152604080832093909355602d905220546025546118a29163ffffffff61318e16565b602555600160a060020a0386166000818152602d602090815260409182902054825190815291513092600080516020613d6f83398151915292908290030190a3600160a060020a0386166000908152602d60205260409020600190555b600160a060020a03808716600090815260306020526040902054169150811580159061193d575085600160a060020a031682600160a060020a031614155b15611b0e5750601c5460649085020461195682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611995575085600160a060020a031682600160a060020a031614155b15611b0e5750601d546064908502046119ae82826131e8565b600160a060020a039182166000908152603060205260409020549091169081158015906119ed575085600160a060020a031682600160a060020a031614155b15611b0e5750601e54606490850204611a0682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611a45575085600160a060020a031682600160a060020a031614155b15611b0e5750601f54606490850204611a5e82826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611a9d575085600160a060020a031682600160a060020a031614155b15611b0e5750602054606490850204611ab682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611af5575085600160a060020a031682600160a060020a031614155b15611b0e5750602154606490850204611b0e82826131e8565b505050505050565b60115481565b601b5481565b603854600160a060020a03163314611b3957600080fd5b60158a905560168990556017889055601887905560228690556023859055604080516080810182528581526020810185905290810183905260608101829052611b86906034906004613d09565b5050505050505050505050565b6003545b90565b601a5460009060ff161515600114611bb157600080fd5b600160a060020a0384166000908152602f602052604090205460ff1615611bd757600080fd5b600160a060020a0383166000908152602f602052604090205460ff1615611bfd57600080fd5b600182118015611c0e575060035482105b1515611c1957600080fd5b600160a060020a0384166000908152602b6020526040902054821115611c3e57600080fd5b600160a060020a0384166000908152602b6020526040902054611c67908363ffffffff61318e16565b600160a060020a0385166000908152602b6020908152604080832093909355602e815282822033835290522054611ca4908363ffffffff61318e16565b600160a060020a038086166000908152602e602090815260408083203384528252808320949094559186168152602b9091522054611ce8908363ffffffff61317e16565b600160a060020a038085166000818152602b60209081526040918290209490945580518681529051919392881692600080516020613d6f83398151915292918290030190a35060019392505050565b60105481565b60025460ff1681565b60285481565b600160a060020a03811660009081526032602052604081205460021115611d7557506000611d90565b50600160a060020a0381166000908152603260205260409020545b919050565b603954600160a060020a03163314611dac57600080fd5b611db682826132e0565b5050565b6015546016546017546018546022546023546034805460009182918291829182908110611de357fe5b9060005260206000200154935060346001815481101515611e0057fe5b9060005260206000200154925060346002815481101515611e1d57fe5b9060005260206000200154915060346003815481101515611e3a57fe5b9060005260206000200154905090919293949596979899565b601b54600754600654600854601954602454601c54601d54601e54601f546020546021549a9b999a989997989697959694959394929391929091565b60255481565b603854600160a060020a03163314611eac57600080fd5b6037805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601d5481565b60175481565b60316020526000908152604090205460ff1681565b600954600a54600b54600c54600d54600e54600f546010546011546012546013546014549a9b999a989997989697959694959394600019938401949284019391820192910190565b6038546000908190600160a060020a03163314611f6057600080fd5b5060009050805b835181101561209b57611fcc8382815181101515611f8157fe5b90602001906020020151602b60008785815181101515611f9d57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61318e16565b602b60008684815181101515611fde57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002055825161202a9084908390811061201357fe5b60209081029091010151839063ffffffff61317e16565b915030600160a060020a0316848281518110151561204457fe5b90602001906020020151600160a060020a0316600080516020613d6f833981519152858481518110151561207457fe5b906020019060200201516040518082815260200191505060405180910390a3600101611f67565b306000908152602b60205260409020546120bb908363ffffffff61317e16565b306000908152602b60205260409020556004546120de908363ffffffff61317e16565b60045550505050565b603060205260009081526040902054600160a060020a031681565b60065481565b60295481565b600160a060020a0381166000818152602b6020818152604080842054602c835281852054602d84528286205460328552838720546007543089529690955292862054919631959094929392919061216b888663ffffffff61317e16565b9050919395975091939597565b60165481565b600190565b60155481565b602a5481565b600b5481565b60348054829081106121a357fe5b600091825260209091200154905081565b60356020526000908152604090205481565b600e5481565b600160a060020a03163190565b60235481565b600160a060020a03166000908152602b602052604090205490565b603854600160a060020a0316331461221157600080fd5b601b9b909b55600799909955600697909755600895909555601993909355602491909155601c55601d55601e55601f55602055602155565b336000818152602f602052604090205460ff161561226657600080fd5b601a5460ff16151560011461227a57600080fd5b600954600160a060020a0382166000908152602b602052604090205410156122a157600080fd5b600160a060020a0381166000908152602b6020908152604080832054602d909252909120546122d59163ffffffff61317e16565b600160a060020a0382166000908152602d6020908152604080832093909355602b9052205460255461230c9163ffffffff61317e16565b602555600160a060020a0381166000818152602b60209081526040918290205482519081529151309392600080516020613d6f83398151915292908290030190a3600160a060020a0381166000908152602b60209081526040808320600190819055602c835281842055600c54602d90925290912054106123a857601454600160a060020a038216600090815260336020526040902055612449565b600b54600160a060020a0382166000908152602d6020526040902054106123ea57601354600160a060020a038216600090815260336020526040902055612449565b600a54600160a060020a0382166000908152602d60205260409020541061242c57601254600160a060020a038216600090815260336020526040902055612449565b601154600160a060020a0382166000908152603360205260409020555b601b54600160a060020a039091166000908152603260205260409020429091019055565b60195481565b603754600160a060020a0316151561248a57600080fd5b603754600160a060020a031633146124a157600080fd5b611db68282613442565b603754600160a060020a031615156124c257600080fd5b603754600160a060020a03163314611dac57600080fd5b60095481565b60135481565b60075481565b600d5481565b603854600160a060020a031681565b601c5481565b303190565b60326020526000908152604090205481565b600160a060020a03811660009081526036602090815260408083208054600182015460028301546003840154600485015460059095015460359097529487205492969195909493929091808080806125748d611d4c565b94506005549350600454925060255491506034600281548110151561259557fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a03168152602001908152602001600020600101541015801561261857506034805460039081106125e157fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a031681526020019081526020016000206000015410155b15612621575060015b60348054600090811061263057fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a0316815260200190815260200160002060010154101580156126b3575060348054600190811061267c57fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a031681526020019081526020016000206000015410155b156126bc575060025b91939597999b5091939597999b565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561136a5780601f1061133f5761010080835404028352916020019161136a565b603754600090600160a060020a0316151561274057600080fd5b603754600160a060020a0316331461275757600080fd5b612762848484613595565b506001949350505050565b601e5481565b60245481565b600a5481565b600061278c338484613595565b5060019392505050565b603754600160a060020a031681565b60225481565b336000818152602f6020526040812054819060ff16156127ca57600080fd5b601a5460ff1615156001146127de57600080fd5b600160a060020a03831660009081526033602052604090205460011061280357600080fd5b600954600160a060020a0384166000908152602d6020526040902054101561282a57600080fd5b601554600160a060020a0384166000908152602d6020526040902054600c5460649282029290920493501061288257601854600160a060020a0384166000908152602d6020526040902054606491025b04915061290d565b600b54600160a060020a0384166000908152602d6020526040902054106128c857601754600160a060020a0384166000908152602d60205260409020546064910261287a565b600a54600160a060020a0384166000908152602d60205260409020541061290d57601654600160a060020a0384166000908152602d6020526040902054606491020491505b600160a060020a0383166000908152602d6020526040902054612936908363ffffffff61318e16565b306000908152602b6020526040902054909150612959908263ffffffff61317e16565b306000818152602b602090815260409182902093909355805184815290519192600160a060020a03871692600080516020613d6f8339815191529281900390910190a3600160a060020a0383166000908152602d60205260409020546025546129da91906129ce90600163ffffffff61317e16565b9063ffffffff61318e16565b602555600160a060020a0383166000908152602d602090815260408083206001908190556033835281842055602b909152902054612a1e908363ffffffff61317e16565b600160a060020a0384166000908152602b6020908152604080832093909355602c90522054612a53908363ffffffff61317e16565b600160a060020a0384166000818152602c6020908152604091829020939093558051858152905191923092600080516020613d6f8339815191529281900390910190a3505050565b600c5481565b602f6020526000908152604090205460ff1681565b60275481565b60336020526000908152604090205481565b6036602052600090815260409020805460018201546002830154600384015460048501546005860154600690960154949593949293919290919087565b60125481565b603954600160a060020a031681565b60055481565b601f5481565b603954600160a060020a031633146124a157600080fd5b60145481565b60045481565b600160a060020a039182166000908152602e6020908152604080832093909416825291909152205490565b603854600160a060020a03163314612b9157600080fd5b6038805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6038546000908190600160a060020a03163314612bdc57600080fd5b5060009050805b8351811015612d2057612c488382815181101515612bfd57fe5b90602001906020020151602b60008785815181101515612c1957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61317e16565b602b60008684815181101515612c5a57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251612c8f9084908390811061201357fe5b9150612cb18482815181101515612ca257fe5b90602001906020020151613a03565b8381815181101515612cbf57fe5b90602001906020020151600160a060020a031630600160a060020a0316600080516020613d6f8339815191528584815181101515612cf957fe5b906020019060200201516040518082815260200191505060405180910390a3600101612be3565b306000908152602b6020526040902054612d40908363ffffffff61318e16565b306000908152602b60205260409020556004546120de908363ffffffff61318e16565b601a5460009081908190819060ff161515600114612d8057600080fd5b336000818152602f602052604090205490935060ff1615612da057600080fd5b6003548510612dae57600080fd5b60018511612dbb57600080fd5b600160a060020a0383166000908152602b6020526040902054851115612de057600080fd5b6006546024548602662386f26fc1000002811515612dfa57fe5b04915030318210612e0a57600080fd5b604051600160a060020a0384169083156108fc029084906000818181858888f19350505050158015612e40573d6000803e3d6000fd5b5050306000908152602b602052604080822054600160a060020a038516835291205490810190612e76908663ffffffff61318e16565b600160a060020a0384166000908152602b60208181526040808420859055602c82529092205491521115612eca57600160a060020a0383166000908152602b6020908152604080832054602c909252909120555b306000908152602b6020526040902054612eea908663ffffffff61317e16565b306000908152602b6020526040902055600454612f0d908663ffffffff61317e16565b600455602854612f23908663ffffffff61317e16565b602855602a54612f39908363ffffffff61317e16565b602a556040805186815290513091600160a060020a03861691600080516020613d6f8339815191529181900360200190a3306000908152602b602052604080822054600160a060020a038616835291205401811461276257fe5b306000908152602b602052604081205460035482918291829182918291829182918291612fc59163ffffffff61318e16565b98506005549750600454965060255495506026549450602754935060285492506029549150602a549050909192939495969798565b603854600160a060020a0316331461301157600080fd5b600160a060020a0382166000818152602f6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b601a5460ff1681565b600160a060020a039081166000908152603060205260409020541690565b60205481565b60215481565b603854600160a060020a031633146130bf57600080fd5b601a5460ff1615156001146130d357600080fd5b600160a060020a0382166000908152602f602052604090205460ff16156130f957600080fd5b3031811061310657600080fd5b6000811161311357600080fd5b604051600160a060020a0383169082156108fc029083906000818181858888f19350505050158015613149573d6000803e3d6000fd5b505050565b603854600160a060020a0316331461316557600080fd5b601a805460ff1916911515919091179055565b60265481565b8181018281101561140e57600080fd5b60008282111561319d57600080fd5b50900390565b600160a060020a0381166000908152603260205260409020544211156131e557601b54600160a060020a03821660009081526032602052604090204290910190555b50565b306000908152602b6020526040902054811061320357600080fd5b600554811061321157600080fd5b600160a060020a0382166000908152602b602052604090205461323a908263ffffffff61317e16565b600160a060020a0383166000908152602b602052604080822092909255308152205461326c908263ffffffff61318e16565b306000908152602b602052604090205560055461328f908263ffffffff61318e16565b6005556004546132a5908263ffffffff61317e16565b600455604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a36131498282613a2d565b600160a060020a0382166000908152602f602052604090205460ff161561330657600080fd5b601a5460ff16151560011461331a57600080fd5b306000908152602b6020526040902054811061333557600080fd5b600160a060020a0382166000908152602b602052604090205461335e908263ffffffff61317e16565b600160a060020a0383166000908152602b6020908152604080832093909355602c90522054613393908263ffffffff61317e16565b600160a060020a0383166000908152602c6020908152604080832093909355308252602b905220546133cb908263ffffffff61318e16565b306000908152602b60205260409020556004546133ee908263ffffffff61318e16565b600455602654613404908263ffffffff61317e16565b602655613410826131a3565b604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a35050565b600160a060020a0382166000908152602f602052604090205460ff161561346857600080fd5b601a5460ff16151560011461347c57600080fd5b600160a060020a0382166000908152602b602052604090205481106134a057600080fd5b600160a060020a0382166000908152602b60205260409020546134c9908263ffffffff61318e16565b600160a060020a0383166000908152602b60208181526040808420859055602c8252909220549152111561351d57600160a060020a0382166000908152602b6020908152604080832054602c909252909120555b306000908152602b602052604090205461353d908263ffffffff61317e16565b306000908152602b6020526040902055600454613560908263ffffffff61317e16565b6004556040805182815290513091600160a060020a03851691600080516020613d6f8339815191529181900360200190a35050565b600160a060020a0383166000908152602f6020526040812054819081908190819060ff16156135c357600080fd5b600160a060020a0387166000908152602f602052604090205460ff16156135e957600080fd5b601a5460ff1615156001146135fd57600080fd5b6019546064908702600160a060020a038a166000908152602b60205260409020549190049450868501935083111561363457600080fd5b600186118015613645575060035486105b151561365057600080fd5b600160a060020a038716151561366557600080fd5b600160a060020a03888116908816141561367e57600080fd5b600160a060020a038088166000818152602b60209081526040808320548d861684528184205494845260309092529091205491879003019350161580156136e25750600160a060020a03888116600090815260306020526040902054811690881614155b1561383c5750600160a060020a038681166000908152603060208181526040808420805473ffffffffffffffffffffffffffffffffffffffff19168d87169081179091558452603682528084208054600101905591905290205416801561383c57600160a060020a039081166000908152603660209081526040808320600190810180549091019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060020180546001019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060030180546001019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060040180546001019055603090915290205416801561383c57600160a060020a0381166000908152603660205260409020600501805460010190555b600160a060020a0388166000908152602b6020526040902054613865908463ffffffff61318e16565b600160a060020a0389166000908152602b60208181526040808420859055602c825290922054915211156138b957600160a060020a0388166000908152602b6020908152604080832054602c909252909120555b306000908152602b60205260409020546138d9908563ffffffff61317e16565b306000908152602b602052604080822092909255600160a060020a0389168152205461390b908763ffffffff61317e16565b600160a060020a0388166000908152602b6020908152604080832093909355602c90522054613940908763ffffffff61317e16565b600160a060020a0388166000908152602c6020526040902055613962876131a3565b6040805185815290513091600160a060020a038b1691600080516020613d6f8339815191529181900360200190a386600160a060020a031688600160a060020a0316600080516020613d6f833981519152886040518082815260200191505060405180910390a3600160a060020a038088166000908152602b602052604080822054928b1682529020540182146139f557fe5b506001979650505050505050565b600160a060020a0381166000908152602b6020526040902054600211156131e5576131e5816131a3565b600080600060346002815481101515613a4257fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091206001015410801590613aaa5750603480546003908110613a8257fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091205410155b15613d0157600160a060020a038516600090815260356020526040902054613ad8908563ffffffff61317e16565b600160a060020a0386166000908152603560205260408120829055600a54602254603480549296506064919094020493508110613b1157fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091206001015410801590613b795750603480546001908110613b5157fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091205410155b15613ba5575050600c54602354600160a060020a03851660009081526035602052604090205460649102045b600160a060020a0385166000908152603560205260409020548211613cfc57306000908152602b60205260409020548110613bdf57600080fd5b6005548110613bed57600080fd5b600160a060020a038516600090815260366020526040902060060154613c19908263ffffffff61317e16565b600160a060020a038616600090815260366020908152604080832060060193909355602b90522054613c51908263ffffffff61317e16565b600160a060020a0386166000908152602b60208181526040808420949094556035815283832060019055308352522054613c91908263ffffffff61318e16565b306000908152602b6020526040902055600554613cb4908263ffffffff61318e16565b600555600454613cca908263ffffffff61317e16565b600455604080518281529051600160a060020a038716913091600080516020613d6f8339815191529181900360200190a35b600192505b505092915050565b828054828255906000526020600020908101928215613d44579160200282015b82811115613d44578251825591602001919060010190613d29565b50613d50929150613d54565b5090565b611b9791905b80821115613d505760008155600101613d5a5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ddb57876f982b48eb3ad75b3ace23874b964fc2b104c06fc4059366687e9ec180029
Deployed Bytecode
0x60806040526004361061041e5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663019e17b3811461042957806303b0ec191461045057806306fdde0314610473578063095ea7b3146104fd5780630b0332f6146105355780630e8104521461054a5780630eea10b1146105875780631249c58b1461059c5780631565cf3a146105b157806316496a15146105c657806317340d54146105db57806318160ddd1461061057806323b872dd146106255780632467814d1461064f578063313ce56714610664578063327f0eaf1461068f57806332eb5e44146106a45780633435ea80146106c557806339b79267146106e95780633abd8e4e1461074e5780633bdcaf63146107c25780633dcc0db2146107d75780633f691c5b146107f85780633fa013711461080d578063429b62e51461082257806343463b981461084357806346e3606014610858578063478904eb146108e65780634b75033414610923578063509f31021461093857806353813af81461094d578063547921a8146109af57806355161913146109c457806358657841146109cc5780635ba98896146109e15780635e61cc3d146109f657806360cb613e14610a0b5780636a3c606714610a235780636d89dd1a14610a445780636eb09ce214610a595780636ee7578a14610a7a57806370a0823114610a8f578063721e6b2e14610ab05780637642249c14610aed5780637993177214610b025780637aa064ef14610b175780637fc8b61214610b3b578063827c2b2414610b5f578063856f931014610b745780638620410b14610b8957806387de581c14610b9e5780638da5cb5b14610bb35780638f448a3814610bc85780639097479514610bdd578063936f73c614610bf257806394dafb1614610c1357806395d89b4114610c34578063966dcd2614610c49578063991f360914610c735780639a24fb4814610c88578063a6f2ae3a14610c9d578063a755e41014610ca5578063a9059cbb14610cba578063aec2e82114610cde578063afcf28cd14610cf3578063b1347e9d14610d08578063b2fd51e014610d1d578063b414d4b614610d32578063b868203314610d53578063bd39519a14610d68578063bda4802614610d89578063cb92a2bc14610de2578063cd581cb214610df7578063d12869dc14610e0c578063d4686b8d14610e21578063d4e3293814610e36578063db1bf0e914610e5a578063dcd62cf114610e6f578063dd62ed3e14610e84578063dded49cb14610eab578063ddf0c07014610ecc578063e4849b3214610f5a578063e4be47e714610f72578063e724529c14610fce578063e736f03c14610ff4578063e987cc4514611009578063f19bb5bd1461102a578063f394a1411461103f578063f3fef3a314611054578063f43a72b014611078578063f8fe778f14611092575b6104266110a7565b50005b34801561043557600080fd5b5061043e611299565b60408051918252519081900360200190f35b34801561045c57600080fd5b50610471600160a060020a036004351661129f565b005b34801561047f57600080fd5b506104886112e5565b6040805160208082528351818301528351919283929083019185019080838360005b838110156104c25781810151838201526020016104aa565b50505050905090810190601f1680156104ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561050957600080fd5b50610521600160a060020a0360043516602435611372565b604080519115158252519081900360200190f35b34801561054157600080fd5b5061043e611414565b34801561055657600080fd5b5061047160043560243560443560643560843560a43560c43560e4356101043561012435610144356101643561141a565b34801561059357600080fd5b5061043e611475565b3480156105a857600080fd5b5061047161147b565b3480156105bd57600080fd5b5061043e611b16565b3480156105d257600080fd5b5061043e611b1c565b3480156105e757600080fd5b5061047160043560243560443560643560843560a43560c43560e4356101043561012435611b22565b34801561061c57600080fd5b5061043e611b93565b34801561063157600080fd5b50610521600160a060020a0360043581169060243516604435611b9a565b34801561065b57600080fd5b5061043e611d37565b34801561067057600080fd5b50610679611d3d565b6040805160ff9092168252519081900360200190f35b34801561069b57600080fd5b5061043e611d46565b3480156106b057600080fd5b5061043e600160a060020a0360043516611d4c565b3480156106d157600080fd5b50610471600160a060020a0360043516602435611d95565b3480156106f557600080fd5b506106fe611dba565b604080519a8b5260208b0199909952898901979097526060890195909552608088019390935260a087019190915260c086015260e085015261010084015261012083015251908190036101400190f35b34801561075a57600080fd5b50610763611e53565b604080519c8d5260208d019b909b528b8b019990995260608b019790975260808a019590955260a089019390935260c088019190915260e087015261010086015261012085015261014084015261016083015251908190036101800190f35b3480156107ce57600080fd5b5061043e611e8f565b3480156107e357600080fd5b50610471600160a060020a0360043516611e95565b34801561080457600080fd5b5061043e611edb565b34801561081957600080fd5b5061043e611ee1565b34801561082e57600080fd5b50610521600160a060020a0360043516611ee7565b34801561084f57600080fd5b50610763611efc565b34801561086457600080fd5b506040805160206004803580820135838102808601850190965280855261047195369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611f449650505050505050565b3480156108f257600080fd5b50610907600160a060020a03600435166120e7565b60408051600160a060020a039092168252519081900360200190f35b34801561092f57600080fd5b5061043e612102565b34801561094457600080fd5b5061043e612108565b34801561095957600080fd5b5061096e600160a060020a036004351661210e565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b3480156109bb57600080fd5b5061043e612178565b61052161217e565b3480156109d857600080fd5b5061043e612183565b3480156109ed57600080fd5b5061043e612189565b348015610a0257600080fd5b5061043e61218f565b348015610a1757600080fd5b5061043e600435612195565b348015610a2f57600080fd5b5061043e600160a060020a03600435166121b4565b348015610a5057600080fd5b5061043e6121c6565b348015610a6557600080fd5b5061043e600160a060020a03600435166121cc565b348015610a8657600080fd5b5061043e6121d9565b348015610a9b57600080fd5b5061043e600160a060020a03600435166121df565b348015610abc57600080fd5b5061047160043560243560443560643560843560a43560c43560e435610104356101243561014435610164356121fa565b348015610af957600080fd5b50610471612249565b348015610b0e57600080fd5b5061043e61246d565b348015610b2357600080fd5b50610471600160a060020a0360043516602435612473565b348015610b4757600080fd5b50610471600160a060020a03600435166024356124ab565b348015610b6b57600080fd5b5061043e6124d9565b348015610b8057600080fd5b5061043e6124df565b348015610b9557600080fd5b5061043e6124e5565b348015610baa57600080fd5b5061043e6124eb565b348015610bbf57600080fd5b506109076124f1565b348015610bd457600080fd5b5061043e612500565b348015610be957600080fd5b5061043e612506565b348015610bfe57600080fd5b5061043e600160a060020a036004351661250b565b348015610c1f57600080fd5b50610763600160a060020a036004351661251d565b348015610c4057600080fd5b506104886126cb565b348015610c5557600080fd5b50610521600160a060020a0360043581169060243516604435612726565b348015610c7f57600080fd5b5061043e61276d565b348015610c9457600080fd5b5061043e612773565b61043e6110a7565b348015610cb157600080fd5b5061043e612779565b348015610cc657600080fd5b50610521600160a060020a036004351660243561277f565b348015610cea57600080fd5b50610907612796565b348015610cff57600080fd5b5061043e6127a5565b348015610d1457600080fd5b506104716127ab565b348015610d2957600080fd5b5061043e612a9b565b348015610d3e57600080fd5b50610521600160a060020a0360043516612aa1565b348015610d5f57600080fd5b5061043e612ab6565b348015610d7457600080fd5b5061043e600160a060020a0360043516612abc565b348015610d9557600080fd5b50610daa600160a060020a0360043516612ace565b604080519788526020880196909652868601949094526060860192909252608085015260a084015260c0830152519081900360e00190f35b348015610dee57600080fd5b5061043e612b0b565b348015610e0357600080fd5b50610907612b11565b348015610e1857600080fd5b5061043e612b20565b348015610e2d57600080fd5b5061043e612b26565b348015610e4257600080fd5b50610471600160a060020a0360043516602435612b2c565b348015610e6657600080fd5b5061043e612b43565b348015610e7b57600080fd5b5061043e612b49565b348015610e9057600080fd5b5061043e600160a060020a0360043581169060243516612b4f565b348015610eb757600080fd5b50610471600160a060020a0360043516612b7a565b348015610ed857600080fd5b506040805160206004803580820135838102808601850190965280855261047195369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750612bc09650505050505050565b348015610f6657600080fd5b50610521600435612d63565b348015610f7e57600080fd5b50610f87612f93565b60408051998a5260208a0198909852888801969096526060880194909452608087019290925260a086015260c085015260e084015261010083015251908190036101200190f35b348015610fda57600080fd5b50610471600160a060020a03600435166024351515612ffa565b34801561100057600080fd5b50610521613075565b34801561101557600080fd5b50610907600160a060020a036004351661307e565b34801561103657600080fd5b5061043e61309c565b34801561104b57600080fd5b5061043e6130a2565b34801561106057600080fd5b50610471600160a060020a03600435166024356130a8565b34801561108457600080fd5b50610471600435151561314e565b34801561109e57600080fd5b5061043e613178565b601a546000908190819060ff1615156001146110c257600080fd5b336000818152602f602052604090205490925060ff16156110e257600080fd5b600034116110ef57600080fd5b600754670de0b6b3a7640000903402306000908152602b60205260409020549190049150811061111e57600080fd5b60018111801561112f575060035481105b151561113a57600080fd5b600160a060020a0382166000908152602b6020526040902054611163908263ffffffff61317e16565b600160a060020a0383166000908152602b6020908152604080832093909355602c90522054611198908263ffffffff61317e16565b600160a060020a0383166000908152602c6020908152604080832093909355308252602b905220546111d0908263ffffffff61318e16565b306000908152602b60205260409020556004546111f3908263ffffffff61318e16565b600455602754611209908263ffffffff61317e16565b60275560295461121f903463ffffffff61317e16565b60295561122b826131a3565b603854604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015611264573d6000803e3d6000fd5b50604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a392915050565b600f5481565b603854600160a060020a031633146112b657600080fd5b6039805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561136a5780601f1061133f5761010080835404028352916020019161136a565b820191906000526020600020905b81548152906001019060200180831161134d57829003601f168201915b505050505081565b6000600182118015611385575060035482105b151561139057600080fd5b336000908152602b60205260409020548211156113ac57600080fd5b336000818152602e60209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60185481565b603854600160a060020a0316331461143157600080fd5b60099b909b55600a99909955600b97909755600c95909555600d93909355600e91909155600f55601055600190810160115590810160125590810160135501601455565b60085481565b336000818152602f6020526040812054819081908190819060ff16156114a057600080fd5b601a5460ff1615156001146114b457600080fd5b600160a060020a0386166000908152603260205260409020546001106114d957600080fd5b600160a060020a03861660009081526032602052604090205442116114fd57600080fd5b600160a060020a0386166000908152602c60205260409020546001101561154257600854600160a060020a0387166000908152602c6020526040902054606491020493505b600954600160a060020a0387166000908152602d6020526040902054108015906115845750600160a060020a0386166000908152603360205260409020546001105b1561166c57600d54600160a060020a0387166000908152602d6020526040902054600c546064928202929092049450106115e157601054600160a060020a0387166000908152602d6020526040902054606491025b04925061166c565b600b54600160a060020a0387166000908152602d60205260409020541061162757600f54600160a060020a0387166000908152602d6020526040902054606491026115d9565b600a54600160a060020a0387166000908152602d60205260409020541061166c57600e54600160a060020a0387166000908152602d6020526040902054606491020492505b61167c848463ffffffff61317e16565b306000908152602b6020526040902054909550851061169a57600080fd5b60055485106116a857600080fd5b600160a060020a0386166000908152602b60205260409020546116d1908663ffffffff61317e16565b600160a060020a0387166000908152602b6020526040808220929092553081522054611703908663ffffffff61318e16565b306000908152602b6020526040902055600554611726908663ffffffff61318e16565b60055560045461173c908663ffffffff61317e16565b600455601b54600160a060020a03871660009081526032602052604081204290920190915584111561179757604080518581529051600160a060020a038816913091600080516020613d6f8339815191529181900360200190a35b60008311156118ff57604080518481529051600160a060020a038816913091600080516020613d6f8339815191529181900360200190a3600160a060020a038616600090815260336020526040902080546000190190819055600211156118ff57600160a060020a0386166000908152602d6020908152604080832054602b9092529091205461182c9163ffffffff61317e16565b600160a060020a0387166000908152602b6020908152604080832093909355602d815282822054602c9091529190205461186b9163ffffffff61317e16565b600160a060020a0387166000908152602c6020908152604080832093909355602d905220546025546118a29163ffffffff61318e16565b602555600160a060020a0386166000818152602d602090815260409182902054825190815291513092600080516020613d6f83398151915292908290030190a3600160a060020a0386166000908152602d60205260409020600190555b600160a060020a03808716600090815260306020526040902054169150811580159061193d575085600160a060020a031682600160a060020a031614155b15611b0e5750601c5460649085020461195682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611995575085600160a060020a031682600160a060020a031614155b15611b0e5750601d546064908502046119ae82826131e8565b600160a060020a039182166000908152603060205260409020549091169081158015906119ed575085600160a060020a031682600160a060020a031614155b15611b0e5750601e54606490850204611a0682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611a45575085600160a060020a031682600160a060020a031614155b15611b0e5750601f54606490850204611a5e82826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611a9d575085600160a060020a031682600160a060020a031614155b15611b0e5750602054606490850204611ab682826131e8565b600160a060020a03918216600090815260306020526040902054909116908115801590611af5575085600160a060020a031682600160a060020a031614155b15611b0e5750602154606490850204611b0e82826131e8565b505050505050565b60115481565b601b5481565b603854600160a060020a03163314611b3957600080fd5b60158a905560168990556017889055601887905560228690556023859055604080516080810182528581526020810185905290810183905260608101829052611b86906034906004613d09565b5050505050505050505050565b6003545b90565b601a5460009060ff161515600114611bb157600080fd5b600160a060020a0384166000908152602f602052604090205460ff1615611bd757600080fd5b600160a060020a0383166000908152602f602052604090205460ff1615611bfd57600080fd5b600182118015611c0e575060035482105b1515611c1957600080fd5b600160a060020a0384166000908152602b6020526040902054821115611c3e57600080fd5b600160a060020a0384166000908152602b6020526040902054611c67908363ffffffff61318e16565b600160a060020a0385166000908152602b6020908152604080832093909355602e815282822033835290522054611ca4908363ffffffff61318e16565b600160a060020a038086166000908152602e602090815260408083203384528252808320949094559186168152602b9091522054611ce8908363ffffffff61317e16565b600160a060020a038085166000818152602b60209081526040918290209490945580518681529051919392881692600080516020613d6f83398151915292918290030190a35060019392505050565b60105481565b60025460ff1681565b60285481565b600160a060020a03811660009081526032602052604081205460021115611d7557506000611d90565b50600160a060020a0381166000908152603260205260409020545b919050565b603954600160a060020a03163314611dac57600080fd5b611db682826132e0565b5050565b6015546016546017546018546022546023546034805460009182918291829182908110611de357fe5b9060005260206000200154935060346001815481101515611e0057fe5b9060005260206000200154925060346002815481101515611e1d57fe5b9060005260206000200154915060346003815481101515611e3a57fe5b9060005260206000200154905090919293949596979899565b601b54600754600654600854601954602454601c54601d54601e54601f546020546021549a9b999a989997989697959694959394929391929091565b60255481565b603854600160a060020a03163314611eac57600080fd5b6037805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601d5481565b60175481565b60316020526000908152604090205460ff1681565b600954600a54600b54600c54600d54600e54600f546010546011546012546013546014549a9b999a989997989697959694959394600019938401949284019391820192910190565b6038546000908190600160a060020a03163314611f6057600080fd5b5060009050805b835181101561209b57611fcc8382815181101515611f8157fe5b90602001906020020151602b60008785815181101515611f9d57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61318e16565b602b60008684815181101515611fde57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002055825161202a9084908390811061201357fe5b60209081029091010151839063ffffffff61317e16565b915030600160a060020a0316848281518110151561204457fe5b90602001906020020151600160a060020a0316600080516020613d6f833981519152858481518110151561207457fe5b906020019060200201516040518082815260200191505060405180910390a3600101611f67565b306000908152602b60205260409020546120bb908363ffffffff61317e16565b306000908152602b60205260409020556004546120de908363ffffffff61317e16565b60045550505050565b603060205260009081526040902054600160a060020a031681565b60065481565b60295481565b600160a060020a0381166000818152602b6020818152604080842054602c835281852054602d84528286205460328552838720546007543089529690955292862054919631959094929392919061216b888663ffffffff61317e16565b9050919395975091939597565b60165481565b600190565b60155481565b602a5481565b600b5481565b60348054829081106121a357fe5b600091825260209091200154905081565b60356020526000908152604090205481565b600e5481565b600160a060020a03163190565b60235481565b600160a060020a03166000908152602b602052604090205490565b603854600160a060020a0316331461221157600080fd5b601b9b909b55600799909955600697909755600895909555601993909355602491909155601c55601d55601e55601f55602055602155565b336000818152602f602052604090205460ff161561226657600080fd5b601a5460ff16151560011461227a57600080fd5b600954600160a060020a0382166000908152602b602052604090205410156122a157600080fd5b600160a060020a0381166000908152602b6020908152604080832054602d909252909120546122d59163ffffffff61317e16565b600160a060020a0382166000908152602d6020908152604080832093909355602b9052205460255461230c9163ffffffff61317e16565b602555600160a060020a0381166000818152602b60209081526040918290205482519081529151309392600080516020613d6f83398151915292908290030190a3600160a060020a0381166000908152602b60209081526040808320600190819055602c835281842055600c54602d90925290912054106123a857601454600160a060020a038216600090815260336020526040902055612449565b600b54600160a060020a0382166000908152602d6020526040902054106123ea57601354600160a060020a038216600090815260336020526040902055612449565b600a54600160a060020a0382166000908152602d60205260409020541061242c57601254600160a060020a038216600090815260336020526040902055612449565b601154600160a060020a0382166000908152603360205260409020555b601b54600160a060020a039091166000908152603260205260409020429091019055565b60195481565b603754600160a060020a0316151561248a57600080fd5b603754600160a060020a031633146124a157600080fd5b611db68282613442565b603754600160a060020a031615156124c257600080fd5b603754600160a060020a03163314611dac57600080fd5b60095481565b60135481565b60075481565b600d5481565b603854600160a060020a031681565b601c5481565b303190565b60326020526000908152604090205481565b600160a060020a03811660009081526036602090815260408083208054600182015460028301546003840154600485015460059095015460359097529487205492969195909493929091808080806125748d611d4c565b94506005549350600454925060255491506034600281548110151561259557fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a03168152602001908152602001600020600101541015801561261857506034805460039081106125e157fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a031681526020019081526020016000206000015410155b15612621575060015b60348054600090811061263057fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a0316815260200190815260200160002060010154101580156126b3575060348054600190811061267c57fe5b9060005260206000200154603660008f600160a060020a0316600160a060020a031681526020019081526020016000206000015410155b156126bc575060025b91939597999b5091939597999b565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561136a5780601f1061133f5761010080835404028352916020019161136a565b603754600090600160a060020a0316151561274057600080fd5b603754600160a060020a0316331461275757600080fd5b612762848484613595565b506001949350505050565b601e5481565b60245481565b600a5481565b600061278c338484613595565b5060019392505050565b603754600160a060020a031681565b60225481565b336000818152602f6020526040812054819060ff16156127ca57600080fd5b601a5460ff1615156001146127de57600080fd5b600160a060020a03831660009081526033602052604090205460011061280357600080fd5b600954600160a060020a0384166000908152602d6020526040902054101561282a57600080fd5b601554600160a060020a0384166000908152602d6020526040902054600c5460649282029290920493501061288257601854600160a060020a0384166000908152602d6020526040902054606491025b04915061290d565b600b54600160a060020a0384166000908152602d6020526040902054106128c857601754600160a060020a0384166000908152602d60205260409020546064910261287a565b600a54600160a060020a0384166000908152602d60205260409020541061290d57601654600160a060020a0384166000908152602d6020526040902054606491020491505b600160a060020a0383166000908152602d6020526040902054612936908363ffffffff61318e16565b306000908152602b6020526040902054909150612959908263ffffffff61317e16565b306000818152602b602090815260409182902093909355805184815290519192600160a060020a03871692600080516020613d6f8339815191529281900390910190a3600160a060020a0383166000908152602d60205260409020546025546129da91906129ce90600163ffffffff61317e16565b9063ffffffff61318e16565b602555600160a060020a0383166000908152602d602090815260408083206001908190556033835281842055602b909152902054612a1e908363ffffffff61317e16565b600160a060020a0384166000908152602b6020908152604080832093909355602c90522054612a53908363ffffffff61317e16565b600160a060020a0384166000818152602c6020908152604091829020939093558051858152905191923092600080516020613d6f8339815191529281900390910190a3505050565b600c5481565b602f6020526000908152604090205460ff1681565b60275481565b60336020526000908152604090205481565b6036602052600090815260409020805460018201546002830154600384015460048501546005860154600690960154949593949293919290919087565b60125481565b603954600160a060020a031681565b60055481565b601f5481565b603954600160a060020a031633146124a157600080fd5b60145481565b60045481565b600160a060020a039182166000908152602e6020908152604080832093909416825291909152205490565b603854600160a060020a03163314612b9157600080fd5b6038805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6038546000908190600160a060020a03163314612bdc57600080fd5b5060009050805b8351811015612d2057612c488382815181101515612bfd57fe5b90602001906020020151602b60008785815181101515612c1957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff61317e16565b602b60008684815181101515612c5a57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558251612c8f9084908390811061201357fe5b9150612cb18482815181101515612ca257fe5b90602001906020020151613a03565b8381815181101515612cbf57fe5b90602001906020020151600160a060020a031630600160a060020a0316600080516020613d6f8339815191528584815181101515612cf957fe5b906020019060200201516040518082815260200191505060405180910390a3600101612be3565b306000908152602b6020526040902054612d40908363ffffffff61318e16565b306000908152602b60205260409020556004546120de908363ffffffff61318e16565b601a5460009081908190819060ff161515600114612d8057600080fd5b336000818152602f602052604090205490935060ff1615612da057600080fd5b6003548510612dae57600080fd5b60018511612dbb57600080fd5b600160a060020a0383166000908152602b6020526040902054851115612de057600080fd5b6006546024548602662386f26fc1000002811515612dfa57fe5b04915030318210612e0a57600080fd5b604051600160a060020a0384169083156108fc029084906000818181858888f19350505050158015612e40573d6000803e3d6000fd5b5050306000908152602b602052604080822054600160a060020a038516835291205490810190612e76908663ffffffff61318e16565b600160a060020a0384166000908152602b60208181526040808420859055602c82529092205491521115612eca57600160a060020a0383166000908152602b6020908152604080832054602c909252909120555b306000908152602b6020526040902054612eea908663ffffffff61317e16565b306000908152602b6020526040902055600454612f0d908663ffffffff61317e16565b600455602854612f23908663ffffffff61317e16565b602855602a54612f39908363ffffffff61317e16565b602a556040805186815290513091600160a060020a03861691600080516020613d6f8339815191529181900360200190a3306000908152602b602052604080822054600160a060020a038616835291205401811461276257fe5b306000908152602b602052604081205460035482918291829182918291829182918291612fc59163ffffffff61318e16565b98506005549750600454965060255495506026549450602754935060285492506029549150602a549050909192939495969798565b603854600160a060020a0316331461301157600080fd5b600160a060020a0382166000818152602f6020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b601a5460ff1681565b600160a060020a039081166000908152603060205260409020541690565b60205481565b60215481565b603854600160a060020a031633146130bf57600080fd5b601a5460ff1615156001146130d357600080fd5b600160a060020a0382166000908152602f602052604090205460ff16156130f957600080fd5b3031811061310657600080fd5b6000811161311357600080fd5b604051600160a060020a0383169082156108fc029083906000818181858888f19350505050158015613149573d6000803e3d6000fd5b505050565b603854600160a060020a0316331461316557600080fd5b601a805460ff1916911515919091179055565b60265481565b8181018281101561140e57600080fd5b60008282111561319d57600080fd5b50900390565b600160a060020a0381166000908152603260205260409020544211156131e557601b54600160a060020a03821660009081526032602052604090204290910190555b50565b306000908152602b6020526040902054811061320357600080fd5b600554811061321157600080fd5b600160a060020a0382166000908152602b602052604090205461323a908263ffffffff61317e16565b600160a060020a0383166000908152602b602052604080822092909255308152205461326c908263ffffffff61318e16565b306000908152602b602052604090205560055461328f908263ffffffff61318e16565b6005556004546132a5908263ffffffff61317e16565b600455604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a36131498282613a2d565b600160a060020a0382166000908152602f602052604090205460ff161561330657600080fd5b601a5460ff16151560011461331a57600080fd5b306000908152602b6020526040902054811061333557600080fd5b600160a060020a0382166000908152602b602052604090205461335e908263ffffffff61317e16565b600160a060020a0383166000908152602b6020908152604080832093909355602c90522054613393908263ffffffff61317e16565b600160a060020a0383166000908152602c6020908152604080832093909355308252602b905220546133cb908263ffffffff61318e16565b306000908152602b60205260409020556004546133ee908263ffffffff61318e16565b600455602654613404908263ffffffff61317e16565b602655613410826131a3565b604080518281529051600160a060020a038416913091600080516020613d6f8339815191529181900360200190a35050565b600160a060020a0382166000908152602f602052604090205460ff161561346857600080fd5b601a5460ff16151560011461347c57600080fd5b600160a060020a0382166000908152602b602052604090205481106134a057600080fd5b600160a060020a0382166000908152602b60205260409020546134c9908263ffffffff61318e16565b600160a060020a0383166000908152602b60208181526040808420859055602c8252909220549152111561351d57600160a060020a0382166000908152602b6020908152604080832054602c909252909120555b306000908152602b602052604090205461353d908263ffffffff61317e16565b306000908152602b6020526040902055600454613560908263ffffffff61317e16565b6004556040805182815290513091600160a060020a03851691600080516020613d6f8339815191529181900360200190a35050565b600160a060020a0383166000908152602f6020526040812054819081908190819060ff16156135c357600080fd5b600160a060020a0387166000908152602f602052604090205460ff16156135e957600080fd5b601a5460ff1615156001146135fd57600080fd5b6019546064908702600160a060020a038a166000908152602b60205260409020549190049450868501935083111561363457600080fd5b600186118015613645575060035486105b151561365057600080fd5b600160a060020a038716151561366557600080fd5b600160a060020a03888116908816141561367e57600080fd5b600160a060020a038088166000818152602b60209081526040808320548d861684528184205494845260309092529091205491879003019350161580156136e25750600160a060020a03888116600090815260306020526040902054811690881614155b1561383c5750600160a060020a038681166000908152603060208181526040808420805473ffffffffffffffffffffffffffffffffffffffff19168d87169081179091558452603682528084208054600101905591905290205416801561383c57600160a060020a039081166000908152603660209081526040808320600190810180549091019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060020180546001019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060030180546001019055603090915290205416801561383c57600160a060020a03908116600090815260366020908152604080832060040180546001019055603090915290205416801561383c57600160a060020a0381166000908152603660205260409020600501805460010190555b600160a060020a0388166000908152602b6020526040902054613865908463ffffffff61318e16565b600160a060020a0389166000908152602b60208181526040808420859055602c825290922054915211156138b957600160a060020a0388166000908152602b6020908152604080832054602c909252909120555b306000908152602b60205260409020546138d9908563ffffffff61317e16565b306000908152602b602052604080822092909255600160a060020a0389168152205461390b908763ffffffff61317e16565b600160a060020a0388166000908152602b6020908152604080832093909355602c90522054613940908763ffffffff61317e16565b600160a060020a0388166000908152602c6020526040902055613962876131a3565b6040805185815290513091600160a060020a038b1691600080516020613d6f8339815191529181900360200190a386600160a060020a031688600160a060020a0316600080516020613d6f833981519152886040518082815260200191505060405180910390a3600160a060020a038088166000908152602b602052604080822054928b1682529020540182146139f557fe5b506001979650505050505050565b600160a060020a0381166000908152602b6020526040902054600211156131e5576131e5816131a3565b600080600060346002815481101515613a4257fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091206001015410801590613aaa5750603480546003908110613a8257fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091205410155b15613d0157600160a060020a038516600090815260356020526040902054613ad8908563ffffffff61317e16565b600160a060020a0386166000908152603560205260408120829055600a54602254603480549296506064919094020493508110613b1157fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091206001015410801590613b795750603480546001908110613b5157fe5b6000918252602080832090910154600160a060020a0388168352603690915260409091205410155b15613ba5575050600c54602354600160a060020a03851660009081526035602052604090205460649102045b600160a060020a0385166000908152603560205260409020548211613cfc57306000908152602b60205260409020548110613bdf57600080fd5b6005548110613bed57600080fd5b600160a060020a038516600090815260366020526040902060060154613c19908263ffffffff61317e16565b600160a060020a038616600090815260366020908152604080832060060193909355602b90522054613c51908263ffffffff61317e16565b600160a060020a0386166000908152602b60208181526040808420949094556035815283832060019055308352522054613c91908263ffffffff61318e16565b306000908152602b6020526040902055600554613cb4908263ffffffff61318e16565b600555600454613cca908263ffffffff61317e16565b600455604080518281529051600160a060020a038716913091600080516020613d6f8339815191529181900360200190a35b600192505b505092915050565b828054828255906000526020600020908101928215613d44579160200282015b82811115613d44578251825591602001919060010190613d29565b50613d50929150613d54565b5090565b611b9791905b80821115613d505760008155600101613d5a5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ddb57876f982b48eb3ad75b3ace23874b964fc2b104c06fc4059366687e9ec180029
Swarm Source
bzzr://ddb57876f982b48eb3ad75b3ace23874b964fc2b104c06fc4059366687e9ec18
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.