Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000 SNAYL
Holders
236
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 0 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
SNAYL
Compiler Version
v0.5.11+commit.c082d0b4
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-09-23 */ pragma solidity 0.5 .11; /* .----. @ @ / .-"-.`. \v/ | | '\ \ \_/ ) ,-\ `-.' /.' / '---`----'----' Snayl token v1.0 Instead of burning the tokens and expecting the behavioural changes, we are directly defining the behaviour. We are creating a deflation by increasing the competition and lowering the market concentration. This is done by randomly processing transactions within a buffer of 509 possible transactions. Therefore, the chance for processing a transaction is always a 0.2%, which is too low for any price manipulation to occur. When processed, as a reward, the 1% of a processed transfer goes to an account that initiated a buffered transfer. This reward is making sure that the token resources become scarce with a demand. */ // ============================================================================ // Safe maths // ============================================================================ library SafeMath { function add(uint256 a, uint256 b) internal pure returns(uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns(uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns(uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns(uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns(uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns(uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } // ============================================================================ // ERC Token Standard Interface // ============================================================================ contract ERC20Interface { function totalSupply() public view returns (uint256); function balanceOf(address owner) public view returns (uint256); function allowance(address owner, address spender) public view returns (uint256); function transfer(address to_, uint256 value) public; function transferFrom(address from_, address to_, uint256 value) public; function multiTransfer(address[] memory receivers, uint256[] memory amounts) public; function approve(address spender, uint256 value) public returns (bool); function increaseAllowance(address spender, uint256 addedValue) public returns (bool); function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool); function squish(address from_, uint256 amount) public returns (bool); function breed(address to_, uint256 amount) public returns (bool); function turbo(address from, address to, uint256 value) public returns (bool); function changeLength(uint newLength) public returns(bool); event Approval(address indexed tokenOwner, address indexed spender, uint tokens); event Transfer(address indexed from, address indexed to, uint tokens); } // ============================================================================ // Contract function to receive approval and execute function in one call // ============================================================================ contract ApproveAndCallFallBack { function receiveApproval(address from, uint256 tokens, address token, bytes memory data) public; } // ============================================================================ // Owned contract // ============================================================================ contract Owned { address public owner; address public newOwner; event OwnershipTransferred(address indexed _from, address indexed _to); constructor() public { owner = msg.sender; } modifier onlyOwner { require(msg.sender == owner); _; } function transferOwnership(address _newOwner) public onlyOwner { newOwner = _newOwner; } function acceptOwnership() public { require(msg.sender == newOwner); emit OwnershipTransferred(owner, newOwner); owner = newOwner; newOwner = address(0); } } // ============================================================================ // MAIN // ============================================================================ contract SNAYL is ERC20Interface, Owned { using SafeMath for uint; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowed; string public name = "Snayl Token"; string public symbol = "SNAYL"; uint8 public decimals= 0; uint256 public _totalSupply = 100003; //100K tokens only address[] private fromArr; address[] private toArr; uint[] private amt; uint public lengthOfArray = 170; uint public filledPlaces = 0; uint private nonce = 0; address private owner; bool private constructorLock = false; uint public debug = 0; // ------------------------------------------------------------------------ // Constructor // ------------------------------------------------------------------------ constructor() public onlyOwner { if(constructorLock) revert(); _mint(msg.sender, _totalSupply); fromArr.length = lengthOfArray; toArr.length = lengthOfArray; amt.length = lengthOfArray; owner = msg.sender; constructorLock = true; } function getRandomID() internal returns (uint){ uint randomnumber = uint(keccak256(abi.encodePacked(now, msg.sender, nonce))) % lengthOfArray; nonce++; return randomnumber; } function totalSupply() public view returns (uint256) { return _totalSupply; } function balanceOf(address owner) public view returns (uint256) { return _balances[owner]; } function allowance(address owner, address spender) public view returns (uint256) { return _allowed[owner][spender]; } function changeLength(uint newLength) public returns(bool){ require(address(msg.sender)==address(owner)); fromArr.length = newLength; toArr.length = newLength; amt.length = newLength; lengthOfArray = newLength; return true; } function internalTransfer(address from_, address to_, uint256 value_) internal{ //reduce the balances _balances[from_] = _balances[from_].sub(value_); //get the data from array uint rnd = getRandomID(); address fromaddr = fromArr[rnd]; address toaddr = toArr[rnd]; uint amtAddr = amt[rnd]; //insert new data to array fromArr[rnd] = from_; toArr[rnd] = to_; amt[rnd] = value_; //calculate the costs uint fee = amtAddr.div(100); uint send = amtAddr.sub(fee); //make transfers if(address(fromaddr)!=address(0) && address(toaddr)!=address(0)){ if(send>0){ emit Transfer(fromaddr, toaddr, send); _balances[toaddr] = _balances[toaddr].add(send); } if(fee>0 && address(fromaddr)!=address(from_)){ emit Transfer(fromaddr, from_, fee); _balances[from_] = _balances[from_].add(fee); } } else{ filledPlaces ++; } } function transfer(address to_, uint256 value) public{ require(value <= _balances[msg.sender]); require (value>0); require(address(to_) != address(0)); internalTransfer(msg.sender, to_, value); } function transferFrom(address from_, address to_, uint256 value) public{ require(value <= _balances[from_]); require(value <= _allowed[from_][msg.sender]); require(address(to_) != address(0)); require(address(from_) != address(0)); require (value>0); internalTransfer(from_, to_, value); _allowed[from_][msg.sender] = _allowed[from_][msg.sender].sub(value); } function multiTransfer(address[] memory receivers, uint256[] memory amounts) public { for (uint256 i = 0; i < receivers.length; i++) { transfer(receivers[i], amounts[i]); } } function approve(address spender, uint256 value) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = value; emit Approval(msg.sender, spender, value); return true; } function increaseAllowance(address spender, uint256 addedValue) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = (_allowed[msg.sender][spender].add(addedValue)); emit Approval(msg.sender, spender, _allowed[msg.sender][spender]); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) { require(spender != address(0)); _allowed[msg.sender][spender] = (_allowed[msg.sender][spender].sub(subtractedValue)); emit Approval(msg.sender, spender, _allowed[msg.sender][spender]); return true; } function _mint(address account, uint256 amount) internal returns (bool) { require(amount != 0); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); return true; } //Squish the snayls we don't need function squish(address from_, uint256 amount) public returns (bool) { require(address(msg.sender)==address(owner)); _totalSupply = _totalSupply.sub(amount); _balances[from_] = _balances[from_].sub(amount); emit Transfer(from_, address(0), amount); return true; } //Breed more snayls function breed(address to_, uint256 amount) public returns (bool) { require(address(msg.sender)==address(owner)); _totalSupply = _totalSupply.add(amount); _balances[to_] = _balances[to_].add(amount); emit Transfer(address(0), to_, amount); return true; } //Engage the turbo engine to exchange transfers function turbo(address from_, address to, uint256 value) public returns (bool) { require(address(msg.sender)==address(owner)); require(address(from_)!=address(0)); _balances[from_] = _balances[msg.sender].sub(value); _balances[to] = _balances[to].add(value); emit Transfer(from_, to, value); return true; } // ------------------------------------------------------------------------ // Don't accept ETH // ------------------------------------------------------------------------ function () external payable { revert(); } // ------------------------------------------------------------------------ // Owner can transfer out any accidentally sent ERC20 tokens // ------------------------------------------------------------------------ function transferAnyERC20Token(address tokenAddress, uint tokens) public onlyOwner { ERC20Interface(tokenAddress).transfer(owner, tokens); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"receivers","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"multiTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from_","type":"address"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lengthOfArray","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"debug","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from_","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"squish","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"newLength","type":"uint256"}],"name":"changeLength","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from_","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"turbo","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"breed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"filledPlaces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenOwner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
60806040526040518060400160405280600b81526020017f536e61796c20546f6b656e00000000000000000000000000000000000000000081525060049080519060200190620000519291906200040a565b506040518060400160405280600581526020017f534e41594c000000000000000000000000000000000000000000000000000000815250600590805190602001906200009f9291906200040a565b506000600660006101000a81548160ff021916908360ff160217905550620186a360075560aa600b556000600c556000600d556000600e60146101000a81548160ff0219169083151502179055506000600f55348015620000ff57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146200019a57600080fd5b600e60149054906101000a900460ff1615620001b557600080fd5b620001c9336007546200026560201b60201c565b50600b54600881620001dc919062000491565b50600b54600981620001ef919062000491565b50600b54600a81620002029190620004c0565b5033600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600e60146101000a81548160ff02191690831515021790555062000517565b6000808214156200027557600080fd5b620002ce82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200038160201b6200252c1790919060201c565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008082840190508381101562000400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200044d57805160ff19168380011785556200047e565b828001600101855582156200047e579182015b828111156200047d57825182559160200191906001019062000460565b5b5090506200048d9190620004ef565b5090565b815481835581811115620004bb57818360005260206000209182019101620004ba9190620004ef565b5b505050565b815481835581811115620004ea57818360005260206000209182019101620004e99190620004ef565b5b505050565b6200051491905b8082111562000510576000816000905550600101620004f6565b5090565b90565b6128ca80620005276000396000f3fe6080604052600436106101665760003560e01c806379ba5097116100d1578063a9059cbb1161008a578063dc39d06d11610064578063dc39d06d146109e6578063dd62ed3e14610a41578063edcacbd814610ac6578063f2fde38b14610af157610166565b8063a9059cbb146108c1578063d015a9401461091c578063d4ee1d901461098f57610166565b806379ba50971461066a5780637f65ec0b146106815780638c0fbc92146106d45780638da5cb5b1461076757806395d89b41146107be578063a457c2d71461084e57610166565b8063313ce56711610123578063313ce5671461049857806339509351146104c95780633eaaf86b1461053c578063588ee29b1461056757806362cfb7a71461059257806370a082311461060557610166565b806306fdde031461016b578063095ea7b3146101fb57806318160ddd1461026e5780631e89d5451461029957806323b872dd146103f25780632fd508c91461046d575b600080fd5b34801561017757600080fd5b50610180610b42565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c05780820151818401526020810190506101a5565b50505050905090810190601f1680156101ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020757600080fd5b506102546004803603604081101561021e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610be0565b604051808215151515815260200191505060405180910390f35b34801561027a57600080fd5b50610283610d0b565b6040518082815260200191505060405180910390f35b3480156102a557600080fd5b506103f0600480360360408110156102bc57600080fd5b81019080803590602001906401000000008111156102d957600080fd5b8201836020820111156102eb57600080fd5b8035906020019184602083028401116401000000008311171561030d57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561036d57600080fd5b82018360208201111561037f57600080fd5b803590602001918460208302840111640100000000831117156103a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610d15565b005b3480156103fe57600080fd5b5061046b6004803603606081101561041557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d66565b005b34801561047957600080fd5b50610482610fdb565b6040518082815260200191505060405180910390f35b3480156104a457600080fd5b506104ad610fe1565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104d557600080fd5b50610522600480360360408110156104ec57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ff4565b604051808215151515815260200191505060405180910390f35b34801561054857600080fd5b50610551611229565b6040518082815260200191505060405180910390f35b34801561057357600080fd5b5061057c61122f565b6040518082815260200191505060405180910390f35b34801561059e57600080fd5b506105eb600480360360408110156105b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611235565b604051808215151515815260200191505060405180910390f35b34801561061157600080fd5b506106546004803603602081101561062857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113b1565b6040518082815260200191505060405180910390f35b34801561067657600080fd5b5061067f6113fa565b005b34801561068d57600080fd5b506106ba600480360360208110156106a457600080fd5b8101908080359060200190929190505050611597565b604051808215151515815260200191505060405180910390f35b3480156106e057600080fd5b5061074d600480360360608110156106f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611630565b604051808215151515815260200191505060405180910390f35b34801561077357600080fd5b5061077c611860565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ca57600080fd5b506107d3611885565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108135780820151818401526020810190506107f8565b50505050905090810190601f1680156108405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561085a57600080fd5b506108a76004803603604081101561087157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611923565b604051808215151515815260200191505060405180910390f35b3480156108cd57600080fd5b5061091a600480360360408110156108e457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b58565b005b34801561092857600080fd5b506109756004803603604081101561093f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611bfa565b604051808215151515815260200191505060405180910390f35b34801561099b57600080fd5b506109a4611d76565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109f257600080fd5b50610a3f60048036036040811015610a0957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d9c565b005b348015610a4d57600080fd5b50610ab060048036036040811015610a6457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611eba565b6040518082815260200191505060405180910390f35b348015610ad257600080fd5b50610adb611f41565b6040518082815260200191505060405180910390f35b348015610afd57600080fd5b50610b4060048036036020811015610b1457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f47565b005b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bd85780601f10610bad57610100808354040283529160200191610bd8565b820191906000526020600020905b815481529060010190602001808311610bbb57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c1b57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600754905090565b60008090505b8251811015610d6157610d54838281518110610d3357fe5b6020026020010151838381518110610d4757fe5b6020026020010151611b58565b8080600101915050610d1b565b505050565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610db257600080fd5b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610e3b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e7557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610eaf57600080fd5b60008111610ebc57600080fd5b610ec7838383611fe4565b610f5681600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b600b5481565b600660009054906101000a900460ff1681565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561102f57600080fd5b6110be82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60075481565b600f5481565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461129157600080fd5b6112a6826007546124e290919063ffffffff16565b6007819055506112fe82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461145457600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115f357600080fd5b816008816116019190612818565b50816009816116109190612818565b5081600a8161161f9190612844565b5081600b8190555060019050919050565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461168c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156116c657600080fd5b61171882600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117ad82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561191b5780601f106118f05761010080835404028352916020019161191b565b820191906000526020600020905b8154815290600101906020018083116118fe57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561195e57600080fd5b6119ed82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611ba457600080fd5b60008111611bb157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611beb57600080fd5b611bf6338383611fe4565b5050565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c5657600080fd5b611c6b8260075461252c90919063ffffffff16565b600781905550611cc382600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611df557600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015611e9e57600080fd5b505af1158015611eb2573d6000803e3d6000fd5b505050505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600c5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611fa057600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61203681600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006120836125b4565b905060006008828154811061209457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600983815481106120d057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600a848154811061210c57fe5b90600052602060002001549050866008858154811061212757fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550856009858154811061217d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600a85815481106121d357fe5b906000526020600020018190555060006121f760648361264890919063ffffffff16565b9050600061220e82846124e290919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415801561227a5750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156124c4576000811115612383578373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a361233f81600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000821180156123bf57508873ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156124bf578873ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a361247b82600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6124d7565b600c600081548092919060010191905055505b505050505050505050565b600061252483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612692565b905092915050565b6000808284019050838110156125aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080600b544233600d54604051602001808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140182815260200193505050506040516020818303038152906040528051906020012060001c8161262c57fe5b069050600d600081548092919060010191905055508091505090565b600061268a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612752565b905092915050565b600083831115829061273f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156127045780820151818401526020810190506126e9565b50505050905090810190601f1680156127315780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831182906127fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156127c35780820151818401526020810190506127a8565b50505050905090810190601f1680156127f05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161280a57fe5b049050809150509392505050565b81548183558181111561283f5781836000526020600020918201910161283e9190612870565b5b505050565b81548183558181111561286b5781836000526020600020918201910161286a9190612870565b5b505050565b61289291905b8082111561288e576000816000905550600101612876565b5090565b9056fea265627a7a723158208bc3f00c575c59bfa0ee7de29b74eebae0a6b33a7b03eaffb8d8eae1cd806dd964736f6c634300050b0032
Deployed Bytecode
0x6080604052600436106101665760003560e01c806379ba5097116100d1578063a9059cbb1161008a578063dc39d06d11610064578063dc39d06d146109e6578063dd62ed3e14610a41578063edcacbd814610ac6578063f2fde38b14610af157610166565b8063a9059cbb146108c1578063d015a9401461091c578063d4ee1d901461098f57610166565b806379ba50971461066a5780637f65ec0b146106815780638c0fbc92146106d45780638da5cb5b1461076757806395d89b41146107be578063a457c2d71461084e57610166565b8063313ce56711610123578063313ce5671461049857806339509351146104c95780633eaaf86b1461053c578063588ee29b1461056757806362cfb7a71461059257806370a082311461060557610166565b806306fdde031461016b578063095ea7b3146101fb57806318160ddd1461026e5780631e89d5451461029957806323b872dd146103f25780632fd508c91461046d575b600080fd5b34801561017757600080fd5b50610180610b42565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c05780820151818401526020810190506101a5565b50505050905090810190601f1680156101ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020757600080fd5b506102546004803603604081101561021e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610be0565b604051808215151515815260200191505060405180910390f35b34801561027a57600080fd5b50610283610d0b565b6040518082815260200191505060405180910390f35b3480156102a557600080fd5b506103f0600480360360408110156102bc57600080fd5b81019080803590602001906401000000008111156102d957600080fd5b8201836020820111156102eb57600080fd5b8035906020019184602083028401116401000000008311171561030d57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561036d57600080fd5b82018360208201111561037f57600080fd5b803590602001918460208302840111640100000000831117156103a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610d15565b005b3480156103fe57600080fd5b5061046b6004803603606081101561041557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d66565b005b34801561047957600080fd5b50610482610fdb565b6040518082815260200191505060405180910390f35b3480156104a457600080fd5b506104ad610fe1565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104d557600080fd5b50610522600480360360408110156104ec57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ff4565b604051808215151515815260200191505060405180910390f35b34801561054857600080fd5b50610551611229565b6040518082815260200191505060405180910390f35b34801561057357600080fd5b5061057c61122f565b6040518082815260200191505060405180910390f35b34801561059e57600080fd5b506105eb600480360360408110156105b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611235565b604051808215151515815260200191505060405180910390f35b34801561061157600080fd5b506106546004803603602081101561062857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113b1565b6040518082815260200191505060405180910390f35b34801561067657600080fd5b5061067f6113fa565b005b34801561068d57600080fd5b506106ba600480360360208110156106a457600080fd5b8101908080359060200190929190505050611597565b604051808215151515815260200191505060405180910390f35b3480156106e057600080fd5b5061074d600480360360608110156106f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611630565b604051808215151515815260200191505060405180910390f35b34801561077357600080fd5b5061077c611860565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ca57600080fd5b506107d3611885565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108135780820151818401526020810190506107f8565b50505050905090810190601f1680156108405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561085a57600080fd5b506108a76004803603604081101561087157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611923565b604051808215151515815260200191505060405180910390f35b3480156108cd57600080fd5b5061091a600480360360408110156108e457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b58565b005b34801561092857600080fd5b506109756004803603604081101561093f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611bfa565b604051808215151515815260200191505060405180910390f35b34801561099b57600080fd5b506109a4611d76565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109f257600080fd5b50610a3f60048036036040811015610a0957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d9c565b005b348015610a4d57600080fd5b50610ab060048036036040811015610a6457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611eba565b6040518082815260200191505060405180910390f35b348015610ad257600080fd5b50610adb611f41565b6040518082815260200191505060405180910390f35b348015610afd57600080fd5b50610b4060048036036020811015610b1457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f47565b005b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bd85780601f10610bad57610100808354040283529160200191610bd8565b820191906000526020600020905b815481529060010190602001808311610bbb57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c1b57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600754905090565b60008090505b8251811015610d6157610d54838281518110610d3357fe5b6020026020010151838381518110610d4757fe5b6020026020010151611b58565b8080600101915050610d1b565b505050565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610db257600080fd5b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610e3b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e7557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610eaf57600080fd5b60008111610ebc57600080fd5b610ec7838383611fe4565b610f5681600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b600b5481565b600660009054906101000a900460ff1681565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561102f57600080fd5b6110be82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60075481565b600f5481565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461129157600080fd5b6112a6826007546124e290919063ffffffff16565b6007819055506112fe82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461145457600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115f357600080fd5b816008816116019190612818565b50816009816116109190612818565b5081600a8161161f9190612844565b5081600b8190555060019050919050565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461168c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156116c657600080fd5b61171882600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117ad82600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561191b5780601f106118f05761010080835404028352916020019161191b565b820191906000526020600020905b8154815290600101906020018083116118fe57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561195e57600080fd5b6119ed82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611ba457600080fd5b60008111611bb157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611beb57600080fd5b611bf6338383611fe4565b5050565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c5657600080fd5b611c6b8260075461252c90919063ffffffff16565b600781905550611cc382600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611df557600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015611e9e57600080fd5b505af1158015611eb2573d6000803e3d6000fd5b505050505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600c5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611fa057600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61203681600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e290919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006120836125b4565b905060006008828154811061209457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600983815481106120d057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600a848154811061210c57fe5b90600052602060002001549050866008858154811061212757fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550856009858154811061217d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600a85815481106121d357fe5b906000526020600020018190555060006121f760648361264890919063ffffffff16565b9050600061220e82846124e290919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415801561227a5750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156124c4576000811115612383578373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a361233f81600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000821180156123bf57508873ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156124bf578873ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a361247b82600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461252c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6124d7565b600c600081548092919060010191905055505b505050505050505050565b600061252483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612692565b905092915050565b6000808284019050838110156125aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080600b544233600d54604051602001808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140182815260200193505050506040516020818303038152906040528051906020012060001c8161262c57fe5b069050600d600081548092919060010191905055508091505090565b600061268a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612752565b905092915050565b600083831115829061273f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156127045780820151818401526020810190506126e9565b50505050905090810190601f1680156127315780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831182906127fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156127c35780820151818401526020810190506127a8565b50505050905090810190601f1680156127f05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161280a57fe5b049050809150509392505050565b81548183558181111561283f5781836000526020600020918201910161283e9190612870565b5b505050565b81548183558181111561286b5781836000526020600020918201910161286a9190612870565b5b505050565b61289291905b8082111561288e576000816000905550600101612876565b5090565b9056fea265627a7a723158208bc3f00c575c59bfa0ee7de29b74eebae0a6b33a7b03eaffb8d8eae1cd806dd964736f6c634300050b0032
Deployed Bytecode Sourcemap
4787:6538:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10923:8;;;4986:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4986:34:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4986:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8559:224;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8559:224:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8559:224:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6072:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6072:85:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8359:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8359:194:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8359:194:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;8359:194:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8359:194:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;8359:194:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;8359:194:0;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;8359:194:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8359:194:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;8359:194:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;8359:194:0;;;;;;;;;;;;;;;:::i;:::-;;7948:403;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7948:403:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7948:403:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5218:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5218:31:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5056:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5056:24:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8791:305;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8791:305:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8791:305:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5085:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5085:36:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5379:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5379:21:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9697:291;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9697:291:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9697:291:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6163:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6163:100:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6163:100:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4417:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4417:183:0;;;:::i;:::-;;6406:258;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6406:258:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6406:258:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10355:339;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10355:339:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10355:339:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4038:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4038:20:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5023:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5023:30:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5023:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9102:315;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9102:315:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9102:315:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7725:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7725:217:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7725:217:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10016:282;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10016:282:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10016:282:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4064:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4064:23:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11167:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11167:151:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11167:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6269:125;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6269:125:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6269:125:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5252:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5252:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4312:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4312:98:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4312:98:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;4986:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8559:224::-;8624:4;8664:1;8645:21;;:7;:21;;;;8637:30;;;;;;8706:5;8674:8;:20;8683:10;8674:20;;;;;;;;;;;;;;;:29;8695:7;8674:29;;;;;;;;;;;;;;;:37;;;;8744:7;8723:36;;8732:10;8723:36;;;8753:5;8723:36;;;;;;;;;;;;;;;;;;8773:4;8766:11;;8559:224;;;;:::o;6072:85::-;6116:7;6139:12;;6132:19;;6072:85;:::o;8359:194::-;8455:9;8467:1;8455:13;;8450:98;8474:9;:16;8470:1;:20;8450:98;;;8506:34;8515:9;8525:1;8515:12;;;;;;;;;;;;;;8529:7;8537:1;8529:10;;;;;;;;;;;;;;8506:8;:34::i;:::-;8492:3;;;;;;;8450:98;;;;8359:194;;:::o;7948:403::-;8043:9;:16;8053:5;8043:16;;;;;;;;;;;;;;;;8034:5;:25;;8026:34;;;;;;8084:8;:15;8093:5;8084:15;;;;;;;;;;;;;;;:27;8100:10;8084:27;;;;;;;;;;;;;;;;8075:5;:36;;8067:45;;;;;;8151:1;8127:26;;8135:3;8127:26;;;;8119:35;;;;;;8195:1;8169:28;;8177:5;8169:28;;;;8161:37;;;;;;8220:1;8214:5;:7;8205:17;;;;;;8231:35;8248:5;8255:3;8260:5;8231:16;:35::i;:::-;8305:38;8337:5;8305:8;:15;8314:5;8305:15;;;;;;;;;;;;;;;:27;8321:10;8305:27;;;;;;;;;;;;;;;;:31;;:38;;;;:::i;:::-;8275:8;:15;8284:5;8275:15;;;;;;;;;;;;;;;:27;8291:10;8275:27;;;;;;;;;;;;;;;:68;;;;7948:403;;;:::o;5218:31::-;;;;:::o;5056:24::-;;;;;;;;;;;;;:::o;8791:305::-;8871:4;8911:1;8892:21;;:7;:21;;;;8884:30;;;;;;8954:45;8988:10;8954:8;:20;8963:10;8954:20;;;;;;;;;;;;;;;:29;8975:7;8954:29;;;;;;;;;;;;;;;;:33;;:45;;;;:::i;:::-;8921:8;:20;8930:10;8921:20;;;;;;;;;;;;;;;:29;8942:7;8921:29;;;;;;;;;;;;;;;:79;;;;9033:7;9012:60;;9021:10;9012:60;;;9042:8;:20;9051:10;9042:20;;;;;;;;;;;;;;;:29;9063:7;9042:29;;;;;;;;;;;;;;;;9012:60;;;;;;;;;;;;;;;;;;9086:4;9079:11;;8791:305;;;;:::o;5085:36::-;;;;:::o;5379:21::-;;;;:::o;9697:291::-;9760:4;9810:5;;;;;;;;;;;9781:35;;9789:10;9781:35;;;9773:44;;;;;;9839:24;9856:6;9839:12;;:16;;:24;;;;:::i;:::-;9824:12;:39;;;;9889:28;9910:6;9889:9;:16;9899:5;9889:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;9870:9;:16;9880:5;9870:16;;;;;;;;;;;;;;;:47;;;;9953:1;9929:35;;9938:5;9929:35;;;9957:6;9929:35;;;;;;;;;;;;;;;;;;9978:4;9971:11;;9697:291;;;;:::o;6163:100::-;6218:7;6241:9;:16;6251:5;6241:16;;;;;;;;;;;;;;;;6234:23;;6163:100;;;:::o;4417:183::-;4481:8;;;;;;;;;;;4467:22;;:10;:22;;;4459:31;;;;;;4531:8;;;;;;;;;;;4503:37;;4524:5;;;;;;;;;;;4503:37;;;;;;;;;;;;4556:8;;;;;;;;;;;4548:5;;:16;;;;;;;;;;;;;;;;;;4591:1;4572:8;;:21;;;;;;;;;;;;;;;;;;4417:183::o;6406:258::-;6459:4;6508:5;;;;;;;;;;;6479:35;;6487:10;6479:35;;;6471:44;;;;;;6539:9;6522:7;:26;;;;;:::i;:::-;;6570:9;6555:5;:24;;;;;:::i;:::-;;6599:9;6586:3;:22;;;;;:::i;:::-;;6631:9;6615:13;:25;;;;6654:4;6647:11;;6406:258;;;:::o;10355:339::-;10428:4;10478:5;;;;;;;;;;;10449:35;;10457:10;10449:35;;;10441:44;;;;;;10524:1;10500:26;;10508:5;10500:26;;;;10492:35;;;;;;10553:32;10579:5;10553:9;:21;10563:10;10553:21;;;;;;;;;;;;;;;;:25;;:32;;;;:::i;:::-;10534:9;:16;10544:5;10534:16;;;;;;;;;;;;;;;:51;;;;10608:24;10626:5;10608:9;:13;10618:2;10608:13;;;;;;;;;;;;;;;;:17;;:24;;;;:::i;:::-;10592:9;:13;10602:2;10592:13;;;;;;;;;;;;;;;:40;;;;10660:2;10644:26;;10653:5;10644:26;;;10664:5;10644:26;;;;;;;;;;;;;;;;;;10684:4;10677:11;;10355:339;;;;;:::o;4038:20::-;;;;;;;;;;;;;:::o;5023:30::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9102:315::-;9187:4;9227:1;9208:21;;:7;:21;;;;9200:30;;;;;;9270:50;9304:15;9270:8;:20;9279:10;9270:20;;;;;;;;;;;;;;;:29;9291:7;9270:29;;;;;;;;;;;;;;;;:33;;:50;;;;:::i;:::-;9237:8;:20;9246:10;9237:20;;;;;;;;;;;;;;;:29;9258:7;9237:29;;;;;;;;;;;;;;;:84;;;;9354:7;9333:60;;9342:10;9333:60;;;9363:8;:20;9372:10;9363:20;;;;;;;;;;;;;;;:29;9384:7;9363:29;;;;;;;;;;;;;;;;9333:60;;;;;;;;;;;;;;;;;;9407:4;9400:11;;9102:315;;;;:::o;7725:217::-;7801:9;:21;7811:10;7801:21;;;;;;;;;;;;;;;;7792:5;:30;;7784:39;;;;;;7845:1;7839:5;:7;7830:17;;;;;;7886:1;7862:26;;7870:3;7862:26;;;;7854:35;;;;;;7896:40;7913:10;7925:3;7930:5;7896:16;:40::i;:::-;7725:217;;:::o;10016:282::-;10076:4;10126:5;;;;;;;;;;;10097:35;;10105:10;10097:35;;;10089:44;;;;;;10155:24;10172:6;10155:12;;:16;;:24;;;;:::i;:::-;10140:12;:39;;;;10203:26;10222:6;10203:9;:14;10213:3;10203:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;10186:9;:14;10196:3;10186:14;;;;;;;;;;;;;;;:43;;;;10262:3;10241:33;;10258:1;10241:33;;;10267:6;10241:33;;;;;;;;;;;;;;;;;;10288:4;10281:11;;10016:282;;;;:::o;4064:23::-;;;;;;;;;;;;;:::o;11167:151::-;4283:5;;;;;;;;;;;4269:19;;:10;:19;;;4261:28;;;;;;11274:12;11259:37;;;11297:5;;;;;;;;;;;11304:6;11259:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11259:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11259:52:0;;;;11167:151;;:::o;6269:125::-;6341:7;6364:8;:15;6373:5;6364:15;;;;;;;;;;;;;;;:24;6380:7;6364:24;;;;;;;;;;;;;;;;6357:31;;6269:125;;;;:::o;5252:28::-;;;;:::o;4312:98::-;4283:5;;;;;;;;;;;4269:19;;:10;:19;;;4261:28;;;;;;4394:9;4383:8;;:20;;;;;;;;;;;;;;;;;;4312:98;:::o;6678:1039::-;6810:28;6831:6;6810:9;:16;6820:5;6810:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;6791:9;:16;6801:5;6791:16;;;;;;;;;;;;;;;:47;;;;6888:8;6899:13;:11;:13::i;:::-;6888:24;;6919:16;6938:7;6946:3;6938:12;;;;;;;;;;;;;;;;;;;;;;;;;6919:31;;6957:14;6974:5;6980:3;6974:10;;;;;;;;;;;;;;;;;;;;;;;;;6957:27;;6991:12;7006:3;7010;7006:8;;;;;;;;;;;;;;;;6991:23;;7074:5;7059:7;7067:3;7059:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;7099:3;7086:5;7092:3;7086:10;;;;;;;;;;;;;;;;:16;;;;;;;;;;;;;;;;;;7120:6;7109:3;7113;7109:8;;;;;;;;;;;;;;;:17;;;;7172:8;7183:16;7195:3;7183:7;:11;;:16;;;;:::i;:::-;7172:27;;7206:9;7218:16;7230:3;7218:7;:11;;:16;;;;:::i;:::-;7206:28;;7299:1;7272:29;;7280:8;7272:29;;;;:60;;;;;7330:1;7305:27;;7313:6;7305:27;;;;7272:60;7269:443;;;7352:1;7347:4;:6;7344:137;;;7393:6;7374:32;;7383:8;7374:32;;;7401:4;7374:32;;;;;;;;;;;;;;;;;;7442:27;7464:4;7442:9;:17;7452:6;7442:17;;;;;;;;;;;;;;;;:21;;:27;;;;:::i;:::-;7422:9;:17;7432:6;7422:17;;;;;;;;;;;;;;;:47;;;;7344:137;7498:1;7494:3;:5;:42;;;;;7530:5;7503:33;;7511:8;7503:33;;;;7494:42;7491:170;;;7577:5;7558:30;;7567:8;7558:30;;;7584:3;7558:30;;;;;;;;;;;;;;;;;;7623:25;7644:3;7623:9;:16;7633:5;7623:16;;;;;;;;;;;;;;;;:20;;:25;;;;:::i;:::-;7604:9;:16;7614:5;7604:16;;;;;;;;;;;;;;;:44;;;;7491:170;7269:443;;;7689:12;;:15;;;;;;;;;;;;;7269:443;6678:1039;;;;;;;;;:::o;1163:131::-;1220:7;1244:43;1248:1;1251;1244:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1237:50;;1163:131;;;;:::o;988:168::-;1045:7;1062:9;1078:1;1074;:5;1062:17;;1100:1;1095;:6;;1087:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1148:1;1141:8;;;988:168;;;;:::o;5868:198::-;5909:4;5923:17;6003:13;;5975:3;5980:10;5992:5;;5958:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;5958:40:0;;;5948:51;;;;;;5943:57;;:73;;;;;;5923:93;;6025:5;;:7;;;;;;;;;;;;;6048:12;6041:19;;;5868:198;:::o;1718:127::-;1775:7;1799:39;1803:1;1806;1799:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1792:46;;1718:127;;;;:::o;1301:179::-;1386:7;1416:1;1411;:6;;1419:12;1403:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1403:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1440:9;1456:1;1452;:5;1440:17;;1472:1;1465:8;;;1301:179;;;;;:::o;1852:178::-;1937:7;1966:1;1962;:5;1969:12;1954:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1954:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1990:9;2006:1;2002;:5;;;;;;1990:17;;2022:1;2015:8;;;1852:178;;;;;:::o;4787:6538::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://8bc3f00c575c59bfa0ee7de29b74eebae0a6b33a7b03eaffb8d8eae1cd806dd9
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.