Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000 Word
Holders
1,557
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
24.73575276 WordValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
WordCoin
Compiler Version
v0.4.13-nightly.2017.7.6+commit.40d4ee49
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-02-07 */ pragma solidity ^0.4.11; contract DSNote { event LogNote( bytes4 indexed sig, address indexed guy, bytes32 indexed foo, bytes32 indexed bar, uint wad, bytes fax ) anonymous; modifier note { bytes32 foo; bytes32 bar; assembly { foo := calldataload(4) bar := calldataload(36) } LogNote(msg.sig, msg.sender, foo, bar, msg.value, msg.data); _; } } contract ERC20 { function totalSupply() constant returns (uint supply); function balanceOf( address who ) constant returns (uint value); function allowance( address owner, address spender ) constant returns (uint _allowance); function transfer( address to, uint value) returns (bool ok); function transferFrom( address from, address to, uint value) returns (bool ok); function approve( address spender, uint value ) returns (bool ok); event Transfer( address indexed from, address indexed to, uint value); event Approval( address indexed owner, address indexed spender, uint value); } contract DSAuthority { function canCall( address src, address dst, bytes4 sig ) constant returns (bool); } contract DSAuthEvents { event LogSetAuthority (address indexed authority); event LogSetOwner (address indexed owner); } contract DSAuth is DSAuthEvents { DSAuthority public authority; address public owner; function DSAuth() { owner = msg.sender; LogSetOwner(msg.sender); } function setOwner(address owner_) auth { owner = owner_; LogSetOwner(owner); } function setAuthority(DSAuthority authority_) auth { authority = authority_; LogSetAuthority(authority); } modifier auth { assert(isAuthorized(msg.sender, msg.sig)); _; } modifier authorized(bytes4 sig) { assert(isAuthorized(msg.sender, sig)); _; } function isAuthorized(address src, bytes4 sig) internal returns (bool) { if (src == address(this)) { return true; } else if (src == owner) { return true; } else if (authority == DSAuthority(0)) { return false; } else { return authority.canCall(src, this, sig); } } function assert(bool x) internal { if (!x) revert(); } } contract DSExec { function tryExec( address target, bytes calldata, uint value) internal returns (bool call_ret) { return target.call.value(value)(calldata); } function exec( address target, bytes calldata, uint value) internal { if(!tryExec(target, calldata, value)) { revert(); } } // Convenience aliases function exec( address t, bytes c ) internal { exec(t, c, 0); } function exec( address t, uint256 v ) internal { bytes memory c; exec(t, c, v); } function tryExec( address t, bytes c ) internal returns (bool) { return tryExec(t, c, 0); } function tryExec( address t, uint256 v ) internal returns (bool) { bytes memory c; return tryExec(t, c, v); } } contract DSMath { /* standard uint256 functions */ function add(uint256 x, uint256 y) constant internal returns (uint256 z) { assert((z = x + y) >= x); } function sub(uint256 x, uint256 y) constant internal returns (uint256 z) { assert((z = x - y) <= x); } function mul(uint256 x, uint256 y) constant internal returns (uint256 z) { assert((z = x * y) >= x); } function div(uint256 x, uint256 y) constant internal returns (uint256 z) { z = x / y; } function min(uint256 x, uint256 y) constant internal returns (uint256 z) { return x <= y ? x : y; } function max(uint256 x, uint256 y) constant internal returns (uint256 z) { return x >= y ? x : y; } /* uint128 functions (h is for half) */ function hadd(uint128 x, uint128 y) constant internal returns (uint128 z) { assert((z = x + y) >= x); } function hsub(uint128 x, uint128 y) constant internal returns (uint128 z) { assert((z = x - y) <= x); } function hmul(uint128 x, uint128 y) constant internal returns (uint128 z) { assert((z = x * y) >= x); } function hdiv(uint128 x, uint128 y) constant internal returns (uint128 z) { z = x / y; } function hmin(uint128 x, uint128 y) constant internal returns (uint128 z) { return x <= y ? x : y; } function hmax(uint128 x, uint128 y) constant internal returns (uint128 z) { return x >= y ? x : y; } /* int256 functions */ function imin(int256 x, int256 y) constant internal returns (int256 z) { return x <= y ? x : y; } function imax(int256 x, int256 y) constant internal returns (int256 z) { return x >= y ? x : y; } /* WAD math */ uint128 constant WAD = 10 ** 18; function wadd(uint128 x, uint128 y) constant internal returns (uint128) { return hadd(x, y); } function wsub(uint128 x, uint128 y) constant internal returns (uint128) { return hsub(x, y); } function wmul(uint128 x, uint128 y) constant internal returns (uint128 z) { z = cast((uint256(x) * y + WAD / 2) / WAD); } function wdiv(uint128 x, uint128 y) constant internal returns (uint128 z) { z = cast((uint256(x) * WAD + y / 2) / y); } function wmin(uint128 x, uint128 y) constant internal returns (uint128) { return hmin(x, y); } function wmax(uint128 x, uint128 y) constant internal returns (uint128) { return hmax(x, y); } /* RAY math */ uint128 constant RAY = 10 ** 27; function radd(uint128 x, uint128 y) constant internal returns (uint128) { return hadd(x, y); } function rsub(uint128 x, uint128 y) constant internal returns (uint128) { return hsub(x, y); } function rmul(uint128 x, uint128 y) constant internal returns (uint128 z) { z = cast((uint256(x) * y + RAY / 2) / RAY); } function rdiv(uint128 x, uint128 y) constant internal returns (uint128 z) { z = cast((uint256(x) * RAY + y / 2) / y); } function rpow(uint128 x, uint64 n) constant internal returns (uint128 z) { // This famous algorithm is called "exponentiation by squaring" // and calculates x^n with x as fixed-point and n as regular unsigned. // // It's O(log n), instead of O(n) for naive repeated multiplication. // // These facts are why it works: // // If n is even, then x^n = (x^2)^(n/2). // If n is odd, then x^n = x * x^(n-1), // and applying the equation for even x gives // x^n = x * (x^2)^((n-1) / 2). // // Also, EVM division is flooring and // floor[(n-1) / 2] = floor[n / 2]. z = n % 2 != 0 ? x : RAY; for (n /= 2; n != 0; n /= 2) { x = rmul(x, x); if (n % 2 != 0) { z = rmul(z, x); } } } function rmin(uint128 x, uint128 y) constant internal returns (uint128) { return hmin(x, y); } function rmax(uint128 x, uint128 y) constant internal returns (uint128) { return hmax(x, y); } function cast(uint256 x) constant internal returns (uint128 z) { assert((z = uint128(x)) == x); } } contract DSStop is DSAuth, DSNote { bool public stopped; modifier stoppable { assert (!stopped); _; } function stop() auth note { stopped = true; } function start() auth note { stopped = false; } } contract DSTokenBase is ERC20, DSMath { uint256 _supply; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _approvals; function DSTokenBase(uint256 supply) { _balances[msg.sender] = supply; _supply = supply; } function totalSupply() constant returns (uint256) { return _supply; } function balanceOf(address src) constant returns (uint256) { return _balances[src]; } function allowance(address src, address guy) constant returns (uint256) { return _approvals[src][guy]; } function transfer(address dst, uint wad) returns (bool) { assert(_balances[msg.sender] >= wad); _balances[msg.sender] = sub(_balances[msg.sender], wad); _balances[dst] = add(_balances[dst], wad); Transfer(msg.sender, dst, wad); return true; } function transferFrom(address src, address dst, uint wad) returns (bool) { assert(_balances[src] >= wad); assert(_approvals[src][msg.sender] >= wad); _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad); _balances[src] = sub(_balances[src], wad); _balances[dst] = add(_balances[dst], wad); Transfer(src, dst, wad); return true; } function approve(address guy, uint256 wad) returns (bool) { _approvals[msg.sender][guy] = wad; Approval(msg.sender, guy, wad); return true; } } contract DSToken is DSTokenBase(0), DSStop { string public symbol; uint256 public decimals = 8; // standard token precision. override to customize function DSToken(string symbol_) { symbol = symbol_; } function transfer(address dst, uint wad) stoppable note returns (bool) { return super.transfer(dst, wad); } function transferFrom( address src, address dst, uint wad ) stoppable note returns (bool) { return super.transferFrom(src, dst, wad); } function approve(address guy, uint wad) stoppable note returns (bool) { return super.approve(guy, wad); } function push(address dst, uint128 wad) returns (bool) { return transfer(dst, wad); } function pull(address src, uint128 wad) returns (bool) { return transferFrom(src, msg.sender, wad); } function mint(uint128 wad) auth stoppable note { _balances[msg.sender] = add(_balances[msg.sender], wad); _supply = add(_supply, wad); } function burn(uint128 wad) auth stoppable note { _balances[msg.sender] = sub(_balances[msg.sender], wad); _supply = sub(_supply, wad); } // Optional token name string public name = ""; function setName(string name_) auth { name = name_; } } contract WordCoin is DSToken('Word'){ address public OfferContract; uint public tokenSellCost; uint public tokenBuyCost; bool public isSellable; uint public secondsAfter; uint public depositPercents; address public ICOContract; address public preICOContract; struct Deposit { uint amount; uint time; } mapping (address => uint) public reservedCoins; mapping (address => Deposit) public deposits; event LogBounty(address user, uint amount, string message); event LogEtherBounty(address user, uint amount, string message); event LogSendReward(address from, address to, string message); event LogBuyCoins(address user, uint value, string message); event LogGetEther(address user, uint value, string message); event LogMakeDeposit(address user, uint value, string message); event LogGetDeposit(address user, uint value, string message); function WordCoin(){ } modifier sellable { assert(isSellable); _; } modifier onlyOffer { assert(msg.sender == OfferContract); _; } modifier onlypreICO { assert(msg.sender == preICOContract); _; } modifier onlyICO { assert(msg.sender == ICOContract); _; } function setICO(address ICO) auth { ICOContract = ICO; } function setPreICO(address preICO) auth { preICOContract = preICO; } function preICOmint(uint128 wad) onlypreICO { _balances[msg.sender] = add(_balances[msg.sender], wad); _supply = add(_supply, wad); } function ICOmint(uint128 wad) onlyICO { _balances[msg.sender] = add(_balances[msg.sender], wad); _supply = add(_supply, wad); } function bounty(address user, uint amount) auth { assert(_balances[this] >= amount); _balances[user] += amount; _balances[this] -= amount; LogBounty(user, amount, "Sent bounty"); } function etherBounty(address user, uint amount) auth { assert(this.balance >= amount); user.transfer(amount); LogEtherBounty(user, amount, "Sent ether bounty"); } function sendReward(address from, address to, uint value) onlyOffer { reservedCoins[from] -= value; _balances[to] += value; LogSendReward(from, to, "Sent reward"); } function reserveCoins(address from, uint value) onlyOffer { _balances[from] -= value; reservedCoins[from] += value; } function declineCoins(address from, uint value) onlyOffer { _balances[from] += value; reservedCoins[from] -= value; } function getEther(uint128 amount) sellable { // exchange coins to Ethers with exchange course assert(tokenSellCost > 0); assert(div(mul(_balances[msg.sender], 10), 100) >= amount); super.push(this, amount); msg.sender.transfer(amount * tokenSellCost); LogGetEther(msg.sender, amount * tokenSellCost, "Got Ether"); } function makeDeposit(uint amount) { assert(_balances[msg.sender] > amount); assert(deposits[msg.sender].amount == 0); deposits[msg.sender].amount = amount; deposits[msg.sender].time = now; _balances[msg.sender] -= amount; _balances[this] += amount; LogMakeDeposit(msg.sender, amount, "Made deposit"); } function getDeposit() { assert(deposits[msg.sender].amount != 0); assert(now > (deposits[msg.sender].time + mul(secondsAfter, 1 seconds))); assert(_balances[this] > div(mul(deposits[msg.sender].amount, add(100, depositPercents)), 100)); uint amount = div(mul(deposits[msg.sender].amount, add(100, depositPercents)), 100); deposits[msg.sender].amount = 0; _balances[msg.sender] += amount; _balances[this] -= amount; LogGetDeposit(msg.sender, amount, "Got deposit"); } function setBuyCourse(uint course) auth { isSellable = false; tokenBuyCost = course; } function setSellCourse(uint course) auth { isSellable = false; tokenSellCost = course; } function setSellable(bool sellable) auth { isSellable = sellable; } function setOfferContract(address offerContract) auth { OfferContract = offerContract; } function setSecondsAfter(uint secondsForDeposit) auth { secondsAfter = secondsForDeposit; } function setDepositPercents(uint percents) auth { depositPercents = percents; } function takeEther() payable auth {} function () payable sellable { uint amount = div(msg.value, tokenBuyCost); _balances[this] -= amount; _balances[msg.sender] += amount; LogBuyCoins(msg.sender, amount, "Coins bought"); } } contract preICO is DSAuth, DSExec, DSMath { WordCoin public coin; address public ICO; address[] investorsArray; struct Investor { uint amount; uint tokenAmount; bool tokenSent; bool rewardSent; bool largeBonusSent; } mapping (address => Investor) public investors; uint public deadline; uint public start; uint public countDays; bool public autoTokenSent; uint public totalDonations; uint public totalDonationsWithBonuses; uint public donationsCount; uint public ethReward; uint128 public preICOTokenAmount; uint128 public preICOTokenRemaining; uint128 public preICOTokenReward; uint128 public preICOTokenRewardRemaining; event LogBounty(address user, uint128 amount, string result); event LogBounty256(address user, uint amount, string result); event LogPush(address user, uint128 amount, string result); event LogTokenSent(address user, bool amount, string result); modifier afterDeadline() { assert(now >= deadline); _; } event LogDonation(address user, string message); event LogTransferOwnership(address user, string message); event LogSendTokens(address user, uint amount, string message); event LogSendPOSTokens(address user, uint amount, string message); function preICO(uint initCountDays){ countDays = initCountDays; preICOTokenAmount = 200000000000000; preICOTokenRemaining = 200000000000000; preICOTokenReward = 20000000000000; preICOTokenRewardRemaining = 20000000000000; } function setCoin(WordCoin initCoin) auth { assert(preICOTokenAmount > 0); start = now; deadline = now + countDays * 1 days; coin = initCoin; coin.preICOmint(uint128(add(uint256(preICOTokenReward),uint256(preICOTokenAmount)))); } function sendTokens() afterDeadline { assert(!investors[msg.sender].tokenSent); uint amount = div(mul(investors[msg.sender].amount, preICOTokenAmount), uint256(totalDonationsWithBonuses)); coin.push(msg.sender, uint128(amount)); preICOTokenRemaining -= uint128(amount); investors[msg.sender].tokenSent = true; investors[msg.sender].tokenAmount = amount; LogSendTokens(msg.sender, amount, "Sent tokens"); } function autoSend() afterDeadline { LogDonation(msg.sender, "START"); assert(!autoTokenSent); for (uint i = 0; i < investorsArray.length; i++) { LogSendTokens(msg.sender, uint256(totalDonationsWithBonuses), "TOTAL"); uint amount = div(mul(investors[investorsArray[i]].amount, preICOTokenAmount), uint256(totalDonationsWithBonuses)); LogSendTokens(msg.sender, amount, "TOTAL"); if (!investors[investorsArray[i]].tokenSent) { coin.push(investorsArray[i], uint128(amount)); LogSendTokens(msg.sender, amount, "PUSH"); investors[investorsArray[i]].tokenAmount = amount; investors[investorsArray[i]].tokenSent = true; } } autoTokenSent = true; } function setICOContract(address ico) auth{ ICO = ico; } function getEthers(uint amount) auth { assert(amount > 0); assert(this.balance - amount >= 0); assert(msg.sender == owner); owner.transfer(amount); } function getLargeBonus() { assert(investors[msg.sender].amount > 7 ether); assert(!investors[msg.sender].largeBonusSent); uint amount = div(mul(investors[msg.sender].tokenAmount,10),100); coin.push(msg.sender, uint128(amount)); preICOTokenRewardRemaining -= uint128(amount); investors[msg.sender].largeBonusSent = true; LogSendTokens(msg.sender, amount, "Sent tokens for 7 Eth donate"); } function sendICOTokensBack(uint128 amount) afterDeadline auth{ assert(coin.balanceOf(this) > amount); coin.push(msg.sender, amount); } function part( address who ) public constant returns (uint part) { part = div(mul(investors[who].amount, 1000000), totalDonationsWithBonuses); } function rewardWasSent (address who) public constant returns (bool wasSent) { wasSent = investors[who].rewardSent; } function setRewardWasSent (address who) { assert(msg.sender == ICO); investors[who].rewardSent = true; } function () payable { assert(now <= deadline); assert(msg.sender != address(0)); assert(msg.value != 0); assert(preICOTokenRemaining > 0); uint percents = 0; if (sub(now,start) < 24 hours) { percents = sub(24, div(sub(now,start), 1 hours)); } uint extraDonation = div(msg.value, 100) * percents; investors[msg.sender].tokenSent = false; totalDonationsWithBonuses += add(msg.value, extraDonation); totalDonations += msg.value; investors[msg.sender].amount += add(msg.value, extraDonation); donationsCount++; investorsArray.push(msg.sender); LogDonation(msg.sender, "Donation was made"); } } contract ICO is DSAuth, DSExec, DSMath { uint128 public ICOAmount; uint128 public ICOReward; address[] investorsArray; struct preICOInvestor { uint amount; bool tokenSent; bool rewardSent; bool largeBonusSent; } mapping (address => preICOInvestor) public investors; preICO public preico; WordCoin public coin; bool public canGiveMoneyBack; bool public rewardSent; uint public cost; uint public tokenCost; bool public isICOStopped; uint public totalDonations; uint public totalDonationsWithBonuses; modifier allowGetMoneyBack() { assert(canGiveMoneyBack); _; } modifier ICOStopped() { assert(isICOStopped); _; } event LogSetPreICO(preICO preicoAddress, string message); event LogStartWeek(string message); event LogGetMoneyBack(address user, uint value, string message); event LogMoneyToPreICO(address user, uint value, string message); event LogBuyTokens(address user, uint value, string message); event LogSendPOSTokens(address user, uint value, string message); event LogTransferOwnership(address user, string message); event Log1(uint128 la, string message); event Log2(bool la, string message); function ICO(){ ICOAmount = 500000000000000; ICOReward = 10000000000000; } function setPreICO(preICO initPreICO) auth { assert(initPreICO != address(0)); preico = initPreICO; } function getEthers(uint amount) auth { assert(amount > 0); assert(this.balance - amount >= 0); assert(msg.sender == owner); owner.transfer(amount); } function startWeekOne() auth { assert(preico != address(0)); tokenCost = div(preico.totalDonations(), preico.preICOTokenAmount()); cost = 100; LogStartWeek("First week started"); } function startWeekTwo() auth { cost = 105; LogStartWeek("Second week started"); } function startWeekThree() auth { cost = 110; LogStartWeek("Third week started"); } function startWeekFour() auth { cost = 115; LogStartWeek("Fourth week started"); } function startWeekFive() auth { cost = 120; LogStartWeek("Last week started"); } function setCanGetMoneyBack(bool value) auth { canGiveMoneyBack = value; } function setTokenCost(uint newTokenCost) auth { assert(newTokenCost > 0); tokenCost = newTokenCost; } function getMoneyBack() allowGetMoneyBack { assert(investors[msg.sender].amount > 0); msg.sender.transfer(investors[msg.sender].amount); investors[msg.sender].amount = 0; LogGetMoneyBack(msg.sender, investors[msg.sender].amount, "Money returned"); } function setCoin(WordCoin initCoin) auth { assert(ICOAmount > 0); coin = initCoin; coin.ICOmint(uint128(add(uint256(ICOAmount),uint256(ICOReward)))); } function sendPOSTokens() ICOStopped { assert(!investors[msg.sender].rewardSent); assert(investors[msg.sender].amount > 0); assert(ICOReward > 0); uint amount = div(mul(investors[msg.sender].amount, ICOReward), uint256(totalDonations)); investors[msg.sender].rewardSent = true; coin.push(msg.sender, uint128(amount)); ICOReward -= uint128(amount); LogSendPOSTokens(msg.sender, amount, "Sent prize tokens"); } function sendEthForReward() ICOStopped { assert(!preico.rewardWasSent(msg.sender)); uint amount = div(mul(totalDonations, 3), 100); uint ethAmountForReward = div(mul(amount,preico.part(msg.sender)), 1000000); preico.setRewardWasSent(msg.sender); msg.sender.transfer(ethAmountForReward); } function sendICOTokensBack(uint128 amount) ICOStopped auth{ assert(coin.balanceOf(this) > amount); coin.push(msg.sender, amount); } function setBigICOStopped(bool stop) auth{ isICOStopped = stop; } function() payable { assert(msg.sender != address(0)); assert(msg.value != 0); assert(cost > 0); assert(tokenCost > 0); assert(ICOAmount > 0); assert(!isICOStopped); investors[msg.sender].amount += msg.value; totalDonations += msg.value; uint amount = div(msg.value, div(mul(tokenCost, cost), 100)); if (msg.value > 7 ether) { amount = div(mul(amount, 110),100); } coin.push(msg.sender, uint128(amount)); ICOAmount -= uint128(amount); investorsArray.push(msg.sender); LogBuyTokens(msg.sender, amount, "Tokens bought"); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reservedCoins","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"makeDeposit","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"stop","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wad","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"secondsForDeposit","type":"uint256"}],"name":"setSecondsAfter","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"preICOContract","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"takeEther","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"src","type":"address"},{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint128"}],"name":"push","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"depositPercents","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"reserveCoins","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"declineCoins","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint128"}],"name":"getEther","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"tokenBuyCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"user","type":"address"},{"name":"amount","type":"uint256"}],"name":"bounty","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"sellable","type":"bool"}],"name":"setSellable","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"ICOContract","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint128"}],"name":"mint","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"sendReward","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"course","type":"uint256"}],"name":"setBuyCourse","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"preICO","type":"address"}],"name":"setPreICO","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"percents","type":"uint256"}],"name":"setDepositPercents","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"secondsAfter","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"src","type":"address"},{"name":"wad","type":"uint128"}],"name":"pull","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint128"}],"name":"burn","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"offerContract","type":"address"}],"name":"setOfferContract","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint128"}],"name":"preICOmint","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"ICO","type":"address"}],"name":"setICO","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"start","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"course","type":"uint256"}],"name":"setSellCourse","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getDeposit","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"name_","type":"string"}],"name":"setName","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"OfferContract","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint128"}],"name":"ICOmint","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isSellable","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"guy","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"user","type":"address"},{"name":"amount","type":"uint256"}],"name":"etherBounty","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"tokenSellCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"deposits","outputs":[{"name":"amount","type":"uint256"},{"name":"time","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogBounty","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogEtherBounty","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"message","type":"string"}],"name":"LogSendReward","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogBuyCoins","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogGetEther","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogMakeDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"LogGetDeposit","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"name":"sig","type":"bytes4"},{"indexed":true,"name":"guy","type":"address"},{"indexed":true,"name":"foo","type":"bytes32"},{"indexed":true,"name":"bar","type":"bytes32"},{"indexed":false,"name":"wad","type":"uint256"},{"indexed":false,"name":"fax","type":"bytes"}],"name":"LogNote","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
6060604052600860065560206040519081016040526000815260079080516200002d929160200190620000fe565b5034156200003a57600080fd5b5b60408051908101604052600481527f576f72640000000000000000000000000000000000000000000000000000000060208201525b5b60005b600160a060020a03331660009081526001602052604081208290558190555b5060048054600160a060020a03191633600160a060020a03169081179091557fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a25b6005818051620000f4929160200190620000fe565b505b505b620001a8565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200014157805160ff191683800117855562000171565b8280016001018555821562000171579182015b828111156200017157825182559160200191906001019062000154565b5b506200018092915062000184565b5090565b620001a591905b808211156200018057600081556001016200018b565b5090565b90565b61230080620001b86000396000f300606060405236156102595763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166302ab47818114610332578063059a500c1461036357806306fdde031461037b57806307da68f514610406578063095ea7b31461041b5780630e4983ff1461045157806313af40351461046957806314f3f4911461048a5780631565c3c8146104b957806318160ddd146104c357806323b872dd146104e8578063313ce567146105245780633452f51d146105495780633b7cbfcf146105885780633e112ed7146105ad578063414bbda2146105d157806345b9ca21146105f55780634eee8c251461061657806353ad42ef1461063b57806361eb71c11461065f578063682806a01461067957806369d3e20e146106a85780636b1af75e146106c95780636e217d30146106f357806370a082311461070b57806375f12b211461073c5780637a9e5e4b146107635780637de3613814610784578063801137e7146107a55780638154b57c146107bd5780638402181f146107e25780638da5cb5b1461082157806390bc16931461085057806392a48bea1461087157806395d89b4114610892578063a9059cbb1461091d578063abd89e1e14610953578063b6f50c2914610974578063be9a655514610995578063bf7e214f146109aa578063c30381b9146109d9578063c399ec88146109f1578063c47f002714610a06578063ce5fd7f314610a59578063d176318014610a88578063d6e95f7714610aa9578063dd62ed3e14610ad0578063ecf7105e14610b07578063f1687a8d14610b2b578063fc7e286d14610b50575b6103305b600b5460009061026f9060ff16610b87565b61027b34600a54610b97565b600160a060020a0330811660009081526001602052604080822080548590039055339283168252908190208054840190559192507fe4e609de4ab433429823013d96817ed751a4b0c8e73f1ed866b1b11964750c1c91839051600160a060020a039092168252602082015260606040808301829052600c918301919091527f436f696e7320626f756768740000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b50565b005b341561033d57600080fd5b610351600160a060020a0360043516610bae565b60405190815260200160405180910390f35b341561036e57600080fd5b610330600435610bc0565b005b341561038657600080fd5b61038e610ccb565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156103cb5780820151818401525b6020016103b2565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561041157600080fd5b610330610d69565b005b341561042657600080fd5b61043d600160a060020a0360043516602435610e08565b604051901515815260200160405180910390f35b341561045c57600080fd5b610330600435610e8f565b005b341561047457600080fd5b610330600160a060020a0360043516610eb7565b005b341561049557600080fd5b61049d610f35565b604051600160a060020a03909116815260200160405180910390f35b610330610f44565b005b34156104ce57600080fd5b610351610f66565b60405190815260200160405180910390f35b34156104f357600080fd5b61043d600160a060020a0360043581169060243516604435610f6d565b604051901515815260200160405180910390f35b341561052f57600080fd5b610351610ff6565b60405190815260200160405180910390f35b341561055457600080fd5b61043d600160a060020a03600435166001608060020a0360243516610ffc565b604051901515815260200160405180910390f35b341561059357600080fd5b61035161101a565b60405190815260200160405180910390f35b34156105b857600080fd5b610330600160a060020a0360043516602435611020565b005b34156105dc57600080fd5b610330600160a060020a0360043516602435611070565b005b341561060057600080fd5b6103306001608060020a03600435166110c0565b005b341561062157600080fd5b6103516111fc565b60405190815260200160405180910390f35b341561064657600080fd5b610330600160a060020a0360043516602435611202565b005b341561066a57600080fd5b61033060043515156112fa565b005b341561068457600080fd5b61049d61132b565b604051600160a060020a03909116815260200160405180910390f35b34156106b357600080fd5b6103306001608060020a036004351661133a565b005b34156106d457600080fd5b610330600160a060020a036004358116906024351660443561142d565b005b34156106fe57600080fd5b610330600435611504565b005b341561071657600080fd5b610351600160a060020a0360043516611536565b60405190815260200160405180910390f35b341561074757600080fd5b61043d611555565b604051901515815260200160405180910390f35b341561076e57600080fd5b610330600160a060020a0360043516611565565b005b341561078f57600080fd5b610330600160a060020a03600435166115e3565b005b34156107b057600080fd5b61033060043561162e565b005b34156107c857600080fd5b610351611656565b60405190815260200160405180910390f35b34156107ed57600080fd5b61043d600160a060020a03600435166001608060020a036024351661165c565b604051901515815260200160405180910390f35b341561082c57600080fd5b61049d61167b565b604051600160a060020a03909116815260200160405180910390f35b341561085b57600080fd5b6103306001608060020a036004351661168a565b005b341561087c57600080fd5b610330600160a060020a036004351661177d565b005b341561089d57600080fd5b61038e6117c8565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156103cb5780820151818401525b6020016103b2565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561092857600080fd5b61043d600160a060020a0360043516602435611866565b604051901515815260200160405180910390f35b341561095e57600080fd5b6103306001608060020a03600435166118ed565b005b341561097f57600080fd5b610330600160a060020a036004351661196c565b005b34156109a057600080fd5b6103306119b7565b005b34156109b557600080fd5b61049d611a50565b604051600160a060020a03909116815260200160405180910390f35b34156109e457600080fd5b610330600435611a5f565b005b34156109fc57600080fd5b610330611a91565b005b3415610a1157600080fd5b61033060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650611c4695505050505050565b005b3415610a6457600080fd5b61049d611c7d565b604051600160a060020a03909116815260200160405180910390f35b3415610a9357600080fd5b6103306001608060020a0360043516611c8c565b005b3415610ab457600080fd5b61043d611d0b565b604051901515815260200160405180910390f35b3415610adb57600080fd5b610351600160a060020a0360043581169060243516611d14565b60405190815260200160405180910390f35b3415610b1257600080fd5b610330600160a060020a0360043516602435611d41565b005b3415610b3657600080fd5b610351611e29565b60405190815260200160405180910390f35b3415610b5b57600080fd5b610b6f600160a060020a0360043516611e2f565b60405191825260208201526040908101905180910390f35b80151561032c57600080fd5b5b50565b60008183811515610ba457fe5b0490505b92915050565b60106020526000908152604090205481565b600160a060020a033316600090815260016020526040902054610be590829011610b87565b600160a060020a033316600090815260116020526040902054610c089015610b87565b600160a060020a0333818116600090815260116020908152604080832086815542600191820155909152808220805486900390553090931681528290208054840190557f50548d8576201cd006eb56d20e8b7b7842d1c236eca5fb5410696dff998113ef91839051600160a060020a039092168252602082015260606040808301829052600c918301919091527f4d616465206465706f7369740000000000000000000000000000000000000000608083015260a0909101905180910390a15b50565b60078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d615780601f10610d3657610100808354040283529160200191610d61565b820191906000526020600020905b815481529060010190602001808311610d4457829003601f168201915b505050505081565b610d87610d8233600035600160e060020a031916611e48565b610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a46004805474ff0000000000000000000000000000000000000000191660a060020a1790555b5b50505b565b600454600090610e229060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610e828585611f5d565b92505b5b50505b92915050565b610ead610d8233600035600160e060020a031916611e48565b610b87565b600c8190555b5b50565b610ed5610d8233600035600160e060020a031916611e48565b610b87565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a25b5b50565b600f54600160a060020a031681565b610e06610d8233600035600160e060020a031916611e48565b610b87565b5b5b565b6000545b90565b600454600090610f879060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610fe8868686611fca565b92505b5b50505b9392505050565b60065481565b600061101183836001608060020a0316611866565b90505b92915050565b600d5481565b60085461103b9033600160a060020a03908116911614610b87565b600160a060020a038216600090815260016020908152604080832080548590039055601090915290208054820190555b5b5050565b60085461108b9033600160a060020a03908116911614610b87565b600160a060020a038216600090815260016020908152604080832080548501905560109091529020805482900390555b5b5050565b600b546110cf9060ff16610b87565b6110dd600060095411610b87565b600160a060020a033316600090815260016020526040902054611122906001608060020a0383169061111b9061111490600a612121565b6064610b97565b1015610b87565b61112c3082610ffc565b5033600160a060020a03166108fc600954836001608060020a0316029081150290604051600060405180830381858888f19350505050151561116d57600080fd5b7feca90ffcb6bec84c38a9710d4b36f916340d11525f68e6f798a3d294011edf1433600954836001608060020a031602604051600160a060020a0390921682526020820152606060408083018290526009918301919091527f476f742045746865720000000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b50565b600a5481565b611220610d8233600035600160e060020a031916611e48565b610b87565b600160a060020a0330166000908152600160205260409020546112469082901015610b87565b600160a060020a03808316600090815260016020526040808220805485019055309092168152819020805483900390557f8ff21e0d87872be4ea598f4356cf157468201d6c896c0224fa4d94068ed859fe908390839051600160a060020a039092168252602082015260606040808301829052600b918301919091527f53656e7420626f756e7479000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b5050565b611318610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff19168215151790555b5b50565b600e54600160a060020a031681565b611358610d8233600035600160e060020a031916611e48565b610b87565b60045461136f9060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4600160a060020a0333166000908152600160205260409020546113f1906001608060020a038516612135565b600160a060020a03331660009081526001602052604081209190915554611421906001608060020a038516612135565b6000555b5b50505b5b50565b6008546114489033600160a060020a03908116911614610b87565b600160a060020a038084166000908152601060209081526040808320805486900390559285168252600190528190208054830190557f968bd60ddd13a1603ec99a2c0984863effd0cf8c772ae0d58169113f9479dfa1908490849051600160a060020a0392831681529116602082015260606040808301829052600b918301919091527f53656e7420726577617264000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b505050565b611522610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff19169055600a8190555b5b50565b600160a060020a0381166000908152600160205260409020545b919050565b60045460a060020a900460ff1681565b611583610d8233600035600160e060020a031916611e48565b610b87565b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a25b5b50565b611601610d8233600035600160e060020a031916611e48565b610b87565b600f805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b61164c610d8233600035600160e060020a031916611e48565b610b87565b600d8190555b5b50565b600c5481565b60006110118333846001608060020a0316610f6d565b90505b92915050565b600454600160a060020a031681565b6116a8610d8233600035600160e060020a031916611e48565b610b87565b6004546116bf9060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4600160a060020a033316600090815260016020526040902054611741906001608060020a038516612149565b600160a060020a03331660009081526001602052604081209190915554611421906001608060020a038516612149565b6000555b5b50505b5b50565b61179b610d8233600035600160e060020a031916611e48565b610b87565b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d615780601f10610d3657610100808354040283529160200191610d61565b820191906000526020600020905b815481529060010190602001808311610d4457829003601f168201915b505050505081565b6004546000906118809060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610e82858561215d565b92505b5b50505b92915050565b600f546119089033600160a060020a03908116911614610b87565b600160a060020a033316600090815260016020526040902054611934906001608060020a038316612135565b600160a060020a03331660009081526001602052604081209190915554611964906001608060020a038316612135565b6000555b5b50565b61198a610d8233600035600160e060020a031916611e48565b610b87565b600e805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6119d5610d8233600035600160e060020a031916611e48565b610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a46004805474ff0000000000000000000000000000000000000000191690555b5b50505b565b600354600160a060020a031681565b611a7d610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff1916905560098190555b5b50565b600160a060020a033316600090815260116020526040812054611ab5901515610b87565b611ae9611ac5600c546001612121565b600160a060020a033316600090815260116020526040902060010154014211610b87565b600160a060020a033316600090815260116020526040902054600d54611b4991611b2a916111149190611b1e90606490612135565b612121565b6064610b97565b600160a060020a03301660009081526001602052604090205411610b87565b600160a060020a033316600090815260116020526040902054600d54611b859161111491611b1e90606490612135565b612121565b6064610b97565b33600160a060020a0381811660009081526011602090815260408083208390556001909152808220805486019055309092168152819020805484900390559192507fb54a79875c2c7348c79f6d253d95bed942ae0d00bfee455408b94a8a75cb3b6191839051600160a060020a039092168252602082015260606040808301829052600b918301919091527f476f74206465706f736974000000000000000000000000000000000000000000608083015260a0909101905180910390a15b50565b611c64610d8233600035600160e060020a031916611e48565b610b87565b6007818051610e02929160200190612234565b505b5b50565b600854600160a060020a031681565b600e546119089033600160a060020a03908116911614610b87565b600160a060020a033316600090815260016020526040902054611934906001608060020a038316612135565b600160a060020a03331660009081526001602052604081209190915554611964906001608060020a038316612135565b6000555b5b50565b600b5460ff1681565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b611d5f610d8233600035600160e060020a031916611e48565b610b87565b611d758130600160a060020a0316311015610b87565b600160a060020a03821681156108fc0282604051600060405180830381858888f193505050501515611da657600080fd5b7f7c0656ac7466346c43acd0ac8d515ddb6d31714907f1dabe204e84a8834635678282604051600160a060020a0390921682526020820152606060408083018290526011918301919091527f53656e7420657468657220626f756e7479000000000000000000000000000000608083015260a0909101905180910390a15b5b5050565b60095481565b6011602052600090815260409020805460019091015482565b600030600160a060020a031683600160a060020a03161415611e6c57506001610ba8565b600454600160a060020a0384811691161415611e8a57506001610ba8565b600354600160a060020a03161515611ea457506000610ba8565b600354600160a060020a031663b70096138430856000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8616028152600160a060020a039384166004820152919092166024820152600160e060020a03199091166044820152606401602060405180830381600087803b1515611f3257600080fd5b6102c65a03f11515611f4357600080fd5b505050604051805190509050610ba8565b5b5b5b92915050565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600160a060020a03831660009081526001602052604081205482901015611fed57fe5b600160a060020a03808516600090815260026020908152604080832033909416835292905220548290101561201e57fe5b600160a060020a038085166000908152600260209081526040808320339094168352929052205461204f9083612149565b600160a060020a0380861660008181526002602090815260408083203390951683529381528382209490945590815260019092529020546120909083612149565b600160a060020a0380861660009081526001602052604080822093909355908516815220546120bf9083612135565b600160a060020a03808516600081815260016020526040908190209390935591908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b9392505050565b80820282811015610ba857fe5b5b92915050565b80820182811015610ba857fe5b5b92915050565b80820382811115610ba857fe5b5b92915050565b600160a060020a0333166000908152600160205260408120548290101561218057fe5b600160a060020a0333166000908152600160205260409020546121a39083612149565b600160a060020a0333811660009081526001602052604080822093909355908516815220546121d29083612135565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061227557805160ff19168380011785556122a2565b828001600101855582156122a2579182015b828111156122a2578251825591602001919060010190612287565b5b506122af9291506122b3565b5090565b610f6a91905b808211156122af57600081556001016122b9565b5090565b905600a165627a7a72305820210e16cc618902e324a3b39e355b722714f4eb31c96cbe7dae1fba17037c625c0029
Deployed Bytecode
0x606060405236156102595763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166302ab47818114610332578063059a500c1461036357806306fdde031461037b57806307da68f514610406578063095ea7b31461041b5780630e4983ff1461045157806313af40351461046957806314f3f4911461048a5780631565c3c8146104b957806318160ddd146104c357806323b872dd146104e8578063313ce567146105245780633452f51d146105495780633b7cbfcf146105885780633e112ed7146105ad578063414bbda2146105d157806345b9ca21146105f55780634eee8c251461061657806353ad42ef1461063b57806361eb71c11461065f578063682806a01461067957806369d3e20e146106a85780636b1af75e146106c95780636e217d30146106f357806370a082311461070b57806375f12b211461073c5780637a9e5e4b146107635780637de3613814610784578063801137e7146107a55780638154b57c146107bd5780638402181f146107e25780638da5cb5b1461082157806390bc16931461085057806392a48bea1461087157806395d89b4114610892578063a9059cbb1461091d578063abd89e1e14610953578063b6f50c2914610974578063be9a655514610995578063bf7e214f146109aa578063c30381b9146109d9578063c399ec88146109f1578063c47f002714610a06578063ce5fd7f314610a59578063d176318014610a88578063d6e95f7714610aa9578063dd62ed3e14610ad0578063ecf7105e14610b07578063f1687a8d14610b2b578063fc7e286d14610b50575b6103305b600b5460009061026f9060ff16610b87565b61027b34600a54610b97565b600160a060020a0330811660009081526001602052604080822080548590039055339283168252908190208054840190559192507fe4e609de4ab433429823013d96817ed751a4b0c8e73f1ed866b1b11964750c1c91839051600160a060020a039092168252602082015260606040808301829052600c918301919091527f436f696e7320626f756768740000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b50565b005b341561033d57600080fd5b610351600160a060020a0360043516610bae565b60405190815260200160405180910390f35b341561036e57600080fd5b610330600435610bc0565b005b341561038657600080fd5b61038e610ccb565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156103cb5780820151818401525b6020016103b2565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561041157600080fd5b610330610d69565b005b341561042657600080fd5b61043d600160a060020a0360043516602435610e08565b604051901515815260200160405180910390f35b341561045c57600080fd5b610330600435610e8f565b005b341561047457600080fd5b610330600160a060020a0360043516610eb7565b005b341561049557600080fd5b61049d610f35565b604051600160a060020a03909116815260200160405180910390f35b610330610f44565b005b34156104ce57600080fd5b610351610f66565b60405190815260200160405180910390f35b34156104f357600080fd5b61043d600160a060020a0360043581169060243516604435610f6d565b604051901515815260200160405180910390f35b341561052f57600080fd5b610351610ff6565b60405190815260200160405180910390f35b341561055457600080fd5b61043d600160a060020a03600435166001608060020a0360243516610ffc565b604051901515815260200160405180910390f35b341561059357600080fd5b61035161101a565b60405190815260200160405180910390f35b34156105b857600080fd5b610330600160a060020a0360043516602435611020565b005b34156105dc57600080fd5b610330600160a060020a0360043516602435611070565b005b341561060057600080fd5b6103306001608060020a03600435166110c0565b005b341561062157600080fd5b6103516111fc565b60405190815260200160405180910390f35b341561064657600080fd5b610330600160a060020a0360043516602435611202565b005b341561066a57600080fd5b61033060043515156112fa565b005b341561068457600080fd5b61049d61132b565b604051600160a060020a03909116815260200160405180910390f35b34156106b357600080fd5b6103306001608060020a036004351661133a565b005b34156106d457600080fd5b610330600160a060020a036004358116906024351660443561142d565b005b34156106fe57600080fd5b610330600435611504565b005b341561071657600080fd5b610351600160a060020a0360043516611536565b60405190815260200160405180910390f35b341561074757600080fd5b61043d611555565b604051901515815260200160405180910390f35b341561076e57600080fd5b610330600160a060020a0360043516611565565b005b341561078f57600080fd5b610330600160a060020a03600435166115e3565b005b34156107b057600080fd5b61033060043561162e565b005b34156107c857600080fd5b610351611656565b60405190815260200160405180910390f35b34156107ed57600080fd5b61043d600160a060020a03600435166001608060020a036024351661165c565b604051901515815260200160405180910390f35b341561082c57600080fd5b61049d61167b565b604051600160a060020a03909116815260200160405180910390f35b341561085b57600080fd5b6103306001608060020a036004351661168a565b005b341561087c57600080fd5b610330600160a060020a036004351661177d565b005b341561089d57600080fd5b61038e6117c8565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156103cb5780820151818401525b6020016103b2565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561092857600080fd5b61043d600160a060020a0360043516602435611866565b604051901515815260200160405180910390f35b341561095e57600080fd5b6103306001608060020a03600435166118ed565b005b341561097f57600080fd5b610330600160a060020a036004351661196c565b005b34156109a057600080fd5b6103306119b7565b005b34156109b557600080fd5b61049d611a50565b604051600160a060020a03909116815260200160405180910390f35b34156109e457600080fd5b610330600435611a5f565b005b34156109fc57600080fd5b610330611a91565b005b3415610a1157600080fd5b61033060046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650611c4695505050505050565b005b3415610a6457600080fd5b61049d611c7d565b604051600160a060020a03909116815260200160405180910390f35b3415610a9357600080fd5b6103306001608060020a0360043516611c8c565b005b3415610ab457600080fd5b61043d611d0b565b604051901515815260200160405180910390f35b3415610adb57600080fd5b610351600160a060020a0360043581169060243516611d14565b60405190815260200160405180910390f35b3415610b1257600080fd5b610330600160a060020a0360043516602435611d41565b005b3415610b3657600080fd5b610351611e29565b60405190815260200160405180910390f35b3415610b5b57600080fd5b610b6f600160a060020a0360043516611e2f565b60405191825260208201526040908101905180910390f35b80151561032c57600080fd5b5b50565b60008183811515610ba457fe5b0490505b92915050565b60106020526000908152604090205481565b600160a060020a033316600090815260016020526040902054610be590829011610b87565b600160a060020a033316600090815260116020526040902054610c089015610b87565b600160a060020a0333818116600090815260116020908152604080832086815542600191820155909152808220805486900390553090931681528290208054840190557f50548d8576201cd006eb56d20e8b7b7842d1c236eca5fb5410696dff998113ef91839051600160a060020a039092168252602082015260606040808301829052600c918301919091527f4d616465206465706f7369740000000000000000000000000000000000000000608083015260a0909101905180910390a15b50565b60078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d615780601f10610d3657610100808354040283529160200191610d61565b820191906000526020600020905b815481529060010190602001808311610d4457829003601f168201915b505050505081565b610d87610d8233600035600160e060020a031916611e48565b610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a46004805474ff0000000000000000000000000000000000000000191660a060020a1790555b5b50505b565b600454600090610e229060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610e828585611f5d565b92505b5b50505b92915050565b610ead610d8233600035600160e060020a031916611e48565b610b87565b600c8190555b5b50565b610ed5610d8233600035600160e060020a031916611e48565b610b87565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a25b5b50565b600f54600160a060020a031681565b610e06610d8233600035600160e060020a031916611e48565b610b87565b5b5b565b6000545b90565b600454600090610f879060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610fe8868686611fca565b92505b5b50505b9392505050565b60065481565b600061101183836001608060020a0316611866565b90505b92915050565b600d5481565b60085461103b9033600160a060020a03908116911614610b87565b600160a060020a038216600090815260016020908152604080832080548590039055601090915290208054820190555b5b5050565b60085461108b9033600160a060020a03908116911614610b87565b600160a060020a038216600090815260016020908152604080832080548501905560109091529020805482900390555b5b5050565b600b546110cf9060ff16610b87565b6110dd600060095411610b87565b600160a060020a033316600090815260016020526040902054611122906001608060020a0383169061111b9061111490600a612121565b6064610b97565b1015610b87565b61112c3082610ffc565b5033600160a060020a03166108fc600954836001608060020a0316029081150290604051600060405180830381858888f19350505050151561116d57600080fd5b7feca90ffcb6bec84c38a9710d4b36f916340d11525f68e6f798a3d294011edf1433600954836001608060020a031602604051600160a060020a0390921682526020820152606060408083018290526009918301919091527f476f742045746865720000000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b50565b600a5481565b611220610d8233600035600160e060020a031916611e48565b610b87565b600160a060020a0330166000908152600160205260409020546112469082901015610b87565b600160a060020a03808316600090815260016020526040808220805485019055309092168152819020805483900390557f8ff21e0d87872be4ea598f4356cf157468201d6c896c0224fa4d94068ed859fe908390839051600160a060020a039092168252602082015260606040808301829052600b918301919091527f53656e7420626f756e7479000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b5050565b611318610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff19168215151790555b5b50565b600e54600160a060020a031681565b611358610d8233600035600160e060020a031916611e48565b610b87565b60045461136f9060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4600160a060020a0333166000908152600160205260409020546113f1906001608060020a038516612135565b600160a060020a03331660009081526001602052604081209190915554611421906001608060020a038516612135565b6000555b5b50505b5b50565b6008546114489033600160a060020a03908116911614610b87565b600160a060020a038084166000908152601060209081526040808320805486900390559285168252600190528190208054830190557f968bd60ddd13a1603ec99a2c0984863effd0cf8c772ae0d58169113f9479dfa1908490849051600160a060020a0392831681529116602082015260606040808301829052600b918301919091527f53656e7420726577617264000000000000000000000000000000000000000000608083015260a0909101905180910390a15b5b505050565b611522610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff19169055600a8190555b5b50565b600160a060020a0381166000908152600160205260409020545b919050565b60045460a060020a900460ff1681565b611583610d8233600035600160e060020a031916611e48565b610b87565b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a25b5b50565b611601610d8233600035600160e060020a031916611e48565b610b87565b600f805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b61164c610d8233600035600160e060020a031916611e48565b610b87565b600d8190555b5b50565b600c5481565b60006110118333846001608060020a0316610f6d565b90505b92915050565b600454600160a060020a031681565b6116a8610d8233600035600160e060020a031916611e48565b610b87565b6004546116bf9060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4600160a060020a033316600090815260016020526040902054611741906001608060020a038516612149565b600160a060020a03331660009081526001602052604081209190915554611421906001608060020a038516612149565b6000555b5b50505b5b50565b61179b610d8233600035600160e060020a031916611e48565b610b87565b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d615780601f10610d3657610100808354040283529160200191610d61565b820191906000526020600020905b815481529060010190602001808311610d4457829003601f168201915b505050505081565b6004546000906118809060a060020a900460ff1615610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a4610e82858561215d565b92505b5b50505b92915050565b600f546119089033600160a060020a03908116911614610b87565b600160a060020a033316600090815260016020526040902054611934906001608060020a038316612135565b600160a060020a03331660009081526001602052604081209190915554611964906001608060020a038316612135565b6000555b5b50565b61198a610d8233600035600160e060020a031916611e48565b610b87565b600e805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6119d5610d8233600035600160e060020a031916611e48565b610b87565b600435602435808233600160a060020a031660008035600160e060020a0319169034903660405183815260406020820181815290820183905260608201848480828437820191505094505050505060405180910390a46004805474ff0000000000000000000000000000000000000000191690555b5b50505b565b600354600160a060020a031681565b611a7d610d8233600035600160e060020a031916611e48565b610b87565b600b805460ff1916905560098190555b5b50565b600160a060020a033316600090815260116020526040812054611ab5901515610b87565b611ae9611ac5600c546001612121565b600160a060020a033316600090815260116020526040902060010154014211610b87565b600160a060020a033316600090815260116020526040902054600d54611b4991611b2a916111149190611b1e90606490612135565b612121565b6064610b97565b600160a060020a03301660009081526001602052604090205411610b87565b600160a060020a033316600090815260116020526040902054600d54611b859161111491611b1e90606490612135565b612121565b6064610b97565b33600160a060020a0381811660009081526011602090815260408083208390556001909152808220805486019055309092168152819020805484900390559192507fb54a79875c2c7348c79f6d253d95bed942ae0d00bfee455408b94a8a75cb3b6191839051600160a060020a039092168252602082015260606040808301829052600b918301919091527f476f74206465706f736974000000000000000000000000000000000000000000608083015260a0909101905180910390a15b50565b611c64610d8233600035600160e060020a031916611e48565b610b87565b6007818051610e02929160200190612234565b505b5b50565b600854600160a060020a031681565b600e546119089033600160a060020a03908116911614610b87565b600160a060020a033316600090815260016020526040902054611934906001608060020a038316612135565b600160a060020a03331660009081526001602052604081209190915554611964906001608060020a038316612135565b6000555b5b50565b600b5460ff1681565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b611d5f610d8233600035600160e060020a031916611e48565b610b87565b611d758130600160a060020a0316311015610b87565b600160a060020a03821681156108fc0282604051600060405180830381858888f193505050501515611da657600080fd5b7f7c0656ac7466346c43acd0ac8d515ddb6d31714907f1dabe204e84a8834635678282604051600160a060020a0390921682526020820152606060408083018290526011918301919091527f53656e7420657468657220626f756e7479000000000000000000000000000000608083015260a0909101905180910390a15b5b5050565b60095481565b6011602052600090815260409020805460019091015482565b600030600160a060020a031683600160a060020a03161415611e6c57506001610ba8565b600454600160a060020a0384811691161415611e8a57506001610ba8565b600354600160a060020a03161515611ea457506000610ba8565b600354600160a060020a031663b70096138430856000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8616028152600160a060020a039384166004820152919092166024820152600160e060020a03199091166044820152606401602060405180830381600087803b1515611f3257600080fd5b6102c65a03f11515611f4357600080fd5b505050604051805190509050610ba8565b5b5b5b92915050565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600160a060020a03831660009081526001602052604081205482901015611fed57fe5b600160a060020a03808516600090815260026020908152604080832033909416835292905220548290101561201e57fe5b600160a060020a038085166000908152600260209081526040808320339094168352929052205461204f9083612149565b600160a060020a0380861660008181526002602090815260408083203390951683529381528382209490945590815260019092529020546120909083612149565b600160a060020a0380861660009081526001602052604080822093909355908516815220546120bf9083612135565b600160a060020a03808516600081815260016020526040908190209390935591908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b9392505050565b80820282811015610ba857fe5b5b92915050565b80820182811015610ba857fe5b5b92915050565b80820382811115610ba857fe5b5b92915050565b600160a060020a0333166000908152600160205260408120548290101561218057fe5b600160a060020a0333166000908152600160205260409020546121a39083612149565b600160a060020a0333811660009081526001602052604080822093909355908516815220546121d29083612135565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061227557805160ff19168380011785556122a2565b828001600101855582156122a2579182015b828111156122a2578251825591602001919060010190612287565b5b506122af9291506122b3565b5090565b610f6a91905b808211156122af57600081556001016122b9565b5090565b905600a165627a7a72305820210e16cc618902e324a3b39e355b722714f4eb31c96cbe7dae1fba17037c625c0029
Swarm Source
bzzr://210e16cc618902e324a3b39e355b722714f4eb31c96cbe7dae1fba17037c625c
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.