More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
BRBasketballTokenControl
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-10-02 */ pragma solidity ^0.4.7; contract MobaBase { address public owner = 0x0; bool public isLock = false; constructor () public { owner = msg.sender; } event transferToOwnerEvent(uint256 price); modifier onlyOwner { require(msg.sender == owner,"only owner can call this function"); _; } modifier notLock { require(isLock == false,"contract current is lock status"); _; } modifier msgSendFilter() { address addr = msg.sender; uint size; assembly { size := extcodesize(addr) } require(size <= 0,"address must is not contract"); require(msg.sender == tx.origin, "msg.sender must equipt tx.origin"); _; } function transferOwnership(address newOwner) onlyOwner public { if (newOwner != address(0)) { owner = newOwner; } } function transferToOwner() onlyOwner msgSendFilter public { uint256 totalBalace = address(this).balance; owner.transfer(totalBalace); emit transferToOwnerEvent(totalBalace); } function updateLock(bool b) onlyOwner public { require(isLock != b," updateLock new status == old status"); isLock = b; } } contract IRandomUtil{ function getBaseRandom() public view returns (bytes32); function addContractAddr() public; } contract BRRandom { IRandomUtil private baseRandom; address internal mainnet_random_addr = 0x31E0d4b2d086e8Bfc25A10bE133dEc09cb5284d2; function initRandom (address addr) internal { require(baseRandom == address(0x0),"BRRandom has been init!"); baseRandom = IRandomUtil(addr); baseRandom.addContractAddr(); require(getBaseRandom() != 0,"random init has error"); } function getBaseRandom() public view returns (bytes32) { return baseRandom.getBaseRandom(); } } ///////////////////////////////////////////////yaoq邀请/////////////////////////// contract IInviteData{ function GetAddressByName(bytes32 name) public view returns (address); } contract BRInvite{ uint private inviteRate = 10; IInviteData public mInviteData; address internal mainnet_invite_addr = 0x008796E9e3b15869D444B8AabdA0d3ea7eEafDEa96; function initInviteAddr (address addr,uint rate) internal { require(mInviteData == address(0x0),"BRInvite has been init!"); mInviteData = IInviteData(addr); inviteRate = rate; } function GetAddressByName(bytes32 name) public view returns (address) { return mInviteData.GetAddressByName(name); } function getInviteRate() public view returns (uint) { return inviteRate; } } contract IConfigData { function getPrice() public view returns (uint256); function getWinRate(uint8 winCount) public pure returns (uint); function getOverRate(uint8 winCount) public pure returns (uint); function getPumpRate() public view returns(uint8); function getBaseRandom() public returns (bytes32); function GetAddressByName(bytes32 name) public view returns (address); function getInviteRate() public view returns (uint); function loseHandler(address addr,uint8 wincount) public ; } contract IERC20Token { function name() public view returns (string) ; function symbol() public view returns (string); function decimals() public view returns (uint8); function totalSupply() public view returns (uint256); function balanceOf(address _owner) public view returns (uint256); function allowance(address _owner, address _spender) public view returns (uint256); function transfer(address _to, uint256 _value) public returns (bool success); function transferFrom(address _from, address _to, uint256 _value) public returns (bool success); function approve(address _spender, uint256 _value) public returns (bool success); } contract ConvertUtil{ function bytesToUint(bytes b) internal pure returns (uint256){ uint256 number; for(uint i=0;i<b.length;i++){ number = number + uint(b[i])*(2**(8*(b.length-(i+1)))); } return number; } function slice(bytes memory data,uint start,uint len) internal pure returns(bytes){ bytes memory b=new bytes(len); for(uint i=0;i<len;i++){ b[i]=data[i+start]; } return b; } function stringToBytes32( bytes source) internal pure returns (bytes32 result) { if (source.length == 0) { return 0x0; } assembly { result := mload(add(source, 32)) } } function isNotContract(address addr) internal view returns (bool) { uint size; assembly { size := extcodesize(addr) } require(size <= 0,"address must is not contract"); if(size <= 0) return true; return false; } } contract BRBasketballTokenControl is MobaBase,ConvertUtil{ Winner public mWinner; uint gameIndex; IConfigData public mNewConfig; IConfigData public mConfig = IConfigData(0x00e04c5271ee336cc7b499a2765a752f3f99e65fee); IERC20Token public token = IERC20Token(0x007a6eBE5Cc20DA8655640fC1112522367569F2114); constructor(address config,address tokenAddr) public { mConfig = IConfigData(config); if(token != address(0)){ token = IERC20Token(tokenAddr); } startNewGame(); } event pkEvent(address winAddr,address pkAddr,bytes32 pkInviteName,uint winRate,uint overRate,uint curWinRate,uint curOverRate,bool pkIsWin,uint256 price); event gameOverEvent(uint gameIndex,address winAddr,uint256 price,uint256 totalBalace); struct Winner { uint8 num; uint8 winCount; address addr; } function updateConfig(address newAddr) onlyOwner public{ mNewConfig = IConfigData(newAddr); } //////////////////////////////////////////////////////// // handle logic gate after receive Token //////////////////////////////////////////////////////// function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) public { IERC20Token t = IERC20Token(_token); require(_token == address(token),"token is error" ); require(_from == tx.origin, "token from must equal tx.origin"); require(isNotContract(_from),"token from is not Contract"); require(_value == mConfig.getPrice(),"value is error" ); require(t.transferFrom(_from, this, _value),"transferFrom has error"); bytes memory inviteBytes = slice(_extraData,0,_extraData.length-1); bytes memory numBytes = slice(_extraData,_extraData.length-1,1); uint8 num = uint8(bytesToUint(numBytes)); bytes32 inviteName = stringToBytes32(inviteBytes); PK(_from,num,inviteName); } function PK(address pkAddr,uint8 num,bytes32 name) notLock private { uint winRate = mConfig.getWinRate(mWinner.winCount); uint curWinRate ; uint curOverRate; (curWinRate,curOverRate) = getRandom(100); inviteHandler(name); address oldWinAddr = mWinner.addr; if(mWinner.addr == address(0) ) { mWinner = Winner(num,0,pkAddr); } else if( winRate < curWinRate ) { mWinner = Winner(num,1,pkAddr); } else{ mWinner.winCount = mWinner.winCount + 1; } bool pkIsWin = (pkAddr == mWinner.addr); uint overRate = mConfig.getOverRate(mWinner.winCount); emit pkEvent(mWinner.addr,pkAddr,name, winRate, overRate, curWinRate, curOverRate,pkIsWin, mConfig.getPrice()); if(oldWinAddr != address(0) && curOverRate < overRate ) { require(mWinner.addr != address(0),"Winner.addr is null"); uint pumpRate = mConfig.getPumpRate(); uint totalBalace = token.balanceOf(address(this)); uint giveToOwn = totalBalace * pumpRate / 100; uint giveToActor = totalBalace - giveToOwn; token.transfer(owner,giveToOwn); token.transfer(mWinner.addr,giveToActor); emit gameOverEvent(gameIndex, mWinner.addr,mConfig.getPrice(),giveToActor); startNewGame(); } } function startNewGame() private { gameIndex++; mWinner = Winner(0,1,address(0)); if(mNewConfig != address(0) && mNewConfig != mConfig){ mConfig = mNewConfig; } } function inviteHandler(bytes32 inviteName) private { if(mConfig == address(0)) { return ; } if( mConfig.getInviteRate() <= 0 ){ return; } address inviteAddr = mConfig.GetAddressByName(inviteName); if(inviteAddr != address(0)) { uint giveToToken = mConfig.getPrice() * mConfig.getInviteRate() / 100; token.transfer(inviteAddr,giveToToken); } } function getRandom(uint maxNum) private returns(uint,uint) { bytes32 curRandom = mConfig.getBaseRandom(); curRandom = keccak256(abi.encodePacked(tx.origin,now,tx.gasprice,curRandom,block.timestamp ,block.number, block.difficulty,((uint256(keccak256(abi.encodePacked(block.coinbase)))) / (now)) )); uint value1 = (uint(curRandom) % maxNum); curRandom = keccak256(abi.encodePacked(tx.origin,now,tx.gasprice,curRandom,value1,block.timestamp ,block.number, block.difficulty,((uint256(keccak256(abi.encodePacked(block.coinbase)))) / (now)) )); uint value2 = (uint(curRandom) % maxNum); return (value1,value2); } function getGameInfo() public view returns (uint index,uint price,uint256 balace, uint winNum,uint winCount,address WinAddr,uint winRate,uint winOverRate, uint pkOverRate ){ uint curbalace = token.balanceOf(address(this)); uint winnernum = mWinner.num; uint winnercount = mWinner.winCount; address winneraddr = mWinner.addr; uint curWinRate = mConfig.getWinRate(mWinner.winCount); uint curOverRate = mConfig.getOverRate(mWinner.winCount); uint curPkOverRate= mConfig.getOverRate(1); return (gameIndex, mConfig.getPrice(), curbalace, winnernum,winnercount,winneraddr,curWinRate,curOverRate, curPkOverRate); } function () payable public { require(msg.value == 0 ); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"mWinner","outputs":[{"name":"num","type":"uint8"},{"name":"winCount","type":"uint8"},{"name":"addr","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getGameInfo","outputs":[{"name":"index","type":"uint256"},{"name":"price","type":"uint256"},{"name":"balace","type":"uint256"},{"name":"winNum","type":"uint256"},{"name":"winCount","type":"uint256"},{"name":"WinAddr","type":"address"},{"name":"winRate","type":"uint256"},{"name":"winOverRate","type":"uint256"},{"name":"pkOverRate","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"transferToOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newAddr","type":"address"}],"name":"updateConfig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mNewConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_token","type":"address"},{"name":"_extraData","type":"bytes"}],"name":"receiveApproval","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"b","type":"bool"}],"name":"updateLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"config","type":"address"},{"name":"tokenAddr","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"winAddr","type":"address"},{"indexed":false,"name":"pkAddr","type":"address"},{"indexed":false,"name":"pkInviteName","type":"bytes32"},{"indexed":false,"name":"winRate","type":"uint256"},{"indexed":false,"name":"overRate","type":"uint256"},{"indexed":false,"name":"curWinRate","type":"uint256"},{"indexed":false,"name":"curOverRate","type":"uint256"},{"indexed":false,"name":"pkIsWin","type":"bool"},{"indexed":false,"name":"price","type":"uint256"}],"name":"pkEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"gameIndex","type":"uint256"},{"indexed":false,"name":"winAddr","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"totalBalace","type":"uint256"}],"name":"gameOverEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"price","type":"uint256"}],"name":"transferToOwnerEvent","type":"event"}]
Contract Creation Code
608060405260008054600160a860020a031916905560048054600160a060020a031990811673e04c5271ee336cc7b499a2765a752f3f99e65fee1790915560058054909116737a6ebe5cc20da8655640fc1112522367569f211417905534801561006857600080fd5b506040516040806200213d83398101604052805160209091015160008054600160a060020a0319908116331790915560048054600160a060020a038086169190931617905560055416156100d25760058054600160a060020a031916600160a060020a0383161790555b6100e36401000000006100ea810204565b505061017f565b6002805460019081019091556040805160608101825260008082526020820184905291015280546201000060b060020a031961ffff1990911661010017169055600354600160a060020a0316158015906101555750600454600354600160a060020a03908116911614155b1561017d5760035460048054600160a060020a031916600160a060020a039092169190911790555b565b611fae806200018f6000396000f3006080604052600436106100a05763ffffffff60e060020a60003504166303d07a9f81146100ad57806309d8da2e146100ef5780631746bd1b146101185780632d90ae941461017d57806346a00af9146101925780636cc919c8146101c357806383716616146101e45780638da5cb5b146101f95780638f4ffcb11461020e578063a1f910571461027e578063f2fde38b14610298578063fc0c546a146102b9575b34156100ab57600080fd5b005b3480156100b957600080fd5b506100c26102ce565b6040805160ff9485168152929093166020830152600160a060020a03168183015290519081900360600190f35b3480156100fb57600080fd5b506101046102f2565b604080519115158252519081900360200190f35b34801561012457600080fd5b5061012d610313565b60408051998a5260208a01989098528888019690965260608801949094526080870192909252600160a060020a031660a086015260c085015260e084015261010083015251908190036101200190f35b34801561018957600080fd5b506100ab61066b565b34801561019e57600080fd5b506101a76107f2565b60408051600160a060020a039092168252519081900360200190f35b3480156101cf57600080fd5b506100ab600160a060020a0360043516610801565b3480156101f057600080fd5b506101a761088d565b34801561020557600080fd5b506101a761089c565b34801561021a57600080fd5b50604080516020601f6064356004818101359283018490048402850184019095528184526100ab94600160a060020a038135811695602480359660443590931695369560849492019181908401838280828437509497506108ab9650505050505050565b34801561028a57600080fd5b506100ab6004351515610be8565b3480156102a457600080fd5b506100ab600160a060020a0360043516610d24565b3480156102c557600080fd5b506101a7610dbc565b60015460ff80821691610100810490911690620100009004600160a060020a031683565b60005474010000000000000000000000000000000000000000900460ff1681565b600080600080600080600080600080600080600080600080600560009054906101000a9004600160a060020a0316600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561039b57600080fd5b505af11580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b505160015460048054604080517f472b6efa000000000000000000000000000000000000000000000000000000008152610100850460ff9081169482018590529151959c509084169a50919850600160a060020a0362010000909304831697509091169163472b6efa916024808201926020929091908290030181600087803b15801561045157600080fd5b505af1158015610465573d6000803e3d6000fd5b505050506040513d602081101561047b57600080fd5b505160048054600154604080517f235b1eb700000000000000000000000000000000000000000000000000000000815261010090920460ff16938201939093529151929550600160a060020a03169163235b1eb7916024808201926020929091908290030181600087803b1580156104f257600080fd5b505af1158015610506573d6000803e3d6000fd5b505050506040513d602081101561051c57600080fd5b505160048054604080517f235b1eb700000000000000000000000000000000000000000000000000000000815260019381019390935251929450600160a060020a03169163235b1eb7916024808201926020929091908290030181600087803b15801561058857600080fd5b505af115801561059c573d6000803e3d6000fd5b505050506040513d60208110156105b257600080fd5b5051600254600480546040805160e160020a634c6afee502815290519495509293600160a060020a03909116926398d5fdca92818101926020929091908290030181600087803b15801561060557600080fd5b505af1158015610619573d6000803e3d6000fd5b505050506040513d602081101561062f57600080fd5b8101908080519060200190929190505050888888888888889f509f509f509f509f509f509f509f509f5050505050505050909192939495969798565b60008054600160a060020a031633146106c9576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b33803b6000811115610725576040805160e560020a62461bcd02815260206004820152601c60248201527f61646472657373206d757374206973206e6f7420636f6e747261637400000000604482015290519081900360640190fd5b33321461077c576040805160e560020a62461bcd02815260206004820181905260248201527f6d73672e73656e646572206d757374206571756970742074782e6f726967696e604482015290519081900360640190fd5b6000805460405130319550600160a060020a03909116916108fc861502918691818181858888f193505050501580156107b9573d6000803e3d6000fd5b506040805184815290517f9ef5e075ae776f59b8ebed95037f51c8d4706c8cbb975a89d3a6c95c92c87a229181900360200190a1505050565b600454600160a060020a031681565b600054600160a060020a0316331461085e576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600354600160a060020a031681565b600054600160a060020a031681565b600554829060609081906000908190600160a060020a0380871691161461091c576040805160e560020a62461bcd02815260206004820152600e60248201527f746f6b656e206973206572726f72000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038916321461097c576040805160e560020a62461bcd02815260206004820152601f60248201527f746f6b656e2066726f6d206d75737420657175616c2074782e6f726967696e00604482015290519081900360640190fd5b61098589610dcb565b15156109db576040805160e560020a62461bcd02815260206004820152601b60248201527f746f6b656e2066726f6d20206973206e6f7420436f6e74726163740000000000604482015290519081900360640190fd5b600480546040805160e160020a634c6afee50281529051600160a060020a03909216926398d5fdca9282820192602092908290030181600087803b158015610a2257600080fd5b505af1158015610a36573d6000803e3d6000fd5b505050506040513d6020811015610a4c57600080fd5b50518814610aa4576040805160e560020a62461bcd02815260206004820152600e60248201527f76616c7565206973206572726f72000000000000000000000000000000000000604482015290519081900360640190fd5b604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038b81166004830152306024830152604482018b90529151918716916323b872dd916064808201926020929091908290030181600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b505050506040513d6020811015610b4057600080fd5b50511515610b98576040805160e560020a62461bcd02815260206004820152601660248201527f7472616e7366657246726f6d20686173206572726f7200000000000000000000604482015290519081900360640190fd5b610ba88660006001895103610e43565b9350610bba8660018851036001610e43565b9250610bc583610ef8565b9150610bd084610f47565b9050610bdd898383610f67565b505050505050505050565b600054600160a060020a03163314610c45576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b60005460ff740100000000000000000000000000000000000000009091041615158115151415610ce4576040805160e560020a62461bcd028152602060048201526024808201527f207570646174654c6f636b206e657720737461747573203d3d206f6c6420737460448201527f6174757300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60008054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600054600160a060020a03163314610d81576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b600160a060020a03811615610db9576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600554600160a060020a031681565b6000813b81811115610e27576040805160e560020a62461bcd02815260206004820152601c60248201527f61646472657373206d757374206973206e6f7420636f6e747261637400000000604482015290519081900360640190fd5b60008111610e385760019150610e3d565b600091505b50919050565b6060806000836040519080825280601f01601f191660200182016040528015610e76578160200160208202803883390190505b509150600090505b83811015610eef5785858201815181101515610e9657fe5b90602001015160f860020a900460f860020a028282815181101515610eb757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101610e7e565b50949350505050565b600080805b8351811015610f40578060010184510360080260020a8482815181101515610f2157fe5b016020015160f860020a90819004810204029190910190600101610efd565b5092915050565b6000815160001415610f5b57506000610f62565b5060208101515b919050565b6000805481908190819081908190819081908190819074010000000000000000000000000000000000000000900460ff1615610fed576040805160e560020a62461bcd02815260206004820152601f60248201527f636f6e74726163742063757272656e74206973206c6f636b2073746174757300604482015290519081900360640190fd5b60048054600154604080517f472b6efa00000000000000000000000000000000000000000000000000000000815261010090920460ff16938201939093529151600160a060020a039091169163472b6efa9160248083019260209291908290030181600087803b15801561106057600080fd5b505af1158015611074573d6000803e3d6000fd5b505050506040513d602081101561108a57600080fd5b50519950611098606461180a565b90995097506110a68b611bc5565b600154620100009004600160a060020a03169650861515611166576060604051908101604052808d60ff168152602001600060ff1681526020018e600160a060020a0316815250600160008201518160000160006101000a81548160ff021916908360ff16021790555060208201518160000160016101000a81548160ff021916908360ff16021790555060408201518160000160026101000a815481600160a060020a030219169083600160a060020a03160217905550905050611232565b888a1015611213576060604051908101604052808d60ff168152602001600160ff1681526020018e600160a060020a0316815250600160008201518160000160006101000a81548160ff021916908360ff16021790555060208201518160000160016101000a81548160ff021916908360ff16021790555060408201518160000160026101000a815481600160a060020a030219169083600160a060020a03160217905550905050611232565b6001805460ff610100808304821684019091160261ff00199091161790555b600160000160029054906101000a9004600160a060020a0316600160a060020a03168d600160a060020a0316149550600460009054906101000a9004600160a060020a0316600160a060020a031663235b1eb7600160000160019054906101000a900460ff166040518263ffffffff1660e060020a028152600401808260ff1660ff168152602001915050602060405180830381600087803b1580156112d757600080fd5b505af11580156112eb573d6000803e3d6000fd5b505050506040513d602081101561130157600080fd5b810190808051906020019092919050505094507f7a43da65fff256883071732f42f576322fd6a665211a4001063bc7b9424cb566600160000160029054906101000a9004600160a060020a03168e8d8d898e8e8d600460009054906101000a9004600160a060020a0316600160a060020a03166398d5fdca6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156113a857600080fd5b505af11580156113bc573d6000803e3d6000fd5b505050506040513d60208110156113d257600080fd5b505160408051600160a060020a039a8b168152989099166020890152878901969096526060870194909452608086019290925260a085015260c0840152151560e08301526101008201529051908190036101200190a1600160a060020a0387161580159061143f57508488105b156117fb57600154620100009004600160a060020a031615156114ac576040805160e560020a62461bcd02815260206004820152601360248201527f57696e6e65722e61646472206973206e756c6c00000000000000000000000000604482015290519081900360640190fd5b60048054604080517fb42c6b4f0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169263b42c6b4f9282820192602092908290030181600087803b15801561150957600080fd5b505af115801561151d573d6000803e3d6000fd5b505050506040513d602081101561153357600080fd5b5051600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160ff9093169650600160a060020a03909116916370a08231916024808201926020929091908290030181600087803b1580156115a257600080fd5b505af11580156115b6573d6000803e3d6000fd5b505050506040513d60208110156115cc57600080fd5b505160055460008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015260648a870204602482018190529151959850909650868803955092169263a9059cbb926044808201936020939283900390910190829087803b15801561165157600080fd5b505af1158015611665573d6000803e3d6000fd5b505050506040513d602081101561167b57600080fd5b5050600554600154604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815262010000909204600160a060020a03908116600484015260248301859052905192169163a9059cbb916044808201926020929091908290030181600087803b1580156116f557600080fd5b505af1158015611709573d6000803e3d6000fd5b505050506040513d602081101561171f57600080fd5b5050600254600154600480546040805160e160020a634c6afee502815290517f2a09ce13bce33098330e14255362a85531ea3d8fe4fbd81125f847af036074529594600160a060020a03620100009091048116949316926398d5fdca928082019260209290918290030181600087803b15801561179b57600080fd5b505af11580156117af573d6000803e3d6000fd5b505050506040513d60208110156117c557600080fd5b505160408051938452600160a060020a0390921660208401528282015260608201849052519081900360800190a16117fb611eb3565b50505050505050505050505050565b6000806000806000600460009054906101000a9004600160a060020a0316600160a060020a0316633b3ae6706040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561186557600080fd5b505af1158015611879573d6000803e3d6000fd5b505050506040513d602081101561188f57600080fd5b5051604080516c010000000000000000000000004102602082810191909152825180830360140181526034909201928390528151939650329342933a9389938693439344938693909282918401908083835b602083106119005780518252601f1990920191602091820191016118e1565b5181516020939093036101000a600019018019909116921691909117905260405192018290039091209250505081151561193657fe5b046040516020018089600160a060020a0316600160a060020a03166c010000000000000000000000000281526014018881526020018781526020018660001916600019168152602001858152602001848152602001838152602001828152602001985050505050505050506040516020818303038152906040526040518082805190602001908083835b602083106119df5780518252601f1990920191602091820191016119c0565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120955088925085915050811515611a1a57fe5b06915032423a858542434442416040516020018082600160a060020a0316600160a060020a03166c010000000000000000000000000281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310611a965780518252601f199092019160209182019101611a77565b5181516020939093036101000a6000190180199091169216919091179052604051920182900390912092505050811515611acc57fe5b04604051602001808a600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401898152602001888152602001876000191660001916815260200186815260200185815260200184815260200183815260200182815260200199505050505050505050506040516020818303038152906040526040518082805190602001908083835b60208310611b7c5780518252601f199092019160209182019101611b5d565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120955088925085915050811515611bb757fe5b929792069550909350505050565b6004546000908190600160a060020a03161515611be157611eae565b6000600460009054906101000a9004600160a060020a0316600160a060020a0316636c03cd496040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611c3657600080fd5b505af1158015611c4a573d6000803e3d6000fd5b505050506040513d6020811015611c6057600080fd5b505111611c6c57611eae565b60048054604080517fba9d407a00000000000000000000000000000000000000000000000000000000815292830186905251600160a060020a039091169163ba9d407a9160248083019260209291908290030181600087803b158015611cd157600080fd5b505af1158015611ce5573d6000803e3d6000fd5b505050506040513d6020811015611cfb57600080fd5b50519150600160a060020a03821615611eae576064600460009054906101000a9004600160a060020a0316600160a060020a0316636c03cd496040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d6357600080fd5b505af1158015611d77573d6000803e3d6000fd5b505050506040513d6020811015611d8d57600080fd5b5051600480546040805160e160020a634c6afee50281529051600160a060020a03909216926398d5fdca9282820192602092908290030181600087803b158015611dd657600080fd5b505af1158015611dea573d6000803e3d6000fd5b505050506040513d6020811015611e0057600080fd5b505102811515611e0c57fe5b600554604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0387811660048301529490930460248401819052905190945092169163a9059cbb916044808201926020929091908290030181600087803b158015611e8157600080fd5b505af1158015611e95573d6000803e3d6000fd5b505050506040513d6020811015611eab57600080fd5b50505b505050565b60028054600190810190915560408051606081018252600080825260208201849052910152805475ffffffffffffffffffffffffffffffffffffffff00001961ffff1990911661010017169055600354600160a060020a031615801590611f2b5750600454600354600160a060020a03908116911614155b15611f60576003546004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b56006f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696fa165627a7a72305820f3ad4991fbb46f0b7b19ba85d5e5d7761afa753cbf368650cef6dc2c0cbe35860029000000000000000000000000e04c5271ee336cc7b499a2765a752f3f99e65fee0000000000000000000000007a6ebe5cc20da8655640fc1112522367569f2114
Deployed Bytecode
0x6080604052600436106100a05763ffffffff60e060020a60003504166303d07a9f81146100ad57806309d8da2e146100ef5780631746bd1b146101185780632d90ae941461017d57806346a00af9146101925780636cc919c8146101c357806383716616146101e45780638da5cb5b146101f95780638f4ffcb11461020e578063a1f910571461027e578063f2fde38b14610298578063fc0c546a146102b9575b34156100ab57600080fd5b005b3480156100b957600080fd5b506100c26102ce565b6040805160ff9485168152929093166020830152600160a060020a03168183015290519081900360600190f35b3480156100fb57600080fd5b506101046102f2565b604080519115158252519081900360200190f35b34801561012457600080fd5b5061012d610313565b60408051998a5260208a01989098528888019690965260608801949094526080870192909252600160a060020a031660a086015260c085015260e084015261010083015251908190036101200190f35b34801561018957600080fd5b506100ab61066b565b34801561019e57600080fd5b506101a76107f2565b60408051600160a060020a039092168252519081900360200190f35b3480156101cf57600080fd5b506100ab600160a060020a0360043516610801565b3480156101f057600080fd5b506101a761088d565b34801561020557600080fd5b506101a761089c565b34801561021a57600080fd5b50604080516020601f6064356004818101359283018490048402850184019095528184526100ab94600160a060020a038135811695602480359660443590931695369560849492019181908401838280828437509497506108ab9650505050505050565b34801561028a57600080fd5b506100ab6004351515610be8565b3480156102a457600080fd5b506100ab600160a060020a0360043516610d24565b3480156102c557600080fd5b506101a7610dbc565b60015460ff80821691610100810490911690620100009004600160a060020a031683565b60005474010000000000000000000000000000000000000000900460ff1681565b600080600080600080600080600080600080600080600080600560009054906101000a9004600160a060020a0316600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561039b57600080fd5b505af11580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b505160015460048054604080517f472b6efa000000000000000000000000000000000000000000000000000000008152610100850460ff9081169482018590529151959c509084169a50919850600160a060020a0362010000909304831697509091169163472b6efa916024808201926020929091908290030181600087803b15801561045157600080fd5b505af1158015610465573d6000803e3d6000fd5b505050506040513d602081101561047b57600080fd5b505160048054600154604080517f235b1eb700000000000000000000000000000000000000000000000000000000815261010090920460ff16938201939093529151929550600160a060020a03169163235b1eb7916024808201926020929091908290030181600087803b1580156104f257600080fd5b505af1158015610506573d6000803e3d6000fd5b505050506040513d602081101561051c57600080fd5b505160048054604080517f235b1eb700000000000000000000000000000000000000000000000000000000815260019381019390935251929450600160a060020a03169163235b1eb7916024808201926020929091908290030181600087803b15801561058857600080fd5b505af115801561059c573d6000803e3d6000fd5b505050506040513d60208110156105b257600080fd5b5051600254600480546040805160e160020a634c6afee502815290519495509293600160a060020a03909116926398d5fdca92818101926020929091908290030181600087803b15801561060557600080fd5b505af1158015610619573d6000803e3d6000fd5b505050506040513d602081101561062f57600080fd5b8101908080519060200190929190505050888888888888889f509f509f509f509f509f509f509f509f5050505050505050909192939495969798565b60008054600160a060020a031633146106c9576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b33803b6000811115610725576040805160e560020a62461bcd02815260206004820152601c60248201527f61646472657373206d757374206973206e6f7420636f6e747261637400000000604482015290519081900360640190fd5b33321461077c576040805160e560020a62461bcd02815260206004820181905260248201527f6d73672e73656e646572206d757374206571756970742074782e6f726967696e604482015290519081900360640190fd5b6000805460405130319550600160a060020a03909116916108fc861502918691818181858888f193505050501580156107b9573d6000803e3d6000fd5b506040805184815290517f9ef5e075ae776f59b8ebed95037f51c8d4706c8cbb975a89d3a6c95c92c87a229181900360200190a1505050565b600454600160a060020a031681565b600054600160a060020a0316331461085e576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600354600160a060020a031681565b600054600160a060020a031681565b600554829060609081906000908190600160a060020a0380871691161461091c576040805160e560020a62461bcd02815260206004820152600e60248201527f746f6b656e206973206572726f72000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038916321461097c576040805160e560020a62461bcd02815260206004820152601f60248201527f746f6b656e2066726f6d206d75737420657175616c2074782e6f726967696e00604482015290519081900360640190fd5b61098589610dcb565b15156109db576040805160e560020a62461bcd02815260206004820152601b60248201527f746f6b656e2066726f6d20206973206e6f7420436f6e74726163740000000000604482015290519081900360640190fd5b600480546040805160e160020a634c6afee50281529051600160a060020a03909216926398d5fdca9282820192602092908290030181600087803b158015610a2257600080fd5b505af1158015610a36573d6000803e3d6000fd5b505050506040513d6020811015610a4c57600080fd5b50518814610aa4576040805160e560020a62461bcd02815260206004820152600e60248201527f76616c7565206973206572726f72000000000000000000000000000000000000604482015290519081900360640190fd5b604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038b81166004830152306024830152604482018b90529151918716916323b872dd916064808201926020929091908290030181600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b505050506040513d6020811015610b4057600080fd5b50511515610b98576040805160e560020a62461bcd02815260206004820152601660248201527f7472616e7366657246726f6d20686173206572726f7200000000000000000000604482015290519081900360640190fd5b610ba88660006001895103610e43565b9350610bba8660018851036001610e43565b9250610bc583610ef8565b9150610bd084610f47565b9050610bdd898383610f67565b505050505050505050565b600054600160a060020a03163314610c45576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b60005460ff740100000000000000000000000000000000000000009091041615158115151415610ce4576040805160e560020a62461bcd028152602060048201526024808201527f207570646174654c6f636b206e657720737461747573203d3d206f6c6420737460448201527f6174757300000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60008054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600054600160a060020a03163314610d81576040805160e560020a62461bcd0281526020600482015260216024820152600080516020611f63833981519152604482015260f960020a603702606482015290519081900360840190fd5b600160a060020a03811615610db9576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600554600160a060020a031681565b6000813b81811115610e27576040805160e560020a62461bcd02815260206004820152601c60248201527f61646472657373206d757374206973206e6f7420636f6e747261637400000000604482015290519081900360640190fd5b60008111610e385760019150610e3d565b600091505b50919050565b6060806000836040519080825280601f01601f191660200182016040528015610e76578160200160208202803883390190505b509150600090505b83811015610eef5785858201815181101515610e9657fe5b90602001015160f860020a900460f860020a028282815181101515610eb757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101610e7e565b50949350505050565b600080805b8351811015610f40578060010184510360080260020a8482815181101515610f2157fe5b016020015160f860020a90819004810204029190910190600101610efd565b5092915050565b6000815160001415610f5b57506000610f62565b5060208101515b919050565b6000805481908190819081908190819081908190819074010000000000000000000000000000000000000000900460ff1615610fed576040805160e560020a62461bcd02815260206004820152601f60248201527f636f6e74726163742063757272656e74206973206c6f636b2073746174757300604482015290519081900360640190fd5b60048054600154604080517f472b6efa00000000000000000000000000000000000000000000000000000000815261010090920460ff16938201939093529151600160a060020a039091169163472b6efa9160248083019260209291908290030181600087803b15801561106057600080fd5b505af1158015611074573d6000803e3d6000fd5b505050506040513d602081101561108a57600080fd5b50519950611098606461180a565b90995097506110a68b611bc5565b600154620100009004600160a060020a03169650861515611166576060604051908101604052808d60ff168152602001600060ff1681526020018e600160a060020a0316815250600160008201518160000160006101000a81548160ff021916908360ff16021790555060208201518160000160016101000a81548160ff021916908360ff16021790555060408201518160000160026101000a815481600160a060020a030219169083600160a060020a03160217905550905050611232565b888a1015611213576060604051908101604052808d60ff168152602001600160ff1681526020018e600160a060020a0316815250600160008201518160000160006101000a81548160ff021916908360ff16021790555060208201518160000160016101000a81548160ff021916908360ff16021790555060408201518160000160026101000a815481600160a060020a030219169083600160a060020a03160217905550905050611232565b6001805460ff610100808304821684019091160261ff00199091161790555b600160000160029054906101000a9004600160a060020a0316600160a060020a03168d600160a060020a0316149550600460009054906101000a9004600160a060020a0316600160a060020a031663235b1eb7600160000160019054906101000a900460ff166040518263ffffffff1660e060020a028152600401808260ff1660ff168152602001915050602060405180830381600087803b1580156112d757600080fd5b505af11580156112eb573d6000803e3d6000fd5b505050506040513d602081101561130157600080fd5b810190808051906020019092919050505094507f7a43da65fff256883071732f42f576322fd6a665211a4001063bc7b9424cb566600160000160029054906101000a9004600160a060020a03168e8d8d898e8e8d600460009054906101000a9004600160a060020a0316600160a060020a03166398d5fdca6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156113a857600080fd5b505af11580156113bc573d6000803e3d6000fd5b505050506040513d60208110156113d257600080fd5b505160408051600160a060020a039a8b168152989099166020890152878901969096526060870194909452608086019290925260a085015260c0840152151560e08301526101008201529051908190036101200190a1600160a060020a0387161580159061143f57508488105b156117fb57600154620100009004600160a060020a031615156114ac576040805160e560020a62461bcd02815260206004820152601360248201527f57696e6e65722e61646472206973206e756c6c00000000000000000000000000604482015290519081900360640190fd5b60048054604080517fb42c6b4f0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169263b42c6b4f9282820192602092908290030181600087803b15801561150957600080fd5b505af115801561151d573d6000803e3d6000fd5b505050506040513d602081101561153357600080fd5b5051600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160ff9093169650600160a060020a03909116916370a08231916024808201926020929091908290030181600087803b1580156115a257600080fd5b505af11580156115b6573d6000803e3d6000fd5b505050506040513d60208110156115cc57600080fd5b505160055460008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015260648a870204602482018190529151959850909650868803955092169263a9059cbb926044808201936020939283900390910190829087803b15801561165157600080fd5b505af1158015611665573d6000803e3d6000fd5b505050506040513d602081101561167b57600080fd5b5050600554600154604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815262010000909204600160a060020a03908116600484015260248301859052905192169163a9059cbb916044808201926020929091908290030181600087803b1580156116f557600080fd5b505af1158015611709573d6000803e3d6000fd5b505050506040513d602081101561171f57600080fd5b5050600254600154600480546040805160e160020a634c6afee502815290517f2a09ce13bce33098330e14255362a85531ea3d8fe4fbd81125f847af036074529594600160a060020a03620100009091048116949316926398d5fdca928082019260209290918290030181600087803b15801561179b57600080fd5b505af11580156117af573d6000803e3d6000fd5b505050506040513d60208110156117c557600080fd5b505160408051938452600160a060020a0390921660208401528282015260608201849052519081900360800190a16117fb611eb3565b50505050505050505050505050565b6000806000806000600460009054906101000a9004600160a060020a0316600160a060020a0316633b3ae6706040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561186557600080fd5b505af1158015611879573d6000803e3d6000fd5b505050506040513d602081101561188f57600080fd5b5051604080516c010000000000000000000000004102602082810191909152825180830360140181526034909201928390528151939650329342933a9389938693439344938693909282918401908083835b602083106119005780518252601f1990920191602091820191016118e1565b5181516020939093036101000a600019018019909116921691909117905260405192018290039091209250505081151561193657fe5b046040516020018089600160a060020a0316600160a060020a03166c010000000000000000000000000281526014018881526020018781526020018660001916600019168152602001858152602001848152602001838152602001828152602001985050505050505050506040516020818303038152906040526040518082805190602001908083835b602083106119df5780518252601f1990920191602091820191016119c0565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120955088925085915050811515611a1a57fe5b06915032423a858542434442416040516020018082600160a060020a0316600160a060020a03166c010000000000000000000000000281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310611a965780518252601f199092019160209182019101611a77565b5181516020939093036101000a6000190180199091169216919091179052604051920182900390912092505050811515611acc57fe5b04604051602001808a600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401898152602001888152602001876000191660001916815260200186815260200185815260200184815260200183815260200182815260200199505050505050505050506040516020818303038152906040526040518082805190602001908083835b60208310611b7c5780518252601f199092019160209182019101611b5d565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120955088925085915050811515611bb757fe5b929792069550909350505050565b6004546000908190600160a060020a03161515611be157611eae565b6000600460009054906101000a9004600160a060020a0316600160a060020a0316636c03cd496040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611c3657600080fd5b505af1158015611c4a573d6000803e3d6000fd5b505050506040513d6020811015611c6057600080fd5b505111611c6c57611eae565b60048054604080517fba9d407a00000000000000000000000000000000000000000000000000000000815292830186905251600160a060020a039091169163ba9d407a9160248083019260209291908290030181600087803b158015611cd157600080fd5b505af1158015611ce5573d6000803e3d6000fd5b505050506040513d6020811015611cfb57600080fd5b50519150600160a060020a03821615611eae576064600460009054906101000a9004600160a060020a0316600160a060020a0316636c03cd496040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d6357600080fd5b505af1158015611d77573d6000803e3d6000fd5b505050506040513d6020811015611d8d57600080fd5b5051600480546040805160e160020a634c6afee50281529051600160a060020a03909216926398d5fdca9282820192602092908290030181600087803b158015611dd657600080fd5b505af1158015611dea573d6000803e3d6000fd5b505050506040513d6020811015611e0057600080fd5b505102811515611e0c57fe5b600554604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0387811660048301529490930460248401819052905190945092169163a9059cbb916044808201926020929091908290030181600087803b158015611e8157600080fd5b505af1158015611e95573d6000803e3d6000fd5b505050506040513d6020811015611eab57600080fd5b50505b505050565b60028054600190810190915560408051606081018252600080825260208201849052910152805475ffffffffffffffffffffffffffffffffffffffff00001961ffff1990911661010017169055600354600160a060020a031615801590611f2b5750600454600354600160a060020a03908116911614155b15611f60576003546004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b56006f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696fa165627a7a72305820f3ad4991fbb46f0b7b19ba85d5e5d7761afa753cbf368650cef6dc2c0cbe35860029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e04c5271ee336cc7b499a2765a752f3f99e65fee0000000000000000000000007a6ebe5cc20da8655640fc1112522367569f2114
-----Decoded View---------------
Arg [0] : config (address): 0xE04C5271ee336cC7B499a2765a752F3F99e65fee
Arg [1] : tokenAddr (address): 0x7a6eBE5Cc20DA8655640fC1112522367569F2114
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e04c5271ee336cc7b499a2765a752f3f99e65fee
Arg [1] : 0000000000000000000000007a6ebe5cc20da8655640fc1112522367569f2114
Swarm Source
bzzr://f3ad4991fbb46f0b7b19ba85d5e5d7761afa753cbf368650cef6dc2c0cbe3586
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.