ERC-20
Overview
Max Total Supply
1,360 ZWKC
Holders
70
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:
ZaoWouKiCoin
Compiler Version
v0.4.25+commit.59dbf8f1
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-06-15 */ pragma solidity ^0.4.25; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a * b; assert(a == 0 || 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; //address public txsender; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; // txsender = tx.origin; } /** * @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) onlyOwner public { require(newOwner != address(0)); emit OwnershipTransferred(owner, newOwner); owner = newOwner; } } contract Token { /// @return total amount of tokens function totalSupply() constant returns (uint256 supply) {} /// @param _owner The address from which the balance will be retrieved /// @return The balance function balanceOf(address _owner) constant returns (uint256 balance) {} /// @notice send `_value` token to `_to` from `msg.sender` /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transfer(address _to, uint256 _value) returns (bool success) {} /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` /// @param _from The address of the sender /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {} /// @notice `msg.sender` approves `_addr` to spend `_value` tokens /// @param _spender The address of the account able to transfer the tokens /// @param _value The amount of wei to be approved for transfer /// @return Whether the approval was successful or not function approve(address _spender, uint256 _value) returns (bool success) {} /// @param _owner The address of the account owning tokens /// @param _spender The address of the account able to transfer the tokens /// @return Amount of remaining tokens allowed to spent function allowance(address _owner, address _spender) constant returns (uint256 remaining) {} event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); event setNewBlockEvent(string SecretKey_Pre, string Name_New, string TxHash_Pre, string DigestCode_New, string Image_New, string Note_New); } contract StandardToken is Token { address public note_contract; function transfer(address _to, uint256 _value) returns (bool success) { //Default assumes totalSupply can't be over max (2^256 - 1). //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap. //Replace the if with this one instead. //if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) { if (balances[msg.sender] >= _value && _value > 0) { balances[msg.sender] -= _value; balances[_to] += _value; emit Transfer(msg.sender, _to, _value); return true; } else { return false; } } function transferFrom(address _from, address _to, uint256 _value) returns (bool success) { //same as above. Replace this line with the following if you want to protect against wrapping uints. //if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) { if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) { balances[_to] += _value; balances[_from] -= _value; allowed[_from][msg.sender] -= _value; emit Transfer(_from, _to, _value); return true; } else { return false; } } function balanceOf(address _owner) constant returns (uint256 balance) { return balances[_owner]; } function approve(address _spender, uint256 _value) returns (bool success) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) constant returns (uint256 remaining) { return allowed[_owner][_spender]; } mapping (address => uint256) balances; mapping (address => mapping (address => uint256)) allowed; uint256 public totalSupply; } /** * @title Mintable token * @dev ERC20 mintable token creation */ contract StockMintToken is StandardToken, Ownable { event StockMint(address indexed to, uint256 amount); event Burn(address indexed burner, uint256 value); event MintFinished(); using SafeMath for uint256; bool public mintingFinished = false; modifier canMint() { require(!mintingFinished); _; } modifier hasMintPermission() { require(msg.sender == owner); _; } /** * @dev Function STORAGE stock-in and mint tokens * @param _to The address that will receive the minted tokens. * @param _amount The amount of tokens to mint. * @return A boolean that indicates if the operation was successful. */ function stockmint( address _to, uint256 _amount ) public hasMintPermission canMint returns (bool) { totalSupply = totalSupply.add(_amount); balances[_to] = balances[_to].add(_amount); emit StockMint(_to, _amount); emit Transfer(address(0), _to, _amount); return true; } /** * @dev Function to stop minting new tokens. * @return True if the operation was successful. */ function finishMinting() public onlyOwner canMint returns (bool) { mintingFinished = true; emit MintFinished(); return true; } /** * @dev Burns a specific amount of tokens. * @param _value The amount of token to be burned. */ function burn(uint256 _value) public { require(_value > 0); require(_value <= balances[msg.sender]); address burner = msg.sender; balances[burner] = balances[burner].sub(_value); totalSupply = totalSupply.sub(_value); emit Burn(burner, _value); } } /** * @title Repayment token * @dev ERC20 with Repay Tokens */ contract RepaymentToken is StandardToken, Ownable { event Repayment(address indexed _debit_contract, uint256 amount); using SafeMath for uint256; modifier hasRepaymentPermission() { require(msg.sender == note_contract); _; } /** * @dev Function to repayment tokens * @param _amount The amount of tokens to repay. * @return A boolean that indicates if the operation was successful. */ function repayment( uint256 _amount ) public hasRepaymentPermission returns (bool) { totalSupply = totalSupply.add(_amount); balances[owner] = balances[owner].add(_amount); emit Repayment(msg.sender, _amount); emit Paidto(owner, _amount); return true; } event Paidto(address indexed _to_creditor, uint256 _value); } /** * @title Creditable Token * @dev Token that can be credit. */ contract CreditableToken is StandardToken, Ownable { using SafeMath for uint256; event Credit(address indexed _debit_contract, uint256 value); function credit(uint256 _value) public { require(_value > 0); require(_value <= balances[owner]); require(msg.sender == note_contract); // no need to require value <= totalSupply, since that would imply the // sender's balance is greater than the totalSupply, which *should* be an assertion failure //address _creditor = owner; balances[owner] = balances[owner].sub(_value); totalSupply = totalSupply.sub(_value); emit Credit(msg.sender, _value); emit Drawdown(owner, _value); } event Drawdown(address indexed _from_creditor, uint256 _value); } contract ZaoWouKiCoin is CreditableToken, RepaymentToken, StockMintToken { constructor() public { totalSupply = INITIAL_SUPPLY; balances[msg.sender] = INITIAL_SUPPLY; } function connectContract(address _note_address ) public onlyOwner { note_contract = _note_address; } /* NOTE: The following variables are OPTIONAL vanities. One does not have to include them. They allow one to customise the token contract & in no way influences the core functionality. Some wallets/interfaces might not even bother to look at this information. */ string public name = "ZaoWouKiCoin"; string public symbol = "ZWKC"; uint public constant decimals = 0; uint256 public constant INITIAL_SUPPLY = 1360 * (10 ** uint256(decimals)); string public Image_root = "https://swarm.chainbacon.com/bzz:/2b6b2cb17cd7288f29b92e9b5eb8c1299d0fb22c9f6cb598ff10e235dcef50a2/"; string public Note_root = "https://swarm.chainbacon.com/bzz:/028d13747929c5e5597f15d1500815e7cb4a72429f3a1f696897b9dca97027cc/"; string public Document_root = "https://swarm.chainbacon.com/bzz:/d3ea71c4f96c434ab88a61140edccc131eaf2543cda13c0552846f8f9244a9d1/"; string public DigestCode_root = "ec77c5fa2ec3fcf77d9e77742deecac6fa4711a4f4489e6cd857a01518804d5f"; function getIssuer() public pure returns(string) { return "Stark"; } function getTrustee() public pure returns(string) { return "Private_warehousing"; } string public TxHash_root = "genesis"; string public ContractSource = ""; string public CodeVersion = "v0.1"; string public SecretKey_Pre = ""; string public Name_New = ""; string public TxHash_Pre = ""; string public DigestCode_New = ""; string public Image_New = ""; string public Note_New = ""; string public Document_New = ""; uint256 public CreditRate = 100 * (10 ** uint256(decimals)); function getName() public view returns(string) { return name; } function getDigestCodeRoot() public view returns(string) { return DigestCode_root; } function getTxHashRoot() public view returns(string) { return TxHash_root; } function getImageRoot() public view returns(string) { return Image_root; } function getNoteRoot() public view returns(string) { return Note_root; } function getDocumentRoot() public view returns(string) { return Document_root; } function getCodeVersion() public view returns(string) { return CodeVersion; } function getContractSource() public view returns(string) { return ContractSource; } function getSecretKeyPre() public view returns(string) { return SecretKey_Pre; } function getNameNew() public view returns(string) { return Name_New; } function getTxHashPre() public view returns(string) { return TxHash_Pre; } function getDigestCodeNew() public view returns(string) { return DigestCode_New; } function getImageNew() public view returns(string) { return Image_New; } function getNoteNew() public view returns(string) { return Note_New; } function getDocumentNew() public view returns(string) { return Document_New; } function updateCreditRate(uint256 _rate) public onlyOwner returns (uint256) { CreditRate = _rate; return CreditRate; } function setNewBlock(string _SecretKey_Pre, string _Name_New, string _TxHash_Pre, string _DigestCode_New, string _Image_New, string _Note_New ) returns (bool success) { SecretKey_Pre = _SecretKey_Pre; Name_New = _Name_New; TxHash_Pre = _TxHash_Pre; DigestCode_New = _DigestCode_New; Image_New = _Image_New; Note_New = _Note_New; emit setNewBlockEvent(SecretKey_Pre, Name_New, TxHash_Pre, DigestCode_New, Image_New, Note_New); return true; } /* Approves and then calls the receiving contract */ function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this. //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData) //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead. require(!_spender.call(bytes4(bytes32(keccak256("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)); return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"Document_New","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getName","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getDigestCodeRoot","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ContractSource","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getDigestCodeNew","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getContractSource","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNoteRoot","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","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":"getTxHashRoot","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TxHash_root","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CodeVersion","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CreditRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_note_address","type":"address"}],"name":"connectContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getIssuer","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"getImageRoot","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DigestCode_New","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"Image_root","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTrustee","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"}],"name":"updateCreditRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"repayment","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"note_contract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNoteNew","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTxHashPre","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"credit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getDocumentRoot","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_SecretKey_Pre","type":"string"},{"name":"_Name_New","type":"string"},{"name":"_TxHash_Pre","type":"string"},{"name":"_DigestCode_New","type":"string"},{"name":"_Image_New","type":"string"},{"name":"_Note_New","type":"string"}],"name":"setNewBlock","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DigestCode_root","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNameNew","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCodeVersion","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"Note_root","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"Document_root","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getImageNew","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TxHash_Pre","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getSecretKeyPre","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"Name_New","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","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":"SecretKey_Pre","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"Image_New","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"Note_New","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"stockmint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getDocumentNew","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"StockMint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_debit_contract","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Repayment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to_creditor","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Paidto","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_debit_contract","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Credit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from_creditor","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Drawdown","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"SecretKey_Pre","type":"string"},{"indexed":false,"name":"Name_New","type":"string"},{"indexed":false,"name":"TxHash_Pre","type":"string"},{"indexed":false,"name":"DigestCode_New","type":"string"},{"indexed":false,"name":"Image_New","type":"string"},{"indexed":false,"name":"Note_New","type":"string"}],"name":"setNewBlockEvent","type":"event"}]
Contract Creation Code
60806040526000600460146101000a81548160ff0219169083151502179055506040805190810160405280600c81526020017f5a616f576f754b69436f696e0000000000000000000000000000000000000000815250600590805190602001906200006c92919062000612565b506040805190810160405280600481526020017f5a574b430000000000000000000000000000000000000000000000000000000081525060069080519060200190620000ba92919062000612565b5060a060405190810160405280606381526020017f68747470733a2f2f737761726d2e636861696e6261636f6e2e636f6d2f627a7a81526020017f3a2f32623662326362313763643732383866323962393265396235656238633181526020017f323939643066623232633966366362353938666631306532333564636566353081526020017f61322f0000000000000000000000000000000000000000000000000000000000815250600790805190602001906200017b92919062000612565b5060a060405190810160405280606381526020017f68747470733a2f2f737761726d2e636861696e6261636f6e2e636f6d2f627a7a81526020017f3a2f30323864313337343739323963356535353937663135643135303038313581526020017f653763623461373234323966336131663639363839376239646361393730323781526020017f63632f0000000000000000000000000000000000000000000000000000000000815250600890805190602001906200023c92919062000612565b5060a060405190810160405280606381526020017f68747470733a2f2f737761726d2e636861696e6261636f6e2e636f6d2f627a7a81526020017f3a2f64336561373163346639366334333461623838613631313430656463636381526020017f313331656166323534336364613133633035353238343666386639323434613981526020017f64312f000000000000000000000000000000000000000000000000000000000081525060099080519060200190620002fd92919062000612565b50606060405190810160405280604081526020017f656337376335666132656333666366373764396537373734326465656361633681526020017f6661343731316134663434383965366364383537613031353138383034643566815250600a90805190602001906200037292919062000612565b506040805190810160405280600781526020017f67656e6573697300000000000000000000000000000000000000000000000000815250600b9080519060200190620003c092919062000612565b506020604051908101604052806000815250600c9080519060200190620003e992919062000612565b506040805190810160405280600481526020017f76302e3100000000000000000000000000000000000000000000000000000000815250600d90805190602001906200043792919062000612565b506020604051908101604052806000815250600e90805190602001906200046092919062000612565b506020604051908101604052806000815250600f90805190602001906200048992919062000612565b50602060405190810160405280600081525060109080519060200190620004b292919062000612565b50602060405190810160405280600081525060119080519060200190620004db92919062000612565b506020604051908101604052806000815250601290805190602001906200050492919062000612565b506020604051908101604052806000815250601390805190602001906200052d92919062000612565b506020604051908101604052806000815250601490805190602001906200055692919062000612565b506000600a0a6064026015553480156200056f57600080fd5b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600a0a610550026003819055506000600a0a61055002600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620006c1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200065557805160ff191683800117855562000686565b8280016001018555821562000686579182015b828111156200068557825182559160200191906001019062000668565b5b50905062000695919062000699565b5090565b620006be91905b80821115620006ba576000816000905550600101620006a0565b5090565b90565b614a1d80620006d16000396000f300608060405260043610610293576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305d2035b1461029857806306fdde03146102c7578063095ea7b314610357578063110f30f4146103bc57806317d7de7c1461044c57806318160ddd146104dc57806319c59768146105075780631e1fc057146105975780632272f1a31461062757806323b872dd146106b75780632f34ad851461073c5780632f58b235146107cc5780632ff2e9dc1461085c578063313ce56714610887578063340a5f2d146108b257806338e135061461094257806339f68111146109d257806342966c6814610a6257806343334ce814610a8f57806347724b6514610aba5780635255642114610afd578063529d2cea14610b8d57806358dfd4e514610c1d57806359e0568514610cad5780636216b6e314610d3d57806364b8202414610dcd5780636737b31e14610e0e5780636c98c2b914610e535780636dae214714610eaa57806370a0823114610f3a5780637584f24b14610f9157806378da744b146110215780637d64bcb41461104e578063862f04531461107d5780638a43c8e61461110d5780638da5cb5b146112ec5780638f1a9d791461134357806395d89b41146113d35780639a677c6914611463578063a029b096146114f3578063a9059cbb14611583578063ad396260146115e8578063b994a3a414611678578063ba270c7114611708578063c59e176714611798578063cae9ca5114611828578063ceb62914146118d3578063d74d880814611963578063dd62ed3e146119f3578063e03535be14611a6a578063f0fbaea614611afa578063f144820e14611b8a578063f27e342614611c1a578063f2fde38b14611c7f578063f646f1b014611cc2575b600080fd5b3480156102a457600080fd5b506102ad611d52565b604051808215151515815260200191505060405180910390f35b3480156102d357600080fd5b506102dc611d65565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036357600080fd5b506103a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e03565b604051808215151515815260200191505060405180910390f35b3480156103c857600080fd5b506103d1611ef5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104115780820151818401526020810190506103f6565b50505050905090810190601f16801561043e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045857600080fd5b50610461611f93565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a1578082015181840152602081019050610486565b50505050905090810190601f1680156104ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104e857600080fd5b506104f1612035565b6040518082815260200191505060405180910390f35b34801561051357600080fd5b5061051c61203b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561055c578082015181840152602081019050610541565b50505050905090810190601f1680156105895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105a357600080fd5b506105ac6120dd565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105ec5780820151818401526020810190506105d1565b50505050905090810190601f1680156106195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561063357600080fd5b5061063c61217b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561067c578082015181840152602081019050610661565b50505050905090810190601f1680156106a95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156106c357600080fd5b50610722600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061221d565b604051808215151515815260200191505060405180910390f35b34801561074857600080fd5b50610751612499565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610791578082015181840152602081019050610776565b50505050905090810190601f1680156107be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156107d857600080fd5b506107e161253b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610821578082015181840152602081019050610806565b50505050905090810190601f16801561084e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561086857600080fd5b506108716125dd565b6040518082815260200191505060405180910390f35b34801561089357600080fd5b5061089c6125e9565b6040518082815260200191505060405180910390f35b3480156108be57600080fd5b506108c76125ee565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109075780820151818401526020810190506108ec565b50505050905090810190601f1680156109345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561094e57600080fd5b50610957612690565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561099757808201518184015260208101905061097c565b50505050905090810190601f1680156109c45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109de57600080fd5b506109e761272e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a27578082015181840152602081019050610a0c565b50505050905090810190601f168015610a545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a6e57600080fd5b50610a8d600480360381019080803590602001909291905050506127cc565b005b348015610a9b57600080fd5b50610aa461292f565b6040518082815260200191505060405180910390f35b348015610ac657600080fd5b50610afb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612935565b005b348015610b0957600080fd5b50610b126129d4565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b52578082015181840152602081019050610b37565b50505050905090810190601f168015610b7f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610b9957600080fd5b50610ba2612a11565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610be2578082015181840152602081019050610bc7565b50505050905090810190601f168015610c0f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c2957600080fd5b50610c32612ab3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c72578082015181840152602081019050610c57565b50505050905090810190601f168015610c9f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cb957600080fd5b50610cc2612b51565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d02578082015181840152602081019050610ce7565b50505050905090810190601f168015610d2f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610d4957600080fd5b50610d52612bef565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d92578082015181840152602081019050610d77565b50505050905090810190601f168015610dbf5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610dd957600080fd5b50610df860048036038101908080359060200190929190505050612c2c565b6040518082815260200191505060405180910390f35b348015610e1a57600080fd5b50610e3960048036038101908080359060200190929190505050612c9b565b604051808215151515815260200191505060405180910390f35b348015610e5f57600080fd5b50610e68612eb3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610eb657600080fd5b50610ebf612ed8565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610eff578082015181840152602081019050610ee4565b50505050905090810190601f168015610f2c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610f4657600080fd5b50610f7b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f7a565b6040518082815260200191505060405180910390f35b348015610f9d57600080fd5b50610fa6612fc3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610fe6578082015181840152602081019050610fcb565b50505050905090810190601f1680156110135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561102d57600080fd5b5061104c60048036038101908080359060200190929190505050613065565b005b34801561105a57600080fd5b506110636132f4565b604051808215151515815260200191505060405180910390f35b34801561108957600080fd5b506110926133bc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156110d25780820151818401526020810190506110b7565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561111957600080fd5b506112d2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061345e565b604051808215151515815260200191505060405180910390f35b3480156112f857600080fd5b50611301613869565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561134f57600080fd5b5061135861388f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561139857808201518184015260208101905061137d565b50505050905090810190601f1680156113c55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156113df57600080fd5b506113e861392d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561142857808201518184015260208101905061140d565b50505050905090810190601f1680156114555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561146f57600080fd5b506114786139cb565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156114b857808201518184015260208101905061149d565b50505050905090810190601f1680156114e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156114ff57600080fd5b50611508613a6d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561154857808201518184015260208101905061152d565b50505050905090810190601f1680156115755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561158f57600080fd5b506115ce600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613b0f565b604051808215151515815260200191505060405180910390f35b3480156115f457600080fd5b506115fd613c78565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561163d578082015181840152602081019050611622565b50505050905090810190601f16801561166a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561168457600080fd5b5061168d613d16565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156116cd5780820151818401526020810190506116b2565b50505050905090810190601f1680156116fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561171457600080fd5b5061171d613db4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561175d578082015181840152602081019050611742565b50505050905090810190601f16801561178a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156117a457600080fd5b506117ad613e56565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156117ed5780820151818401526020810190506117d2565b50505050905090810190601f16801561181a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561183457600080fd5b506118b9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613ef4565b604051808215151515815260200191505060405180910390f35b3480156118df57600080fd5b506118e8614192565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561192857808201518184015260208101905061190d565b50505050905090810190601f1680156119555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561196f57600080fd5b50611978614234565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156119b857808201518184015260208101905061199d565b50505050905090810190601f1680156119e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156119ff57600080fd5b50611a54600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506142d2565b6040518082815260200191505060405180910390f35b348015611a7657600080fd5b50611a7f614359565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611abf578082015181840152602081019050611aa4565b50505050905090810190601f168015611aec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611b0657600080fd5b50611b0f6143f7565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611b4f578082015181840152602081019050611b34565b50505050905090810190601f168015611b7c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611b9657600080fd5b50611b9f614495565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611bdf578082015181840152602081019050611bc4565b50505050905090810190601f168015611c0c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611c2657600080fd5b50611c65600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050614533565b604051808215151515815260200191505060405180910390f35b348015611c8b57600080fd5b50611cc0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061471b565b005b348015611cce57600080fd5b50611cd7614873565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611d17578082015181840152602081019050611cfc565b50505050905090810190601f168015611d445780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600460149054906101000a900460ff1681565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dfb5780601f10611dd057610100808354040283529160200191611dfb565b820191906000526020600020905b815481529060010190602001808311611dde57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60148054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611f8b5780601f10611f6057610100808354040283529160200191611f8b565b820191906000526020600020905b815481529060010190602001808311611f6e57829003601f168201915b505050505081565b606060058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561202b5780601f106120005761010080835404028352916020019161202b565b820191906000526020600020905b81548152906001019060200180831161200e57829003601f168201915b5050505050905090565b60035481565b6060600a8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156120d35780601f106120a8576101008083540402835291602001916120d3565b820191906000526020600020905b8154815290600101906020018083116120b657829003601f168201915b5050505050905090565b600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156121735780601f1061214857610100808354040283529160200191612173565b820191906000526020600020905b81548152906001019060200180831161215657829003601f168201915b505050505081565b606060118054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122135780601f106121e857610100808354040283529160200191612213565b820191906000526020600020905b8154815290600101906020018083116121f657829003601f168201915b5050505050905090565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156122ea575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156122f65750600082115b1561248d5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050612492565b600090505b9392505050565b6060600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125315780601f1061250657610100808354040283529160200191612531565b820191906000526020600020905b81548152906001019060200180831161251457829003601f168201915b5050505050905090565b606060088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125d35780601f106125a8576101008083540402835291602001916125d3565b820191906000526020600020905b8154815290600101906020018083116125b657829003601f168201915b5050505050905090565b6000600a0a6105500281565b600081565b6060600b8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156126865780601f1061265b57610100808354040283529160200191612686565b820191906000526020600020905b81548152906001019060200180831161266957829003601f168201915b5050505050905090565b600b8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156127265780601f106126fb57610100808354040283529160200191612726565b820191906000526020600020905b81548152906001019060200180831161270957829003601f168201915b505050505081565b600d8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156127c45780601f10612799576101008083540402835291602001916127c4565b820191906000526020600020905b8154815290600101906020018083116127a757829003601f168201915b505050505081565b600080821115156127dc57600080fd5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561282a57600080fd5b33905061287f82600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461491590919063ffffffff16565b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128d78260035461491590919063ffffffff16565b6003819055508073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a25050565b60155481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561299157600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040805190810160405280600581526020017f537461726b000000000000000000000000000000000000000000000000000000815250905090565b606060078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612aa95780601f10612a7e57610100808354040283529160200191612aa9565b820191906000526020600020905b815481529060010190602001808311612a8c57829003601f168201915b5050505050905090565b60118054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612b495780601f10612b1e57610100808354040283529160200191612b49565b820191906000526020600020905b815481529060010190602001808311612b2c57829003601f168201915b505050505081565b60078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612be75780601f10612bbc57610100808354040283529160200191612be7565b820191906000526020600020905b815481529060010190602001808311612bca57829003601f168201915b505050505081565b60606040805190810160405280601381526020017f507269766174655f77617265686f7573696e6700000000000000000000000000815250905090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612c8a57600080fd5b816015819055506015549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612cf857600080fd5b612d0d8260035461492e90919063ffffffff16565b600381905550612d878260016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461492e90919063ffffffff16565b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167fbb284f7f8cb8b1b8c98ee9a7d765413efc44bbb17352a0302ada1d737cdaef1b836040518082815260200191505060405180910390a2600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8e71d8163ce84fb3fff67a6835b9f8de32df29c60bc065074a33dc4dbf301a2d836040518082815260200191505060405180910390a260019050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060138054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612f705780601f10612f4557610100808354040283529160200191612f70565b820191906000526020600020905b815481529060010190602001808311612f5357829003601f168201915b5050505050905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060108054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561305b5780601f106130305761010080835404028352916020019161305b565b820191906000526020600020905b81548152906001019060200180831161303e57829003601f168201915b5050505050905090565b60008111151561307457600080fd5b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111515156130e457600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561313f57600080fd5b6131b38160016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461491590919063ffffffff16565b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061322d8160035461491590919063ffffffff16565b6003819055503373ffffffffffffffffffffffffffffffffffffffff167f1bbf55d483639f8103dc4e035af71a4fbdb16c80be740fa3eef81198acefa094826040518082815260200191505060405180910390a2600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fc4c84823a324d0b8981b8d101133d3a6c8016438b9de23219733db972f5ca90e826040518082815260200191505060405180910390a250565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561335257600080fd5b600460149054906101000a900460ff1615151561336e57600080fd5b6001600460146101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b606060098054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156134545780601f1061342957610100808354040283529160200191613454565b820191906000526020600020905b81548152906001019060200180831161343757829003601f168201915b5050505050905090565b600086600e908051906020019061347692919061494c565b5085600f908051906020019061348d92919061494c565b5084601090805190602001906134a492919061494c565b5083601190805190602001906134bb92919061494c565b5082601290805190602001906134d292919061494c565b5081601390805190602001906134e992919061494c565b507f76b794936344483a0e529b4c747bdaccfc63ce7d42758c188d25a4924cefd339600e600f60106011601260136040518080602001806020018060200180602001806020018060200187810387528d8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156135b45780601f10613589576101008083540402835291602001916135b4565b820191906000526020600020905b81548152906001019060200180831161359757829003601f168201915b505087810386528c8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156136375780601f1061360c57610100808354040283529160200191613637565b820191906000526020600020905b81548152906001019060200180831161361a57829003601f168201915b505087810385528b8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156136ba5780601f1061368f576101008083540402835291602001916136ba565b820191906000526020600020905b81548152906001019060200180831161369d57829003601f168201915b505087810384528a81815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561373d5780601f106137125761010080835404028352916020019161373d565b820191906000526020600020905b81548152906001019060200180831161372057829003601f168201915b50508781038352898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156137c05780601f10613795576101008083540402835291602001916137c0565b820191906000526020600020905b8154815290600101906020018083116137a357829003601f168201915b50508781038252888181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156138435780601f1061381857610100808354040283529160200191613843565b820191906000526020600020905b81548152906001019060200180831161382657829003601f168201915b50509c5050505050505050505050505060405180910390a1600190509695505050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156139255780601f106138fa57610100808354040283529160200191613925565b820191906000526020600020905b81548152906001019060200180831161390857829003601f168201915b505050505081565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156139c35780601f10613998576101008083540402835291602001916139c3565b820191906000526020600020905b8154815290600101906020018083116139a657829003601f168201915b505050505081565b6060600f8054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613a635780601f10613a3857610100808354040283529160200191613a63565b820191906000526020600020905b815481529060010190602001808311613a4657829003601f168201915b5050505050905090565b6060600d8054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613b055780601f10613ada57610100808354040283529160200191613b05565b820191906000526020600020905b815481529060010190602001808311613ae857829003601f168201915b5050505050905090565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015613b605750600082115b15613c6d5781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050613c72565b600090505b92915050565b60088054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613d0e5780601f10613ce357610100808354040283529160200191613d0e565b820191906000526020600020905b815481529060010190602001808311613cf157829003601f168201915b505050505081565b60098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613dac5780601f10613d8157610100808354040283529160200191613dac565b820191906000526020600020905b815481529060010190602001808311613d8f57829003601f168201915b505050505081565b606060128054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613e4c5780601f10613e2157610100808354040283529160200191613e4c565b820191906000526020600020905b815481529060010190602001808311613e2f57829003601f168201915b5050505050905090565b60108054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613eec5780601f10613ec157610100808354040283529160200191613eec565b820191906000526020600020905b815481529060010190602001808311613ecf57829003601f168201915b505050505081565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b8381101561413557808201518184015260208101905061411a565b50505050905090810190601f1680156141625780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af19250505015151561418757600080fd5b600190509392505050565b6060600e8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561422a5780601f106141ff5761010080835404028352916020019161422a565b820191906000526020600020905b81548152906001019060200180831161420d57829003601f168201915b5050505050905090565b600f8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156142ca5780601f1061429f576101008083540402835291602001916142ca565b820191906000526020600020905b8154815290600101906020018083116142ad57829003601f168201915b505050505081565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156143ef5780601f106143c4576101008083540402835291602001916143ef565b820191906000526020600020905b8154815290600101906020018083116143d257829003601f168201915b505050505081565b60128054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561448d5780601f106144625761010080835404028352916020019161448d565b820191906000526020600020905b81548152906001019060200180831161447057829003601f168201915b505050505081565b60138054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561452b5780601f106145005761010080835404028352916020019161452b565b820191906000526020600020905b81548152906001019060200180831161450e57829003601f168201915b505050505081565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561459157600080fd5b600460149054906101000a900460ff161515156145ad57600080fd5b6145c28260035461492e90919063ffffffff16565b60038190555061461a82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461492e90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f81af83a087b91bcda1d9e0525c48f5ef6dd8fb2d16da7ef0c86f3a23ea0f5c62836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561477757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156147b357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060148054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561490b5780601f106148e05761010080835404028352916020019161490b565b820191906000526020600020905b8154815290600101906020018083116148ee57829003601f168201915b5050505050905090565b600082821115151561492357fe5b818303905092915050565b600080828401905083811015151561494257fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061498d57805160ff19168380011785556149bb565b828001600101855582156149bb579182015b828111156149ba57825182559160200191906001019061499f565b5b5090506149c891906149cc565b5090565b6149ee91905b808211156149ea5760008160009055506001016149d2565b5090565b905600a165627a7a723058208422767c5bb2f09ab99c5aadd7fcb81360af9ceb9e54ba8366df26aad271c7460029
Deployed Bytecode
0x608060405260043610610293576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305d2035b1461029857806306fdde03146102c7578063095ea7b314610357578063110f30f4146103bc57806317d7de7c1461044c57806318160ddd146104dc57806319c59768146105075780631e1fc057146105975780632272f1a31461062757806323b872dd146106b75780632f34ad851461073c5780632f58b235146107cc5780632ff2e9dc1461085c578063313ce56714610887578063340a5f2d146108b257806338e135061461094257806339f68111146109d257806342966c6814610a6257806343334ce814610a8f57806347724b6514610aba5780635255642114610afd578063529d2cea14610b8d57806358dfd4e514610c1d57806359e0568514610cad5780636216b6e314610d3d57806364b8202414610dcd5780636737b31e14610e0e5780636c98c2b914610e535780636dae214714610eaa57806370a0823114610f3a5780637584f24b14610f9157806378da744b146110215780637d64bcb41461104e578063862f04531461107d5780638a43c8e61461110d5780638da5cb5b146112ec5780638f1a9d791461134357806395d89b41146113d35780639a677c6914611463578063a029b096146114f3578063a9059cbb14611583578063ad396260146115e8578063b994a3a414611678578063ba270c7114611708578063c59e176714611798578063cae9ca5114611828578063ceb62914146118d3578063d74d880814611963578063dd62ed3e146119f3578063e03535be14611a6a578063f0fbaea614611afa578063f144820e14611b8a578063f27e342614611c1a578063f2fde38b14611c7f578063f646f1b014611cc2575b600080fd5b3480156102a457600080fd5b506102ad611d52565b604051808215151515815260200191505060405180910390f35b3480156102d357600080fd5b506102dc611d65565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036357600080fd5b506103a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e03565b604051808215151515815260200191505060405180910390f35b3480156103c857600080fd5b506103d1611ef5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104115780820151818401526020810190506103f6565b50505050905090810190601f16801561043e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045857600080fd5b50610461611f93565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a1578082015181840152602081019050610486565b50505050905090810190601f1680156104ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104e857600080fd5b506104f1612035565b6040518082815260200191505060405180910390f35b34801561051357600080fd5b5061051c61203b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561055c578082015181840152602081019050610541565b50505050905090810190601f1680156105895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105a357600080fd5b506105ac6120dd565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105ec5780820151818401526020810190506105d1565b50505050905090810190601f1680156106195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561063357600080fd5b5061063c61217b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561067c578082015181840152602081019050610661565b50505050905090810190601f1680156106a95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156106c357600080fd5b50610722600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061221d565b604051808215151515815260200191505060405180910390f35b34801561074857600080fd5b50610751612499565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610791578082015181840152602081019050610776565b50505050905090810190601f1680156107be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156107d857600080fd5b506107e161253b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610821578082015181840152602081019050610806565b50505050905090810190601f16801561084e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561086857600080fd5b506108716125dd565b6040518082815260200191505060405180910390f35b34801561089357600080fd5b5061089c6125e9565b6040518082815260200191505060405180910390f35b3480156108be57600080fd5b506108c76125ee565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109075780820151818401526020810190506108ec565b50505050905090810190601f1680156109345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561094e57600080fd5b50610957612690565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561099757808201518184015260208101905061097c565b50505050905090810190601f1680156109c45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109de57600080fd5b506109e761272e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a27578082015181840152602081019050610a0c565b50505050905090810190601f168015610a545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a6e57600080fd5b50610a8d600480360381019080803590602001909291905050506127cc565b005b348015610a9b57600080fd5b50610aa461292f565b6040518082815260200191505060405180910390f35b348015610ac657600080fd5b50610afb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612935565b005b348015610b0957600080fd5b50610b126129d4565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b52578082015181840152602081019050610b37565b50505050905090810190601f168015610b7f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610b9957600080fd5b50610ba2612a11565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610be2578082015181840152602081019050610bc7565b50505050905090810190601f168015610c0f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c2957600080fd5b50610c32612ab3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c72578082015181840152602081019050610c57565b50505050905090810190601f168015610c9f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cb957600080fd5b50610cc2612b51565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d02578082015181840152602081019050610ce7565b50505050905090810190601f168015610d2f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610d4957600080fd5b50610d52612bef565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d92578082015181840152602081019050610d77565b50505050905090810190601f168015610dbf5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610dd957600080fd5b50610df860048036038101908080359060200190929190505050612c2c565b6040518082815260200191505060405180910390f35b348015610e1a57600080fd5b50610e3960048036038101908080359060200190929190505050612c9b565b604051808215151515815260200191505060405180910390f35b348015610e5f57600080fd5b50610e68612eb3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610eb657600080fd5b50610ebf612ed8565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610eff578082015181840152602081019050610ee4565b50505050905090810190601f168015610f2c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610f4657600080fd5b50610f7b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f7a565b6040518082815260200191505060405180910390f35b348015610f9d57600080fd5b50610fa6612fc3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610fe6578082015181840152602081019050610fcb565b50505050905090810190601f1680156110135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561102d57600080fd5b5061104c60048036038101908080359060200190929190505050613065565b005b34801561105a57600080fd5b506110636132f4565b604051808215151515815260200191505060405180910390f35b34801561108957600080fd5b506110926133bc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156110d25780820151818401526020810190506110b7565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561111957600080fd5b506112d2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061345e565b604051808215151515815260200191505060405180910390f35b3480156112f857600080fd5b50611301613869565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561134f57600080fd5b5061135861388f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561139857808201518184015260208101905061137d565b50505050905090810190601f1680156113c55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156113df57600080fd5b506113e861392d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561142857808201518184015260208101905061140d565b50505050905090810190601f1680156114555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561146f57600080fd5b506114786139cb565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156114b857808201518184015260208101905061149d565b50505050905090810190601f1680156114e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156114ff57600080fd5b50611508613a6d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561154857808201518184015260208101905061152d565b50505050905090810190601f1680156115755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561158f57600080fd5b506115ce600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613b0f565b604051808215151515815260200191505060405180910390f35b3480156115f457600080fd5b506115fd613c78565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561163d578082015181840152602081019050611622565b50505050905090810190601f16801561166a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561168457600080fd5b5061168d613d16565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156116cd5780820151818401526020810190506116b2565b50505050905090810190601f1680156116fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561171457600080fd5b5061171d613db4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561175d578082015181840152602081019050611742565b50505050905090810190601f16801561178a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156117a457600080fd5b506117ad613e56565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156117ed5780820151818401526020810190506117d2565b50505050905090810190601f16801561181a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561183457600080fd5b506118b9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613ef4565b604051808215151515815260200191505060405180910390f35b3480156118df57600080fd5b506118e8614192565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561192857808201518184015260208101905061190d565b50505050905090810190601f1680156119555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561196f57600080fd5b50611978614234565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156119b857808201518184015260208101905061199d565b50505050905090810190601f1680156119e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156119ff57600080fd5b50611a54600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506142d2565b6040518082815260200191505060405180910390f35b348015611a7657600080fd5b50611a7f614359565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611abf578082015181840152602081019050611aa4565b50505050905090810190601f168015611aec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611b0657600080fd5b50611b0f6143f7565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611b4f578082015181840152602081019050611b34565b50505050905090810190601f168015611b7c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611b9657600080fd5b50611b9f614495565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611bdf578082015181840152602081019050611bc4565b50505050905090810190601f168015611c0c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015611c2657600080fd5b50611c65600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050614533565b604051808215151515815260200191505060405180910390f35b348015611c8b57600080fd5b50611cc0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061471b565b005b348015611cce57600080fd5b50611cd7614873565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015611d17578082015181840152602081019050611cfc565b50505050905090810190601f168015611d445780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600460149054906101000a900460ff1681565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dfb5780601f10611dd057610100808354040283529160200191611dfb565b820191906000526020600020905b815481529060010190602001808311611dde57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60148054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611f8b5780601f10611f6057610100808354040283529160200191611f8b565b820191906000526020600020905b815481529060010190602001808311611f6e57829003601f168201915b505050505081565b606060058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561202b5780601f106120005761010080835404028352916020019161202b565b820191906000526020600020905b81548152906001019060200180831161200e57829003601f168201915b5050505050905090565b60035481565b6060600a8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156120d35780601f106120a8576101008083540402835291602001916120d3565b820191906000526020600020905b8154815290600101906020018083116120b657829003601f168201915b5050505050905090565b600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156121735780601f1061214857610100808354040283529160200191612173565b820191906000526020600020905b81548152906001019060200180831161215657829003601f168201915b505050505081565b606060118054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122135780601f106121e857610100808354040283529160200191612213565b820191906000526020600020905b8154815290600101906020018083116121f657829003601f168201915b5050505050905090565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156122ea575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156122f65750600082115b1561248d5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050612492565b600090505b9392505050565b6060600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125315780601f1061250657610100808354040283529160200191612531565b820191906000526020600020905b81548152906001019060200180831161251457829003601f168201915b5050505050905090565b606060088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125d35780601f106125a8576101008083540402835291602001916125d3565b820191906000526020600020905b8154815290600101906020018083116125b657829003601f168201915b5050505050905090565b6000600a0a6105500281565b600081565b6060600b8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156126865780601f1061265b57610100808354040283529160200191612686565b820191906000526020600020905b81548152906001019060200180831161266957829003601f168201915b5050505050905090565b600b8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156127265780601f106126fb57610100808354040283529160200191612726565b820191906000526020600020905b81548152906001019060200180831161270957829003601f168201915b505050505081565b600d8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156127c45780601f10612799576101008083540402835291602001916127c4565b820191906000526020600020905b8154815290600101906020018083116127a757829003601f168201915b505050505081565b600080821115156127dc57600080fd5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561282a57600080fd5b33905061287f82600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461491590919063ffffffff16565b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128d78260035461491590919063ffffffff16565b6003819055508073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a25050565b60155481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561299157600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040805190810160405280600581526020017f537461726b000000000000000000000000000000000000000000000000000000815250905090565b606060078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612aa95780601f10612a7e57610100808354040283529160200191612aa9565b820191906000526020600020905b815481529060010190602001808311612a8c57829003601f168201915b5050505050905090565b60118054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612b495780601f10612b1e57610100808354040283529160200191612b49565b820191906000526020600020905b815481529060010190602001808311612b2c57829003601f168201915b505050505081565b60078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612be75780601f10612bbc57610100808354040283529160200191612be7565b820191906000526020600020905b815481529060010190602001808311612bca57829003601f168201915b505050505081565b60606040805190810160405280601381526020017f507269766174655f77617265686f7573696e6700000000000000000000000000815250905090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612c8a57600080fd5b816015819055506015549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612cf857600080fd5b612d0d8260035461492e90919063ffffffff16565b600381905550612d878260016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461492e90919063ffffffff16565b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167fbb284f7f8cb8b1b8c98ee9a7d765413efc44bbb17352a0302ada1d737cdaef1b836040518082815260200191505060405180910390a2600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8e71d8163ce84fb3fff67a6835b9f8de32df29c60bc065074a33dc4dbf301a2d836040518082815260200191505060405180910390a260019050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060138054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612f705780601f10612f4557610100808354040283529160200191612f70565b820191906000526020600020905b815481529060010190602001808311612f5357829003601f168201915b5050505050905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060108054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561305b5780601f106130305761010080835404028352916020019161305b565b820191906000526020600020905b81548152906001019060200180831161303e57829003601f168201915b5050505050905090565b60008111151561307457600080fd5b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481111515156130e457600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561313f57600080fd5b6131b38160016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461491590919063ffffffff16565b60016000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061322d8160035461491590919063ffffffff16565b6003819055503373ffffffffffffffffffffffffffffffffffffffff167f1bbf55d483639f8103dc4e035af71a4fbdb16c80be740fa3eef81198acefa094826040518082815260200191505060405180910390a2600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fc4c84823a324d0b8981b8d101133d3a6c8016438b9de23219733db972f5ca90e826040518082815260200191505060405180910390a250565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561335257600080fd5b600460149054906101000a900460ff1615151561336e57600080fd5b6001600460146101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b606060098054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156134545780601f1061342957610100808354040283529160200191613454565b820191906000526020600020905b81548152906001019060200180831161343757829003601f168201915b5050505050905090565b600086600e908051906020019061347692919061494c565b5085600f908051906020019061348d92919061494c565b5084601090805190602001906134a492919061494c565b5083601190805190602001906134bb92919061494c565b5082601290805190602001906134d292919061494c565b5081601390805190602001906134e992919061494c565b507f76b794936344483a0e529b4c747bdaccfc63ce7d42758c188d25a4924cefd339600e600f60106011601260136040518080602001806020018060200180602001806020018060200187810387528d8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156135b45780601f10613589576101008083540402835291602001916135b4565b820191906000526020600020905b81548152906001019060200180831161359757829003601f168201915b505087810386528c8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156136375780601f1061360c57610100808354040283529160200191613637565b820191906000526020600020905b81548152906001019060200180831161361a57829003601f168201915b505087810385528b8181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156136ba5780601f1061368f576101008083540402835291602001916136ba565b820191906000526020600020905b81548152906001019060200180831161369d57829003601f168201915b505087810384528a81815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561373d5780601f106137125761010080835404028352916020019161373d565b820191906000526020600020905b81548152906001019060200180831161372057829003601f168201915b50508781038352898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156137c05780601f10613795576101008083540402835291602001916137c0565b820191906000526020600020905b8154815290600101906020018083116137a357829003601f168201915b50508781038252888181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156138435780601f1061381857610100808354040283529160200191613843565b820191906000526020600020905b81548152906001019060200180831161382657829003601f168201915b50509c5050505050505050505050505060405180910390a1600190509695505050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156139255780601f106138fa57610100808354040283529160200191613925565b820191906000526020600020905b81548152906001019060200180831161390857829003601f168201915b505050505081565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156139c35780601f10613998576101008083540402835291602001916139c3565b820191906000526020600020905b8154815290600101906020018083116139a657829003601f168201915b505050505081565b6060600f8054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613a635780601f10613a3857610100808354040283529160200191613a63565b820191906000526020600020905b815481529060010190602001808311613a4657829003601f168201915b5050505050905090565b6060600d8054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613b055780601f10613ada57610100808354040283529160200191613b05565b820191906000526020600020905b815481529060010190602001808311613ae857829003601f168201915b5050505050905090565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015613b605750600082115b15613c6d5781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050613c72565b600090505b92915050565b60088054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613d0e5780601f10613ce357610100808354040283529160200191613d0e565b820191906000526020600020905b815481529060010190602001808311613cf157829003601f168201915b505050505081565b60098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613dac5780601f10613d8157610100808354040283529160200191613dac565b820191906000526020600020905b815481529060010190602001808311613d8f57829003601f168201915b505050505081565b606060128054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613e4c5780601f10613e2157610100808354040283529160200191613e4c565b820191906000526020600020905b815481529060010190602001808311613e2f57829003601f168201915b5050505050905090565b60108054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015613eec5780601f10613ec157610100808354040283529160200191613eec565b820191906000526020600020905b815481529060010190602001808311613ecf57829003601f168201915b505050505081565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b8381101561413557808201518184015260208101905061411a565b50505050905090810190601f1680156141625780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af19250505015151561418757600080fd5b600190509392505050565b6060600e8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561422a5780601f106141ff5761010080835404028352916020019161422a565b820191906000526020600020905b81548152906001019060200180831161420d57829003601f168201915b5050505050905090565b600f8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156142ca5780601f1061429f576101008083540402835291602001916142ca565b820191906000526020600020905b8154815290600101906020018083116142ad57829003601f168201915b505050505081565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156143ef5780601f106143c4576101008083540402835291602001916143ef565b820191906000526020600020905b8154815290600101906020018083116143d257829003601f168201915b505050505081565b60128054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561448d5780601f106144625761010080835404028352916020019161448d565b820191906000526020600020905b81548152906001019060200180831161447057829003601f168201915b505050505081565b60138054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561452b5780601f106145005761010080835404028352916020019161452b565b820191906000526020600020905b81548152906001019060200180831161450e57829003601f168201915b505050505081565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561459157600080fd5b600460149054906101000a900460ff161515156145ad57600080fd5b6145c28260035461492e90919063ffffffff16565b60038190555061461a82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461492e90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f81af83a087b91bcda1d9e0525c48f5ef6dd8fb2d16da7ef0c86f3a23ea0f5c62836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561477757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156147b357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060148054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561490b5780601f106148e05761010080835404028352916020019161490b565b820191906000526020600020905b8154815290600101906020018083116148ee57829003601f168201915b5050505050905090565b600082821115151561492357fe5b818303905092915050565b600080828401905083811015151561494257fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061498d57805160ff19168380011785556149bb565b828001600101855582156149bb579182015b828111156149ba57825182559160200191906001019061499f565b5b5090506149c891906149cc565b5090565b6149ee91905b808211156149ea5760008160009055506001016149d2565b5090565b905600a165627a7a723058208422767c5bb2f09ab99c5aadd7fcb81360af9ceb9e54ba8366df26aad271c7460029
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.