ETH Price: $3,559.11 (-1.68%)

Contract

0xBB991cAaFa1cbBE9502FcD9Ced6557C5B3784D42
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Castle71760092019-02-05 1:27:492356 days ago1549330069IN
Etheremon: Rank Battle 1
0 ETH0.000023181
Set Castle71760012019-02-05 1:24:052356 days ago1549329845IN
Etheremon: Rank Battle 1
0 ETH0.000023181
Set Castle65106232018-10-14 1:13:242470 days ago1539479604IN
Etheremon: Rank Battle 1
0 ETH0.000023051
Set Castle65106232018-10-14 1:13:242470 days ago1539479604IN
Etheremon: Rank Battle 1
0 ETH0.000023051
Set Castle64582322018-10-05 13:29:292478 days ago1538746169IN
Etheremon: Rank Battle 1
0 ETH0.000023561
Set Castle64544482018-10-04 22:43:242479 days ago1538693004IN
Etheremon: Rank Battle 1
0 ETH0.000023181
Set Castle63636412018-09-20 1:04:552494 days ago1537405495IN
Etheremon: Rank Battle 1
0 ETH0.000023181
Set Castle62816922018-09-06 10:14:332508 days ago1536228873IN
Etheremon: Rank Battle 1
0 ETH0.00011725
Set Castle62482762018-08-31 19:26:162513 days ago1535743576IN
Etheremon: Rank Battle 1
0 ETH0.000115925
Set Castle62482672018-08-31 19:24:272513 days ago1535743467IN
Etheremon: Rank Battle 1
0 ETH0.000115925
Set Castle62421222018-08-30 18:41:422514 days ago1535654502IN
Etheremon: Rank Battle 1
0 ETH0.000069553
Update Maintaini...62383642018-08-30 3:13:162515 days ago1535598796IN
Etheremon: Rank Battle 1
0 ETH0.000191317
Set Castle62381292018-08-30 2:19:102515 days ago1535595550IN
Etheremon: Rank Battle 1
0 ETH0.000313973
Set Castle62378282018-08-30 1:06:152515 days ago1535591175IN
Etheremon: Rank Battle 1
0 ETH0.000271072
Set Castle62377112018-08-30 0:40:312515 days ago1535589631IN
Etheremon: Rank Battle 1
0 ETH0.000332782
Set Castle62374022018-08-29 23:26:402515 days ago1535585200IN
Etheremon: Rank Battle 1
0 ETH0.0001822.03
Set Castle62370612018-08-29 22:01:542515 days ago1535580114IN
Etheremon: Rank Battle 1
0 ETH0.000240942
Set Castle62369552018-08-29 21:39:102515 days ago1535578750IN
Etheremon: Rank Battle 1
0 ETH0.000289132.4
Set Castle62368882018-08-29 21:23:052515 days ago1535577785IN
Etheremon: Rank Battle 1
0 ETH0.000289132.4
Set Castle62366942018-08-29 20:33:532515 days ago1535574833IN
Etheremon: Rank Battle 1
0 ETH0.000209312
Set Castle62366942018-08-29 20:33:532515 days ago1535574833IN
Etheremon: Rank Battle 1
0 ETH0.000360612.1
Set Castle62366822018-08-29 20:31:182515 days ago1535574678IN
Etheremon: Rank Battle 1
0 ETH0.000199462.1
Set Castle62366572018-08-29 20:22:522515 days ago1535574172IN
Etheremon: Rank Battle 1
0 ETH0.000542144
Set Castle62363932018-08-29 19:18:572515 days ago1535570337IN
Etheremon: Rank Battle 1
0 ETH0.000254332.11
Set Castle62360582018-08-29 18:05:212515 days ago1535565921IN
Etheremon: Rank Battle 1
0 ETH0.000252342.4111
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
EtheremonRankBattle

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-07-01
*/

pragma solidity ^0.4.16;

contract BasicAccessControl {
    address public owner;
    // address[] public moderators;
    uint16 public totalModerators = 0;
    mapping (address => bool) public moderators;
    bool public isMaintaining = false;

    function BasicAccessControl() public {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    modifier onlyModerators() {
        require(msg.sender == owner || moderators[msg.sender] == true);
        _;
    }

    modifier isActive {
        require(!isMaintaining);
        _;
    }

    function ChangeOwner(address _newOwner) onlyOwner public {
        if (_newOwner != address(0)) {
            owner = _newOwner;
        }
    }


    function AddModerator(address _newModerator) onlyOwner public {
        if (moderators[_newModerator] == false) {
            moderators[_newModerator] = true;
            totalModerators += 1;
        }
    }
    
    function RemoveModerator(address _oldModerator) onlyOwner public {
        if (moderators[_oldModerator] == true) {
            moderators[_oldModerator] = false;
            totalModerators -= 1;
        }
    }

    function UpdateMaintaining(bool _isMaintaining) onlyOwner public {
        isMaintaining = _isMaintaining;
    }
}

contract EtheremonEnum {
    enum ArrayType {
        CLASS_TYPE,
        STAT_STEP,
        STAT_START,
        STAT_BASE,
        OBJ_SKILL
    }
}

interface EtheremonTradeInterface {
    function isOnTrading(uint64 _objId) constant external returns(bool);
}

contract EtheremonDataBase is EtheremonEnum {
    function getMonsterObj(uint64 _objId) constant public returns(uint64 objId, uint32 classId, address trainer, uint32 exp, uint32 createIndex, uint32 lastClaimIndex, uint createTime);
    function getMonsterDexSize(address _trainer) constant public returns(uint);
    function getElementInArrayType(ArrayType _type, uint64 _id, uint _index) constant public returns(uint8);
    
    function addMonsterObj(uint32 _classId, address _trainer, string _name)  public returns(uint64);
    function addElementToArrayType(ArrayType _type, uint64 _id, uint8 _value) public returns(uint);
}

interface EtheremonRankData {
    function setPlayer(address _trainer, uint64 _a0, uint64 _a1, uint64 _a2, uint64 _s0, uint64 _s1, uint64 _s2) external returns(uint32 playerId);
}

contract EtheremonRankBattle is BasicAccessControl, EtheremonEnum {

    struct MonsterObjAcc {
        uint64 monsterId;
        uint32 classId;
        address trainer;
        string name;
        uint32 exp;
        uint32 createIndex;
        uint32 lastClaimIndex;
        uint createTime;
    }
    
    // linked smart contract
    address public dataContract;
    address public tradeContract;
    address public rankDataContract;
    
    uint32[3] public starterClasses;
    uint public maxDexSize = 200;
    
    // modifier
    modifier requireDataContract {
        require(dataContract != address(0));
        _;
    }
    
    modifier requireTradeContract {
        require(tradeContract != address(0));
        _;
    }

    modifier requireRankDataContract {
        require(rankDataContract != address(0));
        _;
    }

    // event
    event EventUpdateCastle(address indexed trainer, uint32 playerId);
    event Transfer(address indexed _from, address indexed _to, uint256 _tokenId);
    
    function EtheremonRankBattle(address _dataContract, address _tradeContract, address _rankDataContract) public {
        dataContract = _dataContract;
        tradeContract = _tradeContract;
        rankDataContract = _rankDataContract;
    }
    
    function setContract(address _dataContract, address _tradeContract, address _rankDataContract) onlyModerators external {
        dataContract = _dataContract;
        tradeContract = _tradeContract;
        rankDataContract = _rankDataContract;
    }

    function setStarterClass(uint _index, uint32 _classId) onlyModerators external {
        starterClasses[_index] = _classId;
    }
    
    function quickSetStarterClasses() onlyModerators external {
        starterClasses[0] = 25;
        starterClasses[1] = 26;
        starterClasses[2] = 27;
    }
    
    function setMaxDexSize(uint _value) onlyModerators external {
        maxDexSize = _value;
    }

    // public
    
    // public functions
    function getRandom(uint _seed) constant public returns(uint) {
        return uint(keccak256(block.timestamp, block.difficulty)) ^ _seed;
    }
    
    function getValidClassId(uint64 _objId, address _owner) constant public returns(uint32) {
        EtheremonDataBase data = EtheremonDataBase(dataContract);
        MonsterObjAcc memory obj;
        (obj.monsterId, obj.classId, obj.trainer, obj.exp, obj.createIndex, obj.lastClaimIndex, obj.createTime) = data.getMonsterObj(_objId);
        if (obj.trainer != _owner || obj.classId == 21) return 0;
        return obj.classId;
    }
    
    function hasValidParam(address _trainer, uint64 _a1, uint64 _a2, uint64 _a3, uint64 _s1, uint64 _s2, uint64 _s3) constant public returns(bool) {
        if (_a1 == 0 || _a2 == 0 || _a3 == 0)
            return false;
        if (_a1 == _a2 || _a1 == _a3 || _a1 == _s1 || _a1 == _s2 || _a1 == _s3)
            return false;
        if (_a2 == _a3 || _a2 == _s1 || _a2 == _s2 || _a2 == _s3)
            return false;
        if (_a3 == _s1 || _a3 == _s2 || _a3 == _s3)
            return false;
        if (_s1 > 0 && (_s1 == _s2 || _s1 == _s3))
            return false;
        if (_s2 > 0 && (_s2 == _s3))
            return false;
        
        uint32 classA1 = getValidClassId(_a1, _trainer);
        uint32 classA2 = getValidClassId(_a2, _trainer);
        uint32 classA3 = getValidClassId(_a3, _trainer);
        
        if (classA1 == 0 || classA2 == 0 || classA3 == 0)
            return false;
        if (classA1 == classA2 || classA1 == classA3 || classA2 == classA3)
            return false;
        if (_s1 > 0 && getValidClassId(_s1, _trainer) == 0)
            return false;
        if (_s2 > 0 && getValidClassId(_s2, _trainer) == 0)
            return false;
        if (_s3 > 0 && getValidClassId(_s3, _trainer) == 0)
            return false;
        return true;
    }
    
    function setCastle(uint64 _a1, uint64 _a2, uint64 _a3, uint64 _s1, uint64 _s2, uint64 _s3) isActive requireDataContract 
        requireTradeContract requireRankDataContract external {
        
        if (!hasValidParam(msg.sender, _a1, _a2, _a3, _s1, _s2, _s3))
            revert();
        
        EtheremonTradeInterface trade = EtheremonTradeInterface(tradeContract);
        if (trade.isOnTrading(_a1) || trade.isOnTrading(_a2) || trade.isOnTrading(_a3) || 
            trade.isOnTrading(_s1) || trade.isOnTrading(_s2) || trade.isOnTrading(_s3))
            revert();

        EtheremonRankData rank = EtheremonRankData(rankDataContract);
        uint32 playerId = rank.setPlayer(msg.sender, _a1, _a2, _a3, _s1, _s2, _s3);
        EventUpdateCastle(msg.sender, playerId);
    }
    
    function catchStarters() isActive requireDataContract external {
        EtheremonDataBase data = EtheremonDataBase(dataContract);

        // can not keep too many etheremon 
        if (data.getMonsterDexSize(msg.sender) > maxDexSize)
            revert();
        
        uint i = 0;
        uint j = 0;
        uint seed = 0;
        uint64 objId = 0;
        uint32 classId = 0;
        uint8 value = 0;
        for (i = 0; i < starterClasses.length; i+=1) {
            classId = starterClasses[i];
            seed = getRandom(uint(block.blockhash(block.number - i)));
            objId = data.addMonsterObj(classId, msg.sender, "..name me...");
            for (j = 0; j < 6; j += 1) {
                seed = seed ^ (i + j);
                value = uint8(seed % 32) + data.getElementInArrayType(ArrayType.STAT_START, uint64(classId), j);
                data.addElementToArrayType(ArrayType.STAT_BASE, objId, value);
            }
            
            Transfer(address(0), msg.sender, objId);
        } 
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setMaxDexSize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"dataContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"moderators","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxDexSize","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_trainer","type":"address"},{"name":"_a1","type":"uint64"},{"name":"_a2","type":"uint64"},{"name":"_a3","type":"uint64"},{"name":"_s1","type":"uint64"},{"name":"_s2","type":"uint64"},{"name":"_s3","type":"uint64"}],"name":"hasValidParam","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"starterClasses","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_dataContract","type":"address"},{"name":"_tradeContract","type":"address"},{"name":"_rankDataContract","type":"address"}],"name":"setContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_isMaintaining","type":"bool"}],"name":"UpdateMaintaining","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_a1","type":"uint64"},{"name":"_a2","type":"uint64"},{"name":"_a3","type":"uint64"},{"name":"_s1","type":"uint64"},{"name":"_s2","type":"uint64"},{"name":"_s3","type":"uint64"}],"name":"setCastle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalModerators","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_index","type":"uint256"},{"name":"_classId","type":"uint32"}],"name":"setStarterClass","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newModerator","type":"address"}],"name":"AddModerator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_oldModerator","type":"address"}],"name":"RemoveModerator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"rankDataContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"catchStarters","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"quickSetStarterClasses","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_seed","type":"uint256"}],"name":"getRandom","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_objId","type":"uint64"},{"name":"_owner","type":"address"}],"name":"getValidClassId","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isMaintaining","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"ChangeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tradeContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_dataContract","type":"address"},{"name":"_tradeContract","type":"address"},{"name":"_rankDataContract","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"trainer","type":"address"},{"indexed":false,"name":"playerId","type":"uint32"}],"name":"EventUpdateCastle","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokenId","type":"uint256"}],"name":"Transfer","type":"event"}]

606060405260008060146101000a81548161ffff021916908361ffff1602179055506000600260006101000a81548160ff02191690831515021790555060c8600655341561004c57600080fd5b6040516060806125cb83398101604052808051906020019091908051906020019091908051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505061243c8061018f6000396000f300606060405260043610610128576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806308c977e71461012d5780630d6688181461015057806314d0f1ba146101a55780631649b76d146101f65780631bab09081461021f5780632821006d146102e2578063292910541461032557806348ef5aa81461039c5780634a826823146103c15780634efb023e1461044d5780636bd4dfce1461047e5780636c81fd6d146104b05780638da5cb5b146104e9578063b85d62751461053e578063b946c19c14610577578063c4236cdc146105cc578063ca85dbfc146105e1578063cd4b6914146105f6578063e7bb22cd1461062d578063ee4e441614610699578063f2853292146106c6578063ffa640d8146106ff575b600080fd5b341561013857600080fd5b61014e6004808035906020019091905050610754565b005b341561015b57600080fd5b610163610814565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101b057600080fd5b6101dc600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061083a565b604051808215151515815260200191505060405180910390f35b341561020157600080fd5b61020961085a565b6040518082815260200191505060405180910390f35b341561022a57600080fd5b6102c8600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff16906020019091905050610860565b604051808215151515815260200191505060405180910390f35b34156102ed57600080fd5b6103036004808035906020019091905050610c1c565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561033057600080fd5b61039a600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c4b565b005b34156103a757600080fd5b6103bf60048080351515906020019091905050610dc9565b005b34156103cc57600080fd5b61044b600480803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff16906020019091905050610e41565b005b341561045857600080fd5b6104606115be565b604051808261ffff1661ffff16815260200191505060405180910390f35b341561048957600080fd5b6104ae600480803590602001909190803563ffffffff169060200190919050506115d2565b005b34156104bb57600080fd5b6104e7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116c5565b005b34156104f457600080fd5b6104fc611805565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561054957600080fd5b610575600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061182a565b005b341561058257600080fd5b61058a61196b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156105d757600080fd5b6105df611991565b005b34156105ec57600080fd5b6105f4611ec4565b005b341561060157600080fd5b610617600480803590602001909190505061202d565b6040518082815260200191505060405180910390f35b341561063857600080fd5b610677600480803567ffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061205a565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b34156106a457600080fd5b6106ac61226a565b604051808215151515815260200191505060405180910390f35b34156106d157600080fd5b6106fd600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061227d565b005b341561070a57600080fd5b610712612352565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107ff575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561080a57600080fd5b8060068190555050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016020528060005260406000206000915054906101000a900460ff1681565b60065481565b60008060008060008a67ffffffffffffffff161480610889575060008967ffffffffffffffff16145b8061089e575060008867ffffffffffffffff16145b156108ac5760009350610c0e565b8867ffffffffffffffff168a67ffffffffffffffff1614806108e157508767ffffffffffffffff168a67ffffffffffffffff16145b806108ff57508667ffffffffffffffff168a67ffffffffffffffff16145b8061091d57508567ffffffffffffffff168a67ffffffffffffffff16145b8061093b57508467ffffffffffffffff168a67ffffffffffffffff16145b156109495760009350610c0e565b8767ffffffffffffffff168967ffffffffffffffff16148061097e57508667ffffffffffffffff168967ffffffffffffffff16145b8061099c57508567ffffffffffffffff168967ffffffffffffffff16145b806109ba57508467ffffffffffffffff168967ffffffffffffffff16145b156109c85760009350610c0e565b8667ffffffffffffffff168867ffffffffffffffff1614806109fd57508567ffffffffffffffff168867ffffffffffffffff16145b80610a1b57508467ffffffffffffffff168867ffffffffffffffff16145b15610a295760009350610c0e565b60008767ffffffffffffffff16118015610a7457508567ffffffffffffffff168767ffffffffffffffff161480610a7357508467ffffffffffffffff168767ffffffffffffffff16145b5b15610a825760009350610c0e565b60008667ffffffffffffffff16118015610aaf57508467ffffffffffffffff168667ffffffffffffffff16145b15610abd5760009350610c0e565b610ac78a8c61205a565b9250610ad3898c61205a565b9150610adf888c61205a565b905060008363ffffffff161480610afc575060008263ffffffff16145b80610b0d575060008163ffffffff16145b15610b1b5760009350610c0e565b8163ffffffff168363ffffffff161480610b4057508063ffffffff168363ffffffff16145b80610b5657508063ffffffff168263ffffffff16145b15610b645760009350610c0e565b60008767ffffffffffffffff16118015610b8d57506000610b85888d61205a565b63ffffffff16145b15610b9b5760009350610c0e565b60008667ffffffffffffffff16118015610bc457506000610bbc878d61205a565b63ffffffff16145b15610bd25760009350610c0e565b60008567ffffffffffffffff16118015610bfb57506000610bf3868d61205a565b63ffffffff16145b15610c095760009350610c0e565b600193505b505050979650505050505050565b600581600381101515610c2b57fe5b60089182820401919006600402915054906101000a900463ffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610cf6575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515610d0157600080fd5b82600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e2457600080fd5b80600260006101000a81548160ff02191690831515021790555050565b6000806000600260009054906101000a900460ff16151515610e6257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610ec057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610f1e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610f7c57600080fd5b610f8b338a8a8a8a8a8a610860565b1515610f9657600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c8a6000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561104657600080fd5b6102c65a03f1151561105757600080fd5b505050604051805190508061110e57508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c896000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156110f257600080fd5b6102c65a03f1151561110357600080fd5b505050604051805190505b806111bb57508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c886000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561119f57600080fd5b6102c65a03f115156111b057600080fd5b505050604051805190505b8061126857508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c876000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561124c57600080fd5b6102c65a03f1151561125d57600080fd5b505050604051805190505b8061131557508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c866000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156112f957600080fd5b6102c65a03f1151561130a57600080fd5b505050604051805190505b806113c257508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156113a657600080fd5b6102c65a03f115156113b757600080fd5b505050604051805190505b156113cc57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff166349a92910338b8b8b8b8b8b6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018767ffffffffffffffff1667ffffffffffffffff1681526020018667ffffffffffffffff1667ffffffffffffffff1681526020018567ffffffffffffffff1667ffffffffffffffff1681526020018467ffffffffffffffff1667ffffffffffffffff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018267ffffffffffffffff1667ffffffffffffffff168152602001975050505050505050602060405180830381600087803b151561153c57600080fd5b6102c65a03f1151561154d57600080fd5b5050506040518051905090503373ffffffffffffffffffffffffffffffffffffffff167f73e58b14fab1ee02f4e1a0ab06d580a880c03f88b1d660acf5528ea85d455dfe82604051808263ffffffff1663ffffffff16815260200191505060405180910390a2505050505050505050565b600060149054906101000a900461ffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061167d575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561168857600080fd5b8060058360038110151561169857fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561172057600080fd5b60001515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514156118025760018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600060148282829054906101000a900461ffff160192506101000a81548161ffff021916908361ffff1602179055505b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188557600080fd5b60011515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415611968576000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600060148282829054906101000a900461ffff160392506101000a81548161ffff021916908361ffff1602179055505b50565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000806000600260009054906101000a900460ff161515156119b857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515611a1657600080fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1696506006548773ffffffffffffffffffffffffffffffffffffffff166347c17bac336000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515611ae157600080fd5b6102c65a03f11515611af257600080fd5b505050604051805190501115611b0757600080fd5b600095506000945060009350600092506000915060009050600095505b6003861015611ebb57600586600381101515611b3c57fe5b600891828204019190066004029054906101000a900463ffffffff169150611b6a864303406001900461202d565b93508673ffffffffffffffffffffffffffffffffffffffff1663fc4d20f583336000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808363ffffffff1663ffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252600c8152602001807f2e2e6e616d65206d652e2e2e00000000000000000000000000000000000000008152506020019350505050602060405180830381600087803b1515611c5c57600080fd5b6102c65a03f11515611c6d57600080fd5b505050604051805190509250600094505b6006851015611e4057848601841893508673ffffffffffffffffffffffffffffffffffffffff166362b21ad760028463ffffffff16886000604051602001526040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180846004811115611cf857fe5b60ff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1515611d3e57600080fd5b6102c65a03f11515611d4f57600080fd5b50505060405180519050602085811515611d6557fe5b060190508673ffffffffffffffffffffffffffffffffffffffff166326bda739600385846000604051602001526040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180846004811115611dcd57fe5b60ff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018260ff1660ff1681526020019350505050602060405180830381600087803b1515611e1957600080fd5b6102c65a03f11515611e2a57600080fd5b5050506040518051905050600185019450611c7e565b3373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051808267ffffffffffffffff16815260200191505060405180910390a3600186019550611b24565b50505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611f6f575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515611f7a57600080fd5b601960056000600381101515611f8c57fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550601a60056001600381101515611fc757fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550601b6005600260038110151561200257fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550565b60008142446040518083815260200182815260200192505050604051809103902060019004189050919050565b600080612065612378565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff16630720246086600060405160e001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff16815260200191505060e060405180830381600087803b151561211557600080fd5b6102c65a03f1151561212657600080fd5b505050604051805190602001805190602001805190602001805190602001805190602001805190602001805190508760000188602001896040018a6080018b60a0018c60c0018d60e001878152508763ffffffff1663ffffffff168152508763ffffffff1663ffffffff168152508763ffffffff1663ffffffff168152508773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152508763ffffffff1663ffffffff168152508767ffffffffffffffff1667ffffffffffffffff16815250505050505050508373ffffffffffffffffffffffffffffffffffffffff16816040015173ffffffffffffffffffffffffffffffffffffffff1614158061224c57506015816020015163ffffffff16145b1561225a5760009250612262565b806020015192505b505092915050565b600260009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122d857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561234f57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61010060405190810160405280600067ffffffffffffffff168152602001600063ffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016123c86123fc565b8152602001600063ffffffff168152602001600063ffffffff168152602001600063ffffffff168152602001600081525090565b6020604051908101604052806000815250905600a165627a7a72305820a4aa64514d16e4c7e27d59dd411ee5dbc329a371388e3d764552a98fcedf741b0029000000000000000000000000abc1c404424bdf24c19a5cc5ef8f47781d18eb3e0000000000000000000000004ba72f0f8dad13709ee28a992869e79d0fe47030000000000000000000000000838cda4a4cc873fff10f4d6373ada6636517fa31

Deployed Bytecode

0x606060405260043610610128576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806308c977e71461012d5780630d6688181461015057806314d0f1ba146101a55780631649b76d146101f65780631bab09081461021f5780632821006d146102e2578063292910541461032557806348ef5aa81461039c5780634a826823146103c15780634efb023e1461044d5780636bd4dfce1461047e5780636c81fd6d146104b05780638da5cb5b146104e9578063b85d62751461053e578063b946c19c14610577578063c4236cdc146105cc578063ca85dbfc146105e1578063cd4b6914146105f6578063e7bb22cd1461062d578063ee4e441614610699578063f2853292146106c6578063ffa640d8146106ff575b600080fd5b341561013857600080fd5b61014e6004808035906020019091905050610754565b005b341561015b57600080fd5b610163610814565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101b057600080fd5b6101dc600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061083a565b604051808215151515815260200191505060405180910390f35b341561020157600080fd5b61020961085a565b6040518082815260200191505060405180910390f35b341561022a57600080fd5b6102c8600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff16906020019091905050610860565b604051808215151515815260200191505060405180910390f35b34156102ed57600080fd5b6103036004808035906020019091905050610c1c565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561033057600080fd5b61039a600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c4b565b005b34156103a757600080fd5b6103bf60048080351515906020019091905050610dc9565b005b34156103cc57600080fd5b61044b600480803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff1690602001909190803567ffffffffffffffff16906020019091905050610e41565b005b341561045857600080fd5b6104606115be565b604051808261ffff1661ffff16815260200191505060405180910390f35b341561048957600080fd5b6104ae600480803590602001909190803563ffffffff169060200190919050506115d2565b005b34156104bb57600080fd5b6104e7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116c5565b005b34156104f457600080fd5b6104fc611805565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561054957600080fd5b610575600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061182a565b005b341561058257600080fd5b61058a61196b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156105d757600080fd5b6105df611991565b005b34156105ec57600080fd5b6105f4611ec4565b005b341561060157600080fd5b610617600480803590602001909190505061202d565b6040518082815260200191505060405180910390f35b341561063857600080fd5b610677600480803567ffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061205a565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b34156106a457600080fd5b6106ac61226a565b604051808215151515815260200191505060405180910390f35b34156106d157600080fd5b6106fd600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061227d565b005b341561070a57600080fd5b610712612352565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107ff575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561080a57600080fd5b8060068190555050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016020528060005260406000206000915054906101000a900460ff1681565b60065481565b60008060008060008a67ffffffffffffffff161480610889575060008967ffffffffffffffff16145b8061089e575060008867ffffffffffffffff16145b156108ac5760009350610c0e565b8867ffffffffffffffff168a67ffffffffffffffff1614806108e157508767ffffffffffffffff168a67ffffffffffffffff16145b806108ff57508667ffffffffffffffff168a67ffffffffffffffff16145b8061091d57508567ffffffffffffffff168a67ffffffffffffffff16145b8061093b57508467ffffffffffffffff168a67ffffffffffffffff16145b156109495760009350610c0e565b8767ffffffffffffffff168967ffffffffffffffff16148061097e57508667ffffffffffffffff168967ffffffffffffffff16145b8061099c57508567ffffffffffffffff168967ffffffffffffffff16145b806109ba57508467ffffffffffffffff168967ffffffffffffffff16145b156109c85760009350610c0e565b8667ffffffffffffffff168867ffffffffffffffff1614806109fd57508567ffffffffffffffff168867ffffffffffffffff16145b80610a1b57508467ffffffffffffffff168867ffffffffffffffff16145b15610a295760009350610c0e565b60008767ffffffffffffffff16118015610a7457508567ffffffffffffffff168767ffffffffffffffff161480610a7357508467ffffffffffffffff168767ffffffffffffffff16145b5b15610a825760009350610c0e565b60008667ffffffffffffffff16118015610aaf57508467ffffffffffffffff168667ffffffffffffffff16145b15610abd5760009350610c0e565b610ac78a8c61205a565b9250610ad3898c61205a565b9150610adf888c61205a565b905060008363ffffffff161480610afc575060008263ffffffff16145b80610b0d575060008163ffffffff16145b15610b1b5760009350610c0e565b8163ffffffff168363ffffffff161480610b4057508063ffffffff168363ffffffff16145b80610b5657508063ffffffff168263ffffffff16145b15610b645760009350610c0e565b60008767ffffffffffffffff16118015610b8d57506000610b85888d61205a565b63ffffffff16145b15610b9b5760009350610c0e565b60008667ffffffffffffffff16118015610bc457506000610bbc878d61205a565b63ffffffff16145b15610bd25760009350610c0e565b60008567ffffffffffffffff16118015610bfb57506000610bf3868d61205a565b63ffffffff16145b15610c095760009350610c0e565b600193505b505050979650505050505050565b600581600381101515610c2b57fe5b60089182820401919006600402915054906101000a900463ffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610cf6575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515610d0157600080fd5b82600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e2457600080fd5b80600260006101000a81548160ff02191690831515021790555050565b6000806000600260009054906101000a900460ff16151515610e6257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610ec057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610f1e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610f7c57600080fd5b610f8b338a8a8a8a8a8a610860565b1515610f9657600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c8a6000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561104657600080fd5b6102c65a03f1151561105757600080fd5b505050604051805190508061110e57508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c896000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156110f257600080fd5b6102c65a03f1151561110357600080fd5b505050604051805190505b806111bb57508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c886000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561119f57600080fd5b6102c65a03f115156111b057600080fd5b505050604051805190505b8061126857508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c876000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b151561124c57600080fd5b6102c65a03f1151561125d57600080fd5b505050604051805190505b8061131557508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c866000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156112f957600080fd5b6102c65a03f1151561130a57600080fd5b505050604051805190505b806113c257508273ffffffffffffffffffffffffffffffffffffffff1663a847a71c856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff168152602001915050602060405180830381600087803b15156113a657600080fd5b6102c65a03f115156113b757600080fd5b505050604051805190505b156113cc57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff166349a92910338b8b8b8b8b8b6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018767ffffffffffffffff1667ffffffffffffffff1681526020018667ffffffffffffffff1667ffffffffffffffff1681526020018567ffffffffffffffff1667ffffffffffffffff1681526020018467ffffffffffffffff1667ffffffffffffffff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018267ffffffffffffffff1667ffffffffffffffff168152602001975050505050505050602060405180830381600087803b151561153c57600080fd5b6102c65a03f1151561154d57600080fd5b5050506040518051905090503373ffffffffffffffffffffffffffffffffffffffff167f73e58b14fab1ee02f4e1a0ab06d580a880c03f88b1d660acf5528ea85d455dfe82604051808263ffffffff1663ffffffff16815260200191505060405180910390a2505050505050505050565b600060149054906101000a900461ffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061167d575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561168857600080fd5b8060058360038110151561169857fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561172057600080fd5b60001515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514156118025760018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600060148282829054906101000a900461ffff160192506101000a81548161ffff021916908361ffff1602179055505b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188557600080fd5b60011515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415611968576000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600060148282829054906101000a900461ffff160392506101000a81548161ffff021916908361ffff1602179055505b50565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000806000600260009054906101000a900460ff161515156119b857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515611a1657600080fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1696506006548773ffffffffffffffffffffffffffffffffffffffff166347c17bac336000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515611ae157600080fd5b6102c65a03f11515611af257600080fd5b505050604051805190501115611b0757600080fd5b600095506000945060009350600092506000915060009050600095505b6003861015611ebb57600586600381101515611b3c57fe5b600891828204019190066004029054906101000a900463ffffffff169150611b6a864303406001900461202d565b93508673ffffffffffffffffffffffffffffffffffffffff1663fc4d20f583336000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808363ffffffff1663ffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252600c8152602001807f2e2e6e616d65206d652e2e2e00000000000000000000000000000000000000008152506020019350505050602060405180830381600087803b1515611c5c57600080fd5b6102c65a03f11515611c6d57600080fd5b505050604051805190509250600094505b6006851015611e4057848601841893508673ffffffffffffffffffffffffffffffffffffffff166362b21ad760028463ffffffff16886000604051602001526040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180846004811115611cf857fe5b60ff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1515611d3e57600080fd5b6102c65a03f11515611d4f57600080fd5b50505060405180519050602085811515611d6557fe5b060190508673ffffffffffffffffffffffffffffffffffffffff166326bda739600385846000604051602001526040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180846004811115611dcd57fe5b60ff1681526020018367ffffffffffffffff1667ffffffffffffffff1681526020018260ff1660ff1681526020019350505050602060405180830381600087803b1515611e1957600080fd5b6102c65a03f11515611e2a57600080fd5b5050506040518051905050600185019450611c7e565b3373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051808267ffffffffffffffff16815260200191505060405180910390a3600186019550611b24565b50505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611f6f575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515611f7a57600080fd5b601960056000600381101515611f8c57fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550601a60056001600381101515611fc757fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550601b6005600260038110151561200257fe5b600891828204019190066004026101000a81548163ffffffff021916908363ffffffff160217905550565b60008142446040518083815260200182815260200192505050604051809103902060019004189050919050565b600080612065612378565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff16630720246086600060405160e001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808267ffffffffffffffff1667ffffffffffffffff16815260200191505060e060405180830381600087803b151561211557600080fd5b6102c65a03f1151561212657600080fd5b505050604051805190602001805190602001805190602001805190602001805190602001805190602001805190508760000188602001896040018a6080018b60a0018c60c0018d60e001878152508763ffffffff1663ffffffff168152508763ffffffff1663ffffffff168152508763ffffffff1663ffffffff168152508773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152508763ffffffff1663ffffffff168152508767ffffffffffffffff1667ffffffffffffffff16815250505050505050508373ffffffffffffffffffffffffffffffffffffffff16816040015173ffffffffffffffffffffffffffffffffffffffff1614158061224c57506015816020015163ffffffff16145b1561225a5760009250612262565b806020015192505b505092915050565b600260009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122d857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561234f57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61010060405190810160405280600067ffffffffffffffff168152602001600063ffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016123c86123fc565b8152602001600063ffffffff168152602001600063ffffffff168152602001600063ffffffff168152602001600081525090565b6020604051908101604052806000815250905600a165627a7a72305820a4aa64514d16e4c7e27d59dd411ee5dbc329a371388e3d764552a98fcedf741b0029

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

000000000000000000000000abc1c404424bdf24c19a5cc5ef8f47781d18eb3e0000000000000000000000004ba72f0f8dad13709ee28a992869e79d0fe47030000000000000000000000000838cda4a4cc873fff10f4d6373ada6636517fa31

-----Decoded View---------------
Arg [0] : _dataContract (address): 0xABC1c404424BDF24C19A5cC5EF8F47781D18Eb3E
Arg [1] : _tradeContract (address): 0x4bA72F0F8DAd13709EE28a992869E79d0fE47030
Arg [2] : _rankDataContract (address): 0x838CdA4a4CC873fff10F4D6373AdA6636517fa31

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000abc1c404424bdf24c19a5cc5ef8f47781d18eb3e
Arg [1] : 0000000000000000000000004ba72f0f8dad13709ee28a992869e79d0fe47030
Arg [2] : 000000000000000000000000838cda4a4cc873fff10f4d6373ada6636517fa31


Swarm Source

bzzr://a4aa64514d16e4c7e27d59dd411ee5dbc329a371388e3d764552a98fcedf741b

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.