More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 518 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim | 9205832 | 1874 days ago | IN | 0 ETH | 0.00029204 | ||||
Claim | 8699007 | 1961 days ago | IN | 0 ETH | 0.00020736 | ||||
Claim | 8698939 | 1961 days ago | IN | 0 ETH | 0.00020736 | ||||
Claim | 8457150 | 1999 days ago | IN | 0 ETH | 0.00038405 | ||||
Claim | 8207843 | 2038 days ago | IN | 0 ETH | 0.00011348 | ||||
Claim | 8207841 | 2038 days ago | IN | 0 ETH | 0.00184528 | ||||
Claim | 8200790 | 2039 days ago | IN | 0 ETH | 0.00192028 | ||||
Claim | 8060890 | 2061 days ago | IN | 0 ETH | 0.00184528 | ||||
Finalize | 8055994 | 2061 days ago | IN | 0 ETH | 0.0000218 | ||||
Claim | 8040534 | 2064 days ago | IN | 0 ETH | 0.00184528 | ||||
Claim | 8021068 | 2067 days ago | IN | 0 ETH | 0.00184528 | ||||
Claim | 8017570 | 2067 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 8011739 | 2068 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 8011625 | 2068 days ago | IN | 0 ETH | 0.00036905 | ||||
Claim | 7984316 | 2072 days ago | IN | 0 ETH | 0.00004147 | ||||
Claim | 7973098 | 2074 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 7971113 | 2075 days ago | IN | 0 ETH | 0.00028236 | ||||
Claim | 7966310 | 2075 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 7960125 | 2076 days ago | IN | 0 ETH | 0.00038405 | ||||
Claim | 7956225 | 2077 days ago | IN | 0 ETH | 0.00033905 | ||||
Claim | 7953595 | 2077 days ago | IN | 0 ETH | 0.00038405 | ||||
Claim | 7948229 | 2078 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 7941033 | 2079 days ago | IN | 0 ETH | 0.00035405 | ||||
Claim | 7940926 | 2079 days ago | IN | 0 ETH | 0.00002219 | ||||
Claim | 7934745 | 2080 days ago | IN | 0 ETH | 0.00040596 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
This contract contains unverified libraries: Helper
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Source Code Verified (Exact Match)
Contract Name:
Reward
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-03-21 */ pragma solidity ^0.4.24; /* * gibmireinbier - Full Stack Blockchain Developer * 0xA4a799086aE18D7db6C4b57f496B081b44888888 * [email protected] */ contract Reward { using SafeMath for uint256; event NewReward(address indexed _lucker, uint256[5] _info); modifier onlyOwner() { require(msg.sender == address(lotteryContract), "This is just log for lottery contract"); _; } modifier claimable() { require( rest > 1 && block.number > lastBlock && lastRoundClaim[msg.sender] < lastRoundId, "out of stock in this round, block or already claimed"); _; } /* enum RewardType { Minor, 0 Major, 1 Grand, 2 Bounty 3 SBounty 4 // smal bounty } */ struct Rewards { address lucker; uint256 time; uint256 rId; uint256 value; uint256 winNumber; uint256 rewardType; } Rewards[] public rewardList; // reward array by address mapping( address => uint256[]) public pReward; // reward sum by address mapping( address => uint256) public pRewardedSum; // reward sum by address, round mapping( address => mapping(uint256 => uint256)) public pRewardedSumPerRound; // reward sum by round mapping( uint256 => uint256) public rRewardedSum; // reward sum all round, all addresses uint256 public rewardedSum; // last claimed round by address to check timeout // timeout balance will be pushed to dividends mapping(address => uint256) lastRoundClaim; LotteryInterface lotteryContract; ////////////////////////////////////////////////////////// // rest times for sBounty, small bountys free for all (round-players) after each round uint256 public rest = 0; // last block that sBounty claimed, to prevent 2 time claimed in same block uint256 public lastBlock = 0; // sBounty will be saved in logs of last round // new round will be started after sBountys pushed uint256 public lastRoundId; constructor (address _devTeam) public { // register address in network DevTeamInterface(_devTeam).setRewardAddress(address(this)); } // _contract = [f2mAddress, bankAddress, citizenAddress, lotteryAddress, rewardAddress, whitelistAddress]; function joinNetwork(address[6] _contract) public { require((address(lotteryContract) == 0x0),"already setup"); lotteryContract = LotteryInterface(_contract[3]); } // sBounty program // rules : // 1. accept only calls from lottery contract // 2. one claim per block // 3. one claim per address (reset each round) function getSBounty() public view returns(uint256, uint256, uint256) { uint256 sBountyAmount = rest < 2 ? 0 : address(this).balance / (rest-1); return (rest, sBountyAmount, lastRoundId); } // pushed from lottery contract only function resetCounter(uint256 _curRoundId) public onlyOwner() { rest = 8; lastBlock = block.number; lastRoundId = _curRoundId; } function claim() public claimable() { address _sender = msg.sender; lastBlock = block.number; lastRoundClaim[_sender] = lastRoundId; rest = rest - 1; uint256 claimAmount = lotteryContract.sBountyClaim(_sender); mintRewardCore( _sender, lastRoundId, 0, 0, 0, claimAmount, 4 ); } // rewards sealed by lottery contract function mintReward( address _lucker, uint256 _curRoundId, uint256 _winNr, uint256 _tNumberFrom, uint256 _tNumberTo, uint256 _value, uint256 _rewardType) public onlyOwner() { mintRewardCore( _lucker, _curRoundId, _winNr, _tNumberFrom, _tNumberTo, _value, _rewardType); } // reward logs generator function mintRewardCore( address _lucker, uint256 _curRoundId, uint256 _winNr, uint256 _tNumberFrom, uint256 _tNumberTo, uint256 _value, uint256 _rewardType) private { Rewards memory _reward; _reward.lucker = _lucker; _reward.time = block.timestamp; _reward.rId = _curRoundId; _reward.value = _value; // get winning number if rewardType is not bounty or sBounty // seed = rewardList.length to be sure that seed changed after // every reward minting if (_winNr > 0) { _reward.winNumber = _winNr; } else if (_rewardType < 3) _reward.winNumber = getWinNumberBySlot(_tNumberFrom, _tNumberTo); _reward.rewardType = _rewardType; rewardList.push(_reward); pReward[_lucker].push(rewardList.length - 1); // reward sum logs pRewardedSum[_lucker] += _value; rRewardedSum[_curRoundId] += _value; rewardedSum += _value; pRewardedSumPerRound[_lucker][_curRoundId] += _value; emit NewReward(_reward.lucker, [_reward.time, _reward.rId, _reward.value, _reward.winNumber, uint256(_reward.rewardType)]); } function getWinNumberBySlot(uint256 _tNumberFrom, uint256 _tNumberTo) public view returns(uint256) { //uint256 _seed = uint256(keccak256(rewardList.length)); uint256 _seed = rewardList.length * block.number + block.timestamp; // get random number in range (1, _to - _from + 1) uint256 _winNr = Helper.getRandom(_seed, _tNumberTo + 1 - _tNumberFrom); return _tNumberFrom + _winNr - 1; } function getPRewardLength(address _sender) public view returns(uint256) { return pReward[_sender].length; } function getRewardListLength() public view returns(uint256) { return rewardList.length; } function getPRewardId(address _sender, uint256 i) public view returns(uint256) { return pReward[_sender][i]; } function getPRewardedSumByRound(uint256 _rId, address _buyer) public view returns(uint256) { return pRewardedSumPerRound[_buyer][_rId]; } function getRewardedSumByRound(uint256 _rId) public view returns(uint256) { return rRewardedSum[_rId]; } function getRewardInfo(uint256 _id) public view returns( address, uint256, uint256, uint256, uint256, uint256 ) { Rewards memory _reward = rewardList[_id]; return ( _reward.lucker, _reward.winNumber, _reward.time, _reward.rId, _reward.value, _reward.rewardType ); } } library Helper { using SafeMath for uint256; uint256 constant public ZOOM = 1000; uint256 constant public SDIVIDER = 3450000; uint256 constant public PDIVIDER = 3450000; uint256 constant public RDIVIDER = 1580000; // Starting LS price (SLP) uint256 constant public SLP = 0.002 ether; // Starting Added Time (SAT) uint256 constant public SAT = 30; // seconds // Price normalization (PN) uint256 constant public PN = 777; // EarlyIncome base uint256 constant public PBASE = 13; uint256 constant public PMULTI = 26; uint256 constant public LBase = 1; uint256 constant public ONE_HOUR = 3600; uint256 constant public ONE_DAY = 24 * ONE_HOUR; //uint256 constant public TIMEOUT0 = 3 * ONE_HOUR; uint256 constant public TIMEOUT1 = 12 * ONE_HOUR; uint256 constant public TIMEOUT2 = 7 * ONE_DAY; function bytes32ToString (bytes32 data) public pure returns (string) { bytes memory bytesString = new bytes(32); for (uint j=0; j<32; j++) { byte char = byte(bytes32(uint(data) * 2 ** (8 * j))); if (char != 0) { bytesString[j] = char; } } return string(bytesString); } function uintToBytes32(uint256 n) public pure returns (bytes32) { return bytes32(n); } function bytes32ToUint(bytes32 n) public pure returns (uint256) { return uint256(n); } function stringToBytes32(string memory source) public pure returns (bytes32 result) { bytes memory tempEmptyStringTest = bytes(source); if (tempEmptyStringTest.length == 0) { return 0x0; } assembly { result := mload(add(source, 32)) } } function stringToUint(string memory source) public pure returns (uint256) { return bytes32ToUint(stringToBytes32(source)); } function uintToString(uint256 _uint) public pure returns (string) { return bytes32ToString(uintToBytes32(_uint)); } /* function getSlice(uint256 begin, uint256 end, string text) public pure returns (string) { bytes memory a = new bytes(end-begin+1); for(uint i = 0; i <= end - begin; i++){ a[i] = bytes(text)[i + begin - 1]; } return string(a); } */ function validUsername(string _username) public pure returns(bool) { uint256 len = bytes(_username).length; // Im Raum [4, 18] if ((len < 4) || (len > 18)) return false; // Letzte Char != ' ' if (bytes(_username)[len-1] == 32) return false; // Erste Char != '0' return uint256(bytes(_username)[0]) != 48; } // Lottery Helper // Seconds added per LT = SAT - ((Current no. of LT + 1) / SDIVIDER)^6 function getAddedTime(uint256 _rTicketSum, uint256 _tAmount) public pure returns (uint256) { //Luppe = 10000 = 10^4 uint256 base = (_rTicketSum + 1).mul(10000) / SDIVIDER; uint256 expo = base; expo = expo.mul(expo).mul(expo); // ^3 expo = expo.mul(expo); // ^6 // div 10000^6 expo = expo / (10**24); if (expo > SAT) return 0; return (SAT - expo).mul(_tAmount); } function getNewEndTime(uint256 toAddTime, uint256 slideEndTime, uint256 fixedEndTime) public view returns(uint256) { uint256 _slideEndTime = (slideEndTime).add(toAddTime); uint256 timeout = _slideEndTime.sub(block.timestamp); // timeout capped at TIMEOUT1 if (timeout > TIMEOUT1) timeout = TIMEOUT1; _slideEndTime = (block.timestamp).add(timeout); // Capped at fixedEndTime if (_slideEndTime > fixedEndTime) return fixedEndTime; return _slideEndTime; } // get random in range [1, _range] with _seed function getRandom(uint256 _seed, uint256 _range) public pure returns(uint256) { if (_range == 0) return _seed; return (_seed % _range) + 1; } function getEarlyIncomeMul(uint256 _ticketSum) public pure returns(uint256) { // Early-Multiplier = 1 + PBASE / (1 + PMULTI * ((Current No. of LT)/RDIVIDER)^6) uint256 base = _ticketSum * ZOOM / RDIVIDER; uint256 expo = base.mul(base).mul(base); //^3 expo = expo.mul(expo) / (ZOOM**6); //^6 return (1 + PBASE / (1 + expo.mul(PMULTI))); } // get reveiced Tickets, based on current round ticketSum function getTAmount(uint256 _ethAmount, uint256 _ticketSum) public pure returns(uint256) { uint256 _tPrice = getTPrice(_ticketSum); return _ethAmount.div(_tPrice); } function isGoldenMin( uint256 _slideEndTime ) public view returns(bool) { uint256 _restTime1 = _slideEndTime.sub(block.timestamp); // golden min. exist if timer1 < 6 hours if (_restTime1 > 6 hours) return false; uint256 _min = (block.timestamp / 60) % 60; return _min == 8; } // percent ZOOM = 100, ie. mul = 2.05 return 205 // Lotto-Multiplier = ((grandPot / initGrandPot)^2) * x * y * z // x = (TIMEOUT1 - timer1 - 1) / 4 + 1 => (unit = hour, max = 11/4 + 1 = 3.75) // y = (TIMEOUT2 - timer2 - 1) / 3 + 1) => (unit = day max = 3) // z = isGoldenMin ? 4 : 1 function getTMul( uint256 _initGrandPot, uint256 _grandPot, uint256 _slideEndTime, uint256 _fixedEndTime ) public view returns(uint256) { uint256 _pZoom = 100; uint256 base = _initGrandPot != 0 ?_pZoom.mul(_grandPot) / _initGrandPot : _pZoom; uint256 expo = base.mul(base); uint256 _timer1 = _slideEndTime.sub(block.timestamp) / 1 hours; // 0.. 11 uint256 _timer2 = _fixedEndTime.sub(block.timestamp) / 1 days; // 0 .. 6 uint256 x = (_pZoom * (11 - _timer1) / 4) + _pZoom; // [1, 3.75] uint256 y = (_pZoom * (6 - _timer2) / 3) + _pZoom; // [1, 3] uint256 z = isGoldenMin(_slideEndTime) ? 4 : 1; uint256 res = expo.mul(x).mul(y).mul(z) / (_pZoom ** 3); // ~ [1, 90] return res; } // get ticket price, based on current round ticketSum //unit in ETH, no need / zoom^6 function getTPrice(uint256 _ticketSum) public pure returns(uint256) { uint256 base = (_ticketSum + 1).mul(ZOOM) / PDIVIDER; uint256 expo = base; expo = expo.mul(expo).mul(expo); // ^3 expo = expo.mul(expo); // ^6 uint256 tPrice = SLP + expo / PN; return tPrice; } // used to draw grandpot results // weightRange = roundWeight * grandpot / (grandpot - initGrandPot) // grandPot = initGrandPot + round investedSum(for grandPot) function getWeightRange(uint256 initGrandPot) public pure returns(uint256) { uint256 avgMul = 30; return ((initGrandPot * 2 * 100 / 68) * avgMul / SLP) + 1000; } // dynamic rate _RATE = n // major rate = 1/n with _RATE = 1000 999 ... 1 // minor rate = 1/n with _RATE = 500 499 ... 1 // loop = _ethAmount / _MIN // lose rate = ((n- 1) / n) * ((n- 2) / (n - 1)) * ... * ((n- k) / (n - k + 1)) = (n - k) / n function isJackpot( uint256 _seed, uint256 _RATE, uint256 _MIN, uint256 _ethAmount ) public pure returns(bool) { // _RATE >= 2 uint256 k = _ethAmount / _MIN; if (k == 0) return false; // LOSE RATE MIN 50%, WIN RATE MAX 50% uint256 _loseCap = _RATE / 2; // IF _RATE - k > _loseCap if (_RATE > k + _loseCap) _loseCap = _RATE - k; bool _lose = (_seed % _RATE) < _loseCap; return !_lose; } } interface DevTeamInterface { function setF2mAddress(address _address) public; function setLotteryAddress(address _address) public; function setCitizenAddress(address _address) public; function setBankAddress(address _address) public; function setRewardAddress(address _address) public; function setWhitelistAddress(address _address) public; function setupNetwork() public; } interface LotteryInterface { function joinNetwork(address[6] _contract) public; // call one time function activeFirstRound() public; // Core Functions function pushToPot() public payable; function finalizeable() public view returns(bool); // bounty function finalize() public; function buy(string _sSalt) public payable; function buyFor(string _sSalt, address _sender) public payable; //function withdraw() public; function withdrawFor(address _sender) public returns(uint256); function getRewardBalance(address _buyer) public view returns(uint256); function getTotalPot() public view returns(uint256); // EarlyIncome function getEarlyIncomeByAddress(address _buyer) public view returns(uint256); // included claimed amount function getCurEarlyIncomeByAddress(address _buyer) public view returns(uint256); function getCurRoundId() public view returns(uint256); // set endRound, prepare to upgrade new version function setLastRound(uint256 _lastRoundId) public; function getPInvestedSumByRound(uint256 _rId, address _buyer) public view returns(uint256); function cashoutable(address _address) public view returns(bool); function isLastRound() public view returns(bool); function sBountyClaim(address _sBountyHunter) public returns(uint256); } /** * @title SafeMath * @dev Math operations with safety checks that revert on error */ library SafeMath { int256 constant private INT256_MIN = -2**255; /** * @dev Multiplies two unsigned integers, reverts on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } /** * @dev Multiplies two signed integers, reverts on overflow. */ function mul(int256 a, int256 b) internal pure returns (int256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } require(!(a == -1 && b == INT256_MIN)); // This is the only case of overflow not detected by the check below int256 c = a * b; require(c / a == b); return c; } /** * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Integer division of two signed integers truncating the quotient, reverts on division by zero. */ function div(int256 a, int256 b) internal pure returns (int256) { require(b != 0); // Solidity only automatically asserts when dividing by 0 require(!(b == -1 && a == INT256_MIN)); // This is the only case of overflow int256 c = a / b; return c; } /** * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } /** * @dev Subtracts two signed integers, reverts on overflow. */ function sub(int256 a, int256 b) internal pure returns (int256) { int256 c = a - b; require((b >= 0 && c <= a) || (b < 0 && c > a)); return c; } /** * @dev Adds two unsigned integers, reverts on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } /** * @dev Adds two signed integers, reverts on overflow. */ function add(int256 a, int256 b) internal pure returns (int256) { int256 c = a + b; require((b >= 0 && c >= a) || (b < 0 && c < a)); return c; } /** * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo), * reverts when dividing by zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"pReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"rewardList","outputs":[{"name":"lucker","type":"address"},{"name":"time","type":"uint256"},{"name":"rId","type":"uint256"},{"name":"value","type":"uint256"},{"name":"winNumber","type":"uint256"},{"name":"rewardType","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_lucker","type":"address"},{"name":"_curRoundId","type":"uint256"},{"name":"_winNr","type":"uint256"},{"name":"_tNumberFrom","type":"uint256"},{"name":"_tNumberTo","type":"uint256"},{"name":"_value","type":"uint256"},{"name":"_rewardType","type":"uint256"}],"name":"mintReward","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_id","type":"uint256"}],"name":"getRewardInfo","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"pRewardedSumPerRound","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contract","type":"address[6]"}],"name":"joinNetwork","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastRoundId","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"pRewardedSum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claim","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRewardListLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"rRewardedSum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_rId","type":"uint256"}],"name":"getRewardedSumByRound","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"i","type":"uint256"}],"name":"getPRewardId","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rewardedSum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSBounty","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_curRoundId","type":"uint256"}],"name":"resetCounter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tNumberFrom","type":"uint256"},{"name":"_tNumberTo","type":"uint256"}],"name":"getWinNumberBySlot","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rest","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_rId","type":"uint256"},{"name":"_buyer","type":"address"}],"name":"getPRewardedSumByRound","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getPRewardLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_devTeam","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_lucker","type":"address"},{"indexed":false,"name":"_info","type":"uint256[5]"}],"name":"NewReward","type":"event"}]
Contract Creation Code
60806040526000600855600060095534801561001a57600080fd5b50604051602080611606833981018060405281019080805190602001909291905050508073ffffffffffffffffffffffffffffffffffffffff16635e00e679306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156100d857600080fd5b505af11580156100ec573d6000803e3d6000fd5b5050505050611506806101006000396000f30060806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630a1871f91461012257806310d666771461018357806318b4e81714610213578063243d38271461029257806327578a5b146103225780633865bf3a14610383578063388ca80f146103d557806347b112f9146104005780634e71d92d146104575780635a87c3801461046e578063664ec0cd14610499578063806b984f146104da578063834be97814610505578063ad6dfe5c14610546578063afcd7dad146105a7578063b1c9cc6c146105d2578063b67797d61461060b578063bfbbfb1d14610638578063c0ea09d714610683578063d6026ac1146106ae578063f2980eb21461070f575b600080fd5b34801561012e57600080fd5b5061016d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610766565b6040518082815260200191505060405180910390f35b34801561018f57600080fd5b506101ae60048036038101908080359060200190929190505050610796565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561021f57600080fd5b50610290600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610801565b005b34801561029e57600080fd5b506102bd60048036038101908080359060200190929190505050610904565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561032e57600080fd5b5061036d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109fc565b6040518082815260200191505060405180910390f35b34801561038f57600080fd5b506103d36004803603810190808060c00190600680602002604051908101604052809291908260066020028082843782019150505050509192919290505050610a21565b005b3480156103e157600080fd5b506103ea610b28565b6040518082815260200191505060405180910390f35b34801561040c57600080fd5b50610441600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b2e565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b5061046c610b46565b005b34801561047a57600080fd5b50610483610db0565b6040518082815260200191505060405180910390f35b3480156104a557600080fd5b506104c460048036038101908080359060200190929190505050610dbc565b6040518082815260200191505060405180910390f35b3480156104e657600080fd5b506104ef610dd4565b6040518082815260200191505060405180910390f35b34801561051157600080fd5b5061053060048036038101908080359060200190929190505050610dda565b6040518082815260200191505060405180910390f35b34801561055257600080fd5b50610591600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610df7565b6040518082815260200191505060405180910390f35b3480156105b357600080fd5b506105bc610e58565b6040518082815260200191505060405180910390f35b3480156105de57600080fd5b506105e7610e5e565b60405180848152602001838152602001828152602001935050505060405180910390f35b34801561061757600080fd5b5061063660048036038101908080359060200190929190505050610eb3565b005b34801561064457600080fd5b5061066d6004803603810190808035906020019092919080359060200190929190505050610fb6565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b5061069861108c565b6040518082815260200191505060405180910390f35b3480156106ba57600080fd5b506106f960048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611092565b6040518082815260200191505060405180910390f35b34801561071b57600080fd5b50610750600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ed565b6040518082815260200191505060405180910390f35b60016020528160005260406000208181548110151561078157fe5b90600052602060002001600091509150505481565b6000818154811015156107a557fe5b90600052602060002090600602016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154908060030154908060040154908060050154905086565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686973206973206a757374206c6f6720666f72206c6f747465727920636f6e81526020017f747261637400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b6108fb87878787878787611139565b50505050505050565b60008060008060008061091561148d565b60008881548110151561092457fe5b906000526020600020906006020160c060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250509050806000015181608001518260200151836040015184606001518560a001519650965096509650965096505091939550919395565b6003602052816000526040600020602052806000526040600020600091509150505481565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f616c72656164792073657475700000000000000000000000000000000000000081525060200191505060405180910390fd5b806003600681101515610ae057fe5b6020020151600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b60026020528060005260406000206000915090505481565b6000806001600854118015610b5c575060095443115b8015610ba85750600a54600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b1515610c42576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260348152602001807f6f7574206f662073746f636b20696e207468697320726f756e642c20626c6f6381526020017f6b206f7220616c726561647920636c61696d656400000000000000000000000081525060400191505060405180910390fd5b33915043600981905550600a54600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160085403600881905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343cdc33e836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610d5b57600080fd5b505af1158015610d6f573d6000803e3d6000fd5b505050506040513d6020811015610d8557600080fd5b81019080805190602001909291905050509050610dac82600a546000806000866004611139565b5050565b60008080549050905090565b60046020528060005260406000206000915090505481565b60095481565b600060046000838152602001908152602001600020549050919050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515610e4557fe5b9060005260206000200154905092915050565b60055481565b600080600080600260085410610e9b576001600854033073ffffffffffffffffffffffffffffffffffffffff1631811515610e9557fe5b04610e9e565b60005b905060085481600a5493509350935050909192565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f9e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686973206973206a757374206c6f6720666f72206c6f747465727920636f6e81526020017f747261637400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600880819055504360098190555080600a8190555050565b600080600042436000805490500201915073a45279318ad6efe0eea57ce014dfa7bf121c2a8163655b08eb838760018801036040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561103f57600080fd5b505af4158015611053573d6000803e3d6000fd5b505050506040513d602081101561106957600080fd5b810190808051906020019092919050505090506001818601039250505092915050565b60085481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b61114161148d565b87816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505042816020018181525050868160400181815250508281606001818152505060008611156111af57858160800181815250506111cd565b60038210156111cc576111c28585610fb6565b8160800181815250505b5b818160a00181815250506000819080600181540180825580915050906001820390600052602060002090600602016000909192909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155505050600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600160008054905003908060018154018082558091505090600182039060005260206000200160009091929091909150555082600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508260046000898152602001908152602001600020600082825401925050819055508260056000828254019250508190555082600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600089815260200190815260200160002060008282540192505081905550806000015173ffffffffffffffffffffffffffffffffffffffff167fcb4641b36158555e26a85489ac44d6a79b32be480fc1a47ff5ef627e6d012d5360a060405190810160405280846020015181526020018460400151815260200184606001518152602001846080015181526020018460a001518152506040518082600560200280838360005b83811015611471578082015181840152602081019050611456565b5050505090500191505060405180910390a25050505050505050565b60c060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a7230582091c7cb4ee1fdc504b58c0a5230c682acad575f63ef271f45844934992a6f641f0029000000000000000000000000888888203c05f29a5e2174d9716af4348c4cee50
Deployed Bytecode
0x60806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630a1871f91461012257806310d666771461018357806318b4e81714610213578063243d38271461029257806327578a5b146103225780633865bf3a14610383578063388ca80f146103d557806347b112f9146104005780634e71d92d146104575780635a87c3801461046e578063664ec0cd14610499578063806b984f146104da578063834be97814610505578063ad6dfe5c14610546578063afcd7dad146105a7578063b1c9cc6c146105d2578063b67797d61461060b578063bfbbfb1d14610638578063c0ea09d714610683578063d6026ac1146106ae578063f2980eb21461070f575b600080fd5b34801561012e57600080fd5b5061016d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610766565b6040518082815260200191505060405180910390f35b34801561018f57600080fd5b506101ae60048036038101908080359060200190929190505050610796565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561021f57600080fd5b50610290600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610801565b005b34801561029e57600080fd5b506102bd60048036038101908080359060200190929190505050610904565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561032e57600080fd5b5061036d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109fc565b6040518082815260200191505060405180910390f35b34801561038f57600080fd5b506103d36004803603810190808060c00190600680602002604051908101604052809291908260066020028082843782019150505050509192919290505050610a21565b005b3480156103e157600080fd5b506103ea610b28565b6040518082815260200191505060405180910390f35b34801561040c57600080fd5b50610441600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b2e565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b5061046c610b46565b005b34801561047a57600080fd5b50610483610db0565b6040518082815260200191505060405180910390f35b3480156104a557600080fd5b506104c460048036038101908080359060200190929190505050610dbc565b6040518082815260200191505060405180910390f35b3480156104e657600080fd5b506104ef610dd4565b6040518082815260200191505060405180910390f35b34801561051157600080fd5b5061053060048036038101908080359060200190929190505050610dda565b6040518082815260200191505060405180910390f35b34801561055257600080fd5b50610591600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610df7565b6040518082815260200191505060405180910390f35b3480156105b357600080fd5b506105bc610e58565b6040518082815260200191505060405180910390f35b3480156105de57600080fd5b506105e7610e5e565b60405180848152602001838152602001828152602001935050505060405180910390f35b34801561061757600080fd5b5061063660048036038101908080359060200190929190505050610eb3565b005b34801561064457600080fd5b5061066d6004803603810190808035906020019092919080359060200190929190505050610fb6565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b5061069861108c565b6040518082815260200191505060405180910390f35b3480156106ba57600080fd5b506106f960048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611092565b6040518082815260200191505060405180910390f35b34801561071b57600080fd5b50610750600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ed565b6040518082815260200191505060405180910390f35b60016020528160005260406000208181548110151561078157fe5b90600052602060002001600091509150505481565b6000818154811015156107a557fe5b90600052602060002090600602016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154908060030154908060040154908060050154905086565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686973206973206a757374206c6f6720666f72206c6f747465727920636f6e81526020017f747261637400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b6108fb87878787878787611139565b50505050505050565b60008060008060008061091561148d565b60008881548110151561092457fe5b906000526020600020906006020160c060405190810160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250509050806000015181608001518260200151836040015184606001518560a001519650965096509650965096505091939550919395565b6003602052816000526040600020602052806000526040600020600091509150505481565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610ad1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f616c72656164792073657475700000000000000000000000000000000000000081525060200191505060405180910390fd5b806003600681101515610ae057fe5b6020020151600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b60026020528060005260406000206000915090505481565b6000806001600854118015610b5c575060095443115b8015610ba85750600a54600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b1515610c42576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260348152602001807f6f7574206f662073746f636b20696e207468697320726f756e642c20626c6f6381526020017f6b206f7220616c726561647920636c61696d656400000000000000000000000081525060400191505060405180910390fd5b33915043600981905550600a54600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160085403600881905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343cdc33e836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610d5b57600080fd5b505af1158015610d6f573d6000803e3d6000fd5b505050506040513d6020811015610d8557600080fd5b81019080805190602001909291905050509050610dac82600a546000806000866004611139565b5050565b60008080549050905090565b60046020528060005260406000206000915090505481565b60095481565b600060046000838152602001908152602001600020549050919050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515610e4557fe5b9060005260206000200154905092915050565b60055481565b600080600080600260085410610e9b576001600854033073ffffffffffffffffffffffffffffffffffffffff1631811515610e9557fe5b04610e9e565b60005b905060085481600a5493509350935050909192565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f9e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686973206973206a757374206c6f6720666f72206c6f747465727920636f6e81526020017f747261637400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600880819055504360098190555080600a8190555050565b600080600042436000805490500201915073a45279318ad6efe0eea57ce014dfa7bf121c2a8163655b08eb838760018801036040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561103f57600080fd5b505af4158015611053573d6000803e3d6000fd5b505050506040513d602081101561106957600080fd5b810190808051906020019092919050505090506001818601039250505092915050565b60085481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b61114161148d565b87816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505042816020018181525050868160400181815250508281606001818152505060008611156111af57858160800181815250506111cd565b60038210156111cc576111c28585610fb6565b8160800181815250505b5b818160a00181815250506000819080600181540180825580915050906001820390600052602060002090600602016000909192909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155505050600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600160008054905003908060018154018082558091505090600182039060005260206000200160009091929091909150555082600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508260046000898152602001908152602001600020600082825401925050819055508260056000828254019250508190555082600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600089815260200190815260200160002060008282540192505081905550806000015173ffffffffffffffffffffffffffffffffffffffff167fcb4641b36158555e26a85489ac44d6a79b32be480fc1a47ff5ef627e6d012d5360a060405190810160405280846020015181526020018460400151815260200184606001518152602001846080015181526020018460a001518152506040518082600560200280838360005b83811015611471578082015181840152602081019050611456565b5050505090500191505060405180910390a25050505050505050565b60c060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a7230582091c7cb4ee1fdc504b58c0a5230c682acad575f63ef271f45844934992a6f641f0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000888888203c05f29a5e2174d9716af4348c4cee50
-----Decoded View---------------
Arg [0] : _devTeam (address): 0x888888203c05F29a5E2174D9716af4348c4ceE50
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000888888203c05f29a5e2174d9716af4348c4cee50
Swarm Source
bzzr://91c7cb4ee1fdc504b58c0a5230c682acad575f63ef271f45844934992a6f641f
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.