Overview
ETH Balance
12 wei
Eth Value
Less Than $0.01 (@ $3,375.72/ETH)More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 5 from a total of 5 transactions
Loading...
Loading
Contract Name:
PantheonChina
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-12-08 */ pragma solidity 0.4.25; /* * Pantheon China 第一份智能合約提供穩定的收入。 * 智能合約可確保您的資金免遭盜竊和黑客攻擊 * 不要投入超過你可以輸的 */ contract PantheonChina { struct UserRecord { address referrer; uint tokens; uint gained_funds; uint ref_funds; // 這個領域可能是負面的 int funds_correction; } using SafeMath for uint; using SafeMathInt for int; using Fee for Fee.fee; using ToAddress for bytes; // ERC20 string constant public name = "Pantheon China"; string constant public symbol = "PAC"; uint8 constant public decimals = 18; // Fees Fee.fee private fee_purchase = Fee.fee(1, 10); // 10% Fee.fee private fee_selling = Fee.fee(1, 20); // 5% Fee.fee private fee_transfer = Fee.fee(1, 100); // 1% Fee.fee private fee_referral = Fee.fee(33, 100); // 33% // 最少量的令牌將成為推薦計劃的參與者 uint constant private minimal_stake = 10e18; // 轉換eth < - >令牌的因素,具有所需的計算精度 uint constant private precision_factor = 1e18; // 定價政策 // - 如果用戶購買1個令牌,價格將增加“price_offset”值 // - 如果用戶賣出1個令牌,價格將降低“price_offset”值 // 有關詳細信息,請參閱方法“fundsToTokens”和“tokensToFunds” uint private price = 1e29; // 100 Gwei * precision_factor uint constant private price_offset = 1e28; // 10 Gwei * precision_factor // 令牌總數 uint private total_supply = 0; // 令牌持有者之間共享的總利潤。由於此參數,它並不能準確反映資金總額 // 可以修改以在總供應量發生變化時保持真實用戶的股息 // 有關詳細信息,請參閱方法“dividendsOf”並在代碼中使用“funds_correction” uint private shared_profit = 0; // 用戶數據的映射 mapping(address => UserRecord) private user_data; // ==== 修改 ==== // modifier onlyValidTokenAmount(uint tokens) { require(tokens > 0, "Amount of tokens must be greater than zero"); require(tokens <= user_data[msg.sender].tokens, "You have not enough tokens"); _; } // ==== 上市 API ==== // // ---- 寫作方法 ---- // function () public payable { buy(msg.data.toAddr()); } /* * 從收到的資金購買代幣 */ function buy(address referrer) public payable { // 報名費 (uint fee_funds, uint taxed_funds) = fee_purchase.split(msg.value); require(fee_funds != 0, "Incoming funds is too small"); // 更新用戶的推薦人 // - 你不能成為自己的推薦人 // - 用戶和他的推薦人將在一起生活 UserRecord storage user = user_data[msg.sender]; if (referrer != 0x0 && referrer != msg.sender && user.referrer == 0x0) { user.referrer = referrer; } // 申請推薦獎金 if (user.referrer != 0x0) { fee_funds = rewardReferrer(msg.sender, user.referrer, fee_funds, msg.value); require(fee_funds != 0, "收入資金太小"); } // 計算代幣金額和變更價格 (uint tokens, uint _price) = fundsToTokens(taxed_funds); require(tokens != 0, "收入資金太小"); price = _price; // 薄荷代幣,增加共享利潤 mintTokens(msg.sender, tokens); shared_profit = shared_profit.add(fee_funds); emit Purchase(msg.sender, msg.value, tokens, price / precision_factor, now); } /* * 出售給定數量的代幣並獲得資金 */ function sell(uint tokens) public onlyValidTokenAmount(tokens) { // 計算資金數額和變更價格 (uint funds, uint _price) = tokensToFunds(tokens); require(funds != 0, "沒有足夠的令牌來做這件事"); price = _price; // 申請費 (uint fee_funds, uint taxed_funds) = fee_selling.split(funds); require(fee_funds != 0, "沒有足夠的令牌來做這件事"); // 刻錄令牌並為用戶的股息增加資金 burnTokens(msg.sender, tokens); UserRecord storage user = user_data[msg.sender]; user.gained_funds = user.gained_funds.add(taxed_funds); // 增加共享利潤 shared_profit = shared_profit.add(fee_funds); emit Selling(msg.sender, tokens, funds, price / precision_factor, now); } /* * 將給定數量的令牌從發件人轉移到另一個用戶 * ERC20 */ function transfer(address to_addr, uint tokens) public onlyValidTokenAmount(tokens) returns (bool success) { require(to_addr != msg.sender, "You cannot transfer tokens to yourself"); // 申請費 (uint fee_tokens, uint taxed_tokens) = fee_transfer.split(tokens); require(fee_tokens != 0, "Insufficient tokens to do that"); // 計算資金數額和變更價格 (uint funds, uint _price) = tokensToFunds(fee_tokens); require(funds != 0, "Insufficient tokens to do that"); price = _price; // 燃燒和薄荷代幣,不含費用 burnTokens(msg.sender, tokens); mintTokens(to_addr, taxed_tokens); // 增加共享利潤 shared_profit = shared_profit.add(funds); emit Transfer(msg.sender, to_addr, tokens); return true; } /* * 再投資所有股息 */ function reinvest() public { // 獲得所有股息 uint funds = dividendsOf(msg.sender); require(funds > 0, "You have no dividends"); // 做出更正,之後的事件將為0 UserRecord storage user = user_data[msg.sender]; user.funds_correction = user.funds_correction.add(int(funds)); // 申請費 (uint fee_funds, uint taxed_funds) = fee_purchase.split(funds); require(fee_funds != 0, "Insufficient dividends to do that"); // 申請推薦獎金 if (user.referrer != 0x0) { fee_funds = rewardReferrer(msg.sender, user.referrer, fee_funds, funds); require(fee_funds != 0, "Insufficient dividends to do that"); } // 計算代幣金額和變更價格 (uint tokens, uint _price) = fundsToTokens(taxed_funds); require(tokens != 0, "Insufficient dividends to do that"); price = _price; // 薄荷代幣,增加共享利潤 mintTokens(msg.sender, tokens); shared_profit = shared_profit.add(fee_funds); emit Reinvestment(msg.sender, funds, tokens, price / precision_factor, now); } /* * 撤回所有股息 */ function withdraw() public { // 獲得所有股息 uint funds = dividendsOf(msg.sender); require(funds > 0, "You have no dividends"); // 做出更正,之後的事件將為0 UserRecord storage user = user_data[msg.sender]; user.funds_correction = user.funds_correction.add(int(funds)); // 發送資金 msg.sender.transfer(funds); emit Withdrawal(msg.sender, funds, now); } /* * 出售所有代幣和分紅 */ function exit() public { // 賣掉所有代幣 uint tokens = user_data[msg.sender].tokens; if (tokens > 0) { sell(tokens); } withdraw(); } /* * 警告!此方法在令牌持有者之間分配所有傳入資金,並且不提供任何內容 * 它將在未來由我們的生態系統中的其他合同/地址使用 * 但如果你想捐款,歡迎你 */ function donate() public payable { shared_profit = shared_profit.add(msg.value); emit Donation(msg.sender, msg.value, now); } function totalSupply() public view returns (uint) { return total_supply; } function balanceOf(address addr) public view returns (uint) { return user_data[addr].tokens; } function dividendsOf(address addr) public view returns (uint) { UserRecord memory user = user_data[addr]; int d = int(user.gained_funds.add(user.ref_funds)); require(d >= 0); if (total_supply > 0) { d = d.add(int(shared_profit.mul(user.tokens) / total_supply)); } if (user.funds_correction > 0) { d = d.sub(user.funds_correction); } else if (user.funds_correction < 0) { d = d.add(-user.funds_correction); } require(d >= 0); return uint(d); } function expectedTokens(uint funds, bool apply_fee) public view returns (uint) { if (funds == 0) { return 0; } if (apply_fee) { (,uint _funds) = fee_purchase.split(funds); funds = _funds; } (uint tokens,) = fundsToTokens(funds); return tokens; } function expectedFunds(uint tokens, bool apply_fee) public view returns (uint) { // 總共有空令牌或沒有銷售代幣 if (tokens == 0 || total_supply == 0) { return 0; } // 比總共開採更多的令牌,只是從計算中排除不必要的令牌 else if (tokens > total_supply) { tokens = total_supply; } (uint funds,) = tokensToFunds(tokens); if (apply_fee) { (,uint _funds) = fee_selling.split(funds); funds = _funds; } return funds; } /* * 下一個令牌的購買價格 */ function buyPrice() public view returns (uint) { return price / precision_factor; } /* * 售價下一個令牌 */ function sellPrice() public view returns (uint) { return price.sub(price_offset) / precision_factor; } // ==== 私人的 API ==== // function mintTokens(address addr, uint tokens) internal { UserRecord storage user = user_data[addr]; bool not_first_minting = total_supply > 0; if (not_first_minting) { shared_profit = shared_profit.mul(total_supply.add(tokens)) / total_supply; } total_supply = total_supply.add(tokens); user.tokens = user.tokens.add(tokens); if (not_first_minting) { user.funds_correction = user.funds_correction.add(int(tokens.mul(shared_profit) / total_supply)); } } function burnTokens(address addr, uint tokens) internal { UserRecord storage user = user_data[addr]; uint dividends_from_tokens = 0; if (total_supply == tokens) { dividends_from_tokens = shared_profit.mul(user.tokens) / total_supply; } shared_profit = shared_profit.mul(total_supply.sub(tokens)) / total_supply; total_supply = total_supply.sub(tokens); user.tokens = user.tokens.sub(tokens); if (total_supply > 0) { user.funds_correction = user.funds_correction.sub(int(tokens.mul(shared_profit) / total_supply)); } else if (dividends_from_tokens != 0) { user.funds_correction = user.funds_correction.sub(int(dividends_from_tokens)); } } function rewardReferrer(address addr, address referrer_addr, uint funds, uint full_funds) internal returns (uint funds_after_reward) { UserRecord storage referrer = user_data[referrer_addr]; if (referrer.tokens >= minimal_stake) { (uint reward_funds, uint taxed_funds) = fee_referral.split(funds); referrer.ref_funds = referrer.ref_funds.add(reward_funds); emit ReferralReward(addr, referrer_addr, full_funds, reward_funds, now); return taxed_funds; } else { return funds; } } function fundsToTokens(uint funds) internal view returns (uint tokens, uint _price) { uint b = price.mul(2).sub(price_offset); uint D = b.mul(b).add(price_offset.mul(8).mul(funds).mul(precision_factor)); uint n = D.sqrt().sub(b).mul(precision_factor) / price_offset.mul(2); uint anp1 = price.add(price_offset.mul(n) / precision_factor); return (n, anp1); } function tokensToFunds(uint tokens) internal view returns (uint funds, uint _price) { uint sell_price = price.sub(price_offset); uint an = sell_price.add(price_offset).sub(price_offset.mul(tokens) / precision_factor); uint sn = sell_price.add(an).mul(tokens) / precision_factor.mul(2); return (sn / precision_factor, an); } // ==== 活動 ==== // event Purchase(address indexed addr, uint funds, uint tokens, uint price, uint time); event Selling(address indexed addr, uint tokens, uint funds, uint price, uint time); event Reinvestment(address indexed addr, uint funds, uint tokens, uint price, uint time); event Withdrawal(address indexed addr, uint funds, uint time); event Donation(address indexed addr, uint funds, uint time); event ReferralReward(address indexed referral_addr, address indexed referrer_addr, uint funds, uint reward_funds, uint time); //ERC20 event Transfer(address indexed from_addr, address indexed to_addr, uint tokens); } library SafeMath { function mul(uint a, uint b) internal pure returns (uint) { if (a == 0) { return 0; } uint c = a * b; require(c / a == b, "mul failed"); return c; } function sub(uint a, uint b) internal pure returns (uint) { require(b <= a, "sub failed"); return a - b; } function add(uint a, uint b) internal pure returns (uint) { uint c = a + b; require(c >= a, "add failed"); return c; } function sqrt(uint x) internal pure returns (uint y) { uint z = add(x, 1) / 2; y = x; while (z < y) { y = z; z = add(x / z, z) / 2; } } } library SafeMathInt { function sub(int a, int b) internal pure returns (int) { int c = a - b; require(c <= a, "sub failed"); return c; } function add(int a, int b) internal pure returns (int) { int c = a + b; require(c >= a, "add failed"); return c; } } library Fee { using SafeMath for uint; struct fee { uint num; uint den; } function split(fee memory f, uint value) internal pure returns (uint tax, uint taxed_value) { if (value == 0) { return (0, 0); } tax = value.mul(f.num) / f.den; taxed_value = value.sub(tax); } function get_tax(fee memory f, uint value) internal pure returns (uint tax) { if (value == 0) { return 0; } tax = value.mul(f.num) / f.den; } } library ToAddress { function toAddr(bytes source) internal pure returns (address addr) { assembly { addr := mload(add(source, 0x14)) } return addr; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"dividendsOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to_addr","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokens","type":"uint256"},{"name":"apply_fee","type":"bool"}],"name":"expectedFunds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"funds","type":"uint256"},{"name":"apply_fee","type":"bool"}],"name":"expectedTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokens","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"donate","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"referrer","type":"address"}],"name":"buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"reinvest","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"Purchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"Selling","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"Reinvestment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"Withdrawal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"Donation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"referral_addr","type":"address"},{"indexed":true,"name":"referrer_addr","type":"address"},{"indexed":false,"name":"funds","type":"uint256"},{"indexed":false,"name":"reward_funds","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"ReferralReward","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from_addr","type":"address"},{"indexed":true,"name":"to_addr","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
60016080819052600a60a0819052600082815581835560c0839052601460e081905260028490556003556101008390526064610120819052600493909355600583905561018060405260216101408190526101608490526006556007929092556c01431e0fae6d7217caa000000060085560098290555534801561008257600080fd5b50611a79806100926000396000f3006080604052600436106100ef5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461013357806306fdde031461016657806318160ddd146101f0578063313ce567146102055780633ccfd60b146102305780634b7503341461024557806370a082311461025a5780638620410b1461027b57806395d89b4114610290578063a9059cbb146102a5578063be2eaad4146102dd578063c5f60620146102fa578063e4849b3214610317578063e9fad8ee1461032f578063ed88c68e14610344578063f088d5471461034c578063fdb5a03e14610360575b61013161012c6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843750610375945050505050565b61037c565b005b34801561013f57600080fd5b50610154600160a060020a03600435166105e8565b60408051918252519081900360200190f35b34801561017257600080fd5b5061017b610718565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b557818101518382015260200161019d565b50505050905090810190601f1680156101e25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101fc57600080fd5b5061015461074f565b34801561021157600080fd5b5061021a610755565b6040805160ff9092168252519081900360200190f35b34801561023c57600080fd5b5061013161075a565b34801561025157600080fd5b50610154610855565b34801561026657600080fd5b50610154600160a060020a0360043516610890565b34801561028757600080fd5b506101546108ae565b34801561029c57600080fd5b5061017b6108c3565b3480156102b157600080fd5b506102c9600160a060020a03600435166024356108fa565b604080519115158252519081900360200190f35b3480156102e957600080fd5b506101546004356024351515610bd4565b34801561030657600080fd5b506101546004356024351515610c4f565b34801561032357600080fd5b50610131600435610caa565b34801561033b57600080fd5b50610131610f79565b610131610fa8565b610131600160a060020a036004351661037c565b34801561036c57600080fd5b50610131610ff9565b6014015190565b6040805180820190915260008054825260015460208301529081908190819081906103ad903463ffffffff6112cb16565b9095509350841515610409576040805160e560020a62461bcd02815260206004820152601b60248201527f496e636f6d696e672066756e647320697320746f6f20736d616c6c0000000000604482015290519081900360640190fd5b336000908152600b602052604090209250600160a060020a0386161580159061043b5750600160a060020a0386163314155b801561044f57508254600160a060020a0316155b1561047b57825473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387161783555b8254600160a060020a0316156104fc5782546104a3903390600160a060020a0316873461131e565b94508415156104fc576040805160e560020a62461bcd02815260206004820152601260248201527fe694b6e585a5e8b387e98791e5a4aae5b08f0000000000000000000000000000604482015290519081900360640190fd5b610505846113f9565b9092509050811515610561576040805160e560020a62461bcd02815260206004820152601260248201527fe694b6e585a5e8b387e98791e5a4aae5b08f0000000000000000000000000000604482015290519081900360640190fd5b60088190556105703383611520565b600a54610583908663ffffffff6115f016565b600a5560085433907fd721454499cf9c37b757e03b9d675df451c229048129d6e2d552216a035e6a559034908590670de0b6b3a7640000905b6040805194855260208501939093520482820152426060830152519081900360800190a2505050505050565b60006105f2611a14565b50600160a060020a038083166000908152600b60209081526040808320815160a081018352815490951685526001810154928501929092526002820154908401819052600382015460608501819052600490920154608085015261065b9163ffffffff6115f016565b9050600081121561066b57600080fd5b600060095411156106b0576106ad6009546106958460200151600a5461165890919063ffffffff16565b81151561069e57fe5b8391900463ffffffff6116d116565b90505b6000826080015113156106da5760808201516106d390829063ffffffff61172e16565b9050610703565b60008260800151121561070357608082015161070090829060000363ffffffff6116d116565b90505b600081121561071157600080fd5b9392505050565b60408051808201909152600e81527f50616e7468656f6e204368696e61000000000000000000000000000000000000602082015281565b60095490565b601281565b600080610766336105e8565b9150600082116107c0576040805160e560020a62461bcd02815260206004820152601560248201527f596f752068617665206e6f206469766964656e64730000000000000000000000604482015290519081900360640190fd5b50336000908152600b6020526040902060048101546107e5908363ffffffff6116d116565b6004820155604051339083156108fc029084906000818181858888f19350505050158015610817573d6000803e3d6000fd5b5060408051838152426020820152815133927fdf273cb619d95419a9cd0ec88123a0538c85064229baa6363788f743fff90deb928290030190a25050565b6000670de0b6b3a76400006108816b204fce5e3e2502611000000060085461178b90919063ffffffff16565b81151561088a57fe5b04905090565b600160a060020a03166000908152600b602052604090206001015490565b600854600090670de0b6b3a76400009061088a565b60408051808201909152600381527f5041430000000000000000000000000000000000000000000000000000000000602082015281565b6000808080808581811161097e576040805160e560020a62461bcd02815260206004820152602a60248201527f416d6f756e74206f6620746f6b656e73206d757374206265206772656174657260448201527f207468616e207a65726f00000000000000000000000000000000000000000000606482015290519081900360840190fd5b336000908152600b60205260409020600101548111156109e8576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b600160a060020a038816331415610a6f576040805160e560020a62461bcd02815260206004820152602660248201527f596f752063616e6e6f74207472616e7366657220746f6b656e7320746f20796f60448201527f757273656c660000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6040805180820190915260045481526005546020820152610a96908863ffffffff6112cb16565b9095509350841515610af2576040805160e560020a62461bcd02815260206004820152601e60248201527f496e73756666696369656e7420746f6b656e7320746f20646f20746861740000604482015290519081900360640190fd5b610afb856117eb565b9093509150821515610b57576040805160e560020a62461bcd02815260206004820152601e60248201527f496e73756666696369656e7420746f6b656e7320746f20646f20746861740000604482015290519081900360640190fd5b6008829055610b6633886118b5565b610b708885611520565b600a54610b83908463ffffffff6115f016565b600a55604080518881529051600160a060020a038a169133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001979650505050505050565b60008080841580610be55750600954155b15610bf35760009250610c47565b600954851115610c035760095494505b610c0c856117eb565b5091508315610c43576040805180820190915260025481526003546020820152610c3c908363ffffffff6112cb16565b9150508091505b8192505b505092915050565b60008080841515610c635760009250610c47565b8315610c97576040805180820190915260005481526001546020820152610c90908663ffffffff6112cb16565b9250508194505b610ca0856113f9565b5095945050505050565b60008080808085818111610d2e576040805160e560020a62461bcd02815260206004820152602a60248201527f416d6f756e74206f6620746f6b656e73206d757374206265206772656174657260448201527f207468616e207a65726f00000000000000000000000000000000000000000000606482015290519081900360840190fd5b336000908152600b6020526040902060010154811115610d98576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b610da1876117eb565b9096509450851515610e22576040805160e560020a62461bcd028152602060048201526024808201527fe6b292e69c89e8b6b3e5a4a0e79a84e4bba4e7898ce4be86e5819ae98099e4bb60448201527fb6e4ba8b00000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60088590556040805180820190915260025481526003546020820152610e4e908763ffffffff6112cb16565b9094509250831515610ecf576040805160e560020a62461bcd028152602060048201526024808201527fe6b292e69c89e8b6b3e5a4a0e79a84e4bba4e7898ce4be86e5819ae98099e4bb60448201527fb6e4ba8b00000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b610ed933886118b5565b336000908152600b602052604090206002810154909250610f00908463ffffffff6115f016565b6002830155600a54610f18908563ffffffff6115f016565b600a556008546040805189815260208101899052670de0b6b3a7640000909204828201524260608301525133917fafd310387603da0dcf44f11f54b04254b548c58b194e75f85851e849f0eef307919081900360800190a250505050505050565b336000908152600b602052604081206001015490811115610f9d57610f9d81610caa565b610fa561075a565b50565b600a54610fbb903463ffffffff6115f016565b600a5560408051348152426020820152815133927f106aac375bbcf013d1e52338bbf9e740009a1a3a6869f8daa1b72aa1620f5fec928290030190a2565b60008060008060008061100b336105e8565b955060008611611065576040805160e560020a62461bcd02815260206004820152601560248201527f596f752068617665206e6f206469766964656e64730000000000000000000000604482015290519081900360640190fd5b336000908152600b60205260409020600481015490955061108c908763ffffffff6116d116565b600486015560408051808201909152600054815260015460208201526110b8908763ffffffff6112cb16565b909450925083151561113a576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b8454600160a060020a0316156111e1578454611162903390600160a060020a0316868961131e565b93508315156111e1576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6111ea836113f9565b909250905081151561126c576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600881905561127b3383611520565b600a5461128e908563ffffffff6115f016565b600a5560085433907f1abe689c7914cafd54f789eb0851e90cba235302161e81e259ee4c357c374d829088908590670de0b6b3a7640000906105bc565b6000808215156112e057506000905080611317565b602084015184516112f890859063ffffffff61165816565b81151561130157fe5b049150611314838363ffffffff61178b16565b90505b9250929050565b600160a060020a0383166000908152600b60205260408120600181015482908190678ac7230489e80000116113ea576040805180820190915260065481526007546020820152611374908763ffffffff6112cb16565b6003850154919350915061138e908363ffffffff6115f016565b6003840155604080518681526020810184905242818301529051600160a060020a03808a1692908b16917f870e4e1dcfab6c09707448d3659b3d8097c084bf06e7467d6029940cd7122ee09181900360600190a38093506113ee565b8593505b505050949350505050565b6000806000806000806114346b204fce5e3e25026110000000611428600260085461165890919063ffffffff16565b9063ffffffff61178b16565b935061148c611470670de0b6b3a76400006114648a816b204fce5e3e25026110000000600863ffffffff61165816565b9063ffffffff61165816565b611480868063ffffffff61165816565b9063ffffffff6115f016565b92506114ab6b204fce5e3e25026110000000600263ffffffff61165816565b6114c4670de0b6b3a764000061146487611428886119bb565b8115156114cd57fe5b049150611512670de0b6b3a76400006114f86b204fce5e3e250261100000008563ffffffff61165816565b81151561150157fe5b60085491900463ffffffff6115f016565b919791965090945050505050565b600160a060020a0382166000908152600b6020526040812060095490911080156115775760095461156961155a828663ffffffff6115f016565b600a549063ffffffff61165816565b81151561157257fe5b04600a555b60095461158a908463ffffffff6115f016565b60095560018201546115a2908463ffffffff6115f016565b600183015580156115ea576115e46009546115c8600a548661165890919063ffffffff16565b8115156115d157fe5b600485015491900463ffffffff6116d116565b60048301555b50505050565b60008282018381101561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f616464206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b60008083151561166b5760009150611651565b5082820282848281151561167b57fe5b041461164d576040805160e560020a62461bcd02815260206004820152600a60248201527f6d756c206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008282018381121561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f616464206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008183038381131561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f737562206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b6000828211156117e5576040805160e560020a62461bcd02815260206004820152600a60248201527f737562206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008060008060006118146b204fce5e3e2502611000000060085461178b90919063ffffffff16565b9250611864670de0b6b3a764000061183e6b204fce5e3e250261100000008963ffffffff61165816565b81151561184757fe5b04611428856b204fce5e3e2502611000000063ffffffff6115f016565b915061187f670de0b6b3a7640000600263ffffffff61165816565b61189387611464868663ffffffff6115f016565b81151561189c57fe5b670de0b6b3a76400009190040496919550909350505050565b600160a060020a0382166000908152600b60205260408120600954909190831415611901576009546001830154600a546118f49163ffffffff61165816565b8115156118fd57fe5b0490505b60095461191761155a828663ffffffff61178b16565b81151561192057fe5b04600a55600954611937908463ffffffff61178b16565b600955600182015461194f908463ffffffff61178b16565b6001830155600954600010156119a05761199660095461197a600a548661165890919063ffffffff16565b81151561198357fe5b600485015491900463ffffffff61172e16565b60048301556115ea565b80156115ea5760048201546115e4908263ffffffff61172e16565b60008060026119cb8460016115f0565b8115156119d457fe5b0490508291505b81811015611a0e5780915060026119fd82858115156119f657fe5b04836115f0565b811515611a0657fe5b0490506119db565b50919050565b60a0604051908101604052806000600160a060020a031681526020016000815260200160008152602001600081526020016000815250905600a165627a7a723058208bfca6b637ee894d59a4a2e161ca0a02f9d50a42d56365ef0c2e0f0c2ca787590029
Deployed Bytecode
0x6080604052600436106100ef5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461013357806306fdde031461016657806318160ddd146101f0578063313ce567146102055780633ccfd60b146102305780634b7503341461024557806370a082311461025a5780638620410b1461027b57806395d89b4114610290578063a9059cbb146102a5578063be2eaad4146102dd578063c5f60620146102fa578063e4849b3214610317578063e9fad8ee1461032f578063ed88c68e14610344578063f088d5471461034c578063fdb5a03e14610360575b61013161012c6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843750610375945050505050565b61037c565b005b34801561013f57600080fd5b50610154600160a060020a03600435166105e8565b60408051918252519081900360200190f35b34801561017257600080fd5b5061017b610718565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b557818101518382015260200161019d565b50505050905090810190601f1680156101e25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101fc57600080fd5b5061015461074f565b34801561021157600080fd5b5061021a610755565b6040805160ff9092168252519081900360200190f35b34801561023c57600080fd5b5061013161075a565b34801561025157600080fd5b50610154610855565b34801561026657600080fd5b50610154600160a060020a0360043516610890565b34801561028757600080fd5b506101546108ae565b34801561029c57600080fd5b5061017b6108c3565b3480156102b157600080fd5b506102c9600160a060020a03600435166024356108fa565b604080519115158252519081900360200190f35b3480156102e957600080fd5b506101546004356024351515610bd4565b34801561030657600080fd5b506101546004356024351515610c4f565b34801561032357600080fd5b50610131600435610caa565b34801561033b57600080fd5b50610131610f79565b610131610fa8565b610131600160a060020a036004351661037c565b34801561036c57600080fd5b50610131610ff9565b6014015190565b6040805180820190915260008054825260015460208301529081908190819081906103ad903463ffffffff6112cb16565b9095509350841515610409576040805160e560020a62461bcd02815260206004820152601b60248201527f496e636f6d696e672066756e647320697320746f6f20736d616c6c0000000000604482015290519081900360640190fd5b336000908152600b602052604090209250600160a060020a0386161580159061043b5750600160a060020a0386163314155b801561044f57508254600160a060020a0316155b1561047b57825473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387161783555b8254600160a060020a0316156104fc5782546104a3903390600160a060020a0316873461131e565b94508415156104fc576040805160e560020a62461bcd02815260206004820152601260248201527fe694b6e585a5e8b387e98791e5a4aae5b08f0000000000000000000000000000604482015290519081900360640190fd5b610505846113f9565b9092509050811515610561576040805160e560020a62461bcd02815260206004820152601260248201527fe694b6e585a5e8b387e98791e5a4aae5b08f0000000000000000000000000000604482015290519081900360640190fd5b60088190556105703383611520565b600a54610583908663ffffffff6115f016565b600a5560085433907fd721454499cf9c37b757e03b9d675df451c229048129d6e2d552216a035e6a559034908590670de0b6b3a7640000905b6040805194855260208501939093520482820152426060830152519081900360800190a2505050505050565b60006105f2611a14565b50600160a060020a038083166000908152600b60209081526040808320815160a081018352815490951685526001810154928501929092526002820154908401819052600382015460608501819052600490920154608085015261065b9163ffffffff6115f016565b9050600081121561066b57600080fd5b600060095411156106b0576106ad6009546106958460200151600a5461165890919063ffffffff16565b81151561069e57fe5b8391900463ffffffff6116d116565b90505b6000826080015113156106da5760808201516106d390829063ffffffff61172e16565b9050610703565b60008260800151121561070357608082015161070090829060000363ffffffff6116d116565b90505b600081121561071157600080fd5b9392505050565b60408051808201909152600e81527f50616e7468656f6e204368696e61000000000000000000000000000000000000602082015281565b60095490565b601281565b600080610766336105e8565b9150600082116107c0576040805160e560020a62461bcd02815260206004820152601560248201527f596f752068617665206e6f206469766964656e64730000000000000000000000604482015290519081900360640190fd5b50336000908152600b6020526040902060048101546107e5908363ffffffff6116d116565b6004820155604051339083156108fc029084906000818181858888f19350505050158015610817573d6000803e3d6000fd5b5060408051838152426020820152815133927fdf273cb619d95419a9cd0ec88123a0538c85064229baa6363788f743fff90deb928290030190a25050565b6000670de0b6b3a76400006108816b204fce5e3e2502611000000060085461178b90919063ffffffff16565b81151561088a57fe5b04905090565b600160a060020a03166000908152600b602052604090206001015490565b600854600090670de0b6b3a76400009061088a565b60408051808201909152600381527f5041430000000000000000000000000000000000000000000000000000000000602082015281565b6000808080808581811161097e576040805160e560020a62461bcd02815260206004820152602a60248201527f416d6f756e74206f6620746f6b656e73206d757374206265206772656174657260448201527f207468616e207a65726f00000000000000000000000000000000000000000000606482015290519081900360840190fd5b336000908152600b60205260409020600101548111156109e8576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b600160a060020a038816331415610a6f576040805160e560020a62461bcd02815260206004820152602660248201527f596f752063616e6e6f74207472616e7366657220746f6b656e7320746f20796f60448201527f757273656c660000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6040805180820190915260045481526005546020820152610a96908863ffffffff6112cb16565b9095509350841515610af2576040805160e560020a62461bcd02815260206004820152601e60248201527f496e73756666696369656e7420746f6b656e7320746f20646f20746861740000604482015290519081900360640190fd5b610afb856117eb565b9093509150821515610b57576040805160e560020a62461bcd02815260206004820152601e60248201527f496e73756666696369656e7420746f6b656e7320746f20646f20746861740000604482015290519081900360640190fd5b6008829055610b6633886118b5565b610b708885611520565b600a54610b83908463ffffffff6115f016565b600a55604080518881529051600160a060020a038a169133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001979650505050505050565b60008080841580610be55750600954155b15610bf35760009250610c47565b600954851115610c035760095494505b610c0c856117eb565b5091508315610c43576040805180820190915260025481526003546020820152610c3c908363ffffffff6112cb16565b9150508091505b8192505b505092915050565b60008080841515610c635760009250610c47565b8315610c97576040805180820190915260005481526001546020820152610c90908663ffffffff6112cb16565b9250508194505b610ca0856113f9565b5095945050505050565b60008080808085818111610d2e576040805160e560020a62461bcd02815260206004820152602a60248201527f416d6f756e74206f6620746f6b656e73206d757374206265206772656174657260448201527f207468616e207a65726f00000000000000000000000000000000000000000000606482015290519081900360840190fd5b336000908152600b6020526040902060010154811115610d98576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b610da1876117eb565b9096509450851515610e22576040805160e560020a62461bcd028152602060048201526024808201527fe6b292e69c89e8b6b3e5a4a0e79a84e4bba4e7898ce4be86e5819ae98099e4bb60448201527fb6e4ba8b00000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60088590556040805180820190915260025481526003546020820152610e4e908763ffffffff6112cb16565b9094509250831515610ecf576040805160e560020a62461bcd028152602060048201526024808201527fe6b292e69c89e8b6b3e5a4a0e79a84e4bba4e7898ce4be86e5819ae98099e4bb60448201527fb6e4ba8b00000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b610ed933886118b5565b336000908152600b602052604090206002810154909250610f00908463ffffffff6115f016565b6002830155600a54610f18908563ffffffff6115f016565b600a556008546040805189815260208101899052670de0b6b3a7640000909204828201524260608301525133917fafd310387603da0dcf44f11f54b04254b548c58b194e75f85851e849f0eef307919081900360800190a250505050505050565b336000908152600b602052604081206001015490811115610f9d57610f9d81610caa565b610fa561075a565b50565b600a54610fbb903463ffffffff6115f016565b600a5560408051348152426020820152815133927f106aac375bbcf013d1e52338bbf9e740009a1a3a6869f8daa1b72aa1620f5fec928290030190a2565b60008060008060008061100b336105e8565b955060008611611065576040805160e560020a62461bcd02815260206004820152601560248201527f596f752068617665206e6f206469766964656e64730000000000000000000000604482015290519081900360640190fd5b336000908152600b60205260409020600481015490955061108c908763ffffffff6116d116565b600486015560408051808201909152600054815260015460208201526110b8908763ffffffff6112cb16565b909450925083151561113a576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b8454600160a060020a0316156111e1578454611162903390600160a060020a0316868961131e565b93508315156111e1576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6111ea836113f9565b909250905081151561126c576040805160e560020a62461bcd02815260206004820152602160248201527f496e73756666696369656e74206469766964656e647320746f20646f2074686160448201527f7400000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600881905561127b3383611520565b600a5461128e908563ffffffff6115f016565b600a5560085433907f1abe689c7914cafd54f789eb0851e90cba235302161e81e259ee4c357c374d829088908590670de0b6b3a7640000906105bc565b6000808215156112e057506000905080611317565b602084015184516112f890859063ffffffff61165816565b81151561130157fe5b049150611314838363ffffffff61178b16565b90505b9250929050565b600160a060020a0383166000908152600b60205260408120600181015482908190678ac7230489e80000116113ea576040805180820190915260065481526007546020820152611374908763ffffffff6112cb16565b6003850154919350915061138e908363ffffffff6115f016565b6003840155604080518681526020810184905242818301529051600160a060020a03808a1692908b16917f870e4e1dcfab6c09707448d3659b3d8097c084bf06e7467d6029940cd7122ee09181900360600190a38093506113ee565b8593505b505050949350505050565b6000806000806000806114346b204fce5e3e25026110000000611428600260085461165890919063ffffffff16565b9063ffffffff61178b16565b935061148c611470670de0b6b3a76400006114648a816b204fce5e3e25026110000000600863ffffffff61165816565b9063ffffffff61165816565b611480868063ffffffff61165816565b9063ffffffff6115f016565b92506114ab6b204fce5e3e25026110000000600263ffffffff61165816565b6114c4670de0b6b3a764000061146487611428886119bb565b8115156114cd57fe5b049150611512670de0b6b3a76400006114f86b204fce5e3e250261100000008563ffffffff61165816565b81151561150157fe5b60085491900463ffffffff6115f016565b919791965090945050505050565b600160a060020a0382166000908152600b6020526040812060095490911080156115775760095461156961155a828663ffffffff6115f016565b600a549063ffffffff61165816565b81151561157257fe5b04600a555b60095461158a908463ffffffff6115f016565b60095560018201546115a2908463ffffffff6115f016565b600183015580156115ea576115e46009546115c8600a548661165890919063ffffffff16565b8115156115d157fe5b600485015491900463ffffffff6116d116565b60048301555b50505050565b60008282018381101561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f616464206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b60008083151561166b5760009150611651565b5082820282848281151561167b57fe5b041461164d576040805160e560020a62461bcd02815260206004820152600a60248201527f6d756c206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008282018381121561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f616464206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008183038381131561164d576040805160e560020a62461bcd02815260206004820152600a60248201527f737562206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b6000828211156117e5576040805160e560020a62461bcd02815260206004820152600a60248201527f737562206661696c656400000000000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008060008060006118146b204fce5e3e2502611000000060085461178b90919063ffffffff16565b9250611864670de0b6b3a764000061183e6b204fce5e3e250261100000008963ffffffff61165816565b81151561184757fe5b04611428856b204fce5e3e2502611000000063ffffffff6115f016565b915061187f670de0b6b3a7640000600263ffffffff61165816565b61189387611464868663ffffffff6115f016565b81151561189c57fe5b670de0b6b3a76400009190040496919550909350505050565b600160a060020a0382166000908152600b60205260408120600954909190831415611901576009546001830154600a546118f49163ffffffff61165816565b8115156118fd57fe5b0490505b60095461191761155a828663ffffffff61178b16565b81151561192057fe5b04600a55600954611937908463ffffffff61178b16565b600955600182015461194f908463ffffffff61178b16565b6001830155600954600010156119a05761199660095461197a600a548661165890919063ffffffff16565b81151561198357fe5b600485015491900463ffffffff61172e16565b60048301556115ea565b80156115ea5760048201546115e4908263ffffffff61172e16565b60008060026119cb8460016115f0565b8115156119d457fe5b0490508291505b81811015611a0e5780915060026119fd82858115156119f657fe5b04836115f0565b811515611a0657fe5b0490506119db565b50919050565b60a0604051908101604052806000600160a060020a031681526020016000815260200160008152602001600081526020016000815250905600a165627a7a723058208bfca6b637ee894d59a4a2e161ca0a02f9d50a42d56365ef0c2e0f0c2ca787590029
Swarm Source
bzzr://8bfca6b637ee894d59a4a2e161ca0a02f9d50a42d56365ef0c2e0f0c2ca78759
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 23 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,375.72 | 0.000000000000000012 | <$0.000001 |
[ 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.