Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 internal transactions
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 2440530 | 3292 days ago | 0 ETH | ||||
Transfer | 2440527 | 3292 days ago | 0 ETH | ||||
Transfer | 2439600 | 3292 days ago | 0 ETH | ||||
Transfer | 2439594 | 3292 days ago | 0 ETH | ||||
Transfer | 2439592 | 3292 days ago | 0 ETH | ||||
Transfer | 2439149 | 3292 days ago | 0 ETH | ||||
Transfer | 2439074 | 3292 days ago | 0 ETH | ||||
Transfer | 2438948 | 3292 days ago | 0 ETH | ||||
Transfer | 2438936 | 3292 days ago | 0 ETH | ||||
Transfer | 2438863 | 3292 days ago | 0 ETH | ||||
Transfer | 2438724 | 3292 days ago | 0 ETH | ||||
Transfer | 2438517 | 3292 days ago | 0 ETH | ||||
Transfer | 2438507 | 3292 days ago | 0 ETH | ||||
Transfer | 2438465 | 3292 days ago | 0 ETH | ||||
Transfer | 2438459 | 3292 days ago | 0 ETH | ||||
Transfer | 2438438 | 3292 days ago | 0 ETH | ||||
Transfer | 2438435 | 3292 days ago | 0 ETH | ||||
Transfer | 2438433 | 3292 days ago | 0 ETH | ||||
Transfer | 2438388 | 3292 days ago | 0 ETH | ||||
Transfer | 2438383 | 3292 days ago | 0 ETH | ||||
Transfer | 2438332 | 3292 days ago | 0 ETH | ||||
Transfer | 2438321 | 3292 days ago | 0 ETH | ||||
Transfer | 2438287 | 3292 days ago | 0 ETH | ||||
Transfer | 2438276 | 3292 days ago | 0 ETH | ||||
Transfer | 2438264 | 3292 days ago | 0 ETH |
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ARK_FLAGGER_1_00
Compiler Version
v0.3.5-2016-07-21-6610add
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2016-08-25 */ contract ARK { address owner; address controller; bool mute; string[] companies; mapping (address => uint) companyIndex; address[] companyWallet; mapping (address => uint) balances; mapping (uint => Bot) bots; mapping (address => uint[]) botOwners; mapping (uint => MarketBill) MarketBills; mapping (address => uint[]) BuyersBills; mapping (address => uint[]) SellersBills; mapping (uint => Stats) cycle; uint[] lastPrice; uint totCompanies; log[] logs; mapping (address => bool) TOS; mapping(address => bool) ban; uint[20] listed; uint coinIndex; mapping (uint => Coin) coins; mapping (uint => Coin) trash; ARKController_1_00 control; struct log{ address admin; string action; address addr; } struct MarketBill { uint sellerdata; uint buyerdata; uint product; uint index; uint cost; uint block; } struct Coin { address coinOwner; string data; string mine; uint coinType; uint platf; string adv; uint block; } struct Bot { address owner; string info; uint cost; uint nbills; mapping (uint => uint) bills; mapping (uint => uint) sales; } mapping (uint => uint) hadv; mapping (address => bool) miner; uint totBOTS; uint selling; uint nMbills; uint total; uint claimed; uint bounty; struct Stats{ uint sold; uint currentSeller; } function ARK() {owner=msg.sender;} function initStats(string str,address ad,uint a){ if(msg.sender==owner){ if(companies.length==0){ coinIndex=0; totBOTS=10000; selling=1; claimed=0; nMbills=1; total=0; bounty=2500; mute=false; for(uint z=0;z<20;z++){ cycle[z]=Stats({sold:0,currentSeller:1}); if(z<7){lastPrice.push(a);} listed[z]=0; } companyIndex[msg.sender]=1; } if(companies.length<2){ companies.push(str); companyWallet.push(ad); }else{if(ad==owner)companies[0]=str;} if(a==333){owner=ad;logs.push(log(owner,"setOwner",ad));} } } function createCoin(string dat,uint typ,uint pltf,string min,string buyerBill,address own) returns(bool){ coinIndex++; coins[coinIndex]= Coin({coinOwner : own,data : dat,mine : min,coinType : typ,platf: pltf,adv : "",block : block.number}); listed[typ]++; listed[pltf]++; administration(2,buyerBill,coinIndex,lastPrice[2],msg.sender); control.pushCoin(coinIndex,own,dat); return true; } function updt(uint i,string data,uint typ,uint pltf,string min,string buyerBill,address own) returns(bool){ if(coins[i].coinOwner!=msg.sender)throw; coins[i].data=data; coins[i].coinType=typ; coins[i].platf=pltf; coins[i].mine=min; coins[i].coinOwner=own; administration(3,buyerBill,i,lastPrice[3],msg.sender); return true; } function setAdv(uint i,string data,string buyerBill) returns(bool){ coins[i].adv=data; administration(4,buyerBill,i,lastPrice[4],msg.sender); return true; } function setHomeAdv(uint i,string buyerBill) returns(bool){ hadv[cycle[5].sold]=i; administration(5,buyerBill,i,lastPrice[5],msg.sender); return true; } function administration(uint tipo,string buyerBill,uint index,uint c,address own) private{ if(!(companyIndex[own]>0))registerCompany(own,buyerBill); uint u=cycle[tipo].currentSeller; if(!ban[own]){balances[bots[u].owner]+=c;}else{balances[owner]+=c;} balances[own]+=msg.value-c; registerBill(u,bots[u].owner,own,tipo,index,c); } function setBounty(address a,string data,uint amount){ if((msg.sender==owner)&&(bounty>amount)){ for(uint j=0;j<amount;j++){ bots[selling] = Bot(a,"",0,0); botOwners[a].push(selling); registerCompany(a,data); totBOTS++; selling++; bounty--; } } } function botOnSale(uint i,uint c) {if((msg.sender!=bots[i].owner)||(selling<=totBOTS)||(!TOS[msg.sender]))throw;bots[i].cost=c;} function buyBOTx(uint i,string buyerbill,string buyerInfo,address buyerwallet,uint amount) returns (bool){ if((amount<1)||(i>15000)||((amount>1)&&((selling+amount+999>totBOTS)||(selling<400))))throw; address sellsNow; address holder; uint sell; uint currentSeller; uint c; if(!(companyIndex[buyerwallet]>0))registerCompany(buyerwallet,buyerbill); if((miner[msg.sender])&&(claimed<2500)){ currentSeller=cycle[0].currentSeller; sellsNow=bots[currentSeller].owner; c=lastPrice[0]; claimed++; totBOTS++; miner[msg.sender]=false; holder=owner; sell=selling; //balances[bots[currentSeller].owner]+=msg.value; if(!ban[bots[currentSeller].owner]){balances[bots[currentSeller].owner]+=c;}else{balances[owner]+=c;} //balances[bots[currentSeller].owner]+=c; //balances[msg.sender]+=(msg.value-c); selling++; bots[sell] = Bot(buyerwallet,buyerInfo,0,0); }else{ if(selling>totBOTS){ if(bots[i].cost==0)throw; currentSeller=cycle[0].currentSeller; sellsNow=bots[currentSeller].owner; holder=bots[i].owner; sell=i; c=bots[i].cost+lastPrice[0]; move(i,buyerwallet); if(!ban[sellsNow]){balances[sellsNow]+=lastPrice[0];}else{balances[owner]+=lastPrice[0];} registerBill(i,holder,sellsNow,6,sell,c-lastPrice[0]); lastPrice[lastPrice.length++]=c-lastPrice[0]; }else{ c=lastPrice[6]*amount; balances[owner]+=msg.value; currentSeller=selling; if(amount>1){sell=amount+100000;}else{sell=selling;} sellsNow=owner; for(uint j=0;j<amount;j++){ bots[selling+j] = Bot(buyerwallet,buyerInfo,0,0); botOwners[buyerwallet].push(selling+j); } selling+=amount; } } if(sellsNow!=owner)botOwners[buyerwallet].push(sell); registerBill(currentSeller,sellsNow,buyerwallet,0,sell,c); return true; } function move(uint index,address wallet) private returns (uint[]){ uint[] l=botOwners[bots[index].owner]; uint ll=l.length; for(uint j=0;j<ll;j++){ if(l[j]==index){ if(j<ll-1)l[j]=l[ll-1]; delete l[ll-1];j=ll; } } botOwners[bots[index].owner]=l; botOwners[bots[index].owner].length--; bots[index].owner=wallet; bots[index].cost=0; } function updateBOTBillingInfo(uint index,string data,address wallet,string info,string buyerbill,uint updatetype) returns(bool){ if((index>totBOTS)||(msg.sender!=bots[index].owner))throw; uint t=1; address cs=bots[cycle[1].currentSeller].owner; if(bots[index].owner!=wallet){ if(!(companyIndex[wallet]>0))registerCompany(wallet,data); botOwners[wallet].push(index); move(index,wallet); }else{ if(updatetype!=1){ t=companyIndex[msg.sender]+100; registerCompany(msg.sender,data); totCompanies--; } } if(updatetype!=2)bots[index].info=info; if(!ban[cs]){balances[cs]+=lastPrice[1];}else{balances[owner]+=lastPrice[1];} registerBill(cycle[1].currentSeller,cs,msg.sender,t,index,lastPrice[1]); return true; } function registerExternalBill(uint bi,address sellsNow,address buyerwallet,uint tipo,uint sell,uint c){ if(msg.sender!=controller)throw; registerBill(bi,sellsNow,buyerwallet,tipo,sell,c); } function registerBill(uint bi,address sellsNow,address buyerwallet,uint tipo,uint sell,uint c) private{ if((msg.value<c)||(mute)||(!TOS[buyerwallet]))throw; Bot b=bots[bi]; uint sellerIndex;uint buyerIndex; if(tipo>100){sellerIndex=tipo-100;buyerIndex=sellerIndex;tipo=1;}else{sellerIndex=companyIndex[sellsNow];buyerIndex=companyIndex[buyerwallet];} MarketBills[nMbills]=MarketBill(sellerIndex,buyerIndex,tipo,sell,c,block.number); b.bills[b.nbills+1]=nMbills; b.nbills++; b.sales[tipo]++; BuyersBills[buyerwallet][BuyersBills[buyerwallet].length++]=nMbills; SellersBills[sellsNow][SellersBills[sellsNow].length++]=nMbills; nMbills++; if(sellsNow!=owner){ total+=c; if(tipo!=6){ cycle[tipo].sold++; cycle[tipo].currentSeller++; if((cycle[tipo].currentSeller>totBOTS)||(cycle[tipo].currentSeller>=selling))cycle[tipo].currentSeller=1;} } if(claimed<=2500)miner[block.coinbase]=true; } function registerCompany(address wal,string data) private{ companyWallet[companyWallet.length++]=wal; companyIndex[wal]=companies.length; companies[companies.length++]=data; totCompanies++; } function muteMe(bool m){ if((msg.sender==owner)||(msg.sender==controller))mute=m; } function totBOTs() constant returns(uint,uint,uint,uint,uint) {return (totBOTS,claimed,selling,companies.length,totCompanies); } function getBotBillingIndex(uint i,uint bi) constant returns (uint){ return bots[i].bills[bi]; } function getBill(uint i,uint bi)constant returns(uint,uint,uint,uint,uint,uint){ MarketBill b=MarketBills[i]; return (b.sellerdata,b.buyerdata,b.product,b.index,b.cost,b.block); } function getNextSellerBOTdata(uint cyc) constant returns (uint,uint,string){return (cycle[cyc].currentSeller,cycle[cyc].sold,companies[companyIndex[bots[cycle[cyc].currentSeller].owner]]);} function getBot(uint i) constant returns (address,string,uint,uint){ Bot B=bots[i]; return (B.owner,B.info,B.cost,B.nbills); } function getOwnedBot(address own,uint bindex) constant returns(uint){return botOwners[own][bindex];} function getBotStats(uint i,uint j) constant returns (uint){ Bot B=bots[i]; return B.sales[j];} function getFullCompany(address w,uint i) constant returns (string,uint,bool,uint,uint,string,address){return (companies[companyIndex[w]],botOwners[w].length,miner[w],balances[w],this.balance,companies[i],companyWallet[i]);} function getActorBillXdetail(address w,uint i,bool who) constant returns (uint,uint){if(who){return (SellersBills[w][i],SellersBills[w].length);}else{return (BuyersBills[w][i],BuyersBills[w].length);}} function getHomeadvIndex(uint ind) constant returns (uint){return hadv[ind];} function getLastPrice(uint i) constant returns (uint,uint,uint,uint,uint){return (lastPrice[i],lastPrice[lastPrice.length-1],selling,nMbills,total);} function setController(address a) returns(bool){if(msg.sender!=owner)throw;controller=a;control=ARKController_1_00(a);logs.push(log(owner,"setCensorer",a)); return true; } function readLog(uint i)constant returns(address,string,address){log l=logs[i];return(l.admin,l.action,l.addr);} function censorship(uint i,bool b,bool c) returns(bool){ if(msg.sender!=controller)throw; if(c){coins[i]=Coin({coinOwner : 0x0,data : "Censored",mine : "",coinType : 0,platf: 0,adv : "",block : 0});}else{ if(b){ trash[i]=coins[i]; coins[i]=Coin({coinOwner : 0x0,data : "Censored",mine : "",coinType : 0,platf: 0,adv : "",block : 0}); }else{ coins[i]=trash[i]; }} return true; } function setPrice(uint i,uint j) returns(bool){if(msg.sender!=controller)throw;if(i<7)lastPrice[i]=j; return true;} function acceptTOS(address a,bool b) returns(bool){ if(b)if(!ban[msg.sender]){TOS[msg.sender]=true;ban[msg.sender]=false;} if(msg.sender==controller){TOS[a]=b;if(!b)ban[a]=true;logs.push(log(controller,"setTOS",a)); return true;} } function getTOS(address a)constant returns(bool) {return TOS[a];} function owns(address a) constant returns (bool){return botOwners[a].length>0;} function getCoin(uint n) constant returns (address,string,uint,uint,string,string) { Coin c = coins[n]; return (c.coinOwner,c.data,c.coinType,c.platf,c.mine,c.adv); } function Trash(uint n) constant returns (address,string,uint,uint,string,string) { if((msg.sender!=controller)&&(!(getOwnedBot(msg.sender,0)>0))) Coin c = trash[n]; return (c.coinOwner,c.data,c.coinType,c.platf,c.mine,c.adv); } function getCoinStats(uint i) constant returns (uint,uint){ return (listed[i],coinIndex); } function withdraw(){ if(!TOS[msg.sender])throw; uint t=balances[msg.sender]; balances[msg.sender]=0; if(!(msg.sender.send(t)))throw; } function (){throw;} } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// contract ARKController_1_00 { /* Constructor */ ARK Ark; event CoinSent(uint indexed id,address from,string name); address owner; address Source; mapping(address => bool)administrator; mapping(address => bool)module; mapping(address => string)adminName; mapping(uint => bool)restore; //////////////////////////////////////////////// log[] logs; struct log{ address admin; string what; uint id; address a; } //////////////////////////////////////////////// function ARKController_1_00() { owner=msg.sender; } function setOwner(address a,string name) { if(msg.sender==owner)owner=a; } function ban(address a) returns(bool){ return false; } function setAdministrator(address a,string name,bool yesno) { if(isModule(msg.sender)){ administrator[a]=yesno; adminName[a]=name; if(msg.sender==owner)logs.push(log(msg.sender,"setAdmin",0,a)); if(msg.sender!=owner)logs.push(log(msg.sender,"moduleSetAdmin",0,a)); } } function setModule(address a,bool yesno) { if(!isModule(msg.sender))throw; module[a]=yesno; logs.push(log(owner,"setModule",0,a)); } function setPrice(uint i,uint j){ if((!isModule(msg.sender))||(i>6))throw; Ark.setPrice(i,j); logs.push(log(msg.sender,"setPrice",i,msg.sender)); } function setTOS(address a,bool b){ if(!isModule(msg.sender))throw; Ark.acceptTOS(a,b); } function setSource(address a) { if(msg.sender!=owner)throw; Ark=ARK(a); Source=a; logs.push(log(msg.sender,"setSource",0,a)); } function setARKowner(address a) { if(msg.sender!=owner)throw; Ark.initStats("",a,333); logs.push(log(msg.sender,"setARKowner",0,0x0)); } function restoreItem(uint i){ if(isAdmin(msg.sender)||isModule(msg.sender)){ Ark.censorship(i,false,false); logs.push(log(msg.sender,"restore",i,0x0)); } } function applyCensorship(uint i){ if(!isAdmin(msg.sender))throw; Ark.censorship(i,true,false); logs.push(log(msg.sender,"censor",i,0x0)); } function deleteCoin(uint i){ if(!isModule(msg.sender))throw; Ark.censorship(i,true,true); logs.push(log(msg.sender,"censor",i,0x0)); } function registerExternalBill(uint bi,address sellsNow,address buyerwallet,uint tipo,uint sell,uint c) private{ if(!isModule(msg.sender))throw; Ark.registerExternalBill(bi,sellsNow,buyerwallet,tipo,sell,c); } function pushCoin(uint i,address a,string s) returns(bool){ if(msg.sender!=Source)throw; CoinSent(i,a,s); return true; } function isAdmin(address a)constant returns(bool){ bool b=false; if((a==owner)||(administrator[a]))b=true; return b; } function isModule(address a)constant returns(bool){ bool b=false; if((a==owner)||(module[a]))b=true; return b; } function getAdminName(address a)constant returns(string){ return adminName[a]; } function getSource()constant returns(address){ return Source; } function readLog(uint i)constant returns(string,address,string,uint,address){ log l=logs[i]; return(getAdminName(l.admin),l.admin,l.what,l.id,l.a); } } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// contract ARKTagger_1_00 { /* Constructor */ ARK Ark; address owner; string[] lastTags; mapping (string => uint[]) tagged; //////////////////////////////////////////////// log[] logs; struct log{ address admin; string action; address addr; } //////////////////////////////////////////////// function ARKTagger_1_00() { owner=msg.sender; } function setOwner(address a) { if(msg.sender!=owner)throw; owner=a; logs.push(log(owner,"setOwner",a)); } function setSource(address a) { if(msg.sender!=owner)throw; Ark=ARK(a); logs.push(log(owner,"setSource",a)); } function readLog(uint i)constant returns(address,string,address){ log l=logs[i]; return(l.admin,l.action,l.addr); } function getLastTag(uint i) constant returns(string tag){ return lastTags[i]; } function addTag(uint i,string tag){tagged[tag][tagged[tag].length++]=i;lastTags[lastTags.length++]=tag;} function getTag(string tag,uint i) constant returns(uint,uint){return (tagged[tag][i],tagged[tag].length);} } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// contract ARK_TROGLOg_1_00 { /* TROGLOg is part of ARK Endowment, all the documents are property of the relative ARK BOTs owners */ ARK Ark; address owner; mapping(uint => string)troglogs; //////////////////////////////////////////////// log[] logs; struct log{ address admin; string action; address addr; uint docu; } //////////////////////////////////////////////// function ARK_TROGLOg_1_00() { owner=msg.sender; } //change TROGLOg controller function setOwner(address a) { if(msg.sender!=owner)throw; owner=a; logs.push(log(owner,"setOwner",a,0)); } //point TROGLOg to ARK function setSource(address a) { if(msg.sender!=owner)throw; Ark=ARK(a); logs.push(log(owner,"setSource",a,0)); } function readLog(uint i)constant returns(address,string,address,uint){ log l=logs[i]; return(l.admin,l.action,l.addr,l.docu); } function submitCoding(string s,uint i){ var(own,dat,a,b) = Ark.getBot(i); if((own==msg.sender)){troglogs[i]=s;logs.push(log(msg.sender,"setDocument",0x0,i));}else{throw;} } function getLOg(uint i) constant returns(string){ if(!(Ark.getOwnedBot(msg.sender,0)>0))throw; return (troglogs[i]);} } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// contract ARK_VOTER_1_00{ ARK Ark; ARKController_1_00 controller; address owner; mapping(uint => uint)thresold; Vote[] votes; uint max; uint min; Vote[] tv; uint[] lastblock; uint vmin=30; uint vmax=700; uint qmin=30; uint qmax=700; struct Vote { uint up; uint down; mapping (address => bool) voters; } //////////////////////////////////////////////// log[] logs; struct log{ address admin; string action; address addr; uint i; } //////////////////////////////////////////////// function ARK_VOTER_1_00(uint a,uint b,uint c,uint d,uint e,uint f){ owner=msg.sender; //tv.push(); thresold[0]=a; //blackflag quorum thresold[1]=b; //censor quorum thresold[2]=c; //price vote quorum thresold[3]=d; //quorum voting quorum thresold[4]=e; thresold[5]=f; for(uint z=0;z<9;z++){ votes.push(Vote({up:0,down:0})); lastblock.push(1);} min=50000000000000000; max=2000000000000000000; vmin=30; vmax=700; qmin=30; qmax=700; } function setOwner(address a) { if(msg.sender!=owner)throw; owner=a; logs.push(log(owner,"setOwner",a,0)); } function setSource(address a) { if(msg.sender!=owner)throw; Ark=ARK(a); logs.push(log(owner,"setSource",a,0)); } function setController(address a) { if(msg.sender!=owner)throw; controller=ARKController_1_00(a); logs.push(log(owner,"setController",a,0)); } function readLog(uint i)constant returns(address,string,address){ log l=logs[i]; return(l.admin,l.action,l.addr); } function setThresold(uint i,uint j){ if(msg.sender!=owner)throw; thresold[i]=j; if(i==0)logs.push(log(owner,"setThresold0",0x0,j)); if(i==1)logs.push(log(owner,"setThresold1",0x0,j)); if(i==2)logs.push(log(owner,"setThresold2",0x0,j)); if(i==3)logs.push(log(owner,"setThresold3",0x0,j)); if(i==4)logs.push(log(owner,"setThresold4",0x0,j)); if(i==5)logs.push(log(owner,"setThresold5",0x0,j)); } function setMin(uint i,uint w) { if(msg.sender!=owner)throw; if(w==0){min=i; logs.push(log(owner,"setMin",0x0,i));} if(w==1){vmin=i; logs.push(log(owner,"setVMin",0x0,i));} if(w==2){qmin=i; logs.push(log(owner,"setQMin",0x0,i));} } function setMax(uint i,uint w) { if(msg.sender!=owner)throw; if(w==0){max=i; logs.push(log(owner,"setMax",0x0,i));} if(w==1){vmax=i; logs.push(log(owner,"setVMax",0x0,i));} if(w==2){qmax=i; logs.push(log(owner,"setQMax",0x0,i));} } function setPrice(uint i,uint j) { if(msg.sender!=owner)throw; if(i==0)logs.push(log(owner,"setPrice0",0x0,j)); if(i==1)logs.push(log(owner,"setPrice1",0x0,j)); if(i==2)logs.push(log(owner,"setPrice2",0x0,j)); if(i==3)logs.push(log(owner,"setPrice3",0x0,j)); if(i==4)logs.push(log(owner,"setPrice4",0x0,j)); if(i==5)logs.push(log(owner,"setPrice5",0x0,j)); controller.setPrice(i,j); } function check(uint i)constant returns(bool){ if((Ark.getOwnedBot(msg.sender,0)>0)&&(block.number-lastblock[i]>1000)){return true;}else{return false;} } function votePrice(uint x,bool v){ Vote V=votes[x]; var(a,b,c,d,e) = Ark.getLastPrice(x); if(check(x)&&(!(V.voters[msg.sender]))&&(x<=5)&&(a<=max)&&(a>=min)){ V.voters[msg.sender]=true; if(v){V.up++; if(V.up>thresold[2]){ uint u=a+(a/10); controller.setPrice(x,u); lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } }else{ V.down++; if(V.down>thresold[2]){ uint z=a-(a/10); controller.setPrice(x,z); lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } } }else{throw;} } function voteQuorum(uint x,bool v){ Vote V=votes[x]; if((check(x))&&(!(V.voters[msg.sender]))&&(x>5)&&(x<9)&&(thresold[x-6]<vmax)&&(thresold[x-6]>vmin)){ V.voters[msg.sender]=true; if(v){V.up++; if(V.up>thresold[3]){ thresold[x-6]+=thresold[x-6]/10; lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } }else{ V.down++; if(V.down>thresold[3]){ thresold[x-6]-=thresold[x-6]/10; lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } } }else{throw;} } function voteSuperQuorum(uint x,bool v){ Vote V=votes[x]; if((check(x))&&(!(V.voters[msg.sender]))&&(x>8)&&(thresold[3]<qmax)&&(thresold[3]>qmin)){ V.voters[msg.sender]=true; if(v){V.up++; if(V.up>thresold[3]){ thresold[3]+=thresold[3]/10; lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } }else{ V.down++; if(V.down>thresold[3]){ thresold[3]-=thresold[3]/10; lastblock[x]=block.number; votes[x]=Vote({up:0,down:0}); } } }else{throw;} } function getVotes(uint x) constant returns(uint,uint,bool){ Vote V=votes[x]; return (V.up,V.down,V.voters[msg.sender]); } function getThresold(uint i)constant returns(uint){return thresold[i];} function getMinMax()constant returns(uint,uint,uint,uint,uint,uint){return (min,max,vmin,vmax,qmin,qmax);} } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// contract ARK_FLAGGER_1_00{ ARK Ark; ARKController_1_00 ARKcontroller; address owner; ARK_VOTER_1_00 ARKvoter; struct BlackFlag{ uint blackflagrequest; uint blackflags; } mapping(uint => BlackFlag) blackflags; mapping(uint => Censorship)censoring; struct Censorship{mapping(address => bool) censor;} uint[] thresold; //////////////////////////////////////////////// log[] logs; struct log{ address admin; string action; address addr; uint i; } //////////////////////////////////////////////// function ARK_FLAGGER_1_00(){ owner=msg.sender; thresold.push(3); thresold.push(3); thresold.push(3); thresold.push(3); thresold.push(3); thresold.push(3); } function setOwner(address a) { if(msg.sender!=owner)throw; owner=a; logs.push(log(owner,"setOwner",a,0)); } function setController(address a) { if(msg.sender!=owner)throw; ARKcontroller=ARKController_1_00(a); logs.push(log(owner,"setController",a,0)); } function setVoter(address a) { if(msg.sender!=owner)throw; ARKvoter=ARK_VOTER_1_00(a); logs.push(log(owner,"setVoter",a,0)); } function setSource(address a) { if(msg.sender!=owner)throw; Ark=ARK(a); logs.push(log(owner,"setSource",a,0)); } function readLog(uint i)constant returns(address,string,address,uint){ log l=logs[i]; return(l.admin,l.action,l.addr,l.i); } function check()constant returns(bool){ var b=false; if(Ark.getOwnedBot(msg.sender,0)>0)b=true; return b; } function setBlackflag(uint i,bool b){if(msg.sender!=owner)throw;if(b){blackflags[i].blackflags++;}else{blackflags[i].blackflags--;}} function setBlackFlagRequest(uint index,uint typ){ var (x,y) = Ark.getCoinStats(0); BlackFlag c = blackflags[index]; if((index<=y)&&(check())&&((typ==1)||(typ==1001)||(typ==10001))&&(!censoring[index].censor[msg.sender])){ if(c.blackflagrequest==0){censoring[index]=Censorship(); c.blackflagrequest=typ;} logs.push(log(msg.sender,"requestBlackFlag",0x0,index)); censoring[index].censor[msg.sender]=true; }else{throw;} } function getBlackflag(uint index,address a) constant returns(bool,uint,uint){ BlackFlag c = blackflags[index]; return (censoring[index].censor[a],c.blackflagrequest,c.blackflags); } function confirmBlackFlag(uint index,bool confirm){ BlackFlag c = blackflags[index]; uint t=c.blackflagrequest; if((check())&&(t>=1)&&(!censoring[index].censor[msg.sender])){ if(confirm){ if((t<(1+thresold[0]))||((1000<t)&&(t<(1001+thresold[0])))||((t>10000)&&(t<(10000+thresold[1])))){ c.blackflagrequest++; //censoring[index].blackflagasker=msg.sender; censoring[index].censor[msg.sender]=true; }else{ if(t>=10000+thresold[1]){ ARKcontroller.applyCensorship(index); censoring[index]=Censorship(); }else{ c.blackflags++; } c.blackflagrequest=0; } }else{if(t>10000){c.blackflagrequest=0;logs.push(log(msg.sender,"nullCensorshipRequest",0x0,index));}else{c.blackflagrequest--;}} }else{throw;} } function setThresold(uint i,uint j){ if(msg.sender!=owner)throw; thresold[i]=j; if(i==0)logs.push(log(owner,"setThresold0",0x0,j)); if(i==1)logs.push(log(owner,"setThresold1",0x0,j)); if(i==2)logs.push(log(owner,"setThresold2",0x0,j)); if(i==3)logs.push(log(owner,"setThresold3",0x0,j)); if(i==4)logs.push(log(owner,"setThresold4",0x0,j)); if(i==5)logs.push(log(owner,"setThresold5",0x0,j)); } function updateThresold(uint i){ thresold[i]=ARKvoter.getThresold(i); //uint u=ARKvoter.getThresold(i); if(i==0)logs.push(log(owner,"updateThresold0",0x0,i)); if(i==1)logs.push(log(owner,"updateThresold1",0x0,i)); if(i==2)logs.push(log(owner,"updateThresold2",0x0,i)); if(i==3)logs.push(log(owner,"updateThresold3",0x0,i)); if(i==4)logs.push(log(owner,"updateThresold4",0x0,i)); if(i==5)logs.push(log(owner,"updateThresold5",0x0,i)); } function getThresold()constant returns(uint,uint,uint,uint,uint,uint){ return (thresold[0],thresold[1],thresold[2],thresold[3],thresold[4],thresold[5]); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"a","type":"address"}],"name":"setOwner","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"i","type":"uint256"}],"name":"updateThresold","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"i","type":"uint256"},{"name":"b","type":"bool"}],"name":"setBlackflag","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"address"}],"name":"setVoter","outputs":[],"type":"function"},{"constant":true,"inputs":[],"name":"getThresold","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"},{"name":"a","type":"address"}],"name":"getBlackflag","outputs":[{"name":"","type":"bool"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"check","outputs":[{"name":"","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"address"}],"name":"setController","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"},{"name":"confirm","type":"bool"}],"name":"confirmBlackFlag","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"address"}],"name":"setSource","outputs":[],"type":"function"},{"constant":true,"inputs":[{"name":"i","type":"uint256"}],"name":"readLog","outputs":[{"name":"","type":"address"},{"name":"","type":"string"},{"name":"","type":"address"},{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"},{"name":"typ","type":"uint256"}],"name":"setBlackFlagRequest","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"i","type":"uint256"},{"name":"j","type":"uint256"}],"name":"setThresold","outputs":[],"type":"function"},{"inputs":[],"type":"constructor"}]
Contract Creation Code
606060405260028054600160a060020a03191633179055600680546001810180835582818380158290116100565781836000526020600020918201910161005691905b808211156100a35760008155600101610042565b50505060009283525060209091206003910155600680546001810180835582818380158290116100a75760008390526100a790600080516020612ea4833981519152908101908301610042565b5090565b50505060009283525060209091206003910155600680546001810180835582818380158290116100f45760008390526100f490600080516020612ea4833981519152908101908301610042565b505050600092835250602090912060039101556006805460018101808355828183801582901161014157600083905261014190600080516020612ea4833981519152908101908301610042565b505050600092835250602090912060039101556006805460018101808355828183801582901161018e57600083905261018e90600080516020612ea4833981519152908101908301610042565b50505060009283525060209091206003910155600680546001810180835582818380158290116101db5760008390526101db90600080516020612ea4833981519152908101908301610042565b505050600092835250602082206003910155612ca79081906101fd90396000f300606060405236156100a35760e060020a600035046313af403581146100a55780632b7ce9cd146100c75780632ffda1e0146101975780634bc2a657146101bc57806356048edc146101de5780636bc507b114610335578063919840ad1461039457806392eefe9b146104235780639b36737014610445578063a802691214610466578063b7213bd414610488578063c144117214610562578063ce592586146105fa575b005b6100a3600435600254600160a060020a03908116339091161461072957610002565b6100a3600435604080516003547f55b62dcf000000000000000000000000000000000000000000000000000000008252600482018490529151600160a060020a0392909216916355b62dcf9160248181019260209290919082900301816000876161da5a03f1156100025750506040515160068054919250908390811015610002579060005260206000209001600050556000811415610940576007805460018101808355828183801582901161097f5760040281600402836000526020600020918201910161097f9190610a7e565b6100a3600435602435600254600160a060020a03908116339091161461145957610002565b6100a3600435600254600160a060020a03908116339091161461149c57610002565b61061e6000600060006000600060006006600050600081548110156100025752600080516020612c8783398151915281505460068054600190811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090505460068054600290811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190505460068054600390811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4290505460068054600490811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d43905054600680546005908110156100025750507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4454949b939a50919850965094509092509050565b6004803560009081526020918252604080822060058452818320600160a060020a0360243516845290935290205481546001929092015460ff919091169190604080519315158452602084019290925282820152519081900360600190f35b6106515b60008054604080517ffaa1a8ff00000000000000000000000000000000000000000000000000000000815233600160a060020a03908116600483015260248201859052915184938493169163faa1a8ff916044828101926020929190829003018187876161da5a03f115610002575050604051519190911115905061041b575060015b8091505b5090565b6100a3600435600254600160a060020a03908116339091161461163f57610002565b6100a3600435602435600082815260046020526040902080546117e4610398565b6100a3600435600254600160a060020a039081163390911614611bfb57610002565b61066560043560006020604051908101604052806000815260200150600060006000600760005086815481101561000257508152600486027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68801815060408051825460028481015460038601546001878101805460209281161561010002600019011694909404601f8101829004820287018201909752868652969750600160a060020a03938416969295919093169391859190830182828015611dc95780601f10611d9e57610100808354040283529160200191611dc9565b6100a3600435602435600060006000600060009054906101000a9004600160a060020a0316600160a060020a0316633aa94b1d60006040518260e060020a028152600401808281526020019150506040604051808303816000876161da5a03f115610002575050604080518051602091820151948990526004909152932092935090919050818511801590611de05750611de0610398565b6100a360043560243560025433600160a060020a0390811691161461207457610002565b604080519687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b604080519115158252519081900360200190f35b6040518085600160a060020a031681526020018060200184600160a060020a031681526020018381526020018281038252858181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e95780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b50565b60028054600160a060020a0319168217905560078054600181018083558281838015829011610771576004028160040283600052602060002091820191016107719190610872565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600881527f7365744f776e6572000000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff19168380011785555b506106fa9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106108b65750610853565b601f01602090049060005260206000209081019061085391905b8082111561041f57600081556001016108d0565b82800160010185558215610847579182015b828111156108475782518260005055916020019190600101906108f6565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060011415610b3c5760078054600181018083558281838015829011610b7b57600402816004028360005260206000209182019101610b7b9190610c7a565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64300000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610ae057805160ff19168380011785555b506109149291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610ac25750610a5f565b601f016020900490600052602060002090810190610a5f91906108d0565b82800160010185558215610a53579182015b82811115610a53578251826000505591602001919060010190610af2565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060021415610d385760078054600181018083558281838015829011610d7757600402816004028360005260206000209182019101610d779190610e76565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64310000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610cdc57805160ff19168380011785555b50610b109291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610cbe5750610c5b565b601f016020900490600052602060002090810190610c5b91906108d0565b82800160010185558215610c4f579182015b82811115610c4f578251826000505591602001919060010190610cee565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060031415610f345760078054600181018083558281838015829011610f7357600402816004028360005260206000209182019101610f739190611072565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64320000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610ed857805160ff19168380011785555b50610d0c9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610eba5750610e57565b601f016020900490600052602060002090810190610e5791906108d0565b82800160010185558215610e4b579182015b82811115610e4b578251826000505591602001919060010190610eea565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060041415611130576007805460018101808355828183801582901161116f5760040281600402836000526020600020918201910161116f919061126e565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64330000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106110d457805160ff19168380011785555b50610f089291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106110b65750611053565b601f01602090049060005260206000209081019061105391906108d0565b82800160010185558215611047579182015b828111156110475782518260005055916020019190600101906110e6565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b806005141561072657600780546001810180835582818380158290116113005760040281600402836000526020600020918201910161130091906113f7565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64340000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106112d057805160ff19168380011785555b506111049291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106112b2575061124f565b601f01602090049060005260206000209081019061124f91906108d0565b82800160010185558215611243579182015b828111156112435782518260005055916020019190600101906112e2565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64350000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061143b57506113d8565b601f0160209004906000526020600020908101906113d891906108d0565b801561147e576000828152600460205260409020600190810180549091019055611498565b600082815260046020526040902060010180546000190190555b5050565b60038054600160a060020a03191682179055600780546001810180835582818380158290116114e4576004028160040283600052602060002091820191016114e491906115dd565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600881527f736574566f746572000000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061162157506115be565b601f0160209004906000526020600020908101906115be91906108d0565b60018054600160a060020a03191682178155600780549182018082559091908281838015829011611689576004028160040283600052602060002091820191016116899190611782565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600d81527f736574436f6e74726f6c6c657200000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106117c65750611763565b601f01602090049060005260206000209081019061176391906108d0565b80156117f1575060018110155b80156118205750600084815260056020908152604080832033600160a060020a0316845290915290205460ff16155b1561191557821561191a57600680546000908110156100025752600080516020612c87833981519152546001018110806118885750806103e8108015611888575060068054600090811015610002575050600080516020612c87833981519152546103e90181105b806118d55750612710811180156118d557506006805460019081101561000257506000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d40546127100181105b1561195e57815460019081018355600085815260056020908152604080832033600160a060020a031684529091529020805460ff19169091179055611a2f565b610002565b612710811115611a34576000825560078054600181018083558281838015829011611a4357600402816004028360005260206000209182019101611a439190611b39565b6006805460019081101561000257506000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4054612710018110611a1d57604080516001547f9aaf442c000000000000000000000000000000000000000000000000000000008252600482018790529151600160a060020a039290921691639aaf442c91602481810192600092909190829003018183876161da5a03f11561000257505060408051602090810190915260008690526005905250611a2a565b6001828101805490910190555b600082555b611a3d565b81546000190182555b50505050565b505050919090600052602060002090600402016000506040805160808101825233815281518083018352601581527f6e756c6c43656e736f727368697052657175657374000000000000000000000060208281019182528381018390526000948401859052606084018b905283518654600160a060020a031916178655915160018681018054818852968590209597969095600292821615610100026000190190911691909104601f9081019490940481019391929091839010611b9b57805160ff19168380011785555b50611bcb9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611b7d5750611b1a565b601f016020900490600052602060002090810190611b1a91906108d0565b82800160010185558215611b0e579182015b82811115611b0e578251826000505591602001919060010190611bad565b50506040820151600282018054600160a060020a0319169091179055606091909101516003919091015550611a3d565b60008054600160a060020a0319168217905560078054600181018083558281838015829011611c4357600402816004028360005260206000209182019101611c439190611d3c565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600981527f736574536f757263650000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611d805750611d1d565b601f016020900490600052602060002090810190611d1d91906108d0565b820191906000526020600020905b815481529060010190602001808311611dac57829003601f168201915b505050505092509450945094509450509193509193565b8015611e0357508360011480611df75750836103e9145b80611e03575083612711145b8015611e325750600085815260056020908152604080832033600160a060020a0316845290915290205460ff16155b1561191557805460001415611e5a576040805160209081019091526000869052600590528381555b60078054600181018083558281838015829011611e9057600402816004028360005260206000209182019101611e909190611f86565b505050919090600052602060002090600402016000506040805160808101825233815281518083018352601081527f72657175657374426c61636b466c61670000000000000000000000000000000060208281019182528381018390526000948401859052606084018c905283518654600160a060020a031916178655915160018681018054818852968590209597969095600292821615610100026000190190911691909104601f9081019490940481019391929091839010611fe857805160ff19168380011785555b506120189291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611fca5750611f67565b601f016020900490600052602060002090810190611f6791906108d0565b82800160010185558215611f5b579182015b82811115611f5b578251826000505591602001919060010190611ffa565b5050604082810151600283018054600160a060020a0319169091179055606092909201516003919091015560008781526005602090815282822033600160a060020a03168352905220805460ff19166001179055505050505050565b806006600050838154811015610002576000918252600080516020612c878339815191520190505560008214156121075760078054600181018083558281838015829011612146576004028160040283600052602060002091820191016121469190612245565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600114156123035760078054600181018083558281838015829011612342576004028160040283600052602060002091820191016123429190612441565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64300000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106122a757805160ff19168380011785555b506120db9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106122895750612226565b601f01602090049060005260206000209081019061222691906108d0565b8280016001018555821561221a579182015b8281111561221a5782518260005055916020019190600101906122b9565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600214156124ff576007805460018101808355828183801582901161253e5760040281600402836000526020600020918201910161253e919061263d565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64310000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106124a357805160ff19168380011785555b506122d79291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106124855750612422565b601f01602090049060005260206000209081019061242291906108d0565b82800160010185558215612416579182015b828111156124165782518260005055916020019190600101906124b5565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600314156126fb576007805460018101808355828183801582901161273a5760040281600402836000526020600020918201910161273a9190612839565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64320000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f90810193909304840193909290919083901061269f57805160ff19168380011785555b506124d39291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612681575061261e565b601f01602090049060005260206000209081019061261e91906108d0565b82800160010185558215612612579182015b828111156126125782518260005055916020019190600101906126b1565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600414156128f75760078054600181018083558281838015829011612936576004028160040283600052602060002091820191016129369190612a35565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64330000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f90810193909304840193909290919083901061289b57805160ff19168380011785555b506126cf9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061287d575061281a565b601f01602090049060005260206000209081019061281a91906108d0565b8280016001018555821561280e579182015b8281111561280e5782518260005055916020019190600101906128ad565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600514156114985760078054600181018083558281838015829011612ac757600402816004028360005260206000209182019101612ac79190612bc6565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64340000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010612a9757805160ff19168380011785555b506128cb9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612a795750612a16565b601f016020900490600052602060002090810190612a1691906108d0565b82800160010185558215612a0a579182015b82811115612a0a578251826000505591602001919060010190612aa9565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64350000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010612c2857805160ff19168380011785555b50612c589291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612c0a5750612ba7565b601f016020900490600052602060002090810190612ba791906108d0565b82800160010185558215612b9b579182015b82811115612b9b578251826000505591602001919060010190612c3a565b50506040820151600282018054600160a060020a0319169091179055606091909101516003919091015550505056f652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f
Deployed Bytecode
0x606060405236156100a35760e060020a600035046313af403581146100a55780632b7ce9cd146100c75780632ffda1e0146101975780634bc2a657146101bc57806356048edc146101de5780636bc507b114610335578063919840ad1461039457806392eefe9b146104235780639b36737014610445578063a802691214610466578063b7213bd414610488578063c144117214610562578063ce592586146105fa575b005b6100a3600435600254600160a060020a03908116339091161461072957610002565b6100a3600435604080516003547f55b62dcf000000000000000000000000000000000000000000000000000000008252600482018490529151600160a060020a0392909216916355b62dcf9160248181019260209290919082900301816000876161da5a03f1156100025750506040515160068054919250908390811015610002579060005260206000209001600050556000811415610940576007805460018101808355828183801582901161097f5760040281600402836000526020600020918201910161097f9190610a7e565b6100a3600435602435600254600160a060020a03908116339091161461145957610002565b6100a3600435600254600160a060020a03908116339091161461149c57610002565b61061e6000600060006000600060006006600050600081548110156100025752600080516020612c8783398151915281505460068054600190811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090505460068054600290811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190505460068054600390811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4290505460068054600490811015610002575060009081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d43905054600680546005908110156100025750507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4454949b939a50919850965094509092509050565b6004803560009081526020918252604080822060058452818320600160a060020a0360243516845290935290205481546001929092015460ff919091169190604080519315158452602084019290925282820152519081900360600190f35b6106515b60008054604080517ffaa1a8ff00000000000000000000000000000000000000000000000000000000815233600160a060020a03908116600483015260248201859052915184938493169163faa1a8ff916044828101926020929190829003018187876161da5a03f115610002575050604051519190911115905061041b575060015b8091505b5090565b6100a3600435600254600160a060020a03908116339091161461163f57610002565b6100a3600435602435600082815260046020526040902080546117e4610398565b6100a3600435600254600160a060020a039081163390911614611bfb57610002565b61066560043560006020604051908101604052806000815260200150600060006000600760005086815481101561000257508152600486027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68801815060408051825460028481015460038601546001878101805460209281161561010002600019011694909404601f8101829004820287018201909752868652969750600160a060020a03938416969295919093169391859190830182828015611dc95780601f10611d9e57610100808354040283529160200191611dc9565b6100a3600435602435600060006000600060009054906101000a9004600160a060020a0316600160a060020a0316633aa94b1d60006040518260e060020a028152600401808281526020019150506040604051808303816000876161da5a03f115610002575050604080518051602091820151948990526004909152932092935090919050818511801590611de05750611de0610398565b6100a360043560243560025433600160a060020a0390811691161461207457610002565b604080519687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b604080519115158252519081900360200190f35b6040518085600160a060020a031681526020018060200184600160a060020a031681526020018381526020018281038252858181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156106e95780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b50565b60028054600160a060020a0319168217905560078054600181018083558281838015829011610771576004028160040283600052602060002091820191016107719190610872565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600881527f7365744f776e6572000000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff19168380011785555b506106fa9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106108b65750610853565b601f01602090049060005260206000209081019061085391905b8082111561041f57600081556001016108d0565b82800160010185558215610847579182015b828111156108475782518260005055916020019190600101906108f6565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060011415610b3c5760078054600181018083558281838015829011610b7b57600402816004028360005260206000209182019101610b7b9190610c7a565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64300000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610ae057805160ff19168380011785555b506109149291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610ac25750610a5f565b601f016020900490600052602060002090810190610a5f91906108d0565b82800160010185558215610a53579182015b82811115610a53578251826000505591602001919060010190610af2565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060021415610d385760078054600181018083558281838015829011610d7757600402816004028360005260206000209182019101610d779190610e76565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64310000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610cdc57805160ff19168380011785555b50610b109291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610cbe5750610c5b565b601f016020900490600052602060002090810190610c5b91906108d0565b82800160010185558215610c4f579182015b82811115610c4f578251826000505591602001919060010190610cee565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060031415610f345760078054600181018083558281838015829011610f7357600402816004028360005260206000209182019101610f739190611072565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64320000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010610ed857805160ff19168380011785555b50610d0c9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010610eba5750610e57565b601f016020900490600052602060002090810190610e5791906108d0565b82800160010185558215610e4b579182015b82811115610e4b578251826000505591602001919060010190610eea565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b8060041415611130576007805460018101808355828183801582901161116f5760040281600402836000526020600020918201910161116f919061126e565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64330000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106110d457805160ff19168380011785555b50610f089291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106110b65750611053565b601f01602090049060005260206000209081019061105391906108d0565b82800160010185558215611047579182015b828111156110475782518260005055916020019190600101906110e6565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b806005141561072657600780546001810180835582818380158290116113005760040281600402836000526020600020918201910161130091906113f7565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64340000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106112d057805160ff19168380011785555b506111049291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106112b2575061124f565b601f01602090049060005260206000209081019061124f91906108d0565b82800160010185558215611243579182015b828111156112435782518260005055916020019190600101906112e2565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600f81527f75706461746554687265736f6c64350000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061143b57506113d8565b601f0160209004906000526020600020908101906113d891906108d0565b801561147e576000828152600460205260409020600190810180549091019055611498565b600082815260046020526040902060010180546000190190555b5050565b60038054600160a060020a03191682179055600780546001810180835582818380158290116114e4576004028160040283600052602060002091820191016114e491906115dd565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600881527f736574566f746572000000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061162157506115be565b601f0160209004906000526020600020908101906115be91906108d0565b60018054600160a060020a03191682178155600780549182018082559091908281838015829011611689576004028160040283600052602060002091820191016116899190611782565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600d81527f736574436f6e74726f6c6c657200000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106117c65750611763565b601f01602090049060005260206000209081019061176391906108d0565b80156117f1575060018110155b80156118205750600084815260056020908152604080832033600160a060020a0316845290915290205460ff16155b1561191557821561191a57600680546000908110156100025752600080516020612c87833981519152546001018110806118885750806103e8108015611888575060068054600090811015610002575050600080516020612c87833981519152546103e90181105b806118d55750612710811180156118d557506006805460019081101561000257506000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d40546127100181105b1561195e57815460019081018355600085815260056020908152604080832033600160a060020a031684529091529020805460ff19169091179055611a2f565b610002565b612710811115611a34576000825560078054600181018083558281838015829011611a4357600402816004028360005260206000209182019101611a439190611b39565b6006805460019081101561000257506000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4054612710018110611a1d57604080516001547f9aaf442c000000000000000000000000000000000000000000000000000000008252600482018790529151600160a060020a039290921691639aaf442c91602481810192600092909190829003018183876161da5a03f11561000257505060408051602090810190915260008690526005905250611a2a565b6001828101805490910190555b600082555b611a3d565b81546000190182555b50505050565b505050919090600052602060002090600402016000506040805160808101825233815281518083018352601581527f6e756c6c43656e736f727368697052657175657374000000000000000000000060208281019182528381018390526000948401859052606084018b905283518654600160a060020a031916178655915160018681018054818852968590209597969095600292821615610100026000190190911691909104601f9081019490940481019391929091839010611b9b57805160ff19168380011785555b50611bcb9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611b7d5750611b1a565b601f016020900490600052602060002090810190611b1a91906108d0565b82800160010185558215611b0e579182015b82811115611b0e578251826000505591602001919060010190611bad565b50506040820151600282018054600160a060020a0319169091179055606091909101516003919091015550611a3d565b60008054600160a060020a0319168217905560078054600181018083558281838015829011611c4357600402816004028360005260206000209182019101611c439190611d3c565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600981527f736574536f757263650000000000000000000000000000000000000000000000602082810191825284810183905294840188905260006060850181905284518754600160a060020a03191617875591516001878101805481865294889020969897909691851615610100026000190190941694909404601f9081019390930484019390929091908390106108e457805160ff1916838001178555610847565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611d805750611d1d565b601f016020900490600052602060002090810190611d1d91906108d0565b820191906000526020600020905b815481529060010190602001808311611dac57829003601f168201915b505050505092509450945094509450509193509193565b8015611e0357508360011480611df75750836103e9145b80611e03575083612711145b8015611e325750600085815260056020908152604080832033600160a060020a0316845290915290205460ff16155b1561191557805460001415611e5a576040805160209081019091526000869052600590528381555b60078054600181018083558281838015829011611e9057600402816004028360005260206000209182019101611e909190611f86565b505050919090600052602060002090600402016000506040805160808101825233815281518083018352601081527f72657175657374426c61636b466c61670000000000000000000000000000000060208281019182528381018390526000948401859052606084018c905283518654600160a060020a031916178655915160018681018054818852968590209597969095600292821615610100026000190190911691909104601f9081019490940481019391929091839010611fe857805160ff19168380011785555b506120189291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010611fca5750611f67565b601f016020900490600052602060002090810190611f6791906108d0565b82800160010185558215611f5b579182015b82811115611f5b578251826000505591602001919060010190611ffa565b5050604082810151600283018054600160a060020a0319169091179055606092909201516003919091015560008781526005602090815282822033600160a060020a03168352905220805460ff19166001179055505050505050565b806006600050838154811015610002576000918252600080516020612c878339815191520190505560008214156121075760078054600181018083558281838015829011612146576004028160040283600052602060002091820191016121469190612245565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600114156123035760078054600181018083558281838015829011612342576004028160040283600052602060002091820191016123429190612441565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64300000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106122a757805160ff19168380011785555b506120db9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106122895750612226565b601f01602090049060005260206000209081019061222691906108d0565b8280016001018555821561221a579182015b8281111561221a5782518260005055916020019190600101906122b9565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600214156124ff576007805460018101808355828183801582901161253e5760040281600402836000526020600020918201910161253e919061263d565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64310000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f9081019390930484019390929091908390106124a357805160ff19168380011785555b506122d79291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f8190106124855750612422565b601f01602090049060005260206000209081019061242291906108d0565b82800160010185558215612416579182015b828111156124165782518260005055916020019190600101906124b5565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600314156126fb576007805460018101808355828183801582901161273a5760040281600402836000526020600020918201910161273a9190612839565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64320000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f90810193909304840193909290919083901061269f57805160ff19168380011785555b506124d39291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612681575061261e565b601f01602090049060005260206000209081019061261e91906108d0565b82800160010185558215612612579182015b828111156126125782518260005055916020019190600101906126b1565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600414156128f75760078054600181018083558281838015829011612936576004028160040283600052602060002091820191016129369190612a35565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64330000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f90810193909304840193909290919083901061289b57805160ff19168380011785555b506126cf9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061287d575061281a565b601f01602090049060005260206000209081019061281a91906108d0565b8280016001018555821561280e579182015b8281111561280e5782518260005055916020019190600101906128ad565b50506040820151600282018054600160a060020a03191690911790556060919091015160039190910155505b81600514156114985760078054600181018083558281838015829011612ac757600402816004028360005260206000209182019101612ac79190612bc6565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64340000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010612a9757805160ff19168380011785555b506128cb9291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612a795750612a16565b601f016020900490600052602060002090810190612a1691906108d0565b82800160010185558215612a0a579182015b82811115612a0a578251826000505591602001919060010190612aa9565b505050919090600052602060002090600402016000506040805160808101825260028054600160a060020a0316825282518084018452600c81527f73657454687265736f6c64350000000000000000000000000000000000000000602082810191825284810183905260009585018690526060850189905284518754600160a060020a0319161787559151600187810180548189529785902096989790969181161561010002600019011694909404601f908101939093048401939092909190839010612c2857805160ff19168380011785555b50612c589291506108d0565b5050600281018054600160a060020a0319169055600060038201556004015b8082111561041f578054600160a060020a031916815560018181018054600080835592600290821615610100026000190190911604601f819010612c0a5750612ba7565b601f016020900490600052602060002090810190612ba791906108d0565b82800160010185558215612b9b579182015b82811115612b9b578251826000505591602001919060010190612c3a565b50506040820151600282018054600160a060020a0319169091179055606091909101516003919091015550505056f652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f
Loading...
Loading
Loading...
Loading

Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.