Source Code
Overview
ETH Balance
0.0000000016 ETH
Eth Value
Less Than $0.01 (@ $1,858.06/ETH)Latest 11 from a total of 11 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Claim_reward | 7004612 | 2607 days ago | IN | 0 ETH | 0.0000804 | ||||
| Claim_reward | 7000445 | 2608 days ago | IN | 0 ETH | 0.00020101 | ||||
| Claim_reward | 7000421 | 2608 days ago | IN | 0 ETH | 0.0001608 | ||||
| Place Bet | 7000119 | 2608 days ago | IN | 0.036 ETH | 0.00055698 | ||||
| Place Bet | 7000117 | 2608 days ago | IN | 0.036 ETH | 0.00055698 | ||||
| Place Bet | 7000114 | 2608 days ago | IN | 0.5 ETH | 0.00075946 | ||||
| Place Bet | 7000093 | 2608 days ago | IN | 0.01 ETH | 0.00022279 | ||||
| Place Bet | 7000091 | 2608 days ago | IN | 0.01 ETH | 0.00037973 | ||||
| Place Bet | 7000085 | 2608 days ago | IN | 0.026 ETH | 0.00035349 | ||||
| Place Bet | 7000084 | 2608 days ago | IN | 0.026 ETH | 0.00045473 | ||||
| Place Bet | 6999980 | 2608 days ago | IN | 0.5 ETH | 0.00052973 |
Latest 6 internal transactions
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xC8ABbe9b...7847e31B0 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Betting
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-09-01
*/
pragma solidity ^0.4.20;
pragma solidity ^0.4.21;
library SafeMath {
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a * b;
assert(a == 0 || c / a == b);
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
// assert(b > 0); // Solidity automatically throws when dividing by 0
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
assert(b <= a);
return a - b;
}
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
assert(c >= a);
return c;
}
}
interface P3DTakeout {
function buyTokens() external payable;
}
contract Betting{
using SafeMath for uint256; //using safemath
address public owner; //owner address
address house_takeout = 0xf783A81F046448c38f3c863885D9e99D10209779;
P3DTakeout P3DContract_;
uint public winnerPoolTotal;
string public constant version = "0.2.4";
struct chronus_info {
bool betting_open; // boolean: check if betting is open
bool race_start; //boolean: check if race has started
bool race_end; //boolean: check if race has ended
bool voided_bet; //boolean: check if race has been voided
uint32 starting_time; // timestamp of when the race starts
uint32 betting_duration;
uint32 race_duration; // duration of the race
uint32 voided_timestamp;
}
struct horses_info{
int64 BTC_delta; //horses.BTC delta value
int64 ETH_delta; //horses.ETH delta value
int64 LTC_delta; //horses.LTC delta value
bytes32 BTC; //32-bytes equivalent of horses.BTC
bytes32 ETH; //32-bytes equivalent of horses.ETH
bytes32 LTC; //32-bytes equivalent of horses.LTC
}
struct bet_info{
bytes32 horse; // coin on which amount is bet on
uint amount; // amount bet by Bettor
}
struct coin_info{
uint256 pre; // locking price
uint256 post; // ending price
uint160 total; // total coin pool
uint32 count; // number of bets
bool price_check;
}
struct voter_info {
uint160 total_bet; //total amount of bet placed
bool rewarded; // boolean: check for double spending
mapping(bytes32=>uint) bets; //array of bets
}
mapping (bytes32 => coin_info) public coinIndex; // mapping coins with pool information
mapping (address => voter_info) voterIndex; // mapping voter address with Bettor information
uint public total_reward; // total reward to be awarded
uint32 total_bettors;
mapping (bytes32 => bool) public winner_horse;
// tracking events
event Deposit(address _from, uint256 _value, bytes32 _horse, uint256 _date);
event Withdraw(address _to, uint256 _value);
event PriceCallback(bytes32 coin_pointer, uint256 result, bool isPrePrice);
event RefundEnabled(string reason);
// constructor
constructor() public payable {
owner = msg.sender;
horses.BTC = bytes32("BTC");
horses.ETH = bytes32("ETH");
horses.LTC = bytes32("LTC");
P3DContract_ = P3DTakeout(0x72b2670e55139934D6445348DC6EaB4089B12576);
}
// data access structures
horses_info public horses;
chronus_info public chronus;
// modifiers for restricting access to methods
modifier onlyOwner {
require(owner == msg.sender);
_;
}
modifier duringBetting {
require(chronus.betting_open);
require(now < chronus.starting_time + chronus.betting_duration);
_;
}
modifier beforeBetting {
require(!chronus.betting_open && !chronus.race_start);
_;
}
modifier afterRace {
require(chronus.race_end);
_;
}
//function to change owner
function changeOwnership(address _newOwner) onlyOwner external {
require(now > chronus.starting_time + chronus.race_duration + 60 minutes);
owner = _newOwner;
}
function priceCallback (bytes32 coin_pointer, uint256 result, bool isPrePrice ) external onlyOwner {
require (!chronus.race_end);
emit PriceCallback(coin_pointer, result, isPrePrice);
chronus.race_start = true;
chronus.betting_open = false;
if (isPrePrice) {
if (now >= chronus.starting_time+chronus.betting_duration+ 60 minutes) {
emit RefundEnabled("Late start price");
forceVoidRace();
} else {
coinIndex[coin_pointer].pre = result;
}
} else if (!isPrePrice){
if (coinIndex[coin_pointer].pre > 0 ){
if (now >= chronus.starting_time+chronus.race_duration+ 60 minutes) {
emit RefundEnabled("Late end price");
forceVoidRace();
} else {
coinIndex[coin_pointer].post = result;
coinIndex[coin_pointer].price_check = true;
if (coinIndex[horses.ETH].price_check && coinIndex[horses.BTC].price_check && coinIndex[horses.LTC].price_check) {
reward();
}
}
} else {
emit RefundEnabled("End price came before start price");
forceVoidRace();
}
}
}
// place a bet on a coin(horse) lockBetting
function placeBet(bytes32 horse) external duringBetting payable {
require(msg.value >= 0.01 ether);
if (voterIndex[msg.sender].total_bet==0) {
total_bettors+=1;
}
uint _newAmount = voterIndex[msg.sender].bets[horse] + msg.value;
voterIndex[msg.sender].bets[horse] = _newAmount;
voterIndex[msg.sender].total_bet += uint160(msg.value);
uint160 _newTotal = coinIndex[horse].total + uint160(msg.value);
uint32 _newCount = coinIndex[horse].count + 1;
coinIndex[horse].total = _newTotal;
coinIndex[horse].count = _newCount;
emit Deposit(msg.sender, msg.value, horse, now);
}
// fallback method for accepting payments
function () private payable {}
// method to place the oraclize queries
function setupRace(uint32 _bettingDuration, uint32 _raceDuration) onlyOwner beforeBetting external payable {
chronus.starting_time = uint32(block.timestamp);
chronus.betting_open = true;
chronus.betting_duration = _bettingDuration;
chronus.race_duration = _raceDuration;
}
// method to calculate reward (called internally by callback)
function reward() internal {
/*
calculating the difference in price with a precision of 5 digits
not using safemath since signed integers are handled
*/
horses.BTC_delta = int64(coinIndex[horses.BTC].post - coinIndex[horses.BTC].pre)*100000/int64(coinIndex[horses.BTC].pre);
horses.ETH_delta = int64(coinIndex[horses.ETH].post - coinIndex[horses.ETH].pre)*100000/int64(coinIndex[horses.ETH].pre);
horses.LTC_delta = int64(coinIndex[horses.LTC].post - coinIndex[horses.LTC].pre)*100000/int64(coinIndex[horses.LTC].pre);
total_reward = (coinIndex[horses.BTC].total) + (coinIndex[horses.ETH].total) + (coinIndex[horses.LTC].total);
if (total_bettors <= 1) {
emit RefundEnabled("Not enough participants");
forceVoidRace();
} else {
// house takeout
uint house_fee = total_reward.mul(5).div(100);
require(house_fee < address(this).balance);
total_reward = total_reward.sub(house_fee);
house_takeout.transfer(house_fee);
// p3d takeout
uint p3d_fee = house_fee/2;
require(p3d_fee < address(this).balance);
total_reward = total_reward.sub(p3d_fee);
P3DContract_.buyTokens.value(p3d_fee)();
}
if (horses.BTC_delta > horses.ETH_delta) {
if (horses.BTC_delta > horses.LTC_delta) {
winner_horse[horses.BTC] = true;
winnerPoolTotal = coinIndex[horses.BTC].total;
}
else if(horses.LTC_delta > horses.BTC_delta) {
winner_horse[horses.LTC] = true;
winnerPoolTotal = coinIndex[horses.LTC].total;
} else {
winner_horse[horses.BTC] = true;
winner_horse[horses.LTC] = true;
winnerPoolTotal = coinIndex[horses.BTC].total + (coinIndex[horses.LTC].total);
}
} else if(horses.ETH_delta > horses.BTC_delta) {
if (horses.ETH_delta > horses.LTC_delta) {
winner_horse[horses.ETH] = true;
winnerPoolTotal = coinIndex[horses.ETH].total;
}
else if (horses.LTC_delta > horses.ETH_delta) {
winner_horse[horses.LTC] = true;
winnerPoolTotal = coinIndex[horses.LTC].total;
} else {
winner_horse[horses.ETH] = true;
winner_horse[horses.LTC] = true;
winnerPoolTotal = coinIndex[horses.ETH].total + (coinIndex[horses.LTC].total);
}
} else {
if (horses.LTC_delta > horses.ETH_delta) {
winner_horse[horses.LTC] = true;
winnerPoolTotal = coinIndex[horses.LTC].total;
} else if(horses.LTC_delta < horses.ETH_delta){
winner_horse[horses.ETH] = true;
winner_horse[horses.BTC] = true;
winnerPoolTotal = coinIndex[horses.ETH].total + (coinIndex[horses.BTC].total);
} else {
winner_horse[horses.LTC] = true;
winner_horse[horses.ETH] = true;
winner_horse[horses.BTC] = true;
winnerPoolTotal = coinIndex[horses.ETH].total + (coinIndex[horses.BTC].total) + (coinIndex[horses.LTC].total);
}
}
chronus.race_end = true;
}
// method to calculate an invidual's reward
function calculateReward(address candidate) internal afterRace constant returns(uint winner_reward) {
voter_info storage bettor = voterIndex[candidate];
if(chronus.voided_bet) {
winner_reward = bettor.total_bet;
} else {
uint winning_bet_total;
if(winner_horse[horses.BTC]) {
winning_bet_total += bettor.bets[horses.BTC];
} if(winner_horse[horses.ETH]) {
winning_bet_total += bettor.bets[horses.ETH];
} if(winner_horse[horses.LTC]) {
winning_bet_total += bettor.bets[horses.LTC];
}
winner_reward += (((total_reward.mul(10000000)).div(winnerPoolTotal)).mul(winning_bet_total)).div(10000000);
}
}
// method to just check the reward amount
function checkReward() afterRace external constant returns (uint) {
require(!voterIndex[msg.sender].rewarded);
return calculateReward(msg.sender);
}
// method to claim the reward amount
function claim_reward() afterRace external {
require(!voterIndex[msg.sender].rewarded);
uint transfer_amount = calculateReward(msg.sender);
require(address(this).balance >= transfer_amount);
voterIndex[msg.sender].rewarded = true;
msg.sender.transfer(transfer_amount);
emit Withdraw(msg.sender, transfer_amount);
}
function forceVoidRace() internal {
require(!chronus.voided_bet);
chronus.voided_bet=true;
chronus.race_end = true;
chronus.voided_timestamp=uint32(now);
}
//this methohd can only be called by controller contract in case of timestamp errors
function forceVoidExternal() external onlyOwner {
forceVoidRace();
emit RefundEnabled("Inaccurate price timestamp");
}
// exposing the coin pool details for DApp
function getCoinIndex(bytes32 index, address candidate) external constant returns (uint, uint, uint, bool, uint) {
uint256 coinPrePrice;
uint256 coinPostPrice;
if (coinIndex[horses.ETH].pre > 0 && coinIndex[horses.BTC].pre > 0 && coinIndex[horses.LTC].pre > 0) {
coinPrePrice = coinIndex[index].pre;
}
if (coinIndex[horses.ETH].post > 0 && coinIndex[horses.BTC].post > 0 && coinIndex[horses.LTC].post > 0) {
coinPostPrice = coinIndex[index].post;
}
return (coinIndex[index].total, coinPrePrice, coinPostPrice, coinIndex[index].price_check, voterIndex[candidate].bets[index]);
}
// exposing the total reward amount for DApp
function reward_total() external constant returns (uint) {
return ((coinIndex[horses.BTC].total) + (coinIndex[horses.ETH].total) + (coinIndex[horses.LTC].total));
}
function getChronus() external view returns (uint32[]) {
uint32[] memory chronusData = new uint32[](3);
chronusData[0] = chronus.starting_time;
chronusData[1] = chronus.betting_duration;
chronusData[2] = chronus.race_duration;
return (chronusData);
// return (chronus.starting_time, chronus.betting_duration ,chronus.race_duration);
}
// in case of any errors in race, enable full refund for the Bettors to claim
function refund() external onlyOwner {
require(now > chronus.starting_time + chronus.race_duration + 60 minutes);
require((chronus.betting_open && !chronus.race_start)
|| (chronus.race_start && !chronus.race_end));
chronus.voided_bet = true;
chronus.race_end = true;
chronus.voided_timestamp=uint32(now);
}
// method to claim unclaimed winnings after 30 day notice period
function recovery() external onlyOwner{
require((chronus.race_end && now > chronus.starting_time + chronus.race_duration + (30 days))
|| (chronus.voided_bet && now > chronus.voided_timestamp + (30 days)));
house_takeout.transfer(address(this).balance);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"horse","type":"bytes32"}],"name":"placeBet","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"claim_reward","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"winner_horse","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"coin_pointer","type":"bytes32"},{"name":"result","type":"uint256"},{"name":"isPrePrice","type":"bool"}],"name":"priceCallback","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"winnerPoolTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"changeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"horses","outputs":[{"name":"BTC_delta","type":"int64"},{"name":"ETH_delta","type":"int64"},{"name":"LTC_delta","type":"int64"},{"name":"BTC","type":"bytes32"},{"name":"ETH","type":"bytes32"},{"name":"LTC","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"forceVoidExternal","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getChronus","outputs":[{"name":"","type":"uint32[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"index","type":"bytes32"},{"name":"candidate","type":"address"}],"name":"getCoinIndex","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"bool"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chronus","outputs":[{"name":"betting_open","type":"bool"},{"name":"race_start","type":"bool"},{"name":"race_end","type":"bool"},{"name":"voided_bet","type":"bool"},{"name":"starting_time","type":"uint32"},{"name":"betting_duration","type":"uint32"},{"name":"race_duration","type":"uint32"},{"name":"voided_timestamp","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_bettingDuration","type":"uint32"},{"name":"_raceDuration","type":"uint32"}],"name":"setupRace","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reward_total","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"checkReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"coinIndex","outputs":[{"name":"pre","type":"uint256"},{"name":"post","type":"uint256"},{"name":"total","type":"uint160"},{"name":"count","type":"uint32"},{"name":"price_check","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"total_reward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"recovery","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":true,"stateMutability":"payable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"},{"indexed":false,"name":"_horse","type":"bytes32"},{"indexed":false,"name":"_date","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Withdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"coin_pointer","type":"bytes32"},{"indexed":false,"name":"result","type":"uint256"},{"indexed":false,"name":"isPrePrice","type":"bool"}],"name":"PriceCallback","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reason","type":"string"}],"name":"RefundEnabled","type":"event"}]Contract Creation Code
0x608060405260018054600160a060020a031990811673f783a81f046448c38f3c863885d9e99d1020977917909155600080548216331790557f4254430000000000000000000000000000000000000000000000000000000000600a557f4554480000000000000000000000000000000000000000000000000000000000600b557f4c54430000000000000000000000000000000000000000000000000000000000600c55600280549091167372b2670e55139934d6445348dc6eab4089b12576179055611acc806100d16000396000f3006080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663042b5fed8114610113578063055ee2531461011e5780630f7696441461013357806311dcee2f1461015f57806329114d651461017f5780632af4c31e146101a657806343bddf40146101c75780634564ea361461021e57806354fd4d5014610233578063590e1ae3146102bd5780635ad6ba47146102d25780637274f35b1461033757806384304ee5146103885780638b63c86f146103eb5780638da5cb5b14610402578063aa93038b14610433578063c4b24a4614610448578063d2aed6d71461045d578063d3d2172e146104b0578063ddceafa9146104c5575b005b6101116004356104da565b34801561012a57600080fd5b50610111610675565b34801561013f57600080fd5b5061014b600435610765565b604080519115158252519081900360200190f35b34801561016b57600080fd5b50610111600435602435604435151561077a565b34801561018b57600080fd5b50610194610a7e565b60408051918252519081900360200190f35b3480156101b257600080fd5b50610111600160a060020a0360043516610a84565b3480156101d357600080fd5b506101dc610b04565b60408051600797880b880b815295870b870b602087015293860b90950b848401526060840191909152608083015260a082019290925290519081900360c00190f35b34801561022a57600080fd5b50610111610b36565b34801561023f57600080fd5b50610248610ba5565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028257818101518382015260200161026a565b50505050905090810190601f1680156102af5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c957600080fd5b50610111610bdc565b3480156102de57600080fd5b506102e7610cc2565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561032357818101518382015260200161030b565b505050509050019250505060405180910390f35b34801561034357600080fd5b5061035b600435600160a060020a0360243516610d8f565b60408051958652602086019490945284840192909252151560608401526080830152519081900360a00190f35b34801561039457600080fd5b5061039d610ebb565b604080519815158952961515602089015294151587870152921515606087015263ffffffff9182166080870152811660a086015290811660c08501521660e083015251908190036101000190f35b61011163ffffffff60043581169060243516610f1d565b34801561040e57600080fd5b50610417610fdb565b60408051600160a060020a039092168252519081900360200190f35b34801561043f57600080fd5b50610194610fea565b34801561045457600080fd5b5061019461102f565b34801561046957600080fd5b5061047560043561107b565b604080519586526020860194909452600160a060020a039092168484015263ffffffff16606084015215156080830152519081900360a00190f35b3480156104bc57600080fd5b506101946110bf565b3480156104d157600080fd5b506101116110c5565b600d546000908190819060ff1615156104f257600080fd5b600d54640100000000810463ffffffff9081166801000000000000000090920481169190910116421061052457600080fd5b662386f26fc1000034101561053857600080fd5b33600090815260056020526040902054600160a060020a03161515610574576007805463ffffffff8082166001011663ffffffff199091161790555b50503360008181526005602090815260408083208684526001808201845282852080543490810191829055835473ffffffffffffffffffffffffffffffffffffffff19808216600160a060020a0392831684018316179095556004875296859020600201805494851685891683019889161777ffffffff0000000000000000000000000000000000000000191660a060020a9586900463ffffffff90811690950194851690950294909417909355835196875293860191909152848201879052426060860152905191945091927f60452eb7177e8d41c9d9fbc4c6e9ccf55a4d44d412355fbf2f02668e0d1a0ce1916080918190039190910190a150505050565b600d5460009062010000900460ff16151561068f57600080fd5b3360009081526005602052604090205460a060020a900460ff16156106b357600080fd5b6106bc3361119f565b905030318111156106cc57600080fd5b33600081815260056020526040808220805474ff0000000000000000000000000000000000000000191660a060020a1790555183156108fc0291849190818181858888f19350505050158015610726573d6000803e3d6000fd5b50604080513381526020810183905281517f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364929181900390910190a150565b60086020526000908152604090205460ff1681565b600054600160a060020a0316331461079157600080fd5b600d5462010000900460ff16156107a757600080fd5b60408051848152602081018490528215158183015290517fde16ef9c49ad256644606beb97130511ba3d64bbd230380f8edd107527e5a9da9181900360600190a1600d805460ff1961ff00199091166101001716905580156108a657600d54610e10640100000000820463ffffffff908116680100000000000000009093048116929092010116421061088f576040805160208082526010908201527f4c61746520737461727420707269636500000000000000000000000000000000818301529051600080516020611a818339815191529181900360600190a161088a6112d9565b6108a1565b60008381526004602052604090208290555b610a79565b801515610a795760008381526004602052604081205411156109fd57600d54610e10640100000000820463ffffffff9081166c010000000000000000000000009093048116929092010116421061094d57604080516020808252600e908201527f4c61746520656e64207072696365000000000000000000000000000000000000818301529051600080516020611a818339815191529181900360600190a161088a6112d9565b600083815260046020526040808220600181018590556002908101805478ff000000000000000000000000000000000000000000000000191660c060020a908117909155600b54845291909220909101540460ff1680156109c95750600a5460009081526004602052604090206002015460c060020a900460ff165b80156109f05750600c5460009081526004602052604090206002015460c060020a900460ff165b156108a1576108a16112f0565b6040805160208082526021908201527f456e642070726963652063616d65206265666f72652073746172742070726963818301527f650000000000000000000000000000000000000000000000000000000000000060608201529051600080516020611a818339815191529181900360800190a1610a796112d9565b505050565b60035481565b600054600160a060020a03163314610a9b57600080fd5b600d54610e10640100000000820463ffffffff9081166c0100000000000000000000000090930481169290920101164211610ad557600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600954600a54600b54600c54600784810b94680100000000000000008104820b94608060020a90910490910b92909186565b600054600160a060020a03163314610b4d57600080fd5b610b556112d9565b604080516020808252601a908201527f496e61636375726174652070726963652074696d657374616d70000000000000818301529051600080516020611a818339815191529181900360600190a1565b60408051808201909152600581527f302e322e34000000000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a03163314610bf357600080fd5b600d54610e10640100000000820463ffffffff9081166c0100000000000000000000000090930481169290920101164211610c2d57600080fd5b600d5460ff168015610c475750600d54610100900460ff16155b80610c6d5750600d54610100900460ff168015610c6d5750600d5462010000900460ff16155b1515610c7857600080fd5b600d805462010000630100000063ff000000199092169190911762ff000019161773ffffffff000000000000000000000000000000001916608060020a4263ffffffff1602179055565b604080516003808252608082019092526060918291906020820183803883395050600d548251929350640100000000900463ffffffff16918391506000908110610d0857fe5b63ffffffff92831660209182029092010152600d548251680100000000000000009091049091169082906001908110610d3d57fe5b63ffffffff92831660209182029092010152600d5482516c010000000000000000000000009091049091169082906002908110610d7657fe5b63ffffffff909216602092830290910190910152905090565b600b5460009081526004602052604081205481908190819081908190819081108015610dca5750600a54600090815260046020526040812054115b8015610de55750600c54600090815260046020526040812054115b15610dfc5760008981526004602052604090205491505b600b54600090815260046020526040812060010154118015610e305750600a54600090815260046020526040812060010154115b8015610e4e5750600c54600090815260046020526040812060010154115b15610e6757506000888152600460205260409020600101545b600089815260046020908152604080832060020154600160a060020a039b8c168452600583528184209c84526001909c01909152902054978916999198909760c060020a90910460ff169650945092505050565b600d5460ff808216916101008104821691620100008204811691630100000081049091169063ffffffff64010000000082048116916801000000000000000081048216916c010000000000000000000000008204811691608060020a90041688565b600054600160a060020a03163314610f3457600080fd5b600d5460ff16158015610f4f5750600d54610100900460ff16155b1515610f5a57600080fd5b600d805463ffffffff9283166c01000000000000000000000000026fffffffff0000000000000000000000001994841668010000000000000000026bffffffff00000000000000001960ff1942969096166401000000000267ffffffff00000000199094169390931794909416600117919091169290921792909216179055565b600054600160a060020a031681565b600c54600090815260046020526040808220600290810154600b548452828420820154600a548552929093200154600160a060020a0392831691831690831601011690565b600d5460009062010000900460ff16151561104957600080fd5b3360009081526005602052604090205460a060020a900460ff161561106d57600080fd5b6110763361119f565b905090565b600460205260009081526040902080546001820154600290920154909190600160a060020a0381169060a060020a810463ffffffff169060c060020a900460ff1685565b60065481565b600054600160a060020a031633146110dc57600080fd5b600d5462010000900460ff1680156111225750600d5462278d00640100000000820463ffffffff9081166c01000000000000000000000000909304811692909201011642115b806111575750600d546301000000900460ff1680156111575750600d5462278d0063ffffffff608060020a9092048216011642115b151561116257600080fd5b600154604051600160a060020a0390911690303180156108fc02916000818181858888f1935050505015801561119c573d6000803e3d6000fd5b50565b600d546000908190819062010000900460ff1615156111bd57600080fd5b600160a060020a0384166000908152600560205260409020600d549092506301000000900460ff16156111fc578154600160a060020a031692506112d2565b600a5460009081526008602052604090205460ff161561122c57600a546000908152600183016020526040902054015b600b5460009081526008602052604090205460ff161561125c57600b546000908152600183016020526040902054015b600c5460009081526008602052604090205460ff161561128c57600c546000908152600183016020526040902054015b6112cd629896806112b5836112c16003546112b562989680600654611a2c90919063ffffffff16565b9063ffffffff611a5716565b9063ffffffff611a2c16565b830192505b5050919050565b600d546301000000900460ff1615610c7857600080fd5b600a54600090815260046020526040812080546001909101548291600781810b9291909103620186a002900b81151561132557fe5b6009805467ffffffffffffffff191667ffffffffffffffff93909205600790810b93909316919091179055600b54600090815260046020526040902080546001919091015481830b92919003620186a002900b81151561138157fe5b6009805492909105600790810b67ffffffffffffffff1668010000000000000000026fffffffffffffffff000000000000000019909316929092179055600c54600090815260046020526040902080546001919091015481830b92620186a09290910391909102900b8115156113f357fe5b6009805477ffffffffffffffff000000000000000000000000000000001916608060020a67ffffffffffffffff94909305600790810b9490941692909202919091179055600c54600090815260046020526040808220600290810154600b548452828420820154600a548552929093200154600160a060020a0392831691831690831601011660065554600163ffffffff909116116114e7576040805160208082526017908201527f4e6f7420656e6f756768207061727469636970616e7473000000000000000000818301529051600080516020611a818339815191529181900360600190a16114e26112d9565b611604565b61150260646112b56005600654611a2c90919063ffffffff16565b91503031821061151157600080fd5b600654611524908363ffffffff611a6e16565b600655600154604051600160a060020a039091169083156108fc029084906000818181858888f19350505050158015611561573d6000803e3d6000fd5b5050600281043031811061157457600080fd5b600654611587908263ffffffff611a6e16565b600655600254604080517fd0febe4c0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163d0febe4c918491600480830192600092919082900301818588803b1580156115ea57600080fd5b505af11580156115fe573d6000803e3d6000fd5b50505050505b600954680100000000000000008104600790810b810b91810b900b131561174257600954608060020a8104600790810b810b91810b900b131561167f57600a80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600954600781810b810b608060020a909204810b900b13156116d957600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600a805460009081526008602090815260408083208054600160ff199182168117909255600c805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a0391821690821601166003555b611a17565b600954600781810b810b68010000000000000000909204810b900b131561189757600954608060020a8104600790810b810b68010000000000000000909204810b900b13156117c957600b80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600954680100000000000000008104600790810b810b608060020a909204810b900b131561182f57600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600b805460009081526008602090815260408083208054600160ff199182168117909255600c805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a039182169082160116600355611a17565b600954680100000000000000008104600790810b810b608060020a909204810b900b13156118fd57600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a0316600355611a17565b600954680100000000000000008104600790810b810b608060020a909204810b900b121561198d57600b805460009081526008602090815260408083208054600160ff199182168117909255600a805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a039182169082160116600355611a17565b600c805460009081526008602090815260408083208054600160ff199182168117909255600b805486528386208054831684179055600a8054875284872080549093169093179091559454845260049092528083206002908101549254845281842081015494548452922090910154600160a060020a039182169282169082160191909101166003555b5050600d805462ff0000191662010000179055565b6000828202831580611a485750828482811515611a4557fe5b04145b1515611a5057fe5b9392505050565b6000808284811515611a6557fe5b04949350505050565b600082821115611a7a57fe5b5090039056009267bd1e840f8c032ec399dab88550ddacce435477212b384a3d761f395efa7fa165627a7a723058201f3b20058944317c51c1cb504e8b999a681845a394959778778115fccfd9ece20029
Deployed Bytecode
0x6080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663042b5fed8114610113578063055ee2531461011e5780630f7696441461013357806311dcee2f1461015f57806329114d651461017f5780632af4c31e146101a657806343bddf40146101c75780634564ea361461021e57806354fd4d5014610233578063590e1ae3146102bd5780635ad6ba47146102d25780637274f35b1461033757806384304ee5146103885780638b63c86f146103eb5780638da5cb5b14610402578063aa93038b14610433578063c4b24a4614610448578063d2aed6d71461045d578063d3d2172e146104b0578063ddceafa9146104c5575b005b6101116004356104da565b34801561012a57600080fd5b50610111610675565b34801561013f57600080fd5b5061014b600435610765565b604080519115158252519081900360200190f35b34801561016b57600080fd5b50610111600435602435604435151561077a565b34801561018b57600080fd5b50610194610a7e565b60408051918252519081900360200190f35b3480156101b257600080fd5b50610111600160a060020a0360043516610a84565b3480156101d357600080fd5b506101dc610b04565b60408051600797880b880b815295870b870b602087015293860b90950b848401526060840191909152608083015260a082019290925290519081900360c00190f35b34801561022a57600080fd5b50610111610b36565b34801561023f57600080fd5b50610248610ba5565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028257818101518382015260200161026a565b50505050905090810190601f1680156102af5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c957600080fd5b50610111610bdc565b3480156102de57600080fd5b506102e7610cc2565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561032357818101518382015260200161030b565b505050509050019250505060405180910390f35b34801561034357600080fd5b5061035b600435600160a060020a0360243516610d8f565b60408051958652602086019490945284840192909252151560608401526080830152519081900360a00190f35b34801561039457600080fd5b5061039d610ebb565b604080519815158952961515602089015294151587870152921515606087015263ffffffff9182166080870152811660a086015290811660c08501521660e083015251908190036101000190f35b61011163ffffffff60043581169060243516610f1d565b34801561040e57600080fd5b50610417610fdb565b60408051600160a060020a039092168252519081900360200190f35b34801561043f57600080fd5b50610194610fea565b34801561045457600080fd5b5061019461102f565b34801561046957600080fd5b5061047560043561107b565b604080519586526020860194909452600160a060020a039092168484015263ffffffff16606084015215156080830152519081900360a00190f35b3480156104bc57600080fd5b506101946110bf565b3480156104d157600080fd5b506101116110c5565b600d546000908190819060ff1615156104f257600080fd5b600d54640100000000810463ffffffff9081166801000000000000000090920481169190910116421061052457600080fd5b662386f26fc1000034101561053857600080fd5b33600090815260056020526040902054600160a060020a03161515610574576007805463ffffffff8082166001011663ffffffff199091161790555b50503360008181526005602090815260408083208684526001808201845282852080543490810191829055835473ffffffffffffffffffffffffffffffffffffffff19808216600160a060020a0392831684018316179095556004875296859020600201805494851685891683019889161777ffffffff0000000000000000000000000000000000000000191660a060020a9586900463ffffffff90811690950194851690950294909417909355835196875293860191909152848201879052426060860152905191945091927f60452eb7177e8d41c9d9fbc4c6e9ccf55a4d44d412355fbf2f02668e0d1a0ce1916080918190039190910190a150505050565b600d5460009062010000900460ff16151561068f57600080fd5b3360009081526005602052604090205460a060020a900460ff16156106b357600080fd5b6106bc3361119f565b905030318111156106cc57600080fd5b33600081815260056020526040808220805474ff0000000000000000000000000000000000000000191660a060020a1790555183156108fc0291849190818181858888f19350505050158015610726573d6000803e3d6000fd5b50604080513381526020810183905281517f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364929181900390910190a150565b60086020526000908152604090205460ff1681565b600054600160a060020a0316331461079157600080fd5b600d5462010000900460ff16156107a757600080fd5b60408051848152602081018490528215158183015290517fde16ef9c49ad256644606beb97130511ba3d64bbd230380f8edd107527e5a9da9181900360600190a1600d805460ff1961ff00199091166101001716905580156108a657600d54610e10640100000000820463ffffffff908116680100000000000000009093048116929092010116421061088f576040805160208082526010908201527f4c61746520737461727420707269636500000000000000000000000000000000818301529051600080516020611a818339815191529181900360600190a161088a6112d9565b6108a1565b60008381526004602052604090208290555b610a79565b801515610a795760008381526004602052604081205411156109fd57600d54610e10640100000000820463ffffffff9081166c010000000000000000000000009093048116929092010116421061094d57604080516020808252600e908201527f4c61746520656e64207072696365000000000000000000000000000000000000818301529051600080516020611a818339815191529181900360600190a161088a6112d9565b600083815260046020526040808220600181018590556002908101805478ff000000000000000000000000000000000000000000000000191660c060020a908117909155600b54845291909220909101540460ff1680156109c95750600a5460009081526004602052604090206002015460c060020a900460ff165b80156109f05750600c5460009081526004602052604090206002015460c060020a900460ff165b156108a1576108a16112f0565b6040805160208082526021908201527f456e642070726963652063616d65206265666f72652073746172742070726963818301527f650000000000000000000000000000000000000000000000000000000000000060608201529051600080516020611a818339815191529181900360800190a1610a796112d9565b505050565b60035481565b600054600160a060020a03163314610a9b57600080fd5b600d54610e10640100000000820463ffffffff9081166c0100000000000000000000000090930481169290920101164211610ad557600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600954600a54600b54600c54600784810b94680100000000000000008104820b94608060020a90910490910b92909186565b600054600160a060020a03163314610b4d57600080fd5b610b556112d9565b604080516020808252601a908201527f496e61636375726174652070726963652074696d657374616d70000000000000818301529051600080516020611a818339815191529181900360600190a1565b60408051808201909152600581527f302e322e34000000000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a03163314610bf357600080fd5b600d54610e10640100000000820463ffffffff9081166c0100000000000000000000000090930481169290920101164211610c2d57600080fd5b600d5460ff168015610c475750600d54610100900460ff16155b80610c6d5750600d54610100900460ff168015610c6d5750600d5462010000900460ff16155b1515610c7857600080fd5b600d805462010000630100000063ff000000199092169190911762ff000019161773ffffffff000000000000000000000000000000001916608060020a4263ffffffff1602179055565b604080516003808252608082019092526060918291906020820183803883395050600d548251929350640100000000900463ffffffff16918391506000908110610d0857fe5b63ffffffff92831660209182029092010152600d548251680100000000000000009091049091169082906001908110610d3d57fe5b63ffffffff92831660209182029092010152600d5482516c010000000000000000000000009091049091169082906002908110610d7657fe5b63ffffffff909216602092830290910190910152905090565b600b5460009081526004602052604081205481908190819081908190819081108015610dca5750600a54600090815260046020526040812054115b8015610de55750600c54600090815260046020526040812054115b15610dfc5760008981526004602052604090205491505b600b54600090815260046020526040812060010154118015610e305750600a54600090815260046020526040812060010154115b8015610e4e5750600c54600090815260046020526040812060010154115b15610e6757506000888152600460205260409020600101545b600089815260046020908152604080832060020154600160a060020a039b8c168452600583528184209c84526001909c01909152902054978916999198909760c060020a90910460ff169650945092505050565b600d5460ff808216916101008104821691620100008204811691630100000081049091169063ffffffff64010000000082048116916801000000000000000081048216916c010000000000000000000000008204811691608060020a90041688565b600054600160a060020a03163314610f3457600080fd5b600d5460ff16158015610f4f5750600d54610100900460ff16155b1515610f5a57600080fd5b600d805463ffffffff9283166c01000000000000000000000000026fffffffff0000000000000000000000001994841668010000000000000000026bffffffff00000000000000001960ff1942969096166401000000000267ffffffff00000000199094169390931794909416600117919091169290921792909216179055565b600054600160a060020a031681565b600c54600090815260046020526040808220600290810154600b548452828420820154600a548552929093200154600160a060020a0392831691831690831601011690565b600d5460009062010000900460ff16151561104957600080fd5b3360009081526005602052604090205460a060020a900460ff161561106d57600080fd5b6110763361119f565b905090565b600460205260009081526040902080546001820154600290920154909190600160a060020a0381169060a060020a810463ffffffff169060c060020a900460ff1685565b60065481565b600054600160a060020a031633146110dc57600080fd5b600d5462010000900460ff1680156111225750600d5462278d00640100000000820463ffffffff9081166c01000000000000000000000000909304811692909201011642115b806111575750600d546301000000900460ff1680156111575750600d5462278d0063ffffffff608060020a9092048216011642115b151561116257600080fd5b600154604051600160a060020a0390911690303180156108fc02916000818181858888f1935050505015801561119c573d6000803e3d6000fd5b50565b600d546000908190819062010000900460ff1615156111bd57600080fd5b600160a060020a0384166000908152600560205260409020600d549092506301000000900460ff16156111fc578154600160a060020a031692506112d2565b600a5460009081526008602052604090205460ff161561122c57600a546000908152600183016020526040902054015b600b5460009081526008602052604090205460ff161561125c57600b546000908152600183016020526040902054015b600c5460009081526008602052604090205460ff161561128c57600c546000908152600183016020526040902054015b6112cd629896806112b5836112c16003546112b562989680600654611a2c90919063ffffffff16565b9063ffffffff611a5716565b9063ffffffff611a2c16565b830192505b5050919050565b600d546301000000900460ff1615610c7857600080fd5b600a54600090815260046020526040812080546001909101548291600781810b9291909103620186a002900b81151561132557fe5b6009805467ffffffffffffffff191667ffffffffffffffff93909205600790810b93909316919091179055600b54600090815260046020526040902080546001919091015481830b92919003620186a002900b81151561138157fe5b6009805492909105600790810b67ffffffffffffffff1668010000000000000000026fffffffffffffffff000000000000000019909316929092179055600c54600090815260046020526040902080546001919091015481830b92620186a09290910391909102900b8115156113f357fe5b6009805477ffffffffffffffff000000000000000000000000000000001916608060020a67ffffffffffffffff94909305600790810b9490941692909202919091179055600c54600090815260046020526040808220600290810154600b548452828420820154600a548552929093200154600160a060020a0392831691831690831601011660065554600163ffffffff909116116114e7576040805160208082526017908201527f4e6f7420656e6f756768207061727469636970616e7473000000000000000000818301529051600080516020611a818339815191529181900360600190a16114e26112d9565b611604565b61150260646112b56005600654611a2c90919063ffffffff16565b91503031821061151157600080fd5b600654611524908363ffffffff611a6e16565b600655600154604051600160a060020a039091169083156108fc029084906000818181858888f19350505050158015611561573d6000803e3d6000fd5b5050600281043031811061157457600080fd5b600654611587908263ffffffff611a6e16565b600655600254604080517fd0febe4c0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163d0febe4c918491600480830192600092919082900301818588803b1580156115ea57600080fd5b505af11580156115fe573d6000803e3d6000fd5b50505050505b600954680100000000000000008104600790810b810b91810b900b131561174257600954608060020a8104600790810b810b91810b900b131561167f57600a80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600954600781810b810b608060020a909204810b900b13156116d957600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600a805460009081526008602090815260408083208054600160ff199182168117909255600c805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a0391821690821601166003555b611a17565b600954600781810b810b68010000000000000000909204810b900b131561189757600954608060020a8104600790810b810b68010000000000000000909204810b900b13156117c957600b80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600954680100000000000000008104600790810b810b608060020a909204810b900b131561182f57600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a031660035561173d565b600b805460009081526008602090815260408083208054600160ff199182168117909255600c805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a039182169082160116600355611a17565b600954680100000000000000008104600790810b810b608060020a909204810b900b13156118fd57600c80546000908152600860209081526040808320805460ff1916600117905592548252600490522060020154600160a060020a0316600355611a17565b600954680100000000000000008104600790810b810b608060020a909204810b900b121561198d57600b805460009081526008602090815260408083208054600160ff199182168117909255600a805486528386208054909216909217905554835260049091528082206002908101549354835291200154600160a060020a039182169082160116600355611a17565b600c805460009081526008602090815260408083208054600160ff199182168117909255600b805486528386208054831684179055600a8054875284872080549093169093179091559454845260049092528083206002908101549254845281842081015494548452922090910154600160a060020a039182169282169082160191909101166003555b5050600d805462ff0000191662010000179055565b6000828202831580611a485750828482811515611a4557fe5b04145b1515611a5057fe5b9392505050565b6000808284811515611a6557fe5b04949350505050565b600082821115611a7a57fe5b5090039056009267bd1e840f8c032ec399dab88550ddacce435477212b384a3d761f395efa7fa165627a7a723058201f3b20058944317c51c1cb504e8b999a681845a394959778778115fccfd9ece20029
Swarm Source
bzzr://1f3b20058944317c51c1cb504e8b999a681845a394959778778115fccfd9ece2
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Token Allocations
ETH
100.00%
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| ETH | 100.00% | $1,858.06 | 0.0000000016 | $0.000003 |
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.