ERC-20
Fitness
Overview
Max Total Supply
1,551,764,601.543097 MMC
Holders
1,065 ( 0.188%)
Market
Price
$0.00 @ 0.000000 ETH (+0.61%)
Onchain Market Cap
$838,728.77
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 6 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
MMCoin
Compiler Version
v0.4.17+commit.bdeb9e52
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-04-28 */ pragma solidity ^0.4.17; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ function Ownable() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { if (newOwner != address(0)) { owner = newOwner; } } } /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20Basic { uint public _totalSupply; function totalSupply() public constant returns (uint); function balanceOf(address who) public constant returns (uint); function transfer(address to, uint value) public; event Transfer(address indexed from, address indexed to, uint value); } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public constant returns (uint); function transferFrom(address from, address to, uint value) public; function approve(address spender, uint value) public; event Approval(address indexed owner, address indexed spender, uint value); } /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is Ownable, ERC20Basic { using SafeMath for uint; mapping(address => uint) public balances; // additional variables for use if transaction fees ever became necessary uint public basisPointsRate = 0; uint public maximumFee = 0; /** * @dev Fix for the ERC20 short address attack. */ modifier onlyPayloadSize(uint size) { require(!(msg.data.length < size + 4)); _; } /** * @dev transfer token for a specified address * @param _to The address to transfer to. * @param _value The amount to be transferred. */ function transfer(address _to, uint _value) public onlyPayloadSize(2 * 32) { uint fee = (_value.mul(basisPointsRate)).div(10000); if (fee > maximumFee) { fee = maximumFee; } uint sendAmount = _value.sub(fee); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(sendAmount); if (fee > 0) { balances[owner] = balances[owner].add(fee); Transfer(msg.sender, owner, fee); } Transfer(msg.sender, _to, sendAmount); } /** * @dev Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return An uint representing the amount owned by the passed address. */ function balanceOf(address _owner) public constant returns (uint balance) { return balances[_owner]; } } /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * @dev https://github.com/ethereum/EIPs/issues/20 * @dev Based oncode by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is BasicToken, ERC20 { mapping (address => mapping (address => uint)) public allowed; uint public constant MAX_UINT = 2**256 - 1; /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint the amount of tokens to be transferred */ function transferFrom(address _from, address _to, uint _value) public onlyPayloadSize(3 * 32) { var _allowance = allowed[_from][msg.sender]; // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met // if (_value > _allowance) throw; uint fee = (_value.mul(basisPointsRate)).div(10000); if (fee > maximumFee) { fee = maximumFee; } if (_allowance < MAX_UINT) { allowed[_from][msg.sender] = _allowance.sub(_value); } uint sendAmount = _value.sub(fee); balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(sendAmount); if (fee > 0) { balances[owner] = balances[owner].add(fee); Transfer(_from, owner, fee); } Transfer(_from, _to, sendAmount); } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * @param _spender The address which will spend the funds. * @param _value The amount of tokens to be spent. */ function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) { // To change the approve amount you first have to reduce the addresses` // allowance to zero by calling `approve(_spender, 0)` if it is not // already 0 to mitigate the race condition described here: // https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 require(!((_value != 0) && (allowed[msg.sender][_spender] != 0))); allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); } /** * @dev Function to check the amount of tokens than an owner allowed to a spender. * @param _owner address The address which owns the funds. * @param _spender address The address which will spend the funds. * @return A uint specifying the amount of tokens still available for the spender. */ function allowance(address _owner, address _spender) public constant returns (uint remaining) { return allowed[_owner][_spender]; } } /** * @title Pausable * @dev Base contract which allows children to implement an emergency stop mechanism. */ contract Pausable is Ownable { event Pause(); event Unpause(); bool public paused = false; /** * @dev Modifier to make a function callable only when the contract is not paused. */ modifier whenNotPaused() { require(!paused); _; } /** * @dev Modifier to make a function callable only when the contract is paused. */ modifier whenPaused() { require(paused); _; } /** * @dev called by the owner to pause, triggers stopped state */ function pause() onlyOwner whenNotPaused public { paused = true; Pause(); } /** * @dev called by the owner to unpause, returns to normal state */ function unpause() onlyOwner whenPaused public { paused = false; Unpause(); } } contract BlackList is Ownable, BasicToken { /////// Getters to allow the same blacklist to be used also by other contracts (including upgraded Tether) /////// function getBlackListStatus(address _maker) external constant returns (bool) { return isBlackListed[_maker]; } function getOwner() external constant returns (address) { return owner; } mapping (address => bool) public isBlackListed; function addBlackList (address _evilUser) public onlyOwner { isBlackListed[_evilUser] = true; AddedBlackList(_evilUser); } function removeBlackList (address _clearedUser) public onlyOwner { isBlackListed[_clearedUser] = false; RemovedBlackList(_clearedUser); } function destroyBlackFunds (address _blackListedUser) public onlyOwner { require(isBlackListed[_blackListedUser]); uint dirtyFunds = balanceOf(_blackListedUser); balances[_blackListedUser] = 0; _totalSupply -= dirtyFunds; DestroyedBlackFunds(_blackListedUser, dirtyFunds); } event DestroyedBlackFunds(address _blackListedUser, uint _balance); event AddedBlackList(address _user); event RemovedBlackList(address _user); } contract UpgradedStandardToken is StandardToken{ // those methods are called by the legacy contract // and they must ensure msg.sender to be the contract address function transferByLegacy(address from, address to, uint value) public; function transferFromByLegacy(address sender, address from, address spender, uint value) public; function approveByLegacy(address from, address spender, uint value) public; } contract MMCoin is Pausable, StandardToken, BlackList { uint256 public MAX_SUPPLY; // Change MAX_SUPPLY to a status variable string public name; string public symbol; uint public decimals; address public upgradedAddress; bool public deprecated; // The contract can be initialized with a number of tokens // All the tokens are deposited to the owner address // // @param _balance Initial supply of the contract // @param _name Token Name // @param _symbol Token symbol // @param _decimals Token decimals function MMCoin(uint _initialSupply, string _name, string _symbol, uint _decimals) public { _totalSupply = _initialSupply; name = _name; symbol = _symbol; decimals = _decimals; MAX_SUPPLY = 11222017204.753513 * 10**6; balances[owner] = _initialSupply; deprecated = false; } struct LockInfo { uint256 initialLockAmount; uint256 lockAmount; // Current remaining lock quantity uint256 releaseStart; // Start release timestamp uint256 releaseInterval; // Release interval (in seconds) uint256 releasedTokens; // The number of tokens released uint256 releasePeriods; // Number of release periods } mapping(address => LockInfo) public lockInfos; // Add a function to lock information function addLock(address user, uint256 initialLockAmount, uint256 lockAmount, uint256 releaseStart, uint256 releaseInterval, uint256 releasePeriods) public onlyOwner { require(user != address(0)); require(initialLockAmount > 0 && lockAmount > 0); require(initialLockAmount == lockAmount); require(releaseStart > 0 && releaseInterval > 0 && releasePeriods > 0); LockInfo storage info = lockInfos[user]; require(info.lockAmount == 0); // Make sure the lock is not set lockInfos[user] = LockInfo(initialLockAmount, lockAmount, releaseStart, releaseInterval, 0, releasePeriods); } // Check the number of remaining tokens and the number of remaining periods function availableLockBalance(address user) public view returns (uint256, uint256) { LockInfo storage info = lockInfos[user]; if (block.timestamp < info.releaseStart) { // If the current time has not reached the first release time, all tokens are still locked return (info.initialLockAmount, info.releasePeriods); } // Calculate the elapsed release period uint256 elapsedPeriods = (block.timestamp.sub(info.releaseStart)).div(info.releaseInterval); elapsedPeriods = elapsedPeriods > info.releasePeriods ? info.releasePeriods : elapsedPeriods; // Remaining release period uint256 remainingPeriods = elapsedPeriods >= info.releasePeriods ? 0 : info.releasePeriods.sub(elapsedPeriods); // Count the number of tokens released uint256 released = info.initialLockAmount.mul(elapsedPeriods).div(info.releasePeriods); // Number of remaining lock-up tokens uint256 remainingLockBalance = info.initialLockAmount.sub(released); return (remainingLockBalance, remainingPeriods); } // Forward ERC20 methods to upgraded contract if this one is deprecated function transfer(address _to, uint _value) public whenNotPaused { require(!isBlackListed[msg.sender]); if (lockInfos[msg.sender].initialLockAmount == 0) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value); } else { return super.transfer(_to, _value); } } // Check the lock-up information and calculate the number of tokens that can be transferred LockInfo storage senderLockInfo = lockInfos[msg.sender]; uint256 available = _calculateAvailableBalance(msg.sender, senderLockInfo); // Ensure that the transfer amount does not exceed the available balance require(_value <= available); if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value); } else { return super.transfer(_to, _value); } } // Query the number of lockers function _calculateAvailableBalance(address user, LockInfo storage lockInfo) internal view returns (uint256) { if (lockInfo.initialLockAmount == 0) { // If the user does not lock in, all tokens are available return balances[user]; } // Calculate the amount of tokens currently locked uint256 locked = lockInfo.initialLockAmount; if (block.timestamp >= lockInfo.releaseStart) { // If the current time exceeds the release start time uint256 elapsedPeriods = (block.timestamp.sub(lockInfo.releaseStart)).div(lockInfo.releaseInterval); if (elapsedPeriods >= lockInfo.releasePeriods) { // If all lock-up periods have expired and no tokens are locked locked = 0; } else { // Calculate the number of tokens released and subtract from the initial lock-up uint256 released = lockInfo.initialLockAmount.mul(elapsedPeriods).div(lockInfo.releasePeriods); locked = lockInfo.initialLockAmount.sub(released); } } // The actual available balance is the total balance minus the amount of locked tokens return balances[user] >= locked ? balances[user].sub(locked) : 0; } // Forward ERC20 methods to upgraded contract if this one is deprecated function transferFrom(address _from, address _to, uint _value) public whenNotPaused { require(!isBlackListed[_from]); if (lockInfos[_from].initialLockAmount == 0) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value); } else { return super.transferFrom(_from, _to, _value); } } // Check the lock-up information and calculate the number of tokens that can be transferred LockInfo storage senderLockInfo = lockInfos[_from]; uint256 available = _calculateAvailableBalance(_from, senderLockInfo); // Make sure the transfer does not exceed the available balance require(_value <= available); if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value); } else { return super.transferFrom(_from, _to, _value); } } // Forward ERC20 methods to upgraded contract if this one is deprecated function balanceOf(address who) public constant returns (uint) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).balanceOf(who); } else { return super.balanceOf(who); } } // Forward ERC20 methods to upgraded contract if this one is deprecated function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value); } else { return super.approve(_spender, _value); } } // Forward ERC20 methods to upgraded contract if this one is deprecated function allowance(address _owner, address _spender) public constant returns (uint remaining) { if (deprecated) { return StandardToken(upgradedAddress).allowance(_owner, _spender); } else { return super.allowance(_owner, _spender); } } // deprecate current contract in favour of a new one function deprecate(address _upgradedAddress) public onlyOwner { require(_upgradedAddress != address(0)); deprecated = true; upgradedAddress = _upgradedAddress; Deprecate(_upgradedAddress); } // deprecate current contract if favour of a new one function totalSupply() public constant returns (uint) { if (deprecated) { return StandardToken(upgradedAddress).totalSupply(); } else { return _totalSupply; } } // Issue a new amount of tokens // these tokens are deposited into the owner address // // @param _amount Number of tokens to be issued function issue(uint amount) public onlyOwner { require(_totalSupply + amount <= MAX_SUPPLY); require(_totalSupply + amount > _totalSupply); require(balances[owner] + amount > balances[owner]); balances[owner] += amount; _totalSupply += amount; Issue(amount); Transfer(address(0), owner, amount); } // Issue and lock up function issueAndLock(address _to, uint256 _amount, uint256 releaseStart, uint256 releaseInterval, uint256 releasePeriods) public onlyOwner { require(_to != address(0)); require(_amount > 0); require(_totalSupply.add(_amount) <= MAX_SUPPLY); require(releaseStart > 0 && releaseInterval > 0 && releasePeriods > 0); LockInfo storage info = lockInfos[_to]; require(info.lockAmount == 0); // Make sure the user has not previously locked in lockInfos[_to] = LockInfo(_amount, _amount, releaseStart, releaseInterval, 0, releasePeriods); _totalSupply = _totalSupply.add(_amount); // Add tokens to the total supply balances[_to] = balances[_to].add(_amount); // Immediately add the token to the user's balance IssueToAddress(_to, _amount); // The issue event is triggered Transfer(address(0), _to, _amount); // Trigger the transfer event, the token has been transferred to the user balance, but is locked } // A single add-on address is specified function issueToAddress(address _to, uint256 _amount) public onlyOwner { require(_to != address(0)); require(_amount > 0); require(_totalSupply.add(_amount) <= MAX_SUPPLY); require(balances[_to].add(_amount) > balances[_to]); balances[_to] = balances[_to].add(_amount); _totalSupply = _totalSupply.add(_amount); IssueToAddress(_to, _amount); Transfer(address(0), _to, _amount); } // Bulk transfer function batchIssue(address[] memory recipients, uint256[] memory amounts) public onlyOwner { require(recipients.length == amounts.length); for (uint256 i = 0; i < recipients.length; i++) { require(recipients[i] != address(0)); require(amounts[i] > 0); require(_totalSupply.add(amounts[i]) <= MAX_SUPPLY); require(balances[recipients[i]].add(amounts[i]) > balances[recipients[i]]); balances[recipients[i]] = balances[recipients[i]].add(amounts[i]); _totalSupply = _totalSupply.add(amounts[i]); IssueToAddress(recipients[i], amounts[i]); Transfer(address(0), recipients[i], amounts[i]); } } // Add a batchTransfer function for batch transfer function batchTransfer(address[] memory recipients, uint256[] memory amounts) public onlyOwner { require(recipients.length == amounts.length); for (uint256 i = 0; i < recipients.length; i++) { transfer(recipients[i], amounts[i]); } } // Redeem tokens. // These tokens are withdrawn from the owner address // if the balance must be enough to cover the redeem // or the call will fail. // @param _amount Number of tokens to be issued function redeem(uint amount) public onlyOwner { require(_totalSupply >= amount); require(balances[owner] >= amount); _totalSupply -= amount; balances[owner] -= amount; Redeem(amount); } function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner { // Ensure transparency by hardcoding limit beyond which fees can never be added require(newBasisPoints < 20); require(newMaxFee < 50); basisPointsRate = newBasisPoints; maximumFee = newMaxFee.mul(10**decimals); Params(basisPointsRate, maximumFee); } // Called when new token are issued event Issue(uint amount); event IssueToAddress(address to, uint256 amount); // Called when tokens are redeemed event Redeem(uint amount); // Called when contract is deprecated event Deprecate(address newAddress); // Called if contract ever adds fees event Params(uint feeBasisPoints, uint maxFee); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"user","type":"address"},{"name":"initialLockAmount","type":"uint256"},{"name":"lockAmount","type":"uint256"},{"name":"releaseStart","type":"uint256"},{"name":"releaseInterval","type":"uint256"},{"name":"releasePeriods","type":"uint256"}],"name":"addLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_upgradedAddress","type":"address"}],"name":"deprecate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"deprecated","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_evilUser","type":"address"}],"name":"addBlackList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"upgradedAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balances","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":"MAX_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maximumFee","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":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"lockInfos","outputs":[{"name":"initialLockAmount","type":"uint256"},{"name":"lockAmount","type":"uint256"},{"name":"releaseStart","type":"uint256"},{"name":"releaseInterval","type":"uint256"},{"name":"releasedTokens","type":"uint256"},{"name":"releasePeriods","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_maker","type":"address"}],"name":"getBlackListStatus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowed","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"availableLockBalance","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"amounts","type":"uint256[]"}],"name":"batchIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"amounts","type":"uint256[]"}],"name":"batchTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"name":"","type":"address"}],"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":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newBasisPoints","type":"uint256"},{"name":"newMaxFee","type":"uint256"}],"name":"setParams","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issueToAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"redeem","outputs":[],"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":true,"inputs":[],"name":"basisPointsRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isBlackListed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_clearedUser","type":"address"}],"name":"removeBlackList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAX_UINT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_blackListedUser","type":"address"}],"name":"destroyBlackFunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"releaseStart","type":"uint256"},{"name":"releaseInterval","type":"uint256"},{"name":"releasePeriods","type":"uint256"}],"name":"issueAndLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_initialSupply","type":"uint256"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"}],"name":"Issue","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"IssueToAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newAddress","type":"address"}],"name":"Deprecate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"feeBasisPoints","type":"uint256"},{"indexed":false,"name":"maxFee","type":"uint256"}],"name":"Params","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_blackListedUser","type":"address"},{"indexed":false,"name":"_balance","type":"uint256"}],"name":"DestroyedBlackFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_user","type":"address"}],"name":"AddedBlackList","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_user","type":"address"}],"name":"RemovedBlackList","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"}]
Contract Creation Code
606060405260008060146101000a81548160ff0219169083151502179055506000600355600060045534156200003457600080fd5b6040516200467c3803806200467c83398101604052808051906020019091908051820191906020018051820191906020018051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001819055508260089080519060200190620000cf92919062000188565b508160099080519060200190620000e892919062000188565b5080600a819055506627de5d7d27146960078190555083600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600b60146101000a81548160ff0219169083151502179055505050505062000237565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001cb57805160ff1916838001178555620001fc565b82800160010185558215620001fc579182015b82811115620001fb578251825591602001919060010190620001de565b5b5090506200020b91906200020f565b5090565b6200023491905b808211156200023057600081600090555060010162000216565b5090565b90565b61443580620002476000396000f300606060405236156101ec576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063051c3c83146101f157806306fdde03146102575780630753c30c146102e5578063095ea7b31461031e5780630e136b19146103605780630ecb93c01461038d57806318160ddd146103c657806323b872dd146103ef57806326976e3f1461045057806327e235e3146104a5578063313ce567146104f257806332cb6b0c1461051b57806335390714146105445780633eaaf86b1461056d5780633f4ba83a1461059657806341d189f2146105ab57806359bf1abe1461061b5780635c6581651461066c5780635c975abb146106d857806367b27bcc1461070557806370a082311461075957806378ac81c6146107a65780638456cb591461084057806388d695b214610855578063893d20e8146108ef5780638da5cb5b1461094457806395d89b4114610999578063a9059cbb14610a27578063c0324c7714610a69578063cbc162f314610a95578063cc872b6614610ad7578063db006a7514610afa578063dd62ed3e14610b1d578063dd644f7214610b89578063e47d606014610bb2578063e4997dc514610c03578063e5b5019a14610c3c578063f2fde38b14610c65578063f3bdc22814610c9e578063fa6705f214610cd7575b600080fd5b34156101fc57600080fd5b610255600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091908035906020019091908035906020019091908035906020019091905050610d34565b005b341561026257600080fd5b61026a610f27565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102aa57808201518184015260208101905061028f565b50505050905090810190601f1680156102d75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102f057600080fd5b61031c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fc5565b005b341561032957600080fd5b61035e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061111e565b005b341561036b57600080fd5b61037361126c565b604051808215151515815260200191505060405180910390f35b341561039857600080fd5b6103c4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061127f565b005b34156103d157600080fd5b6103d9611398565b6040518082815260200191505060405180910390f35b34156103fa57600080fd5b61044e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611468565b005b341561045b57600080fd5b61046361185e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104b057600080fd5b6104dc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611884565b6040518082815260200191505060405180910390f35b34156104fd57600080fd5b61050561189c565b6040518082815260200191505060405180910390f35b341561052657600080fd5b61052e6118a2565b6040518082815260200191505060405180910390f35b341561054f57600080fd5b6105576118a8565b6040518082815260200191505060405180910390f35b341561057857600080fd5b6105806118ae565b6040518082815260200191505060405180910390f35b34156105a157600080fd5b6105a96118b4565b005b34156105b657600080fd5b6105e2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611972565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b341561062657600080fd5b610652600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506119ae565b604051808215151515815260200191505060405180910390f35b341561067757600080fd5b6106c2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a04565b6040518082815260200191505060405180910390f35b34156106e357600080fd5b6106eb611a29565b604051808215151515815260200191505060405180910390f35b341561071057600080fd5b61073c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a3c565b604051808381526020018281526020019250505060405180910390f35b341561076457600080fd5b610790600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611b75565b6040518082815260200191505060405180910390f35b34156107b157600080fd5b61083e60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611c84565b005b341561084b57600080fd5b6108536120e2565b005b341561086057600080fd5b6108ed600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506121a2565b005b34156108fa57600080fd5b610902612267565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561094f57600080fd5b610957612290565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109a457600080fd5b6109ac6122b5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109ec5780820151818401526020810190506109d1565b50505050905090810190601f168015610a195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a3257600080fd5b610a67600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612353565b005b3415610a7457600080fd5b610a9360048080359060200190919080359060200190919050506126de565b005b3415610aa057600080fd5b610ad5600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506127c3565b005b3415610ae257600080fd5b610af86004808035906020019091905050612ab1565b005b3415610b0557600080fd5b610b1b6004808035906020019091905050612d44565b005b3415610b2857600080fd5b610b73600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612ed7565b6040518082815260200191505060405180910390f35b3415610b9457600080fd5b610b9c61301c565b6040518082815260200191505060405180910390f35b3415610bbd57600080fd5b610be9600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613022565b604051808215151515815260200191505060405180910390f35b3415610c0e57600080fd5b610c3a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613042565b005b3415610c4757600080fd5b610c4f61315b565b6040518082815260200191505060405180910390f35b3415610c7057600080fd5b610c9c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061317f565b005b3415610ca957600080fd5b610cd5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613254565b005b3415610ce257600080fd5b610d32600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919080359060200190919080359060200190919080359060200190919050506133d8565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614151515610dcd57600080fd5b600086118015610ddd5750600085115b1515610de857600080fd5b8486141515610df657600080fd5b600084118015610e065750600083115b8015610e125750600082115b1515610e1d57600080fd5b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160010154141515610e7157600080fd5b60c0604051908101604052808781526020018681526020018581526020018481526020016000815260200183815250600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015590505050505050505050565b60088054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fbd5780601f10610f9257610100808354040283529160200191610fbd565b820191906000526020600020905b815481529060010190602001808311610fa057829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561102057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561105c57600080fd5b6001600b60146101000a81548160ff02191690831515021790555080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b60406004810160003690501015151561113657600080fd5b600b60149054906101000a900460ff161561125c57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b151561124357600080fd5b6102c65a03f1151561125457600080fd5b505050611267565b6112668383613756565b5b505050565b600b60149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112da57600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b6000600b60149054906101000a900460ff161561145f57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561143d57600080fd5b6102c65a03f1151561144e57600080fd5b505050604051805190509050611465565b60015490505b90565b600080600060149054906101000a900460ff1615151561148757600080fd5b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156114e057600080fd5b6000600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141561169557600b60149054906101000a900460ff161561168557600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b151561166c57600080fd5b6102c65a03f1151561167d57600080fd5b505050611857565b6116908585856138f3565b611857565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091506116e08583613d9a565b90508083111515156116f157600080fd5b600b60149054906101000a900460ff161561184b57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b151561183257600080fd5b6102c65a03f1151561184357600080fd5b505050611857565b6118568585856138f3565b5b5050505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915090505481565b600a5481565b60075481565b60045481565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561190f57600080fd5b600060149054906101000a900460ff16151561192a57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600c6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154905086565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6005602052816000526040600020602052806000526040600020600091509150505481565b600060149054906101000a900460ff1681565b6000806000806000806000600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002094508460020154421015611aa7578460000154856005015496509650611b6b565b611ad48560030154611ac6876002015442613f4490919063ffffffff16565b613f5d90919063ffffffff16565b935084600501548411611ae75783611aed565b84600501545b93508460050154841015611b1757611b12848660050154613f4490919063ffffffff16565b611b1a565b60005b9250611b498560050154611b3b868860000154613f7890919063ffffffff16565b613f5d90919063ffffffff16565b9150611b62828660000154613f4490919063ffffffff16565b90508083965096505b5050505050915091565b6000600b60149054906101000a900460ff1615611c7357600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515611c5157600080fd5b6102c65a03f11515611c6257600080fd5b505050604051805190509050611c7f565b611c7c82613fb3565b90505b919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611ce157600080fd5b81518351141515611cf157600080fd5b600090505b82518110156120dd57600073ffffffffffffffffffffffffffffffffffffffff168382815181101515611d2557fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1614151515611d5257600080fd5b60008282815181101515611d6257fe5b90602001906020020151111515611d7857600080fd5b600754611da78383815181101515611d8c57fe5b90602001906020020151600154613ffc90919063ffffffff16565b11151515611db457600080fd5b600260008483815181101515611dc657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8b8383815181101515611e1c57fe5b90602001906020020151600260008786815181101515611e3857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b111515611e9757600080fd5b611f178282815181101515611ea857fe5b90602001906020020151600260008685815181101515611ec457fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008584815181101515611f2957fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f9d8282815181101515611f8257fe5b90602001906020020151600154613ffc90919063ffffffff16565b6001819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48382815181101515611fd257fe5b906020019060200201518383815181101515611fea57fe5b90602001906020020151604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1828181518110151561204a57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84848151811015156120b157fe5b906020019060200201516040518082815260200191505060405180910390a38080600101915050611cf6565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561213d57600080fd5b600060149054906101000a900460ff1615151561215957600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156121ff57600080fd5b8151835114151561220f57600080fd5b600090505b825181101561226257612255838281518110151561222e57fe5b90602001906020020151838381518110151561224657fe5b90602001906020020151612353565b8080600101915050612214565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60098054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561234b5780601f106123205761010080835404028352916020019161234b565b820191906000526020600020905b81548152906001019060200180831161232e57829003601f168201915b505050505081565b600080600060149054906101000a900460ff1615151561237257600080fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156123cb57600080fd5b6000600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141561254b57600b60149054906101000a900460ff161561253c57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b151561252357600080fd5b6102c65a03f1151561253457600080fd5b5050506126d8565b612546848461401a565b6126d8565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091506125963383613d9a565b90508083111515156125a757600080fd5b600b60149054906101000a900460ff16156126cd57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15156126b457600080fd5b6102c65a03f115156126c557600080fd5b5050506126d8565b6126d7848461401a565b5b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561273957600080fd5b60148210151561274857600080fd5b60328110151561275757600080fd5b81600381905550612776600a54600a0a82613f7890919063ffffffff16565b6004819055507fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e600354600454604051808381526020018281526020019250505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561281e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561285a57600080fd5b60008111151561286957600080fd5b60075461288182600154613ffc90919063ffffffff16565b1115151561288e57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b11151561292c57600080fd5b61297e81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506129d681600154613ffc90919063ffffffff16565b6001819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a18173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b0c57600080fd5b600754816001540111151515612b2157600080fd5b6001548160015401111515612b3557600080fd5b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401111515612c0557600080fd5b80600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550806001600082825401925050819055507fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a816040518082815260200191505060405180910390a16000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d9f57600080fd5b8060015410151515612db057600080fd5b80600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612e1f57600080fd5b8060016000828254039250508190555080600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a44816040518082815260200191505060405180910390a150565b6000600b60149054906101000a900460ff161561300957600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1515612fe757600080fd5b6102c65a03f11515612ff857600080fd5b505050604051805190509050613016565b6130138383614382565b90505b92915050565b60035481565b60066020528060005260406000206000915054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561309d57600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131da57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561325157806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156132b157600080fd5b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561330957600080fd5b61331282611b75565b90506000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806001600082825403925050819055507f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c68282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561343557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415151561347157600080fd5b60008511151561348057600080fd5b60075461349886600154613ffc90919063ffffffff16565b111515156134a557600080fd5b6000841180156134b55750600083115b80156134c15750600082115b15156134cc57600080fd5b600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816001015414151561352057600080fd5b60c0604051908101604052808681526020018681526020018581526020018481526020016000815260200183815250600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a082015181600501559050506135e285600154613ffc90919063ffffffff16565b60018190555061363a85600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48686604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a18573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a3505050505050565b60406004810160003690501015151561376e57600080fd5b600082141580156137fc57506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15151561380857600080fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3505050565b600080600060606004810160003690501015151561391057600080fd5b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506139b86127106139aa60035488613f7890919063ffffffff16565b613f5d90919063ffffffff16565b92506004548311156139ca5760045492505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff841015613a8657613a058585613f4490919063ffffffff16565b600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b613a998386613f4490919063ffffffff16565b9150613aed85600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b8282600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115613d2c57613c4183600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050505050565b600080600080600085600001541415613df457600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549350613f3b565b84600001549250846002015442101515613e9757613e358560030154613e27876002015442613f4490919063ffffffff16565b613f5d90919063ffffffff16565b9150846005015482101515613e4d5760009250613e96565b613e7a8560050154613e6c848860000154613f7890919063ffffffff16565b613f5d90919063ffffffff16565b9050613e93818660000154613f4490919063ffffffff16565b92505b5b82600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015613ee5576000613f38565b613f3783600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b5b93505b50505092915050565b6000828211151515613f5257fe5b818303905092915050565b6000808284811515613f6b57fe5b0490508091505092915050565b6000806000841415613f8d5760009150613fac565b8284029050828482811515613f9e57fe5b04141515613fa857fe5b8091505b5092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080828401905083811015151561401057fe5b8091505092915050565b60008060406004810160003690501015151561403557600080fd5b61405e61271061405060035487613f7890919063ffffffff16565b613f5d90919063ffffffff16565b92506004548311156140705760045492505b6140838385613f4490919063ffffffff16565b91506140d784600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061416c82600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008311156143165761422b83600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a7230582075e4e6167ede0d3a610fe8561ad1a206ceecee8aa13eaccd95f88cb54c3affc300290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c4d6f76654d6f7665436f696e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034d4d430000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x606060405236156101ec576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063051c3c83146101f157806306fdde03146102575780630753c30c146102e5578063095ea7b31461031e5780630e136b19146103605780630ecb93c01461038d57806318160ddd146103c657806323b872dd146103ef57806326976e3f1461045057806327e235e3146104a5578063313ce567146104f257806332cb6b0c1461051b57806335390714146105445780633eaaf86b1461056d5780633f4ba83a1461059657806341d189f2146105ab57806359bf1abe1461061b5780635c6581651461066c5780635c975abb146106d857806367b27bcc1461070557806370a082311461075957806378ac81c6146107a65780638456cb591461084057806388d695b214610855578063893d20e8146108ef5780638da5cb5b1461094457806395d89b4114610999578063a9059cbb14610a27578063c0324c7714610a69578063cbc162f314610a95578063cc872b6614610ad7578063db006a7514610afa578063dd62ed3e14610b1d578063dd644f7214610b89578063e47d606014610bb2578063e4997dc514610c03578063e5b5019a14610c3c578063f2fde38b14610c65578063f3bdc22814610c9e578063fa6705f214610cd7575b600080fd5b34156101fc57600080fd5b610255600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091908035906020019091908035906020019091908035906020019091905050610d34565b005b341561026257600080fd5b61026a610f27565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102aa57808201518184015260208101905061028f565b50505050905090810190601f1680156102d75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102f057600080fd5b61031c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fc5565b005b341561032957600080fd5b61035e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061111e565b005b341561036b57600080fd5b61037361126c565b604051808215151515815260200191505060405180910390f35b341561039857600080fd5b6103c4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061127f565b005b34156103d157600080fd5b6103d9611398565b6040518082815260200191505060405180910390f35b34156103fa57600080fd5b61044e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611468565b005b341561045b57600080fd5b61046361185e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104b057600080fd5b6104dc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611884565b6040518082815260200191505060405180910390f35b34156104fd57600080fd5b61050561189c565b6040518082815260200191505060405180910390f35b341561052657600080fd5b61052e6118a2565b6040518082815260200191505060405180910390f35b341561054f57600080fd5b6105576118a8565b6040518082815260200191505060405180910390f35b341561057857600080fd5b6105806118ae565b6040518082815260200191505060405180910390f35b34156105a157600080fd5b6105a96118b4565b005b34156105b657600080fd5b6105e2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611972565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b341561062657600080fd5b610652600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506119ae565b604051808215151515815260200191505060405180910390f35b341561067757600080fd5b6106c2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a04565b6040518082815260200191505060405180910390f35b34156106e357600080fd5b6106eb611a29565b604051808215151515815260200191505060405180910390f35b341561071057600080fd5b61073c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a3c565b604051808381526020018281526020019250505060405180910390f35b341561076457600080fd5b610790600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611b75565b6040518082815260200191505060405180910390f35b34156107b157600080fd5b61083e60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611c84565b005b341561084b57600080fd5b6108536120e2565b005b341561086057600080fd5b6108ed600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506121a2565b005b34156108fa57600080fd5b610902612267565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561094f57600080fd5b610957612290565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109a457600080fd5b6109ac6122b5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109ec5780820151818401526020810190506109d1565b50505050905090810190601f168015610a195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a3257600080fd5b610a67600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612353565b005b3415610a7457600080fd5b610a9360048080359060200190919080359060200190919050506126de565b005b3415610aa057600080fd5b610ad5600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506127c3565b005b3415610ae257600080fd5b610af86004808035906020019091905050612ab1565b005b3415610b0557600080fd5b610b1b6004808035906020019091905050612d44565b005b3415610b2857600080fd5b610b73600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612ed7565b6040518082815260200191505060405180910390f35b3415610b9457600080fd5b610b9c61301c565b6040518082815260200191505060405180910390f35b3415610bbd57600080fd5b610be9600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613022565b604051808215151515815260200191505060405180910390f35b3415610c0e57600080fd5b610c3a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613042565b005b3415610c4757600080fd5b610c4f61315b565b6040518082815260200191505060405180910390f35b3415610c7057600080fd5b610c9c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061317f565b005b3415610ca957600080fd5b610cd5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613254565b005b3415610ce257600080fd5b610d32600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919080359060200190919080359060200190919080359060200190919050506133d8565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614151515610dcd57600080fd5b600086118015610ddd5750600085115b1515610de857600080fd5b8486141515610df657600080fd5b600084118015610e065750600083115b8015610e125750600082115b1515610e1d57600080fd5b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160010154141515610e7157600080fd5b60c0604051908101604052808781526020018681526020018581526020018481526020016000815260200183815250600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015590505050505050505050565b60088054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fbd5780601f10610f9257610100808354040283529160200191610fbd565b820191906000526020600020905b815481529060010190602001808311610fa057829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561102057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561105c57600080fd5b6001600b60146101000a81548160ff02191690831515021790555080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b60406004810160003690501015151561113657600080fd5b600b60149054906101000a900460ff161561125c57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b151561124357600080fd5b6102c65a03f1151561125457600080fd5b505050611267565b6112668383613756565b5b505050565b600b60149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112da57600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b6000600b60149054906101000a900460ff161561145f57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561143d57600080fd5b6102c65a03f1151561144e57600080fd5b505050604051805190509050611465565b60015490505b90565b600080600060149054906101000a900460ff1615151561148757600080fd5b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156114e057600080fd5b6000600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141561169557600b60149054906101000a900460ff161561168557600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b151561166c57600080fd5b6102c65a03f1151561167d57600080fd5b505050611857565b6116908585856138f3565b611857565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091506116e08583613d9a565b90508083111515156116f157600080fd5b600b60149054906101000a900460ff161561184b57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b151561183257600080fd5b6102c65a03f1151561184357600080fd5b505050611857565b6118568585856138f3565b5b5050505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915090505481565b600a5481565b60075481565b60045481565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561190f57600080fd5b600060149054906101000a900460ff16151561192a57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600c6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154905086565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6005602052816000526040600020602052806000526040600020600091509150505481565b600060149054906101000a900460ff1681565b6000806000806000806000600c60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002094508460020154421015611aa7578460000154856005015496509650611b6b565b611ad48560030154611ac6876002015442613f4490919063ffffffff16565b613f5d90919063ffffffff16565b935084600501548411611ae75783611aed565b84600501545b93508460050154841015611b1757611b12848660050154613f4490919063ffffffff16565b611b1a565b60005b9250611b498560050154611b3b868860000154613f7890919063ffffffff16565b613f5d90919063ffffffff16565b9150611b62828660000154613f4490919063ffffffff16565b90508083965096505b5050505050915091565b6000600b60149054906101000a900460ff1615611c7357600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515611c5157600080fd5b6102c65a03f11515611c6257600080fd5b505050604051805190509050611c7f565b611c7c82613fb3565b90505b919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611ce157600080fd5b81518351141515611cf157600080fd5b600090505b82518110156120dd57600073ffffffffffffffffffffffffffffffffffffffff168382815181101515611d2557fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1614151515611d5257600080fd5b60008282815181101515611d6257fe5b90602001906020020151111515611d7857600080fd5b600754611da78383815181101515611d8c57fe5b90602001906020020151600154613ffc90919063ffffffff16565b11151515611db457600080fd5b600260008483815181101515611dc657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8b8383815181101515611e1c57fe5b90602001906020020151600260008786815181101515611e3857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b111515611e9757600080fd5b611f178282815181101515611ea857fe5b90602001906020020151600260008685815181101515611ec457fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008584815181101515611f2957fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f9d8282815181101515611f8257fe5b90602001906020020151600154613ffc90919063ffffffff16565b6001819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48382815181101515611fd257fe5b906020019060200201518383815181101515611fea57fe5b90602001906020020151604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1828181518110151561204a57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84848151811015156120b157fe5b906020019060200201516040518082815260200191505060405180910390a38080600101915050611cf6565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561213d57600080fd5b600060149054906101000a900460ff1615151561215957600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156121ff57600080fd5b8151835114151561220f57600080fd5b600090505b825181101561226257612255838281518110151561222e57fe5b90602001906020020151838381518110151561224657fe5b90602001906020020151612353565b8080600101915050612214565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60098054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561234b5780601f106123205761010080835404028352916020019161234b565b820191906000526020600020905b81548152906001019060200180831161232e57829003601f168201915b505050505081565b600080600060149054906101000a900460ff1615151561237257600080fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156123cb57600080fd5b6000600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141561254b57600b60149054906101000a900460ff161561253c57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b151561252357600080fd5b6102c65a03f1151561253457600080fd5b5050506126d8565b612546848461401a565b6126d8565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091506125963383613d9a565b90508083111515156125a757600080fd5b600b60149054906101000a900460ff16156126cd57600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15156126b457600080fd5b6102c65a03f115156126c557600080fd5b5050506126d8565b6126d7848461401a565b5b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561273957600080fd5b60148210151561274857600080fd5b60328110151561275757600080fd5b81600381905550612776600a54600a0a82613f7890919063ffffffff16565b6004819055507fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e600354600454604051808381526020018281526020019250505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561281e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561285a57600080fd5b60008111151561286957600080fd5b60075461288182600154613ffc90919063ffffffff16565b1115151561288e57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b11151561292c57600080fd5b61297e81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506129d681600154613ffc90919063ffffffff16565b6001819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a18173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b0c57600080fd5b600754816001540111151515612b2157600080fd5b6001548160015401111515612b3557600080fd5b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401111515612c0557600080fd5b80600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550806001600082825401925050819055507fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a816040518082815260200191505060405180910390a16000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d9f57600080fd5b8060015410151515612db057600080fd5b80600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612e1f57600080fd5b8060016000828254039250508190555080600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a44816040518082815260200191505060405180910390a150565b6000600b60149054906101000a900460ff161561300957600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1515612fe757600080fd5b6102c65a03f11515612ff857600080fd5b505050604051805190509050613016565b6130138383614382565b90505b92915050565b60035481565b60066020528060005260406000206000915054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561309d57600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131da57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561325157806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156132b157600080fd5b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561330957600080fd5b61331282611b75565b90506000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806001600082825403925050819055507f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c68282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561343557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415151561347157600080fd5b60008511151561348057600080fd5b60075461349886600154613ffc90919063ffffffff16565b111515156134a557600080fd5b6000841180156134b55750600083115b80156134c15750600082115b15156134cc57600080fd5b600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816001015414151561352057600080fd5b60c0604051908101604052808681526020018681526020018581526020018481526020016000815260200183815250600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a082015181600501559050506135e285600154613ffc90919063ffffffff16565b60018190555061363a85600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f6798b9f52dc2923fec46b48542a9f2c5e4153d895101f02bf2e71bb647da6ac48686604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a18573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a3505050505050565b60406004810160003690501015151561376e57600080fd5b600082141580156137fc57506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15151561380857600080fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3505050565b600080600060606004810160003690501015151561391057600080fd5b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506139b86127106139aa60035488613f7890919063ffffffff16565b613f5d90919063ffffffff16565b92506004548311156139ca5760045492505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff841015613a8657613a058585613f4490919063ffffffff16565b600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b613a998386613f4490919063ffffffff16565b9150613aed85600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b8282600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115613d2c57613c4183600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050505050565b600080600080600085600001541415613df457600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549350613f3b565b84600001549250846002015442101515613e9757613e358560030154613e27876002015442613f4490919063ffffffff16565b613f5d90919063ffffffff16565b9150846005015482101515613e4d5760009250613e96565b613e7a8560050154613e6c848860000154613f7890919063ffffffff16565b613f5d90919063ffffffff16565b9050613e93818660000154613f4490919063ffffffff16565b92505b5b82600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015613ee5576000613f38565b613f3783600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b5b93505b50505092915050565b6000828211151515613f5257fe5b818303905092915050565b6000808284811515613f6b57fe5b0490508091505092915050565b6000806000841415613f8d5760009150613fac565b8284029050828482811515613f9e57fe5b04141515613fa857fe5b8091505b5092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080828401905083811015151561401057fe5b8091505092915050565b60008060406004810160003690501015151561403557600080fd5b61405e61271061405060035487613f7890919063ffffffff16565b613f5d90919063ffffffff16565b92506004548311156140705760045492505b6140838385613f4490919063ffffffff16565b91506140d784600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f4490919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061416c82600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008311156143165761422b83600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613ffc90919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a7230582075e4e6167ede0d3a610fe8561ad1a206ceecee8aa13eaccd95f88cb54c3affc30029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c4d6f76654d6f7665436f696e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034d4d430000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _initialSupply (uint256): 0
Arg [1] : _name (string): MoveMoveCoin
Arg [2] : _symbol (string): MMC
Arg [3] : _decimals (uint256): 6
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000c
Arg [5] : 4d6f76654d6f7665436f696e0000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 4d4d430000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
10037:12987:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11466:648;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10173:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18067:233:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;17321:302;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10289:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8780:145;;;;;;;;;;;;;;;;;;;;;;;;;;;;18366:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15867:1040;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10252:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2951:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10225:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10098:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3117:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2053:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8220:100;;;;;;;;;;;;;;11369:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8498:124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4741:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7550:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12203:1129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16992:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20700:727;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8029:98;;;;;;;;;;;;;;21491:278;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8630:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1162:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10198;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13419:1008:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22245:387;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20212:458;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18748:367;;;;;;;;;;;;;;;;;;;;;;;;;;22000:237;;;;;;;;;;;;;;;;;;;;;;;;;;17708:293;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3079:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8725:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8933:160;;;;;;;;;;;;;;;;;;;;;;;;;;;;4811:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1734:151;;;;;;;;;;;;;;;;;;;;;;;;;;;;9101:324;;;;;;;;;;;;;;;;;;;;;;;;;;;;19151:1008;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11466:648;11874:21;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;11667:1;11651:18;;:4;:18;;;;11643:27;;;;;;;;11709:1;11689:17;:21;:39;;;;;11727:1;11714:10;:14;11689:39;11681:48;;;;;;;;11769:10;11748:17;:31;11740:40;;;;;;;;11814:1;11799:12;:16;:39;;;;;11837:1;11819:15;:19;11799:39;:61;;;;;11859:1;11842:14;:18;11799:61;11791:70;;;;;;;;11898:9;:15;11908:4;11898:15;;;;;;;;;;;;;;;11874:39;;11951:1;11932:4;:15;;;:20;11924:29;;;;;;;;12017:89;;;;;;;;;12026:17;12017:89;;;;12045:10;12017:89;;;;12057:12;12017:89;;;;12071:15;12017:89;;;;12088:1;12017:89;;;;12091:14;12017:89;;;11999:9;:15;12009:4;11999:15;;;;;;;;;;;;;;;:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11466:648;;;;;;;:::o;10173:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;18067:233::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;18176:1;18148:30;;:16;:30;;;;18140:39;;;;;;;;18205:4;18192:10;;:17;;;;;;;;;;;;;;;;;;18238:16;18220:15;;:34;;;;;;;;;;;;;;;;;;18265:27;18275:16;18265:27;;;;;;;;;;;;;;;;;;;;;;18067:233;:::o;17321:302::-;17392:6;3303:1;3296:4;:8;3278;;:15;;:26;3276:29;3268:38;;;;;;;;17415:10;;;;;;;;;;;17411:205;;;17471:15;;;;;;;;;;;17449:54;;;17504:10;17516:8;17526:6;17449:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17442:91;;17411:205;17573:31;17587:8;17597:6;17573:13;:31::i;:::-;3317:1;17321:302;;;:::o;10289:22::-;;;;;;;;;;;;;:::o;8780:145::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;8877:4;8850:13;:24;8864:9;8850:24;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;8892:25;8907:9;8892:25;;;;;;;;;;;;;;;;;;;;;;8780:145;:::o;18366:218::-;18414:4;18435:10;;;;;;;;;;;18431:146;;;18483:15;;;;;;;;;;;18469:42;;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18462:51;;;;18431:146;18553:12;;18546:19;;18366:218;;:::o;15867:1040::-;16424:31;16485:17;7736:6;;;;;;;;;;;7735:7;7727:16;;;;;;;;15971:13;:20;15985:5;15971:20;;;;;;;;;;;;;;;;;;;;;;;;;15970:21;15962:30;;;;;;;;16047:1;16009:9;:16;16019:5;16009:16;;;;;;;;;;;;;;;:34;;;:39;16005:306;;;16069:10;;;;;;;;;;;16065:235;;;16129:15;;;;;;;;;;;16107:59;;;16167:10;16179:5;16186:3;16191:6;16107:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16100:98;;16065:235;16246:38;16265:5;16272:3;16277:6;16246:18;:38::i;:::-;16239:45;;16005:306;16458:9;:16;16468:5;16458:16;;;;;;;;;;;;;;;16424:50;;16505:49;16532:5;16539:14;16505:26;:49::i;:::-;16485:69;;16658:9;16648:6;:19;;16640:28;;;;;;;;16685:10;;;;;;;;;;;16681:219;;;16741:15;;;;;;;;;;;16719:59;;;16779:10;16791:5;16798:3;16803:6;16719:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16712:98;;16681:219;16850:38;16869:5;16876:3;16881:6;16850:18;:38::i;:::-;7754:1;15867:1040;;;;;:::o;10252:30::-;;;;;;;;;;;;;:::o;2951:40::-;;;;;;;;;;;;;;;;;:::o;10225:20::-;;;;:::o;10098:25::-;;;;:::o;3117:26::-;;;;:::o;2053:24::-;;;;:::o;8220:100::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;7912:6;;;;;;;;;;;7904:15;;;;;;;;8287:5;8278:6;;:14;;;;;;;;;;;;;;;;;;8303:9;;;;;;;;;;8220:100::o;11369:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8498:124::-;8569:4;8593:13;:21;8607:6;8593:21;;;;;;;;;;;;;;;;;;;;;;;;;8586:28;;8498:124;;;:::o;4741:61::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7550:26::-;;;;;;;;;;;;;:::o;12203:1129::-;12268:7;12277;12297:21;12634:22;12880:24;13051:16;13197:28;12321:9;:15;12331:4;12321:15;;;;;;;;;;;;;;;12297:39;;12371:4;:17;;;12353:15;:35;12349:224;;;12517:4;:22;;;12541:4;:19;;;12509:52;;;;;;12349:224;12659:66;12704:4;:20;;;12660:38;12680:4;:17;;;12660:15;:19;;:38;;;;:::i;:::-;12659:44;;:66;;;;:::i;:::-;12634:91;;12772:4;:19;;;12755:14;:36;:75;;12816:14;12755:75;;;12794:4;:19;;;12755:75;12738:92;;12925:4;:19;;;12907:14;:37;;:83;;12951:39;12975:14;12951:4;:19;;;:23;;:39;;;;:::i;:::-;12907:83;;;12947:1;12907:83;12880:110;;13070:67;13117:4;:19;;;13070:42;13097:14;13070:4;:22;;;:26;;:42;;;;:::i;:::-;:46;;:67;;;;:::i;:::-;13051:86;;13228:36;13255:8;13228:4;:22;;;:26;;:36;;;;:::i;:::-;13197:67;;13285:20;13307:16;13277:47;;;;12203:1129;;;;;;;;;:::o;16992:244::-;17049:4;17070:10;;;;;;;;;;;17066:163;;;17126:15;;;;;;;;;;;17104:48;;;17153:3;17104:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17097:60;;;;17066:163;17197:20;17213:3;17197:15;:20::i;:::-;17190:27;;16992:244;;;;:::o;20700:727::-;20865:9;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;20832:7;:14;20811:10;:17;:35;20803:44;;;;;;;;20877:1;20865:13;;20860:560;20884:10;:17;20880:1;:21;20860:560;;;20956:1;20931:27;;:10;20942:1;20931:13;;;;;;;;;;;;;;;;;;:27;;;;20923:36;;;;;;;;20995:1;20982:7;20990:1;20982:10;;;;;;;;;;;;;;;;;;:14;20974:23;;;;;;;;21052:10;;21020:28;21037:7;21045:1;21037:10;;;;;;;;;;;;;;;;;;21020:12;;:16;;:28;;;;:::i;:::-;:42;;21012:51;;;;;;;;21128:8;:23;21137:10;21148:1;21137:13;;;;;;;;;;;;;;;;;;21128:23;;;;;;;;;;;;;;;;21086:39;21114:7;21122:1;21114:10;;;;;;;;;;;;;;;;;;21086:8;:23;21095:10;21106:1;21095:13;;;;;;;;;;;;;;;;;;21086:23;;;;;;;;;;;;;;;;:27;;:39;;;;:::i;:::-;:65;21078:74;;;;;;;;21193:39;21221:7;21229:1;21221:10;;;;;;;;;;;;;;;;;;21193:8;:23;21202:10;21213:1;21202:13;;;;;;;;;;;;;;;;;;21193:23;;;;;;;;;;;;;;;;:27;;:39;;;;:::i;:::-;21167:8;:23;21176:10;21187:1;21176:13;;;;;;;;;;;;;;;;;;21167:23;;;;;;;;;;;;;;;:65;;;;21262:28;21279:7;21287:1;21279:10;;;;;;;;;;;;;;;;;;21262:12;;:16;;:28;;;;:::i;:::-;21247:12;:43;;;;21305:41;21320:10;21331:1;21320:13;;;;;;;;;;;;;;;;;;21335:7;21343:1;21335:10;;;;;;;;;;;;;;;;;;21305:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;21382:10;21393:1;21382:13;;;;;;;;;;;;;;;;;;21361:47;;21378:1;21361:47;;;21397:7;21405:1;21397:10;;;;;;;;;;;;;;;;;;21361:47;;;;;;;;;;;;;;;;;;20903:3;;;;;;;20860:560;;;20700:727;;;:::o;8029:98::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;7736:6;;;;;;;;;;;7735:7;7727:16;;;;;;;;8097:4;8088:6;;:13;;;;;;;;;;;;;;;;;;8112:7;;;;;;;;;;8029:98::o;21491:278::-;21657:9;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;21626:7;:14;21605:10;:17;:35;21597:44;;;;;;;;21669:1;21657:13;;21652:110;21676:10;:17;21672:1;:21;21652:110;;;21715:35;21724:10;21735:1;21724:13;;;;;;;;;;;;;;;;;;21739:7;21747:1;21739:10;;;;;;;;;;;;;;;;;;21715:8;:35::i;:::-;21695:3;;;;;;;21652:110;;;21491:278;;;:::o;8630:87::-;8677:7;8704:5;;;;;;;;;;;8697:12;;8630:87;:::o;1162:20::-;;;;;;;;;;;;;:::o;10198:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;13419:1008::-;13945:31;14011:17;7736:6;;;;;;;;;;;7735:7;7727:16;;;;;;;;13504:13;:25;13518:10;13504:25;;;;;;;;;;;;;;;;;;;;;;;;;13503:26;13495:35;;;;;;;;13590:1;13547:9;:21;13557:10;13547:21;;;;;;;;;;;;;;;:39;;;:44;13543:289;;;13612:10;;;;;;;;;;;13608:213;;;13672:15;;;;;;;;;;;13650:55;;;13706:10;13718:3;13723:6;13650:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13643:87;;13608:213;13778:27;13793:3;13798:6;13778:14;:27::i;:::-;13771:34;;13543:289;13979:9;:21;13989:10;13979:21;;;;;;;;;;;;;;;13945:55;;14031:54;14058:10;14070:14;14031:26;:54::i;:::-;14011:74;;14198:9;14188:6;:19;;14180:28;;;;;;;;14227:10;;;;;;;;;;;14223:197;;;14283:15;;;;;;;;;;;14261:55;;;14317:10;14329:3;14334:6;14261:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14254:87;;14223:197;14381:27;14396:3;14401:6;14381:14;:27::i;:::-;7754:1;13419:1008;;;;:::o;22245:387::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;22443:2;22426:14;:19;22418:28;;;;;;;;22477:2;22465:9;:14;22457:23;;;;;;;;22511:14;22493:15;:32;;;;22549:27;22567:8;;22563:2;:12;22549:9;:13;;:27;;;;:::i;:::-;22536:10;:40;;;;22589:35;22596:15;;22613:10;;22589:35;;;;;;;;;;;;;;;;;;;;;;;;22245:387;;:::o;20212:458::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;20317:1;20302:17;;:3;:17;;;;20294:26;;;;;;;;20349:1;20339:7;:11;20331:20;;;;;;;;20399:10;;20370:25;20387:7;20370:12;;:16;;:25;;;;:::i;:::-;:39;;20362:48;;;;;;;;20458:8;:13;20467:3;20458:13;;;;;;;;;;;;;;;;20429:26;20447:7;20429:8;:13;20438:3;20429:13;;;;;;;;;;;;;;;;:17;;:26;;;;:::i;:::-;:42;20421:51;;;;;;;;20501:26;20519:7;20501:8;:13;20510:3;20501:13;;;;;;;;;;;;;;;;:17;;:26;;;;:::i;:::-;20485:8;:13;20494:3;20485:13;;;;;;;;;;;;;;;:42;;;;20553:25;20570:7;20553:12;;:16;;:25;;;;:::i;:::-;20538:12;:40;;;;20589:28;20604:3;20609:7;20589:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;20649:3;20628:34;;20645:1;20628:34;;;20654:7;20628:34;;;;;;;;;;;;;;;;;;20212:458;;:::o;18748:367::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;18837:10;;18827:6;18812:12;;:21;:35;;18804:44;;;;;;;;18891:12;;18882:6;18867:12;;:21;:36;18859:45;;;;;;;;18950:8;:15;18959:5;;;;;;;;;;;18950:15;;;;;;;;;;;;;;;;18941:6;18923:8;:15;18932:5;;;;;;;;;;;18923:15;;;;;;;;;;;;;;;;:24;:42;18915:51;;;;;;;;18998:6;18979:8;:15;18988:5;;;;;;;;;;;18979:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;19031:6;19015:12;;:22;;;;;;;;;;;19048:13;19054:6;19048:13;;;;;;;;;;;;;;;;;;19093:5;;;;;;;;;;;19072:35;;19089:1;19072:35;;;19100:6;19072:35;;;;;;;;;;;;;;;;;;18748:367;:::o;22000:237::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;22081:6;22065:12;;:22;;22057:31;;;;;;;;22126:6;22107:8;:15;22116:5;;;;;;;;;;;22107:15;;;;;;;;;;;;;;;;:25;;22099:34;;;;;;;;22162:6;22146:12;;:22;;;;;;;;;;;22198:6;22179:8;:15;22188:5;;;;;;;;;;;22179:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;22215:14;22222:6;22215:14;;;;;;;;;;;;;;;;;;22000:237;:::o;17708:293::-;17786:14;17817:10;;;;;;;;;;;17813:181;;;17865:15;;;;;;;;;;;17851:40;;;17892:6;17900:8;17851:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17844:65;;;;17813:181;17949:33;17965:6;17973:8;17949:15;:33::i;:::-;17942:40;;17708:293;;;;;:::o;3079:31::-;;;;:::o;8725:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;8933:160::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;9039:5;9009:13;:27;9023:12;9009:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;9055:30;9072:12;9055:30;;;;;;;;;;;;;;;;;;;;;;8933:160;:::o;4811:42::-;4843:10;4811:42;:::o;1734:151::-;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;1831:1;1811:22;;:8;:22;;;;1807:71;;;1858:8;1850:5;;:16;;;;;;;;;;;;;;;;;;1807:71;1734:151;:::o;9101:324::-;9234:15;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;9191:13;:31;9205:16;9191:31;;;;;;;;;;;;;;;;;;;;;;;;;9183:40;;;;;;;;9252:27;9262:16;9252:9;:27::i;:::-;9234:45;;9319:1;9290:8;:26;9299:16;9290:26;;;;;;;;;;;;;;;:30;;;;9347:10;9331:12;;:26;;;;;;;;;;;9368:49;9388:16;9406:10;9368:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;9101:324;;:::o;19151:1008::-;19512:21;1534:5;;;;;;;;;;;1520:19;;:10;:19;;;1512:28;;;;;;;;19325:1;19310:17;;:3;:17;;;;19302:26;;;;;;;;19357:1;19347:7;:11;19339:20;;;;;;;;19407:10;;19378:25;19395:7;19378:12;;:16;;:25;;;;:::i;:::-;:39;;19370:48;;;;;;;;19452:1;19437:12;:16;:39;;;;;19475:1;19457:15;:19;19437:39;:61;;;;;19497:1;19480:14;:18;19437:61;19429:70;;;;;;;;19536:9;:14;19546:3;19536:14;;;;;;;;;;;;;;;19512:38;;19588:1;19569:4;:15;;;:20;19561:29;;;;;;;;19669:76;;;;;;;;;19678:7;19669:76;;;;19687:7;19669:76;;;;19696:12;19669:76;;;;19710:15;19669:76;;;;19727:1;19669:76;;;;19730:14;19669:76;;;19652:9;:14;19662:3;19652:14;;;;;;;;;;;;;;;:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19773:25;19790:7;19773:12;;:16;;:25;;;;:::i;:::-;19758:12;:40;;;;19859:26;19877:7;19859:8;:13;19868:3;19859:13;;;;;;;;;;;;;;;;:17;;:26;;;;:::i;:::-;19843:8;:13;19852:3;19843:13;;;;;;;;;;;;;;;:42;;;;19947:28;19962:3;19967:7;19947:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;20039:3;20018:34;;20035:1;20018:34;;;20044:7;20018:34;;;;;;;;;;;;;;;;;;19151:1008;;;;;;:::o;6291:573::-;6362:6;3303:1;3296:4;:8;3278;;:15;;:26;3276:29;3268:38;;;;;;;;6712:1;6702:6;:11;;6701:53;;;;;6752:1;6719:7;:19;6727:10;6719:19;;;;;;;;;;;;;;;:29;6739:8;6719:29;;;;;;;;;;;;;;;;:34;;6701:53;6699:56;6691:65;;;;;;;;6801:6;6769:7;:19;6777:10;6769:19;;;;;;;;;;;;;;;:29;6789:8;6769:29;;;;;;;;;;;;;;;:38;;;;6839:8;6818:38;;6827:10;6818:38;;;6849:6;6818:38;;;;;;;;;;;;;;;;;;6291:573;;;:::o;5143:901::-;5248:14;5462:8;5714:15;5229:6;3303:1;3296:4;:8;3278;;:15;;:26;3276:29;3268:38;;;;;;;;5265:7;:14;5273:5;5265:14;;;;;;;;;;;;;;;:26;5280:10;5265:26;;;;;;;;;;;;;;;;5248:43;;5473:40;5507:5;5474:27;5485:15;;5474:6;:10;;:27;;;;:::i;:::-;5473:33;;:40;;;;:::i;:::-;5462:51;;5534:10;;5528:3;:16;5524:65;;;5567:10;;5561:16;;5524:65;4843:10;5603;:21;5599:105;;;5670:22;5685:6;5670:10;:14;;:22;;;;:::i;:::-;5641:7;:14;5649:5;5641:14;;;;;;;;;;;;;;;:26;5656:10;5641:26;;;;;;;;;;;;;;;:51;;;;5599:105;5732:15;5743:3;5732:6;:10;;:15;;;;:::i;:::-;5714:33;;5776:27;5796:6;5776:8;:15;5785:5;5776:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;5758:8;:15;5767:5;5758:15;;;;;;;;;;;;;;;:45;;;;5830:29;5848:10;5830:8;:13;5839:3;5830:13;;;;;;;;;;;;;;;;:17;;:29;;;;:::i;:::-;5814:8;:13;5823:3;5814:13;;;;;;;;;;;;;;;:45;;;;5880:1;5874:3;:7;5870:124;;;5916:24;5936:3;5916:8;:15;5925:5;;;;;;;;;;;5916:15;;;;;;;;;;;;;;;;:19;;:24;;;;:::i;:::-;5898:8;:15;5907:5;;;;;;;;;;;5898:15;;;;;;;;;;;;;;;:42;;;;5971:5;;;;;;;;;;;5955:27;;5964:5;5955:27;;;5978:3;5955:27;;;;;;;;;;;;;;;;;;5870:124;6020:3;6004:32;;6013:5;6004:32;;;6025:10;6004:32;;;;;;;;;;;;;;;;;;5143:901;;;;;;;:::o;14471:1309::-;14571:7;14819:14;15001:22;15411:16;14625:1;14595:8;:26;;;:31;14591:156;;;14721:8;:14;14730:4;14721:14;;;;;;;;;;;;;;;;14714:21;;;;14591:156;14836:8;:26;;;14819:43;;14896:8;:21;;;14877:15;:40;;14873:727;;;15026:74;15075:8;:24;;;15027:42;15047:8;:21;;;15027:15;:19;;:42;;;;:::i;:::-;15026:48;;:74;;;;:::i;:::-;15001:99;;15137:8;:23;;;15119:14;:41;;15115:474;;;15271:1;15262:10;;15115:474;;;15430:75;15481:8;:23;;;15430:46;15461:14;15430:8;:26;;;:30;;:46;;;;:::i;:::-;:50;;:75;;;;:::i;:::-;15411:94;;15533:40;15564:8;15533;:26;;;:30;;:40;;;;:::i;:::-;15524:49;;15115:474;14873:727;15733:6;15715:8;:14;15724:4;15715:14;;;;;;;;;;;;;;;;:24;;:57;;15771:1;15715:57;;;15742:26;15761:6;15742:8;:14;15751:4;15742:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;15715:57;15708:64;;14471:1309;;;;;;;;:::o;658:123::-;716:7;748:1;743;:6;;736:14;;;;;;772:1;768;:5;761:12;;658:123;;;;:::o;362:288::-;420:7;519:9;535:1;531;:5;;;;;;;;519:17;;641:1;634:8;;362:288;;;;;:::o;146:208::-;204:7;281:9;233:1;228;:6;224:47;;;258:1;251:8;;;;224:47;297:1;293;:5;281:17;;325:1;320;316;:5;;;;;;;;:10;309:18;;;;;;345:1;338:8;;146:208;;;;;;:::o;4290:116::-;4350:12;4382:8;:16;4391:6;4382:16;;;;;;;;;;;;;;;;4375:23;;4290:116;;;:::o;789:147::-;847:7;867:9;883:1;879;:5;867:17;;907:1;902;:6;;895:14;;;;;;927:1;920:8;;789:147;;;;;:::o;3499:573::-;3585:8;3722:15;3566:6;3303:1;3296:4;:8;3278;;:15;;:26;3276:29;3268:38;;;;;;;;3596:40;3630:5;3597:27;3608:15;;3597:6;:10;;:27;;;;:::i;:::-;3596:33;;:40;;;;:::i;:::-;3585:51;;3657:10;;3651:3;:16;3647:65;;;3690:10;;3684:16;;3647:65;3740:15;3751:3;3740:6;:10;;:15;;;;:::i;:::-;3722:33;;3789:32;3814:6;3789:8;:20;3798:10;3789:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;3766:8;:20;3775:10;3766:20;;;;;;;;;;;;;;;:55;;;;3848:29;3866:10;3848:8;:13;3857:3;3848:13;;;;;;;;;;;;;;;;:17;;:29;;;;:::i;:::-;3832:8;:13;3841:3;3832:13;;;;;;;;;;;;;;;:45;;;;3898:1;3892:3;:7;3888:129;;;3934:24;3954:3;3934:8;:15;3943:5;;;;;;;;;;;3934:15;;;;;;;;;;;;;;;;:19;;:24;;;;:::i;:::-;3916:8;:15;3925:5;;;;;;;;;;;3916:15;;;;;;;;;;;;;;;:42;;;;3994:5;;;;;;;;;;;3973:32;;3982:10;3973:32;;;4001:3;3973:32;;;;;;;;;;;;;;;;;;3888:129;4048:3;4027:37;;4036:10;4027:37;;;4053:10;4027:37;;;;;;;;;;;;;;;;;;3499:573;;;;;:::o;7197:145::-;7275:14;7309:7;:15;7317:6;7309:15;;;;;;;;;;;;;;;:25;7325:8;7309:25;;;;;;;;;;;;;;;;7302:32;;7197:145;;;;:::o
Swarm Source
bzzr://75e4e6167ede0d3a610fe8561ad1a206ceecee8aa13eaccd95f88cb54c3affc3
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.