Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Latest 25 from a total of 196 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Initial Battle | 7023947 | 2374 days ago | IN | 0 ETH | 0.00759693 | ||||
Guess | 6166628 | 2517 days ago | IN | 0.001 ETH | 0.0003137 | ||||
Guess | 5298819 | 2665 days ago | IN | 0.001 ETH | 0.0015 | ||||
Guess | 5298819 | 2665 days ago | IN | 0.001 ETH | 0.0015 | ||||
Guess | 5298818 | 2665 days ago | IN | 0.001 ETH | 0.0015 | ||||
Guess | 5298818 | 2665 days ago | IN | 0.000001 ETH | 0.0012 | ||||
Guess | 5295836 | 2666 days ago | IN | 0.015 ETH | 0.00029913 | ||||
Initial Battle | 5295656 | 2666 days ago | IN | 0 ETH | 0.00055953 | ||||
Guess | 5295648 | 2666 days ago | IN | 0.001 ETH | 0.00116276 | ||||
Guess | 5295633 | 2666 days ago | IN | 0.001 ETH | 0.0015 | ||||
Guess | 5295614 | 2666 days ago | IN | 0.005 ETH | 0.00032009 | ||||
Guess | 5295612 | 2666 days ago | IN | 0.005 ETH | 0.00032009 | ||||
Guess | 5295611 | 2666 days ago | IN | 0.005 ETH | 0.00032009 | ||||
Guess | 5295602 | 2666 days ago | IN | 0.005 ETH | 0.00052384 | ||||
Guess | 5295130 | 2666 days ago | IN | 0.01 ETH | 0.00020953 | ||||
Guess | 5295127 | 2666 days ago | IN | 0.02 ETH | 0.00020913 | ||||
Guess | 5294200 | 2666 days ago | IN | 0.09 ETH | 0.0003137 | ||||
Guess | 5294057 | 2666 days ago | IN | 0.001 ETH | 0.00032009 | ||||
Guess | 5294056 | 2666 days ago | IN | 0.0001 ETH | 0.0003137 | ||||
Guess | 5294043 | 2666 days ago | IN | 0.0001 ETH | 0.00032009 | ||||
Guess | 5294031 | 2666 days ago | IN | 0.0001 ETH | 0.00032009 | ||||
Guess | 5294018 | 2666 days ago | IN | 0.0001 ETH | 0.00052384 | ||||
Guess | 5294018 | 2666 days ago | IN | 0.02 ETH | 0.00104568 | ||||
Guess | 5294005 | 2666 days ago | IN | 0.001 ETH | 0.00032009 | ||||
Guess | 5293991 | 2666 days ago | IN | 0.001 ETH | 0.00052384 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 6166628 | 2517 days ago | 0.00003125 ETH | ||||
Transfer | 6166628 | 2517 days ago | 0.00003125 ETH | ||||
Transfer | 5295836 | 2666 days ago | 0.00046875 ETH | ||||
Transfer | 5295836 | 2666 days ago | 0.00046875 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.02505032 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.11272644 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.00012525 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.02505032 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.01252516 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.00003125 ETH | ||||
Transfer | 5295648 | 2666 days ago | 0.00003125 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.02505032 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.11272644 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.00012525 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.02505032 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.01252516 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.00003125 ETH | ||||
Transfer | 5295633 | 2666 days ago | 0.00003125 ETH | ||||
Transfer | 5295614 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295614 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295612 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295612 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295611 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295611 | 2666 days ago | 0.00015625 ETH | ||||
Transfer | 5295602 | 2666 days ago | 0.00015625 ETH |
Loading...
Loading
Contract Name:
PublicBattle
Compiler Version
v0.4.21+commit.dfe3193c
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-03-18 */ pragma solidity ^0.4.19; /* Game: CryptoPokemon Domain: CryptoPokemon.com Dev: CryptoPokemon Team */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } contract PokemonInterface { function levels(uint256 _pokemonId) external view returns ( uint256 level ); function getPokemonOwner(uint _pokemonId)external view returns ( address currentOwner ); } contract PublicBattle { using SafeMath for uint256; //Guess parameter uint public totalGuess; uint public totalPool; uint public publicBattlepm1; uint public publicBattlepm2; address guesser; bool public publicbattlestart; mapping(uint => address[]) pokemonGuessPlayers; mapping(uint => uint) pokemonGuessNumber; mapping(uint => uint) pokemonGuessPrize; mapping(address => uint) playerGuessPM1Number; mapping(address => uint) playerGuessPM2Number; mapping(uint => uint) battleCD; uint public pbWinner; address cpAddress = 0x77fA1D1Ded3F4bed737e9aE870a6f3605445df9c; PokemonInterface pokemonContract = PokemonInterface(cpAddress); address contractCreator; address devFeeAddress; function PublicBattle () public { contractCreator = msg.sender; devFeeAddress = 0xFb2D26b0caa4C331bd0e101460ec9dbE0A4783A4; publicbattlestart = false; publicBattlepm1 = 99999; publicBattlepm2 = 99999; pbWinner = 99999; isPaused = false; totalPool = 0; initialPokemonInfo(); } struct Battlelog { uint pokemonId1; uint pokemonId2; uint result; } Battlelog[] battleresults; struct PokemonDetails { string pokemonName; uint pokemonType; uint total; } PokemonDetails[] pokemoninfo; //modifiers modifier onlyContractCreator() { require (msg.sender == contractCreator); _; } //Owners and admins /* Owner */ function setOwner (address _owner) onlyContractCreator() public { contractCreator = _owner; } // Adresses function setdevFeeAddress (address _devFeeAddress) onlyContractCreator() public { devFeeAddress = _devFeeAddress; } bool isPaused; /* When countdowns and events happening, use the checker. */ function pauseGame() public onlyContractCreator { isPaused = true; } function unPauseGame() public onlyContractCreator { isPaused = false; } function GetGamestatus() public view returns(bool) { return(isPaused); } //set withdraw only use when bugs happned. function withdrawAmount (uint256 _amount) onlyContractCreator() public { msg.sender.transfer(_amount); totalPool = totalPool - _amount; } function initialBattle(uint _pokemonId1,uint _pokemonId2) public{ require(pokemonContract.getPokemonOwner(_pokemonId1) == msg.sender); require(isPaused == false); require(_pokemonId1 != _pokemonId2); require(getPokemonCD(_pokemonId1) == 0); assert(publicbattlestart != true); publicBattlepm1 = _pokemonId1; publicBattlepm2 = _pokemonId2; publicbattlestart = true; pokemonGuessNumber[publicBattlepm1]=0; pokemonGuessNumber[publicBattlepm2]=0; pokemonGuessPrize[publicBattlepm1]=0; pokemonGuessPrize[publicBattlepm2]=0; isPaused = false; battleCD[_pokemonId1] = now + 12 * 1 hours; // add 1% of balance to contract totalGuess = totalPool.div(100); //trigger time } function donateToPool() public payable{ // The pool will make this game maintain forever, 1% of prize goto each publicbattle and // gain 1% of each publicbattle back before distributePrizes require(msg.value >= 0); totalPool = totalPool + msg.value; } function guess(uint _pokemonId) public payable{ require(isPaused == false); assert(msg.value > 0); assert(_pokemonId == publicBattlepm1 || _pokemonId == publicBattlepm2); uint256 calcValue = msg.value; uint256 cutFee = calcValue.div(16); calcValue = calcValue - cutFee; // %3 to the Owner of the card and %3 to dev pokemonContract.getPokemonOwner(_pokemonId).transfer(cutFee.div(2)); devFeeAddress.transfer(cutFee.div(2)); // Total amount totalGuess += calcValue; // Each guess time pokemonGuessNumber[_pokemonId]++; // Each amount pokemonGuessPrize[_pokemonId] = pokemonGuessPrize[_pokemonId] + calcValue; // mapping sender and amount if(_pokemonId == publicBattlepm1){ if(playerGuessPM1Number[msg.sender] != 0){ playerGuessPM1Number[msg.sender] = playerGuessPM1Number[msg.sender] + calcValue; }else{ pokemonGuessPlayers[_pokemonId].push(msg.sender); playerGuessPM1Number[msg.sender] = calcValue; } }else{ if(playerGuessPM2Number[msg.sender] != 0){ playerGuessPM2Number[msg.sender] = playerGuessPM2Number[msg.sender] + calcValue; }else{ pokemonGuessPlayers[_pokemonId].push(msg.sender); playerGuessPM2Number[msg.sender] = calcValue; } } if(pokemonGuessNumber[publicBattlepm1] + pokemonGuessNumber[publicBattlepm2] > 20){ startpublicBattle(publicBattlepm1, publicBattlepm2); } } function startpublicBattle(uint _pokemon1, uint _pokemon2) internal { require(publicBattlepm1 != 99999 && publicBattlepm2 != 99999); uint256 i = uint256(sha256(block.timestamp, block.number-i-1)) % 100 +1; uint256 threshold = dataCalc(_pokemon1, _pokemon2); if(i <= threshold){ pbWinner = publicBattlepm1; }else{ pbWinner = publicBattlepm2; } battleresults.push(Battlelog(_pokemon1,_pokemon2,pbWinner)); distributePrizes(); } function distributePrizes() internal{ // return 1% to the balance to keep public battle forever totalGuess = totalGuess - totalGuess.div(100); for(uint counter=0; counter < pokemonGuessPlayers[pbWinner].length; counter++){ guesser = pokemonGuessPlayers[pbWinner][counter]; if(pbWinner == publicBattlepm1){ guesser.transfer(playerGuessPM1Number[guesser].mul(totalGuess).div(pokemonGuessPrize[pbWinner])); //delete playerGuessPM1Number[guesser]; }else{ guesser.transfer(playerGuessPM2Number[guesser].mul(totalGuess).div(pokemonGuessPrize[pbWinner])); } } uint del; if(pbWinner == publicBattlepm1){ del = publicBattlepm2; }else{ del = publicBattlepm1; } for(uint cdel1=0; cdel1 < pokemonGuessPlayers[pbWinner].length; cdel1++){ guesser = pokemonGuessPlayers[pbWinner][cdel1]; if(pbWinner == publicBattlepm1){ delete playerGuessPM1Number[guesser]; }else{ delete playerGuessPM2Number[guesser]; } } for(uint cdel=0; cdel < pokemonGuessPlayers[del].length; cdel++){ guesser = pokemonGuessPlayers[del][cdel]; if(del == publicBattlepm1){ delete playerGuessPM1Number[guesser]; }else{ delete playerGuessPM2Number[guesser]; } } pokemonGuessNumber[publicBattlepm1]=0; pokemonGuessNumber[publicBattlepm2]=0; pokemonGuessPrize[publicBattlepm1]=0; pokemonGuessPrize[publicBattlepm2]=0; delete pokemonGuessPlayers[publicBattlepm2]; delete pokemonGuessPlayers[publicBattlepm1]; //for(counter=0; counter < pokemonGuessPlayers[pbWinner].length; counter++){ //pokemonGuessPlayers[counter].length = 0; //} counter = 0; publicBattlepm1 = 99999; publicBattlepm2 = 99999; pbWinner = 99999; totalGuess = 0; publicbattlestart = false; } function dataCalc(uint _pokemon1, uint _pokemon2) public view returns (uint256 _threshold){ uint _pokemontotal1; uint _pokemontotal2; // We can just leave the other fields blank: (,,_pokemontotal1) = getPokemonDetails(_pokemon1); (,,_pokemontotal2) = getPokemonDetails(_pokemon2); uint256 threshold = _pokemontotal1.mul(100).div(_pokemontotal1+_pokemontotal2); uint256 pokemonlevel1 = pokemonContract.levels(_pokemon1); uint256 pokemonlevel2 = pokemonContract.levels(_pokemon2); uint leveldiff = pokemonlevel1 - pokemonlevel2; if(pokemonlevel1 >= pokemonlevel2){ threshold = threshold.mul(11**leveldiff).div(10**leveldiff); }else{ //return (100 - dataCalc(_pokemon2, _pokemon1)); threshold = 100 - dataCalc(_pokemon2, _pokemon1); } if(threshold > 90){ threshold = 90; } if(threshold < 10){ threshold = 10; } return threshold; } // This function will return all of the details of the pokemons function getBattleDetails(uint _battleId) public view returns ( uint _pokemon1, uint _pokemon2, uint256 _result ) { Battlelog storage _battle = battleresults[_battleId]; _pokemon1 = _battle.pokemonId1; _pokemon2 = _battle.pokemonId2; _result = _battle.result; } function addPokemonDetails(string _pokemonName, uint _pokemonType, uint _total) public onlyContractCreator{ pokemoninfo.push(PokemonDetails(_pokemonName,_pokemonType,_total)); } // This function will return all of the details of the pokemons function getPokemonDetails(uint _pokemonId) public view returns ( string _pokemonName, uint _pokemonType, uint _total ) { PokemonDetails storage _pokemoninfomation = pokemoninfo[_pokemonId]; _pokemonName = _pokemoninfomation.pokemonName; _pokemonType = _pokemoninfomation.pokemonType; _total = _pokemoninfomation.total; } function totalBattles() public view returns (uint256 _totalSupply) { return battleresults.length; } function getPokemonBet(uint _pokemonId) public view returns (uint256 _pokemonBet){ return pokemonGuessPrize[_pokemonId]; } function getPokemonOwner(uint _pokemonId) public view returns ( address _owner ) { _owner = pokemonContract.getPokemonOwner(_pokemonId); } function getPublicBattlePokemon1() public view returns(uint _pokemonId1){ return publicBattlepm1; } function getPublicBattlePokemon2() public view returns(uint _pokemonId1){ return publicBattlepm2; } function getPokemonBetTimes(uint _pokemonId) public view returns(uint _pokemonBetTimes){ return pokemonGuessNumber[_pokemonId]; } function getPokemonCD(uint _pokemonId) public view returns(uint _pokemonCD){ if(battleCD[_pokemonId] <= now){ return 0; }else{ return battleCD[_pokemonId] - now; } } function initialPokemonInfo() public onlyContractCreator{ addPokemonDetails("PikaChu" ,1, 300); addPokemonDetails("Ninetales",1,505); addPokemonDetails("Charizard" ,2, 534); addPokemonDetails("Eevee",0,325); addPokemonDetails("Jigglypuff" ,0, 270); addPokemonDetails("Pidgeot",2,469); addPokemonDetails("Aerodactyl" ,2, 515); addPokemonDetails("Bulbasaur",0,318); addPokemonDetails("Abra" ,0, 310); addPokemonDetails("Gengar",2,500); addPokemonDetails("Hoothoot" ,0, 262); addPokemonDetails("Goldeen",0,320); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdrawAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"GetGamestatus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"initialPokemonInfo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"getPokemonCD","outputs":[{"name":"_pokemonCD","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"getPokemonBet","outputs":[{"name":"_pokemonBet","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"publicBattlepm2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pokemon1","type":"uint256"},{"name":"_pokemon2","type":"uint256"}],"name":"dataCalc","outputs":[{"name":"_threshold","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pauseGame","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getPublicBattlePokemon2","outputs":[{"name":"_pokemonId1","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"publicBattlepm1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_pokemonName","type":"string"},{"name":"_pokemonType","type":"uint256"},{"name":"_total","type":"uint256"}],"name":"addPokemonDetails","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getPublicBattlePokemon1","outputs":[{"name":"_pokemonId1","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_pokemonId1","type":"uint256"},{"name":"_pokemonId2","type":"uint256"}],"name":"initialBattle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"donateToPool","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"guess","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_devFeeAddress","type":"address"}],"name":"setdevFeeAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"getPokemonOwner","outputs":[{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalBattles","outputs":[{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"publicbattlestart","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalGuess","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"getPokemonDetails","outputs":[{"name":"_pokemonName","type":"string"},{"name":"_pokemonType","type":"uint256"},{"name":"_total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalPool","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_battleId","type":"uint256"}],"name":"getBattleDetails","outputs":[{"name":"_pokemon1","type":"uint256"},{"name":"_pokemon2","type":"uint256"},{"name":"_result","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unPauseGame","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_pokemonId","type":"uint256"}],"name":"getPokemonBetTimes","outputs":[{"name":"_pokemonBetTimes","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pbWinner","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]
Contract Creation Code
60606040527377fa1d1ded3f4bed737e9ae870a6f3605445df9c600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503415620000c857600080fd5b33600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073fb2d26b0caa4c331bd0e101460ec9dbe0a4783a4600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460146101000a81548160ff0219169083151502179055506201869f6002819055506201869f6003819055506201869f600b819055506000601260006101000a81548160ff0219169083151502179055506000600181905550620001d8620001de640100000000026200078f176401000000009004565b620008bc565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200023b57600080fd5b620002946040805190810160405280600781526020017f50696b6143687500000000000000000000000000000000000000000000000000815250600161012c620006696401000000000262000ec8176401000000009004565b620002ed6040805190810160405280600981526020017f4e696e6574616c6573000000000000000000000000000000000000000000000081525060016101f9620006696401000000000262000ec8176401000000009004565b620003466040805190810160405280600981526020017f43686172697a61726400000000000000000000000000000000000000000000008152506002610216620006696401000000000262000ec8176401000000009004565b6200039f6040805190810160405280600581526020017f45657665650000000000000000000000000000000000000000000000000000008152506000610145620006696401000000000262000ec8176401000000009004565b620003f86040805190810160405280600a81526020017f4a6967676c797075666600000000000000000000000000000000000000000000815250600061010e620006696401000000000262000ec8176401000000009004565b620004516040805190810160405280600781526020017f50696467656f740000000000000000000000000000000000000000000000000081525060026101d5620006696401000000000262000ec8176401000000009004565b620004aa6040805190810160405280600a81526020017f4165726f64616374796c000000000000000000000000000000000000000000008152506002610203620006696401000000000262000ec8176401000000009004565b620005036040805190810160405280600981526020017f42756c6261736175720000000000000000000000000000000000000000000000815250600061013e620006696401000000000262000ec8176401000000009004565b6200055c6040805190810160405280600481526020017f41627261000000000000000000000000000000000000000000000000000000008152506000610136620006696401000000000262000ec8176401000000009004565b620005b56040805190810160405280600681526020017f47656e676172000000000000000000000000000000000000000000000000000081525060026101f4620006696401000000000262000ec8176401000000009004565b6200060e6040805190810160405280600881526020017f486f6f74686f6f740000000000000000000000000000000000000000000000008152506000610106620006696401000000000262000ec8176401000000009004565b620006676040805190810160405280600781526020017f476f6c6465656e000000000000000000000000000000000000000000000000008152506000610140620006696401000000000262000ec8176401000000009004565b565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620006c657600080fd5b60118054806001018281620006dc919062000748565b9160005260206000209060030201600060606040519081016040528087815260200186815260200185815250909190915060008201518160000190805190602001906200072b9291906200077d565b506020820151816001015560408201518160020155505050505050565b815481835581811511620007785760030281600302836000526020600020918201910162000777919062000804565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620007c057805160ff1916838001178555620007f1565b82800160010185558215620007f1579182015b82811115620007f0578251825591602001919060010190620007d3565b5b50905062000800919062000848565b5090565b6200084591905b8082111562000841576000808201600062000827919062000870565b60018201600090556002820160009055506003016200080b565b5090565b90565b6200086d91905b80821115620008695760008160009055506001016200084f565b5090565b90565b50805460018160011615610100020316600290046000825580601f10620008985750620008b9565b601f016020900490600052602060002090810190620008b8919062000848565b5b50565b6125e180620008cc6000396000f30060606040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630562b9f71461016457806306b2e607146101875780630ea81cf9146101b457806310523af3146101c957806310ebf1031461020057806313af40351461023757806342ed6072146102705780634702d11514610299578063499831f2146102d95780635afbfd4f146102ee5780635d397767146103175780636bbadf09146103405780637e92a7e8146103af57806388e2af0e146103d85780638bbe4719146104045780639189fec11461040e5780639ad1c999146104265780639ea30fae1461045f578063bf1dfb8a146104c2578063c7410070146104eb578063d4fb0d2314610518578063d79521e814610541578063ecfb49a3146105eb578063f0e26f8014610614578063f42b1ae014610659578063f93f13911461066e578063fa5252e4146106a5575b600080fd5b341561016f57600080fd5b61018560048080359060200190919050506106ce565b005b341561019257600080fd5b61019a610778565b604051808215151515815260200191505060405180910390f35b34156101bf57600080fd5b6101c761078f565b005b34156101d457600080fd5b6101ea6004808035906020019091905050610b11565b6040518082815260200191505060405180910390f35b341561020b57600080fd5b6102216004808035906020019091905050610b56565b6040518082815260200191505060405180910390f35b341561024257600080fd5b61026e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610b73565b005b341561027b57600080fd5b610283610c13565b6040518082815260200191505060405180910390f35b34156102a457600080fd5b6102c36004808035906020019091908035906020019091905050610c19565b6040518082815260200191505060405180910390f35b34156102e457600080fd5b6102ec610e3f565b005b34156102f957600080fd5b610301610eb8565b6040518082815260200191505060405180910390f35b341561032257600080fd5b61032a610ec2565b6040518082815260200191505060405180910390f35b341561034b57600080fd5b6103ad600480803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091908035906020019091908035906020019091905050610ec8565b005b34156103ba57600080fd5b6103c2610fa2565b6040518082815260200191505060405180910390f35b34156103e357600080fd5b6104026004808035906020019091908035906020019091905050610fac565b005b61040c6111e0565b005b61042460048080359060200190919050506111fd565b005b341561043157600080fd5b61045d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506117a3565b005b341561046a57600080fd5b6104806004808035906020019091905050611843565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104cd57600080fd5b6104d56118f3565b6040518082815260200191505060405180910390f35b34156104f657600080fd5b6104fe611900565b604051808215151515815260200191505060405180910390f35b341561052357600080fd5b61052b611913565b6040518082815260200191505060405180910390f35b341561054c57600080fd5b6105626004808035906020019091905050611919565b6040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156105ae578082015181840152602081019050610593565b50505050905090810190601f1680156105db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156105f657600080fd5b6105fe6119fa565b6040518082815260200191505060405180910390f35b341561061f57600080fd5b6106356004808035906020019091905050611a00565b60405180848152602001838152602001828152602001935050505060405180910390f35b341561066457600080fd5b61066c611a42565b005b341561067957600080fd5b61068f6004808035906020019091905050611abb565b6040518082815260200191505060405180910390f35b34156106b057600080fd5b6106b8611ad8565b6040518082815260200191505060405180910390f35b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561072a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561076a57600080fd5b806001540360018190555050565b6000601260009054906101000a900460ff16905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107eb57600080fd5b61082e6040805190810160405280600781526020017f50696b6143687500000000000000000000000000000000000000000000000000815250600161012c610ec8565b6108716040805190810160405280600981526020017f4e696e6574616c6573000000000000000000000000000000000000000000000081525060016101f9610ec8565b6108b46040805190810160405280600981526020017f43686172697a61726400000000000000000000000000000000000000000000008152506002610216610ec8565b6108f76040805190810160405280600581526020017f45657665650000000000000000000000000000000000000000000000000000008152506000610145610ec8565b61093a6040805190810160405280600a81526020017f4a6967676c797075666600000000000000000000000000000000000000000000815250600061010e610ec8565b61097d6040805190810160405280600781526020017f50696467656f740000000000000000000000000000000000000000000000000081525060026101d5610ec8565b6109c06040805190810160405280600a81526020017f4165726f64616374796c000000000000000000000000000000000000000000008152506002610203610ec8565b610a036040805190810160405280600981526020017f42756c6261736175720000000000000000000000000000000000000000000000815250600061013e610ec8565b610a466040805190810160405280600481526020017f41627261000000000000000000000000000000000000000000000000000000008152506000610136610ec8565b610a896040805190810160405280600681526020017f47656e676172000000000000000000000000000000000000000000000000000081525060026101f4610ec8565b610acc6040805190810160405280600881526020017f486f6f74686f6f740000000000000000000000000000000000000000000000008152506000610106610ec8565b610b0f6040805190810160405280600781526020017f476f6c6465656e000000000000000000000000000000000000000000000000008152506000610140610ec8565b565b600042600a600084815260200190815260200160002054111515610b385760009050610b51565b42600a6000848152602001908152602001600020540390505b919050565b600060076000838152602001908152602001600020549050919050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610bcf57600080fd5b80600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60035481565b6000806000806000806000610c2d89611919565b909150905080965050610c3f88611919565b909150905080955050610c70858701610c62606489611ade90919063ffffffff16565b611b1990919063ffffffff16565b9350600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b2596a678a6040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1515610d0257600080fd5b5af11515610d0f57600080fd5b505050604051805190509250600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b2596a67896040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1515610dab57600080fd5b5af11515610db857600080fd5b50505060405180519050915081830390508183101515610e0457610dfd81600a0a610def83600b0a87611ade90919063ffffffff16565b611b1990919063ffffffff16565b9350610e14565b610e0e888a610c19565b60640393505b605a841115610e2257605a93505b600a841015610e3057600a93505b83965050505050505092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e9b57600080fd5b6001601260006101000a81548160ff021916908315150217905550565b6000600354905090565b60025481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f2457600080fd5b60118054806001018281610f38919061238d565b916000526020600020906003020160006060604051908101604052808781526020018681526020018581525090919091506000820151816000019080519060200190610f859291906123bf565b506020820151816001015560408201518160020155505050505050565b6000600254905090565b3373ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b151561105357600080fd5b5af1151561106057600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1614151561108c57600080fd5b60001515601260009054906101000a900460ff1615151415156110ae57600080fd5b8082141515156110bd57600080fd5b60006110c883610b11565b1415156110d457600080fd5b60011515600460149054906101000a900460ff161515141515156110f457fe5b81600281905550806003819055506001600460146101000a81548160ff0219169083151502179055506000600660006002548152602001908152602001600020819055506000600660006003548152602001908152602001600020819055506000600760006002548152602001908152602001600020819055506000600760006003548152602001908152602001600020819055506000601260006101000a81548160ff02191690831515021790555061a8c04201600a6000848152602001908152602001600020819055506111d66064600154611b1990919063ffffffff16565b6000819055505050565b600034101515156111f057600080fd5b3460015401600181905550565b60008060001515601260009054906101000a900460ff16151514151561122257600080fd5b60003411151561122e57fe5b60025483148061123f575060035483145b151561124757fe5b34915061125e601083611b1990919063ffffffff16565b90508082039150600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15156112f557600080fd5b5af1151561130257600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff166108fc611339600284611b1990919063ffffffff16565b9081150290604051600060405180830381858888f19350505050151561135e57600080fd5b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6113ae600284611b1990919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015156113d357600080fd5b81600080828254019250508190555060066000848152602001908152602001600020600081548092919060010191905055508160076000858152602001908152602001600020540160076000858152602001908152602001600020819055506002548314156115cd576000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414151561150f5781600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115c8565b600560008481526020019081526020016000208054806001018281611534919061243f565b9160005260206000209001600033909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b61175a565b6000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415156116a05781600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611759565b6005600084815260200190815260200160002080548060010182816116c5919061243f565b9160005260206000209001600033909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b6014600660006003548152602001908152602001600020546006600060025481526020019081526020016000205401111561179e5761179d600254600354611b34565b5b505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117ff57600080fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15156118d557600080fd5b5af115156118e257600080fd5b505050604051805190509050919050565b6000601080549050905090565b600460149054906101000a900460ff1681565b60005481565b61192161246b565b600080600060118581548110151561193557fe5b90600052602060002090600302019050806000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119dd5780601f106119b2576101008083540402835291602001916119dd565b820191906000526020600020905b8154815290600101906020018083116119c057829003601f168201915b505050505093508060010154925080600201549150509193909250565b60015481565b600080600080601085815481101515611a1557fe5b90600052602060002090600302019050806000015493508060010154925080600201549150509193909250565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a9e57600080fd5b6000601260006101000a81548160ff021916908315150217905550565b600060066000838152602001908152602001600020549050919050565b600b5481565b6000806000841415611af35760009150611b12565b8284029050828482811515611b0457fe5b04141515611b0e57fe5b8091505b5092915050565b6000808284811515611b2757fe5b0490508091505092915050565b6000806201869f60025414158015611b5157506201869f60035414155b1515611b5c57600080fd5b6001606460024260018643030360405180838152602001828152602001925050506020604051808303816000865af11515611b9657600080fd5b50506040518051905060019004811515611bac57fe5b06019150611bba8484610c19565b90508082111515611bd357600254600b81905550611bdd565b600354600b819055505b60108054806001018281611bf1919061247f565b91600052602060002090600302016000606060405190810160405280888152602001878152602001600b548152509091909150600082015181600001556020820151816001015560408201518160020155505050611c4d611c53565b50505050565b600080600080611c6f6064600054611b1990919063ffffffff16565b60005403600081905550600093505b60056000600b54815260200190815260200160002080549050841015611f475760056000600b54815260200190815260200160002084815481101515611cc057fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600254600b541415611e3b57600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e1160076000600b54815260200190815260200160002054611e0360005460086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ade90919063ffffffff16565b611b1990919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611e3657600080fd5b611f3a565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611f1460076000600b54815260200190815260200160002054611f0660005460096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ade90919063ffffffff16565b611b1990919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611f3957600080fd5b5b8380600101945050611c7e565b600254600b541415611f5d576003549250611f63565b60025492505b600091505b60056000600b548152602001908152602001600020805490508210156120ff5760056000600b54815260200190815260200160002082815481101515611faa57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600254600b54141561208c5760086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090556120f2565b60096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555b8180600101925050611f68565b600090505b600560008481526020019081526020016000208054905081101561229557600560008481526020019081526020016000208181548110151561214257fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002548314156122225760086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055612288565b60096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555b8080600101915050612104565b600060066000600254815260200190815260200160002081905550600060066000600354815260200190815260200160002081905550600060076000600254815260200190815260200160002081905550600060076000600354815260200190815260200160002081905550600560006003548152602001908152602001600020600061232291906124b1565b600560006002548152602001908152602001600020600061234391906124b1565b600093506201869f6002819055506201869f6003819055506201869f600b81905550600080819055506000600460146101000a81548160ff02191690831515021790555050505050565b8154818355818115116123ba576003028160030283600052602060002091820191016123b991906124d2565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061240057805160ff191683800117855561242e565b8280016001018555821561242e579182015b8281111561242d578251825591602001919060010190612412565b5b50905061243b9190612511565b5090565b815481835581811511612466578183600052602060002091820191016124659190612511565b5b505050565b602060405190810160405280600081525090565b8154818355818115116124ac576003028160030283600052602060002091820191016124ab9190612536565b5b505050565b50805460008255906000526020600020908101906124cf9190612511565b50565b61250e91905b8082111561250a57600080820160006124f1919061256d565b60018201600090556002820160009055506003016124d8565b5090565b90565b61253391905b8082111561252f576000816000905550600101612517565b5090565b90565b61256a91905b8082111561256657600080820160009055600182016000905560028201600090555060030161253c565b5090565b90565b50805460018160011615610100020316600290046000825580601f1061259357506125b2565b601f0160209004906000526020600020908101906125b19190612511565b5b505600a165627a7a72305820838ac83c2d1aab22f1a337e22b0ef73442d02082a6856da1a93794a7f5fcdcca0029
Deployed Bytecode
0x60606040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630562b9f71461016457806306b2e607146101875780630ea81cf9146101b457806310523af3146101c957806310ebf1031461020057806313af40351461023757806342ed6072146102705780634702d11514610299578063499831f2146102d95780635afbfd4f146102ee5780635d397767146103175780636bbadf09146103405780637e92a7e8146103af57806388e2af0e146103d85780638bbe4719146104045780639189fec11461040e5780639ad1c999146104265780639ea30fae1461045f578063bf1dfb8a146104c2578063c7410070146104eb578063d4fb0d2314610518578063d79521e814610541578063ecfb49a3146105eb578063f0e26f8014610614578063f42b1ae014610659578063f93f13911461066e578063fa5252e4146106a5575b600080fd5b341561016f57600080fd5b61018560048080359060200190919050506106ce565b005b341561019257600080fd5b61019a610778565b604051808215151515815260200191505060405180910390f35b34156101bf57600080fd5b6101c761078f565b005b34156101d457600080fd5b6101ea6004808035906020019091905050610b11565b6040518082815260200191505060405180910390f35b341561020b57600080fd5b6102216004808035906020019091905050610b56565b6040518082815260200191505060405180910390f35b341561024257600080fd5b61026e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610b73565b005b341561027b57600080fd5b610283610c13565b6040518082815260200191505060405180910390f35b34156102a457600080fd5b6102c36004808035906020019091908035906020019091905050610c19565b6040518082815260200191505060405180910390f35b34156102e457600080fd5b6102ec610e3f565b005b34156102f957600080fd5b610301610eb8565b6040518082815260200191505060405180910390f35b341561032257600080fd5b61032a610ec2565b6040518082815260200191505060405180910390f35b341561034b57600080fd5b6103ad600480803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091908035906020019091908035906020019091905050610ec8565b005b34156103ba57600080fd5b6103c2610fa2565b6040518082815260200191505060405180910390f35b34156103e357600080fd5b6104026004808035906020019091908035906020019091905050610fac565b005b61040c6111e0565b005b61042460048080359060200190919050506111fd565b005b341561043157600080fd5b61045d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506117a3565b005b341561046a57600080fd5b6104806004808035906020019091905050611843565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104cd57600080fd5b6104d56118f3565b6040518082815260200191505060405180910390f35b34156104f657600080fd5b6104fe611900565b604051808215151515815260200191505060405180910390f35b341561052357600080fd5b61052b611913565b6040518082815260200191505060405180910390f35b341561054c57600080fd5b6105626004808035906020019091905050611919565b6040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156105ae578082015181840152602081019050610593565b50505050905090810190601f1680156105db5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34156105f657600080fd5b6105fe6119fa565b6040518082815260200191505060405180910390f35b341561061f57600080fd5b6106356004808035906020019091905050611a00565b60405180848152602001838152602001828152602001935050505060405180910390f35b341561066457600080fd5b61066c611a42565b005b341561067957600080fd5b61068f6004808035906020019091905050611abb565b6040518082815260200191505060405180910390f35b34156106b057600080fd5b6106b8611ad8565b6040518082815260200191505060405180910390f35b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561072a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561076a57600080fd5b806001540360018190555050565b6000601260009054906101000a900460ff16905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107eb57600080fd5b61082e6040805190810160405280600781526020017f50696b6143687500000000000000000000000000000000000000000000000000815250600161012c610ec8565b6108716040805190810160405280600981526020017f4e696e6574616c6573000000000000000000000000000000000000000000000081525060016101f9610ec8565b6108b46040805190810160405280600981526020017f43686172697a61726400000000000000000000000000000000000000000000008152506002610216610ec8565b6108f76040805190810160405280600581526020017f45657665650000000000000000000000000000000000000000000000000000008152506000610145610ec8565b61093a6040805190810160405280600a81526020017f4a6967676c797075666600000000000000000000000000000000000000000000815250600061010e610ec8565b61097d6040805190810160405280600781526020017f50696467656f740000000000000000000000000000000000000000000000000081525060026101d5610ec8565b6109c06040805190810160405280600a81526020017f4165726f64616374796c000000000000000000000000000000000000000000008152506002610203610ec8565b610a036040805190810160405280600981526020017f42756c6261736175720000000000000000000000000000000000000000000000815250600061013e610ec8565b610a466040805190810160405280600481526020017f41627261000000000000000000000000000000000000000000000000000000008152506000610136610ec8565b610a896040805190810160405280600681526020017f47656e676172000000000000000000000000000000000000000000000000000081525060026101f4610ec8565b610acc6040805190810160405280600881526020017f486f6f74686f6f740000000000000000000000000000000000000000000000008152506000610106610ec8565b610b0f6040805190810160405280600781526020017f476f6c6465656e000000000000000000000000000000000000000000000000008152506000610140610ec8565b565b600042600a600084815260200190815260200160002054111515610b385760009050610b51565b42600a6000848152602001908152602001600020540390505b919050565b600060076000838152602001908152602001600020549050919050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610bcf57600080fd5b80600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60035481565b6000806000806000806000610c2d89611919565b909150905080965050610c3f88611919565b909150905080955050610c70858701610c62606489611ade90919063ffffffff16565b611b1990919063ffffffff16565b9350600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b2596a678a6040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1515610d0257600080fd5b5af11515610d0f57600080fd5b505050604051805190509250600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b2596a67896040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1515610dab57600080fd5b5af11515610db857600080fd5b50505060405180519050915081830390508183101515610e0457610dfd81600a0a610def83600b0a87611ade90919063ffffffff16565b611b1990919063ffffffff16565b9350610e14565b610e0e888a610c19565b60640393505b605a841115610e2257605a93505b600a841015610e3057600a93505b83965050505050505092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e9b57600080fd5b6001601260006101000a81548160ff021916908315150217905550565b6000600354905090565b60025481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f2457600080fd5b60118054806001018281610f38919061238d565b916000526020600020906003020160006060604051908101604052808781526020018681526020018581525090919091506000820151816000019080519060200190610f859291906123bf565b506020820151816001015560408201518160020155505050505050565b6000600254905090565b3373ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b151561105357600080fd5b5af1151561106057600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1614151561108c57600080fd5b60001515601260009054906101000a900460ff1615151415156110ae57600080fd5b8082141515156110bd57600080fd5b60006110c883610b11565b1415156110d457600080fd5b60011515600460149054906101000a900460ff161515141515156110f457fe5b81600281905550806003819055506001600460146101000a81548160ff0219169083151502179055506000600660006002548152602001908152602001600020819055506000600660006003548152602001908152602001600020819055506000600760006002548152602001908152602001600020819055506000600760006003548152602001908152602001600020819055506000601260006101000a81548160ff02191690831515021790555061a8c04201600a6000848152602001908152602001600020819055506111d66064600154611b1990919063ffffffff16565b6000819055505050565b600034101515156111f057600080fd5b3460015401600181905550565b60008060001515601260009054906101000a900460ff16151514151561122257600080fd5b60003411151561122e57fe5b60025483148061123f575060035483145b151561124757fe5b34915061125e601083611b1990919063ffffffff16565b90508082039150600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15156112f557600080fd5b5af1151561130257600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff166108fc611339600284611b1990919063ffffffff16565b9081150290604051600060405180830381858888f19350505050151561135e57600080fd5b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6113ae600284611b1990919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015156113d357600080fd5b81600080828254019250508190555060066000848152602001908152602001600020600081548092919060010191905055508160076000858152602001908152602001600020540160076000858152602001908152602001600020819055506002548314156115cd576000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414151561150f5781600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115c8565b600560008481526020019081526020016000208054806001018281611534919061243f565b9160005260206000209001600033909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b61175a565b6000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415156116a05781600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611759565b6005600084815260200190815260200160002080548060010182816116c5919061243f565b9160005260206000209001600033909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b6014600660006003548152602001908152602001600020546006600060025481526020019081526020016000205401111561179e5761179d600254600354611b34565b5b505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117ff57600080fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ea30fae836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15156118d557600080fd5b5af115156118e257600080fd5b505050604051805190509050919050565b6000601080549050905090565b600460149054906101000a900460ff1681565b60005481565b61192161246b565b600080600060118581548110151561193557fe5b90600052602060002090600302019050806000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119dd5780601f106119b2576101008083540402835291602001916119dd565b820191906000526020600020905b8154815290600101906020018083116119c057829003601f168201915b505050505093508060010154925080600201549150509193909250565b60015481565b600080600080601085815481101515611a1557fe5b90600052602060002090600302019050806000015493508060010154925080600201549150509193909250565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a9e57600080fd5b6000601260006101000a81548160ff021916908315150217905550565b600060066000838152602001908152602001600020549050919050565b600b5481565b6000806000841415611af35760009150611b12565b8284029050828482811515611b0457fe5b04141515611b0e57fe5b8091505b5092915050565b6000808284811515611b2757fe5b0490508091505092915050565b6000806201869f60025414158015611b5157506201869f60035414155b1515611b5c57600080fd5b6001606460024260018643030360405180838152602001828152602001925050506020604051808303816000865af11515611b9657600080fd5b50506040518051905060019004811515611bac57fe5b06019150611bba8484610c19565b90508082111515611bd357600254600b81905550611bdd565b600354600b819055505b60108054806001018281611bf1919061247f565b91600052602060002090600302016000606060405190810160405280888152602001878152602001600b548152509091909150600082015181600001556020820151816001015560408201518160020155505050611c4d611c53565b50505050565b600080600080611c6f6064600054611b1990919063ffffffff16565b60005403600081905550600093505b60056000600b54815260200190815260200160002080549050841015611f475760056000600b54815260200190815260200160002084815481101515611cc057fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600254600b541415611e3b57600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e1160076000600b54815260200190815260200160002054611e0360005460086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ade90919063ffffffff16565b611b1990919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611e3657600080fd5b611f3a565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611f1460076000600b54815260200190815260200160002054611f0660005460096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ade90919063ffffffff16565b611b1990919063ffffffff16565b9081150290604051600060405180830381858888f193505050501515611f3957600080fd5b5b8380600101945050611c7e565b600254600b541415611f5d576003549250611f63565b60025492505b600091505b60056000600b548152602001908152602001600020805490508210156120ff5760056000600b54815260200190815260200160002082815481101515611faa57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600254600b54141561208c5760086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090556120f2565b60096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555b8180600101925050611f68565b600090505b600560008481526020019081526020016000208054905081101561229557600560008481526020019081526020016000208181548110151561214257fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002548314156122225760086000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055612288565b60096000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600090555b8080600101915050612104565b600060066000600254815260200190815260200160002081905550600060066000600354815260200190815260200160002081905550600060076000600254815260200190815260200160002081905550600060076000600354815260200190815260200160002081905550600560006003548152602001908152602001600020600061232291906124b1565b600560006002548152602001908152602001600020600061234391906124b1565b600093506201869f6002819055506201869f6003819055506201869f600b81905550600080819055506000600460146101000a81548160ff02191690831515021790555050505050565b8154818355818115116123ba576003028160030283600052602060002091820191016123b991906124d2565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061240057805160ff191683800117855561242e565b8280016001018555821561242e579182015b8281111561242d578251825591602001919060010190612412565b5b50905061243b9190612511565b5090565b815481835581811511612466578183600052602060002091820191016124659190612511565b5b505050565b602060405190810160405280600081525090565b8154818355818115116124ac576003028160030283600052602060002091820191016124ab9190612536565b5b505050565b50805460008255906000526020600020908101906124cf9190612511565b50565b61250e91905b8082111561250a57600080820160006124f1919061256d565b60018201600090556002820160009055506003016124d8565b5090565b90565b61253391905b8082111561252f576000816000905550600101612517565b5090565b90565b61256a91905b8082111561256657600080820160009055600182016000905560028201600090555060030161253c565b5090565b90565b50805460018160011615610100020316600290046000825580601f1061259357506125b2565b601f0160209004906000526020600020908101906125b19190612511565b5b505600a165627a7a72305820838ac83c2d1aab22f1a337e22b0ef73442d02082a6856da1a93794a7f5fcdcca0029
Swarm Source
bzzr://838ac83c2d1aab22f1a337e22b0ef73442d02082a6856da1a93794a7f5fcdcca
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $2,604.25 | 1.0035 | $2,613.31 |
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.