Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
200,312,311.12371244 SPNK
Holders
83
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
SpankICO
Compiler Version
v0.4.16+commit.d7661dd9
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2017-09-27 */ pragma solidity ^0.4.11; /** * @author Jefferson Davis * Spank_ICO.sol creates the client's token for crowdsale and allows for subsequent token sales and minting of tokens * In addition, there is a quarterly dividend payout triggered by the owner, plus creates a transaction record prior to payout * Crowdsale contracts edited from original contract code at https://www.ethereum.org/crowdsale#crowdfund-your-idea * Additional crowdsale contracts, functions, libraries from OpenZeppelin * at https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts/token * Token contract edited from original contract code at https://www.ethereum.org/token * ERC20 interface and certain token functions adapted from https://github.com/ConsenSys/Tokens **/ contract ERC20 { //Sets events and functions for ERC20 token event Approval(address indexed _owner, address indexed _spender, uint _value); event Transfer(address indexed _from, address indexed _to, uint _value); function allowance(address _owner, address _spender) constant returns (uint remaining); function approve(address _spender, uint _value) returns (bool success); function balanceOf(address _owner) constant returns (uint balance); function transfer(address _to, uint _value) returns (bool success); function transferFrom(address _from, address _to, uint _value) returns (bool success); } contract Owned { //Public variable address public owner; //Sets contract creator as the owner function Owned() { owner = msg.sender; } //Sets onlyOwner modifier for specified functions modifier onlyOwner { require(msg.sender == owner); _; } //Allows for transfer of contract ownership function transferOwnership(address newOwner) onlyOwner { owner = newOwner; } } library SafeMath { function add(uint256 a, uint256 b) internal returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } function div(uint256 a, uint256 b) internal returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function max64(uint64 a, uint64 b) internal constant returns (uint64) { return a >= b ? a : b; } function max256(uint256 a, uint256 b) internal constant returns (uint256) { return a >= b ? a : b; } function min64(uint64 a, uint64 b) internal constant returns (uint64) { return a < b ? a : b; } function min256(uint256 a, uint256 b) internal constant returns (uint256) { return a < b ? a : b; } function mul(uint256 a, uint256 b) internal returns (uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function sub(uint256 a, uint256 b) internal returns (uint256) { assert(b <= a); return a - b; } } contract Spank is ERC20, Owned { //Applies SafeMath library to uint256 operations using SafeMath for uint256; //Public variables string public name; string public symbol; uint256 public decimals; uint256 public initialSupply; uint256 public totalSupply; //Variables uint256 multiplier; //Creates arrays for balances mapping (address => uint256) balance; mapping (address => mapping (address => uint256)) allowed; //Creates modifier to prevent short address attack modifier onlyPayloadSize(uint size) { if(msg.data.length < size + 4) revert(); _; } //Constructor function Spank(string tokenName, string tokenSymbol, uint8 decimalUnits, uint256 decimalMultiplier, uint256 initialAmount) { name = tokenName; symbol = tokenSymbol; decimals = decimalUnits; multiplier = decimalMultiplier; initialSupply = initialAmount; totalSupply = initialSupply; } //Provides the remaining balance of approved tokens from function approve function allowance(address _owner, address _spender) constant returns (uint256 remaining) { return allowed[_owner][_spender]; } //Allows for a certain amount of tokens to be spent on behalf of the account owner function approve(address _spender, uint256 _value) returns (bool success) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } //Returns the account balance function balanceOf(address _owner) constant returns (uint256 remainingBalance) { return balance[_owner]; } //Allows contract owner to mint new tokens, prevents numerical overflow function mintToken(address target, uint256 mintedAmount) onlyOwner returns (bool success) { require(mintedAmount > 0); uint256 addTokens = mintedAmount; balance[target] += addTokens; totalSupply += addTokens; Transfer(0, target, addTokens); return true; } //Sends tokens from sender's account function transfer(address _to, uint256 _value) onlyPayloadSize(2 * 32) returns (bool success) { if ((balance[msg.sender] >= _value) && (balance[_to] + _value > balance[_to])) { balance[msg.sender] -= _value; balance[_to] += _value; Transfer(msg.sender, _to, _value); return true; } else { return false; } } //Transfers tokens from an approved account function transferFrom(address _from, address _to, uint256 _value) onlyPayloadSize(3 * 32) returns (bool success) { if ((balance[_from] >= _value) && (allowed[_from][msg.sender] >= _value) && (balance[_to] + _value > balance[_to])) { balance[_to] += _value; balance[_from] -= _value; allowed[_from][msg.sender] -= _value; Transfer(_from, _to, _value); return true; } else { return false; } } } contract SpankICO is Owned, Spank { //Applies SafeMath library to uint256 operations using SafeMath for uint256; //Public Variables address public multiSigWallet; uint256 public amountRaised; uint256 public dividendPayment; uint256 public numberOfRecordEntries; uint256 public numberOfTokenHolders; uint256 public startTime; uint256 public stopTime; uint256 public hardcap; uint256 public price; //Variables address[] recordTokenHolders; address[] tokenHolders; bool crowdsaleClosed = true; mapping (address => uint256) recordBalance; mapping (address => uint256) recordTokenHolderID; mapping (address => uint256) tokenHolderID; string tokenName = "Spank"; string tokenSymbol = "SPNK"; uint256 initialTokens = 20000000000000000; uint256 multiplier = 100000000; uint8 decimalUnits = 8; //Initializes the token function SpankICO() Spank(tokenName, tokenSymbol, decimalUnits, multiplier, initialTokens) { balance[msg.sender] = initialTokens; Transfer(0, msg.sender, initialTokens); multiSigWallet = msg.sender; hardcap = 30000000000000000; setPrice(3000); dividendPayment = 50000000000000; recordTokenHolders.length = 2; tokenHolders.length = 2; tokenHolders[1] = msg.sender; numberOfTokenHolders++; } //Fallback function creates tokens and sends to investor when crowdsale is open function () payable { require((!crowdsaleClosed) && (now < stopTime) && (totalSupply.add(msg.value.mul(getPrice()).mul(multiplier).div(1 ether)) <= hardcap)); address recipient = msg.sender; amountRaised = amountRaised.add(msg.value.div(1 ether)); uint256 tokens = msg.value.mul(getPrice()).mul(multiplier).div(1 ether); totalSupply = totalSupply.add(tokens); balance[recipient] = balance[recipient].add(tokens); require(multiSigWallet.send(msg.value)); Transfer(0, recipient, tokens); if (tokenHolderID[recipient] == 0) { addTokenHolder(recipient); } } //Adds an address to the recorrdEntry list function addRecordEntry(address account) internal { if (recordTokenHolderID[account] == 0) { recordTokenHolderID[account] = recordTokenHolders.length; recordTokenHolders.length++; recordTokenHolders[recordTokenHolders.length.sub(1)] = account; numberOfRecordEntries++; } } //Adds an address to the tokenHolders list function addTokenHolder(address account) returns (bool success) { bool status = false; if (balance[account] != 0) { tokenHolderID[account] = tokenHolders.length; tokenHolders.length++; tokenHolders[tokenHolders.length.sub(1)] = account; numberOfTokenHolders++; status = true; } return status; } //Allows the owner to create an record of token owners and their balances function createRecord() internal { for (uint i = 0; i < (tokenHolders.length.sub(1)); i++ ) { address holder = getTokenHolder(i); uint256 holderBal = balanceOf(holder); addRecordEntry(holder); recordBalance[holder] = holderBal; } } //Returns the current price of the token for the crowdsale function getPrice() returns (uint256 result) { return price; } //Returns record contents function getRecordBalance(address record) constant returns (uint256) { return recordBalance[record]; } //Returns the address of a specific index value function getRecordHolder(uint256 index) constant returns (address) { return address(recordTokenHolders[index.add(1)]); } //Returns time remaining on crowdsale function getRemainingTime() constant returns (uint256) { return stopTime; } //Returns the address of a specific index value function getTokenHolder(uint256 index) constant returns (address) { return address(tokenHolders[index.add(1)]); } //Pays out dividends to tokens holders of record, based on 500,000 token payment function payOutDividend() onlyOwner returns (bool success) { createRecord(); uint256 volume = totalSupply; for (uint i = 0; i < (tokenHolders.length.sub(1)); i++) { address payee = getTokenHolder(i); uint256 stake = volume.div(dividendPayment.div(multiplier)); uint256 dividendPayout = balanceOf(payee).div(stake).mul(multiplier); balance[payee] = balance[payee].add(dividendPayout); totalSupply = totalSupply.add(dividendPayout); Transfer(0, payee, dividendPayout); } return true; } //Sets the multisig wallet for a crowdsale function setMultiSigWallet(address wallet) onlyOwner returns (bool success) { multiSigWallet = wallet; return true; } //Sets the token price function setPrice(uint256 newPriceperEther) onlyOwner returns (uint256) { require(newPriceperEther > 0); price = newPriceperEther; return price; } //Allows owner to start the crowdsale from the time of execution until a specified stopTime function startSale(uint256 saleStart, uint256 saleStop) onlyOwner returns (bool success) { require(saleStop > now); startTime = saleStart; stopTime = saleStop; crowdsaleClosed = false; return true; } //Allows owner to stop the crowdsale immediately function stopSale() onlyOwner returns (bool success) { stopTime = now; crowdsaleClosed = true; return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"stopTime","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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"payOutDividend","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numberOfTokenHolders","outputs":[{"name":"","type":"uint256"}],"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":"index","type":"uint256"}],"name":"getRecordHolder","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"record","type":"address"}],"name":"getRecordBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"multiSigWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"remainingBalance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"}],"name":"mintToken","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"amountRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfRecordEntries","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newPriceperEther","type":"uint256"}],"name":"setPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"getPrice","outputs":[{"name":"result","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"dividendPayment","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hardcap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"getTokenHolder","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addTokenHolder","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"stopSale","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRemainingTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"wallet","type":"address"}],"name":"setMultiSigWallet","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"saleStart","type":"uint256"},{"name":"saleStop","type":"uint256"}],"name":"startSale","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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"},{"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"}]
Contract Creation Code
60606040526001601460006101000a81548160ff0219169083151502179055506040805190810160405280600581526020017f5370616e6b000000000000000000000000000000000000000000000000000000815250601890805190602001906200006c92919062000517565b506040805190810160405280600481526020017f53504e4b0000000000000000000000000000000000000000000000000000000081525060199080519060200190620000ba92919062000517565b5066470de4df820000601a556305f5e100601b556008601c60006101000a81548160ff021916908360ff1602179055503415620000f657600080fd5b5b60188054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015620001915780601f10620001655761010080835404028352916020019162000191565b820191906000526020600020905b8154815290600101906020018083116200017357829003601f168201915b505050505060198054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015620002305780601f10620002045761010080835404028352916020019162000230565b820191906000526020600020905b8154815290600101906020018083116200021257829003601f168201915b5050505050601c60009054906101000a900460ff16601b54601a545b5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8460019080519060200190620002a692919062000517565b508360029080519060200190620002bf92919062000517565b508260ff1660038190555081600681905550806004819055506004546005819055505b5050505050601a54600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef601a546040518082815260200191505060405180910390a333600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550666a94d74f430000601081905550620003ef610bb8620004966401000000000262001860176401000000009004565b50652d79883d2000600b8190555060026012816200040e91906200059e565b5060026013816200042091906200059e565b5033601360018154811015156200043357fe5b906000526020600020900160005b6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d600081548092919060010191905055505b620005f5565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620004f457600080fd5b6000821115156200050457600080fd5b8160118190555060115490505b5b919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200055a57805160ff19168380011785556200058b565b828001600101855582156200058b579182015b828111156200058a5782518255916020019190600101906200056d565b5b5090506200059a9190620005cd565b5090565b815481835581811511620005c857818360005260206000209182019101620005c79190620005cd565b5b505050565b620005f291905b80821115620005ee576000816000905550600101620005d4565b5090565b90565b61215780620006056000396000f3006060604052361561019f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303ff5e731461047157806306fdde031461049a578063095ea7b3146105295780630b5982f014610583578063178ef307146105b057806318160ddd146105d95780631e27ae4d1461060257806323b872dd14610665578063268b0459146106de578063313ce5671461072b578063378dc3dc146107545780634b8feb4f1461077d57806370a08231146107d257806378e979251461081f57806379c65068146108485780637b3e5e7b146108a25780638da5cb5b146108cb578063908ccc5e1461092057806391b7f5ed1461094957806395d89b411461098057806398d5fdca14610a0f578063a035b1fe14610a38578063a9059cbb14610a61578063ab74731d14610abb578063b071cbe614610ae4578063ca55954c14610b0d578063da49808414610b70578063dd62ed3e14610bc1578063e36b0b3714610c2d578063efb98bcf14610c5a578063f03b0c0b14610c83578063f2fde38b14610cd4578063f4f3122e14610d0d575b5b600080601460009054906101000a900460ff161580156101c15750600f5442105b801561022a5750601054610227610216670de0b6b3a7640000610208601b546101fa6101eb610d51565b34610d5c90919063ffffffff16565b610d5c90919063ffffffff16565b610d9090919063ffffffff16565b600554610dac90919063ffffffff16565b11155b151561023557600080fd5b339150610267610256670de0b6b3a764000034610d9090919063ffffffff16565b600a54610dac90919063ffffffff16565b600a819055506102b5670de0b6b3a76400006102a7601b5461029961028a610d51565b34610d5c90919063ffffffff16565b610d5c90919063ffffffff16565b610d9090919063ffffffff16565b90506102cc81600554610dac90919063ffffffff16565b60058190555061032481600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610dac90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156103c957600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000601760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141561046c5761046a82610dcb565b505b5b5050005b341561047c57600080fd5b610484610f0c565b6040518082815260200191505060405180910390f35b34156104a557600080fd5b6104ad610f12565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104ee5780820151818401525b6020810190506104d2565b50505050905090810190601f16801561051b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561053457600080fd5b610569600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fb0565b604051808215151515815260200191505060405180910390f35b341561058e57600080fd5b6105966110a3565b604051808215151515815260200191505060405180910390f35b34156105bb57600080fd5b6105c36112bc565b6040518082815260200191505060405180910390f35b34156105e457600080fd5b6105ec6112c2565b6040518082815260200191505060405180910390f35b341561060d57600080fd5b61062360048080359060200190919050506112c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561067057600080fd5b6106c4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611321565b604051808215151515815260200191505060405180910390f35b34156106e957600080fd5b610715600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611639565b6040518082815260200191505060405180910390f35b341561073657600080fd5b61073e611683565b6040518082815260200191505060405180910390f35b341561075f57600080fd5b610767611689565b6040518082815260200191505060405180910390f35b341561078857600080fd5b61079061168f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107dd57600080fd5b610809600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116b5565b6040518082815260200191505060405180910390f35b341561082a57600080fd5b6108326116ff565b6040518082815260200191505060405180910390f35b341561085357600080fd5b610888600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611705565b604051808215151515815260200191505060405180910390f35b34156108ad57600080fd5b6108b561182f565b6040518082815260200191505060405180910390f35b34156108d657600080fd5b6108de611835565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561092b57600080fd5b61093361185a565b6040518082815260200191505060405180910390f35b341561095457600080fd5b61096a6004808035906020019091905050611860565b6040518082815260200191505060405180910390f35b341561098b57600080fd5b6109936118df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109d45780820151818401525b6020810190506109b8565b50505050905090810190601f168015610a015780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a1a57600080fd5b610a22610d51565b6040518082815260200191505060405180910390f35b3415610a4357600080fd5b610a4b61197d565b6040518082815260200191505060405180910390f35b3415610a6c57600080fd5b610aa1600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611983565b604051808215151515815260200191505060405180910390f35b3415610ac657600080fd5b610ace611b88565b6040518082815260200191505060405180910390f35b3415610aef57600080fd5b610af7611b8e565b6040518082815260200191505060405180910390f35b3415610b1857600080fd5b610b2e6004808035906020019091905050611b94565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610b7b57600080fd5b610ba7600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dcb565b604051808215151515815260200191505060405180910390f35b3415610bcc57600080fd5b610c17600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bed565b6040518082815260200191505060405180910390f35b3415610c3857600080fd5b610c40611c75565b604051808215151515815260200191505060405180910390f35b3415610c6557600080fd5b610c6d611cfd565b6040518082815260200191505060405180910390f35b3415610c8e57600080fd5b610cba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611d08565b604051808215151515815260200191505060405180910390f35b3415610cdf57600080fd5b610d0b600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611db1565b005b3415610d1857600080fd5b610d376004808035906020019091908035906020019091905050611e51565b604051808215151515815260200191505060405180910390f35b600060115490505b90565b60008082840290506000841480610d7d5750828482811515610d7a57fe5b04145b1515610d8557fe5b8091505b5092915050565b6000808284811515610d9e57fe5b0490508091505b5092915050565b6000808284019050838110151515610dc057fe5b8091505b5092915050565b600080600090506000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141515610f0257601380549050601760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060138054809190600101610e7891906120da565b50826013610e956001601380549050611ef190919063ffffffff16565b815481101515610ea157fe5b906000526020600020900160005b6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60008154809291906001019190505550600190505b8091505b50919050565b600f5481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fa85780601f10610f7d57610100808354040283529160200191610fa8565b820191906000526020600020905b815481529060010190602001808311610f8b57829003601f168201915b505050505081565b600081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3600190505b92915050565b6000806000806000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110757600080fd5b61110f611f0b565b6005549450600093505b6111326001601380549050611ef190919063ffffffff16565b8410156112ae5761114284611b94565b925061116d61115e601b54600b54610d9090919063ffffffff16565b86610d9090919063ffffffff16565b915061119e601b5461119084611182876116b5565b610d9090919063ffffffff16565b610d5c90919063ffffffff16565b90506111f281600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610dac90919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061124a81600554610dac90919063ffffffff16565b6005819055508273ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b8380600101945050611119565b600195505b5b505050505090565b600d5481565b60055481565b600060126112e0600184610dac90919063ffffffff16565b8154811015156112ec57fe5b906000526020600020900160005b9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b919050565b60006060600481016000369050101561133957600080fd5b82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611404575082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b801561148f5750600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156116265782600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150611630565b60009150611630565b5b5b509392505050565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60035481565b60045481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b600e5481565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561176357600080fd5b60008311151561177257600080fd5b82905080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550806005600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600191505b5b5092915050565b600a5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118bd57600080fd5b6000821115156118cc57600080fd5b8160118190555060115490505b5b919050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081565b60115481565b60006040600481016000369050101561199b57600080fd5b82600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611a695750600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b15611b765782600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150611b80565b60009150611b80565b5b5b5092915050565b600b5481565b60105481565b60006013611bac600184610dac90919063ffffffff16565b815481101515611bb857fe5b906000526020600020900160005b9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b92915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611cd257600080fd5b42600f819055506001601460006101000a81548160ff021916908315150217905550600190505b5b90565b6000600f5490505b90565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d6557600080fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0c57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611eae57600080fd5b4282111515611ebc57600080fd5b82600e8190555081600f819055506000601460006101000a81548160ff021916908315150217905550600190505b5b92915050565b6000828211151515611eff57fe5b81830390505b92915050565b60008060008092505b611f2d6001601380549050611ef190919063ffffffff16565b831015611fa557611f3d83611b94565b9150611f48826116b5565b9050611f5382611fab565b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8280600101935050611f14565b5b505050565b6000601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156120d657601280549050601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506012805480919060010161205091906120da565b5080601261206d6001601280549050611ef190919063ffffffff16565b81548110151561207957fe5b906000526020600020900160005b6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c600081548092919060010191905055505b5b50565b815481835581811511612101578183600052602060002091820191016121009190612106565b5b505050565b61212891905b8082111561212457600081600090555060010161210c565b5090565b905600a165627a7a7230582046bf281e1dbbce574a311f9d05f0fe09bfdab48a4b56478c0f3a79b6f14c06780029
Deployed Bytecode
0x6060604052361561019f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303ff5e731461047157806306fdde031461049a578063095ea7b3146105295780630b5982f014610583578063178ef307146105b057806318160ddd146105d95780631e27ae4d1461060257806323b872dd14610665578063268b0459146106de578063313ce5671461072b578063378dc3dc146107545780634b8feb4f1461077d57806370a08231146107d257806378e979251461081f57806379c65068146108485780637b3e5e7b146108a25780638da5cb5b146108cb578063908ccc5e1461092057806391b7f5ed1461094957806395d89b411461098057806398d5fdca14610a0f578063a035b1fe14610a38578063a9059cbb14610a61578063ab74731d14610abb578063b071cbe614610ae4578063ca55954c14610b0d578063da49808414610b70578063dd62ed3e14610bc1578063e36b0b3714610c2d578063efb98bcf14610c5a578063f03b0c0b14610c83578063f2fde38b14610cd4578063f4f3122e14610d0d575b5b600080601460009054906101000a900460ff161580156101c15750600f5442105b801561022a5750601054610227610216670de0b6b3a7640000610208601b546101fa6101eb610d51565b34610d5c90919063ffffffff16565b610d5c90919063ffffffff16565b610d9090919063ffffffff16565b600554610dac90919063ffffffff16565b11155b151561023557600080fd5b339150610267610256670de0b6b3a764000034610d9090919063ffffffff16565b600a54610dac90919063ffffffff16565b600a819055506102b5670de0b6b3a76400006102a7601b5461029961028a610d51565b34610d5c90919063ffffffff16565b610d5c90919063ffffffff16565b610d9090919063ffffffff16565b90506102cc81600554610dac90919063ffffffff16565b60058190555061032481600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610dac90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156103c957600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000601760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141561046c5761046a82610dcb565b505b5b5050005b341561047c57600080fd5b610484610f0c565b6040518082815260200191505060405180910390f35b34156104a557600080fd5b6104ad610f12565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104ee5780820151818401525b6020810190506104d2565b50505050905090810190601f16801561051b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561053457600080fd5b610569600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fb0565b604051808215151515815260200191505060405180910390f35b341561058e57600080fd5b6105966110a3565b604051808215151515815260200191505060405180910390f35b34156105bb57600080fd5b6105c36112bc565b6040518082815260200191505060405180910390f35b34156105e457600080fd5b6105ec6112c2565b6040518082815260200191505060405180910390f35b341561060d57600080fd5b61062360048080359060200190919050506112c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561067057600080fd5b6106c4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611321565b604051808215151515815260200191505060405180910390f35b34156106e957600080fd5b610715600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611639565b6040518082815260200191505060405180910390f35b341561073657600080fd5b61073e611683565b6040518082815260200191505060405180910390f35b341561075f57600080fd5b610767611689565b6040518082815260200191505060405180910390f35b341561078857600080fd5b61079061168f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107dd57600080fd5b610809600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116b5565b6040518082815260200191505060405180910390f35b341561082a57600080fd5b6108326116ff565b6040518082815260200191505060405180910390f35b341561085357600080fd5b610888600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611705565b604051808215151515815260200191505060405180910390f35b34156108ad57600080fd5b6108b561182f565b6040518082815260200191505060405180910390f35b34156108d657600080fd5b6108de611835565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561092b57600080fd5b61093361185a565b6040518082815260200191505060405180910390f35b341561095457600080fd5b61096a6004808035906020019091905050611860565b6040518082815260200191505060405180910390f35b341561098b57600080fd5b6109936118df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109d45780820151818401525b6020810190506109b8565b50505050905090810190601f168015610a015780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a1a57600080fd5b610a22610d51565b6040518082815260200191505060405180910390f35b3415610a4357600080fd5b610a4b61197d565b6040518082815260200191505060405180910390f35b3415610a6c57600080fd5b610aa1600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611983565b604051808215151515815260200191505060405180910390f35b3415610ac657600080fd5b610ace611b88565b6040518082815260200191505060405180910390f35b3415610aef57600080fd5b610af7611b8e565b6040518082815260200191505060405180910390f35b3415610b1857600080fd5b610b2e6004808035906020019091905050611b94565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610b7b57600080fd5b610ba7600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dcb565b604051808215151515815260200191505060405180910390f35b3415610bcc57600080fd5b610c17600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bed565b6040518082815260200191505060405180910390f35b3415610c3857600080fd5b610c40611c75565b604051808215151515815260200191505060405180910390f35b3415610c6557600080fd5b610c6d611cfd565b6040518082815260200191505060405180910390f35b3415610c8e57600080fd5b610cba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611d08565b604051808215151515815260200191505060405180910390f35b3415610cdf57600080fd5b610d0b600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611db1565b005b3415610d1857600080fd5b610d376004808035906020019091908035906020019091905050611e51565b604051808215151515815260200191505060405180910390f35b600060115490505b90565b60008082840290506000841480610d7d5750828482811515610d7a57fe5b04145b1515610d8557fe5b8091505b5092915050565b6000808284811515610d9e57fe5b0490508091505b5092915050565b6000808284019050838110151515610dc057fe5b8091505b5092915050565b600080600090506000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141515610f0257601380549050601760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060138054809190600101610e7891906120da565b50826013610e956001601380549050611ef190919063ffffffff16565b815481101515610ea157fe5b906000526020600020900160005b6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60008154809291906001019190505550600190505b8091505b50919050565b600f5481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fa85780601f10610f7d57610100808354040283529160200191610fa8565b820191906000526020600020905b815481529060010190602001808311610f8b57829003601f168201915b505050505081565b600081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3600190505b92915050565b6000806000806000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110757600080fd5b61110f611f0b565b6005549450600093505b6111326001601380549050611ef190919063ffffffff16565b8410156112ae5761114284611b94565b925061116d61115e601b54600b54610d9090919063ffffffff16565b86610d9090919063ffffffff16565b915061119e601b5461119084611182876116b5565b610d9090919063ffffffff16565b610d5c90919063ffffffff16565b90506111f281600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610dac90919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061124a81600554610dac90919063ffffffff16565b6005819055508273ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b8380600101945050611119565b600195505b5b505050505090565b600d5481565b60055481565b600060126112e0600184610dac90919063ffffffff16565b8154811015156112ec57fe5b906000526020600020900160005b9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b919050565b60006060600481016000369050101561133957600080fd5b82600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611404575082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b801561148f5750600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156116265782600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150611630565b60009150611630565b5b5b509392505050565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60035481565b60045481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b600e5481565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561176357600080fd5b60008311151561177257600080fd5b82905080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550806005600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600191505b5b5092915050565b600a5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118bd57600080fd5b6000821115156118cc57600080fd5b8160118190555060115490505b5b919050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081565b60115481565b60006040600481016000369050101561199b57600080fd5b82600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611a695750600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b15611b765782600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150611b80565b60009150611b80565b5b5b5092915050565b600b5481565b60105481565b60006013611bac600184610dac90919063ffffffff16565b815481101515611bb857fe5b906000526020600020900160005b9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b919050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b92915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611cd257600080fd5b42600f819055506001601460006101000a81548160ff021916908315150217905550600190505b5b90565b6000600f5490505b90565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d6557600080fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0c57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611eae57600080fd5b4282111515611ebc57600080fd5b82600e8190555081600f819055506000601460006101000a81548160ff021916908315150217905550600190505b5b92915050565b6000828211151515611eff57fe5b81830390505b92915050565b60008060008092505b611f2d6001601380549050611ef190919063ffffffff16565b831015611fa557611f3d83611b94565b9150611f48826116b5565b9050611f5382611fab565b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8280600101935050611f14565b5b505050565b6000601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156120d657601280549050601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506012805480919060010161205091906120da565b5080601261206d6001601280549050611ef190919063ffffffff16565b81548110151561207957fe5b906000526020600020900160005b6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c600081548092919060010191905055505b5b50565b815481835581811511612101578183600052602060002091820191016121009190612106565b5b505050565b61212891905b8082111561212457600081600090555060010161210c565b5090565b905600a165627a7a7230582046bf281e1dbbce574a311f9d05f0fe09bfdab48a4b56478c0f3a79b6f14c06780029
Swarm Source
bzzr://46bf281e1dbbce574a311f9d05f0fe09bfdab48a4b56478c0f3a79b6f14c0678
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.