Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Loading...
Loading
Contract Name:
TetherToken
Compiler Version
v0.8.0+commit.c7dfd78e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-08-29 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { owner = msg.sender; } modifier onlyOwner() { require(msg.sender == owner, "Ownable: caller is not the owner"); _; } function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(owner, newOwner); owner = newOwner; } } contract Pausable is Ownable { bool public paused = false; event Paused(); event Unpaused(); modifier whenNotPaused() { require(!paused, "Pausable: paused"); _; } modifier whenPaused() { require(paused, "Pausable: not paused"); _; } function pause() public onlyOwner whenNotPaused { paused = true; emit Paused(); } function unpause() public onlyOwner whenPaused { paused = false; emit Unpaused(); } } contract BlackList is Ownable { mapping (address => bool) public isBlackListed; event AddedBlackList(address indexed user); event RemovedBlackList(address indexed user); function getBlackListStatus(address _maker) external view returns (bool) { return isBlackListed[_maker]; } function addBlackList(address _evilUser) public onlyOwner { isBlackListed[_evilUser] = true; emit AddedBlackList(_evilUser); } function removeBlackList(address _clearedUser) public onlyOwner { isBlackListed[_clearedUser] = false; emit RemovedBlackList(_clearedUser); } } abstract contract ERC20Basic { function totalSupply() public view virtual returns (uint256); function balanceOf(address who) public view virtual returns (uint256); function transfer(address to, uint256 value) public virtual returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } abstract contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view virtual returns (uint256); function transferFrom(address from, address to, uint256 value) public virtual returns (bool); function approve(address spender, uint256 value) public virtual returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } abstract contract UpgradedStandardToken is ERC20 { uint public _totalSupply; function transferByLegacy(address from, address to, uint value) public virtual returns (bool); function transferFromByLegacy(address sender, address from, address to, uint value) public virtual returns (bool); function approveByLegacy(address from, address spender, uint value) public virtual returns (bool); function increaseApprovalByLegacy(address from, address spender, uint addedValue) public virtual returns (bool); function decreaseApprovalByLegacy(address from, address spender, uint subtractedValue) public virtual returns (bool); } contract BasicToken is ERC20Basic { mapping(address => uint256) balances; function totalSupply() public view virtual override returns (uint256) { return 0; // Placeholder: Implement your own logic. } function transfer(address _to, uint256 _value) public virtual override returns (bool) { require(_to != address(0), "BasicToken: transfer to the zero address"); require(_value <= balances[msg.sender], "BasicToken: transfer amount exceeds balance"); balances[msg.sender] -= _value; balances[_to] += _value; emit Transfer(msg.sender, _to, _value); return true; } function balanceOf(address _owner) public view virtual override returns (uint256 balance) { return balances[_owner]; } } contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) internal allowed; function transferFrom(address _from, address _to, uint256 _value) public virtual override returns (bool) { require(_to != address(0), "StandardToken: transfer to the zero address"); require(_value <= balances[_from], "StandardToken: transfer amount exceeds balance"); require(_value <= allowed[_from][msg.sender], "StandardToken: transfer amount exceeds allowance"); balances[_from] -= _value; balances[_to] += _value; allowed[_from][msg.sender] -= _value; emit Transfer(_from, _to, _value); return true; } function approve(address _spender, uint256 _value) public virtual override returns (bool) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) public view virtual override returns (uint256) { return allowed[_owner][_spender]; } function increaseApproval(address _spender, uint _addedValue) public virtual returns (bool) { allowed[msg.sender][_spender] += _addedValue; emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } function decreaseApproval(address _spender, uint _subtractedValue) public virtual returns (bool) { uint oldValue = allowed[msg.sender][_spender]; if (_subtractedValue > oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = oldValue - _subtractedValue; } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } contract StandardTokenWithFees is StandardToken, Ownable { uint256 public basisPointsRate = 0; uint256 public maximumFee = 0; uint256 constant MAX_SETTABLE_BASIS_POINTS = 20; uint256 constant MAX_SETTABLE_FEE = 50; function calcFee(uint _value) public view returns (uint) { uint fee = (_value * basisPointsRate) / 10000; if (fee > maximumFee) { fee = maximumFee; } return fee; } function transfer(address _to, uint _value) public virtual override returns (bool) { uint fee = calcFee(_value); uint sendAmount = _value - fee; super.transfer(_to, sendAmount); if (fee > 0) { super.transfer(owner, fee); } return true; } function transferFrom(address _from, address _to, uint256 _value) public virtual override returns (bool) { uint fee = calcFee(_value); uint sendAmount = _value - fee; super.transferFrom(_from, _to, sendAmount); if (fee > 0) { super.transferFrom(_from, owner, fee); } return true; } function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner { require(newBasisPoints < MAX_SETTABLE_BASIS_POINTS, "StandardTokenWithFees: basis points too high"); require(newMaxFee < MAX_SETTABLE_FEE, "StandardTokenWithFees: max fee too high"); basisPointsRate = newBasisPoints; maximumFee = newMaxFee * (10**18); emit Params(basisPointsRate, maximumFee); } event Params(uint feeBasisPoints, uint maxFee); } contract TetherToken is Pausable, StandardTokenWithFees, BlackList { address public upgradedAddress; bool public deprecated; string public name; string public symbol; uint8 public decimals; uint public _totalSupply; constructor(uint _initialSupply, string memory _name, string memory _symbol, uint8 _decimals) { _totalSupply = _initialSupply; name = _name; symbol = _symbol; decimals = _decimals; balances[owner] = _initialSupply; deprecated = false; } function transfer(address _to, uint _value) public override whenNotPaused returns (bool) { require(!isBlackListed[msg.sender], "TetherToken: sender is blacklisted"); if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value); } else { return super.transfer(_to, _value); } } function transferFrom(address _from, address _to, uint _value) public override whenNotPaused returns (bool) { require(!isBlackListed[_from], "TetherToken: from address is blacklisted"); if (deprecated) { return UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value); } else { return super.transferFrom(_from, _to, _value); } } function balanceOf(address who) public view override returns (uint) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).balanceOf(who); } else { return super.balanceOf(who); } } function oldBalanceOf(address who) public view returns (uint) { if (deprecated) { return super.balanceOf(who); } else { return 0; // return 0 if not deprecated } } function approve(address _spender, uint _value) public override whenNotPaused returns (bool) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value); } else { return super.approve(_spender, _value); } } function increaseApproval(address _spender, uint _addedValue) public override whenNotPaused returns (bool) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).increaseApprovalByLegacy(msg.sender, _spender, _addedValue); } else { return super.increaseApproval(_spender, _addedValue); } } function decreaseApproval(address _spender, uint _subtractedValue) public override whenNotPaused returns (bool) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).decreaseApprovalByLegacy(msg.sender, _spender, _subtractedValue); } else { return super.decreaseApproval(_spender, _subtractedValue); } } function allowance(address _owner, address _spender) public view override returns (uint) { if (deprecated) { return StandardToken(upgradedAddress).allowance(_owner, _spender); } else { return super.allowance(_owner, _spender); } } function deprecate(address _upgradedAddress) public onlyOwner { require(_upgradedAddress != address(0), "TetherToken: new address is the zero address"); deprecated = true; upgradedAddress = _upgradedAddress; emit Deprecate(_upgradedAddress); } function totalSupply() public view override returns (uint) { if (deprecated) { return StandardToken(upgradedAddress).totalSupply(); } else { return _totalSupply; } } function issue(uint amount) public onlyOwner { balances[owner] += amount; _totalSupply += amount; emit Issue(amount); emit Transfer(address(0), owner, amount); } function redeem(uint amount) public onlyOwner { require(_totalSupply >= amount, "TetherToken: redeem amount exceeds total supply"); require(balances[owner] >= amount, "TetherToken: redeem amount exceeds balance"); _totalSupply -= amount; balances[owner] -= amount; emit Redeem(amount); emit Transfer(owner, address(0), amount); } function destroyBlackFunds (address _blackListedUser) public onlyOwner { require(isBlackListed[_blackListedUser], "TetherToken: user is not blacklisted"); uint dirtyFunds = balanceOf(_blackListedUser); balances[_blackListedUser] = 0; _totalSupply -= dirtyFunds; emit DestroyedBlackFunds(_blackListedUser, dirtyFunds); } event DestroyedBlackFunds(address indexed _blackListedUser, uint _balance); event Issue(uint amount); event Redeem(uint amount); event Deprecate(address newAddress); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"_initialSupply","type":"uint256"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AddedBlackList","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newAddress","type":"address"}],"name":"Deprecate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_blackListedUser","type":"address"},{"indexed":false,"internalType":"uint256","name":"_balance","type":"uint256"}],"name":"DestroyedBlackFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Issue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"feeBasisPoints","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"maxFee","type":"uint256"}],"name":"Params","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"RemovedBlackList","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_evilUser","type":"address"}],"name":"addBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basisPointsRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"calcFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_upgradedAddress","type":"address"}],"name":"deprecate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deprecated","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_blackListedUser","type":"address"}],"name":"destroyBlackFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_maker","type":"address"}],"name":"getBlackListStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBlackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"issue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maximumFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"oldBalanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_clearedUser","type":"address"}],"name":"removeBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBasisPoints","type":"uint256"},{"internalType":"uint256","name":"newMaxFee","type":"uint256"}],"name":"setParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"upgradedAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526000600260146101000a81548160ff021916908315150217905550600060035560006004553480156200003657600080fd5b50604051620042b4380380620042b483398181016040528101906200005c9190620002cb565b33600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600a819055508260079080519060200190620000bc9291906200017b565b508160089080519060200190620000d59291906200017b565b5080600960006101000a81548160ff021916908360ff16021790555083600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660146101000a81548160ff02191690831515021790555050505050620004e5565b82805462000189906200041d565b90600052602060002090601f016020900481019282620001ad5760008555620001f9565b82601f10620001c857805160ff1916838001178555620001f9565b82800160010185558215620001f9579182015b82811115620001f8578251825591602001919060010190620001db565b5b5090506200020891906200020c565b5090565b5b80821115620002275760008160009055506001016200020d565b5090565b6000620002426200023c846200039d565b62000369565b9050828152602081018484840111156200025b57600080fd5b62000268848285620003e7565b509392505050565b600082601f8301126200028257600080fd5b8151620002948482602086016200022b565b91505092915050565b600081519050620002ae81620004b1565b92915050565b600081519050620002c581620004cb565b92915050565b60008060008060808587031215620002e257600080fd5b6000620002f2878288016200029d565b945050602085015167ffffffffffffffff8111156200031057600080fd5b6200031e8782880162000270565b935050604085015167ffffffffffffffff8111156200033c57600080fd5b6200034a8782880162000270565b92505060606200035d87828801620002b4565b91505092959194509250565b6000604051905081810181811067ffffffffffffffff8211171562000393576200039262000482565b5b8060405250919050565b600067ffffffffffffffff821115620003bb57620003ba62000482565b5b601f19601f8301169050602081019050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101562000407578082015181840152602081019050620003ea565b8381111562000417576000848401525b50505050565b600060028204905060018216806200043657607f821691505b602082108114156200044d576200044c62000453565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620004bc81620003d0565b8114620004c857600080fd5b50565b620004d681620003da565b8114620004e257600080fd5b50565b613dbf80620004f56000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806375dc7d8c1161010f578063d73dd623116100a2578063e47d606011610071578063e47d6060146105bf578063e4997dc5146105ef578063f2fde38b1461060b578063f3bdc22814610627576101f0565b8063d73dd62314610525578063db006a7514610555578063dd62ed3e14610571578063dd644f72146105a1576101f0565b8063a9059cbb116100de578063a9059cbb1461048d578063b7a3446c146104bd578063c0324c77146104ed578063cc872b6614610509576101f0565b806375dc7d8c146104175780638456cb59146104475780638da5cb5b1461045157806395d89b411461046f576101f0565b8063313ce5671161018757806359bf1abe1161015657806359bf1abe146103695780635c975abb1461039957806366188463146103b757806370a08231146103e7576101f0565b8063313ce5671461030557806335390714146103235780633eaaf86b146103415780633f4ba83a1461035f576101f0565b80630ecb93c0116101c35780630ecb93c01461027d57806318160ddd1461029957806323b872dd146102b757806326976e3f146102e7576101f0565b806306fdde03146101f55780630753c30c14610213578063095ea7b31461022f5780630e136b191461025f575b600080fd5b6101fd610643565b60405161020a919061381a565b60405180910390f35b61022d60048036038101906102289190612ecf565b6106d1565b005b61024960048036038101906102449190612f83565b610867565b60405161025691906137ff565b60405180910390f35b610267610999565b60405161027491906137ff565b60405180910390f35b61029760048036038101906102929190612ecf565b6109ac565b005b6102a1610ada565b6040516102ae9190613a5c565b60405180910390f35b6102d160048036038101906102cc9190612f34565b610ba1565b6040516102de91906137ff565b60405180910390f35b6102ef610d64565b6040516102fc919061373f565b60405180910390f35b61030d610d8a565b60405161031a9190613aa0565b60405180910390f35b61032b610d9d565b6040516103389190613a5c565b60405180910390f35b610349610da3565b6040516103569190613a5c565b60405180910390f35b610367610da9565b005b610383600480360381019061037e9190612ecf565b610ed1565b60405161039091906137ff565b60405180910390f35b6103a1610f27565b6040516103ae91906137ff565b60405180910390f35b6103d160048036038101906103cc9190612f83565b610f3a565b6040516103de91906137ff565b60405180910390f35b61040160048036038101906103fc9190612ecf565b61106c565b60405161040e9190613a5c565b60405180910390f35b610431600480360381019061042c9190612fe8565b611146565b60405161043e9190613a5c565b60405180910390f35b61044f61117f565b005b6104596112a8565b604051610466919061373f565b60405180910390f35b6104776112ce565b604051610484919061381a565b60405180910390f35b6104a760048036038101906104a29190612f83565b61135c565b6040516104b491906137ff565b60405180910390f35b6104d760048036038101906104d29190612ecf565b61151b565b6040516104e49190613a5c565b60405180910390f35b6105076004803603810190610502919061303a565b61154c565b005b610523600480360381019061051e9190612fe8565b6116c4565b005b61053f600480360381019061053a9190612f83565b6118a6565b60405161054c91906137ff565b60405180910390f35b61056f600480360381019061056a9190612fe8565b6119d8565b005b61058b60048036038101906105869190612ef8565b611ca2565b6040516105989190613a5c565b60405180910390f35b6105a9611d80565b6040516105b69190613a5c565b60405180910390f35b6105d960048036038101906105d49190612ecf565b611d86565b6040516105e691906137ff565b60405180910390f35b61060960048036038101906106049190612ecf565b611da6565b005b61062560048036038101906106209190612ecf565b611ed4565b005b610641600480360381019061063c9190612ecf565b612094565b005b6007805461065090613c74565b80601f016020809104026020016040519081016040528092919081815260200182805461067c90613c74565b80156106c95780601f1061069e576101008083540402835291602001916106c9565b820191906000526020600020905b8154815290600101906020018083116106ac57829003601f168201915b505050505081565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906139fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156107d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c89061389c565b60405180910390fd5b6001600660146101000a81548160ff02191690831515021790555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e8160405161085c919061373f565b60405180910390a150565b6000600260149054906101000a900460ff16156108b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b09061391c565b60405180910390fd5b600660149054906101000a900460ff161561098657600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040518463ffffffff1660e01b815260040161092d939291906137c8565b602060405180830381600087803b15801561094757600080fd5b505af115801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190612fbf565b9050610993565b610990838361226c565b90505b92915050565b600660149054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a33906139fc565b60405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc60405160405180910390a250565b6000600660149054906101000a900460ff1615610b9857600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b5957600080fd5b505afa158015610b6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b919190613011565b9050610b9e565b600a5490505b90565b6000600260149054906101000a900460ff1615610bf3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bea9061391c565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c77906139dc565b60405180910390fd5b600660149054906101000a900460ff1615610d4f57600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338686866040518563ffffffff1660e01b8152600401610cf69493929190613783565b602060405180830381600087803b158015610d1057600080fd5b505af1158015610d24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d489190612fbf565b9050610d5d565b610d5a84848461235e565b90505b9392505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960009054906101000a900460ff1681565b60045481565b600a5481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e30906139fc565b60405180910390fd5b600260149054906101000a900460ff16610e88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7f9061383c565b60405180910390fd5b6000600260146101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a1565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600260149054906101000a900460ff1681565b6000600260149054906101000a900460ff1615610f8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f839061391c565b60405180910390fd5b600660149054906101000a900460ff161561105957600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636001279f3385856040518463ffffffff1660e01b8152600401611000939291906137c8565b602060405180830381600087803b15801561101a57600080fd5b505af115801561102e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110529190612fbf565b9050611066565b61106383836123cd565b90505b92915050565b6000600660149054906101000a900460ff161561113557600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b81526004016110de919061373f565b60206040518083038186803b1580156110f657600080fd5b505afa15801561110a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112e9190613011565b9050611141565b61113e82612657565b90505b919050565b6000806127106003548461115a9190613b5e565b6111649190613b2d565b90506004548111156111765760045490505b80915050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461120f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611206906139fc565b60405180910390fd5b600260149054906101000a900460ff161561125f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112569061391c565b60405180910390fd5b6001600260146101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a1565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600880546112db90613c74565b80601f016020809104026020016040519081016040528092919081815260200182805461130790613c74565b80156113545780601f1061132957610100808354040283529160200191611354565b820191906000526020600020905b81548152906001019060200180831161133757829003601f168201915b505050505081565b6000600260149054906101000a900460ff16156113ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a59061391c565b60405180910390fd5b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561143b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611432906138bc565b60405180910390fd5b600660149054906101000a900460ff161561150857600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3385856040518463ffffffff1660e01b81526004016114af939291906137c8565b602060405180830381600087803b1580156114c957600080fd5b505af11580156114dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115019190612fbf565b9050611515565b611512838361269f565b90505b92915050565b6000600660149054906101000a900460ff16156115425761153b82612657565b9050611547565b600090505b919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d3906139fc565b60405180910390fd5b6014821061161f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611616906139bc565b60405180910390fd5b60328110611662576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116599061399c565b60405180910390fd5b81600381905550670de0b6b3a76400008161167d9190613b5e565b6004819055507fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e6003546004546040516116b8929190613a77565b60405180910390a15050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906139fc565b60405180910390fd5b80600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546117c49190613ad7565b9250508190555080600a60008282546117dd9190613ad7565b925050819055507fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a816040516118139190613a5c565b60405180910390a1600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161189b9190613a5c565b60405180910390a350565b6000600260149054906101000a900460ff16156118f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ef9061391c565b60405180910390fd5b600660149054906101000a900460ff16156119c557600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a95381573385856040518463ffffffff1660e01b815260040161196c939291906137c8565b602060405180830381600087803b15801561198657600080fd5b505af115801561199a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119be9190612fbf565b90506119d2565b6119cf838361270b565b90505b92915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5f906139fc565b60405180910390fd5b80600a541015611aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa49061397c565b60405180910390fd5b80600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b479061393c565b60405180910390fd5b80600a6000828254611b629190613bb8565b9250508190555080600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bd99190613bb8565b925050819055507f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a4481604051611c0f9190613a5c565b60405180910390a1600073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c979190613a5c565b60405180910390a350565b6000600660149054906101000a900460ff1615611d6d57600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846040518363ffffffff1660e01b8152600401611d1692919061375a565b60206040518083038186803b158015611d2e57600080fd5b505afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190613011565b9050611d7a565b611d77838361288b565b90505b92915050565b60035481565b60056020528060005260406000206000915054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2d906139fc565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c60405160405180910390a250565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5b906139fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611fd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fcb9061387c565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612124576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211b906139fc565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166121b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121a79061385c565b60405180910390fd5b60006121bb8261106c565b905060008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600a60008282546122139190613bb8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff167f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c6826040516122609190613a5c565b60405180910390a25050565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161234c9190613a5c565b60405180910390a36001905092915050565b60008061236a83611146565b90506000818461237a9190613bb8565b9050612387868683612912565b5060008211156123c0576123be86600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612912565b505b6001925050509392505050565b600080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808311156124de576000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061256b565b82816124ea9190613bb8565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516126449190613a5c565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806126ab83611146565b9050600081846126bb9190613bb8565b90506126c78582612c70565b5060008211156126ff576126fd600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683612c70565b505b60019250505092915050565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127999190613ad7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516128799190613a5c565b60405180910390a36001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297a906138fc565b60405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612a04576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129fb906138dc565b60405180910390fd5b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612aba90613a3c565b60405180910390fd5b816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612b119190613bb8565b92505081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612b669190613ad7565b9250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612bf99190613bb8565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612c5d9190613a5c565b60405180910390a3600190509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ce1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cd890613a1c565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612d62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d599061395c565b60405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612db09190613bb8565b92505081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612e059190613ad7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612e699190613a5c565b60405180910390a36001905092915050565b600081359050612e8a81613d44565b92915050565b600081519050612e9f81613d5b565b92915050565b600081359050612eb481613d72565b92915050565b600081519050612ec981613d72565b92915050565b600060208284031215612ee157600080fd5b6000612eef84828501612e7b565b91505092915050565b60008060408385031215612f0b57600080fd5b6000612f1985828601612e7b565b9250506020612f2a85828601612e7b565b9150509250929050565b600080600060608486031215612f4957600080fd5b6000612f5786828701612e7b565b9350506020612f6886828701612e7b565b9250506040612f7986828701612ea5565b9150509250925092565b60008060408385031215612f9657600080fd5b6000612fa485828601612e7b565b9250506020612fb585828601612ea5565b9150509250929050565b600060208284031215612fd157600080fd5b6000612fdf84828501612e90565b91505092915050565b600060208284031215612ffa57600080fd5b600061300884828501612ea5565b91505092915050565b60006020828403121561302357600080fd5b600061303184828501612eba565b91505092915050565b6000806040838503121561304d57600080fd5b600061305b85828601612ea5565b925050602061306c85828601612ea5565b9150509250929050565b61307f81613bec565b82525050565b61308e81613bfe565b82525050565b600061309f82613abb565b6130a98185613ac6565b93506130b9818560208601613c41565b6130c281613d33565b840191505092915050565b60006130da601483613ac6565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b600061311a602483613ac6565b91507f546574686572546f6b656e3a2075736572206973206e6f7420626c61636b6c6960008301527f73746564000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613180602683613ac6565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006131e6602c83613ac6565b91507f546574686572546f6b656e3a206e65772061646472657373206973207468652060008301527f7a65726f206164647265737300000000000000000000000000000000000000006020830152604082019050919050565b600061324c602283613ac6565b91507f546574686572546f6b656e3a2073656e64657220697320626c61636b6c69737460008301527f65640000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006132b2602e83613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220616d6f756e74206560008301527f7863656564732062616c616e63650000000000000000000000000000000000006020830152604082019050919050565b6000613318602b83613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220746f20746865207a60008301527f65726f20616464726573730000000000000000000000000000000000000000006020830152604082019050919050565b600061337e601083613ac6565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b60006133be602a83613ac6565b91507f546574686572546f6b656e3a2072656465656d20616d6f756e7420657863656560008301527f64732062616c616e6365000000000000000000000000000000000000000000006020830152604082019050919050565b6000613424602b83613ac6565b91507f4261736963546f6b656e3a207472616e7366657220616d6f756e74206578636560008301527f6564732062616c616e63650000000000000000000000000000000000000000006020830152604082019050919050565b600061348a602f83613ac6565b91507f546574686572546f6b656e3a2072656465656d20616d6f756e7420657863656560008301527f647320746f74616c20737570706c7900000000000000000000000000000000006020830152604082019050919050565b60006134f0602783613ac6565b91507f5374616e64617264546f6b656e57697468466565733a206d617820666565207460008301527f6f6f2068696768000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613556602c83613ac6565b91507f5374616e64617264546f6b656e57697468466565733a20626173697320706f6960008301527f6e747320746f6f206869676800000000000000000000000000000000000000006020830152604082019050919050565b60006135bc602883613ac6565b91507f546574686572546f6b656e3a2066726f6d206164647265737320697320626c6160008301527f636b6c69737465640000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613622602083613ac6565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000613662602883613ac6565b91507f4261736963546f6b656e3a207472616e7366657220746f20746865207a65726f60008301527f20616464726573730000000000000000000000000000000000000000000000006020830152604082019050919050565b60006136c8603083613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220616d6f756e74206560008301527f78636565647320616c6c6f77616e6365000000000000000000000000000000006020830152604082019050919050565b61372a81613c2a565b82525050565b61373981613c34565b82525050565b60006020820190506137546000830184613076565b92915050565b600060408201905061376f6000830185613076565b61377c6020830184613076565b9392505050565b60006080820190506137986000830187613076565b6137a56020830186613076565b6137b26040830185613076565b6137bf6060830184613721565b95945050505050565b60006060820190506137dd6000830186613076565b6137ea6020830185613076565b6137f76040830184613721565b949350505050565b60006020820190506138146000830184613085565b92915050565b600060208201905081810360008301526138348184613094565b905092915050565b60006020820190508181036000830152613855816130cd565b9050919050565b600060208201905081810360008301526138758161310d565b9050919050565b6000602082019050818103600083015261389581613173565b9050919050565b600060208201905081810360008301526138b5816131d9565b9050919050565b600060208201905081810360008301526138d58161323f565b9050919050565b600060208201905081810360008301526138f5816132a5565b9050919050565b600060208201905081810360008301526139158161330b565b9050919050565b6000602082019050818103600083015261393581613371565b9050919050565b60006020820190508181036000830152613955816133b1565b9050919050565b6000602082019050818103600083015261397581613417565b9050919050565b600060208201905081810360008301526139958161347d565b9050919050565b600060208201905081810360008301526139b5816134e3565b9050919050565b600060208201905081810360008301526139d581613549565b9050919050565b600060208201905081810360008301526139f5816135af565b9050919050565b60006020820190508181036000830152613a1581613615565b9050919050565b60006020820190508181036000830152613a3581613655565b9050919050565b60006020820190508181036000830152613a55816136bb565b9050919050565b6000602082019050613a716000830184613721565b92915050565b6000604082019050613a8c6000830185613721565b613a996020830184613721565b9392505050565b6000602082019050613ab56000830184613730565b92915050565b600081519050919050565b600082825260208201905092915050565b6000613ae282613c2a565b9150613aed83613c2a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613b2257613b21613ca6565b5b828201905092915050565b6000613b3882613c2a565b9150613b4383613c2a565b925082613b5357613b52613cd5565b5b828204905092915050565b6000613b6982613c2a565b9150613b7483613c2a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613bad57613bac613ca6565b5b828202905092915050565b6000613bc382613c2a565b9150613bce83613c2a565b925082821015613be157613be0613ca6565b5b828203905092915050565b6000613bf782613c0a565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015613c5f578082015181840152602081019050613c44565b83811115613c6e576000848401525b50505050565b60006002820490506001821680613c8c57607f821691505b60208210811415613ca057613c9f613d04565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b613d4d81613bec565b8114613d5857600080fd5b50565b613d6481613bfe565b8114613d6f57600080fd5b50565b613d7b81613c2a565b8114613d8657600080fd5b5056fea26469706673582212209406906b6e5c37cb4b0b6e7bcc07e94f89d07c43f1f1d7f967c2b93e380eda9d64736f6c63430008000033000000000000000000000000000000000000000000000000000000e8d4a51000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000b546574686572546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101f05760003560e01c806375dc7d8c1161010f578063d73dd623116100a2578063e47d606011610071578063e47d6060146105bf578063e4997dc5146105ef578063f2fde38b1461060b578063f3bdc22814610627576101f0565b8063d73dd62314610525578063db006a7514610555578063dd62ed3e14610571578063dd644f72146105a1576101f0565b8063a9059cbb116100de578063a9059cbb1461048d578063b7a3446c146104bd578063c0324c77146104ed578063cc872b6614610509576101f0565b806375dc7d8c146104175780638456cb59146104475780638da5cb5b1461045157806395d89b411461046f576101f0565b8063313ce5671161018757806359bf1abe1161015657806359bf1abe146103695780635c975abb1461039957806366188463146103b757806370a08231146103e7576101f0565b8063313ce5671461030557806335390714146103235780633eaaf86b146103415780633f4ba83a1461035f576101f0565b80630ecb93c0116101c35780630ecb93c01461027d57806318160ddd1461029957806323b872dd146102b757806326976e3f146102e7576101f0565b806306fdde03146101f55780630753c30c14610213578063095ea7b31461022f5780630e136b191461025f575b600080fd5b6101fd610643565b60405161020a919061381a565b60405180910390f35b61022d60048036038101906102289190612ecf565b6106d1565b005b61024960048036038101906102449190612f83565b610867565b60405161025691906137ff565b60405180910390f35b610267610999565b60405161027491906137ff565b60405180910390f35b61029760048036038101906102929190612ecf565b6109ac565b005b6102a1610ada565b6040516102ae9190613a5c565b60405180910390f35b6102d160048036038101906102cc9190612f34565b610ba1565b6040516102de91906137ff565b60405180910390f35b6102ef610d64565b6040516102fc919061373f565b60405180910390f35b61030d610d8a565b60405161031a9190613aa0565b60405180910390f35b61032b610d9d565b6040516103389190613a5c565b60405180910390f35b610349610da3565b6040516103569190613a5c565b60405180910390f35b610367610da9565b005b610383600480360381019061037e9190612ecf565b610ed1565b60405161039091906137ff565b60405180910390f35b6103a1610f27565b6040516103ae91906137ff565b60405180910390f35b6103d160048036038101906103cc9190612f83565b610f3a565b6040516103de91906137ff565b60405180910390f35b61040160048036038101906103fc9190612ecf565b61106c565b60405161040e9190613a5c565b60405180910390f35b610431600480360381019061042c9190612fe8565b611146565b60405161043e9190613a5c565b60405180910390f35b61044f61117f565b005b6104596112a8565b604051610466919061373f565b60405180910390f35b6104776112ce565b604051610484919061381a565b60405180910390f35b6104a760048036038101906104a29190612f83565b61135c565b6040516104b491906137ff565b60405180910390f35b6104d760048036038101906104d29190612ecf565b61151b565b6040516104e49190613a5c565b60405180910390f35b6105076004803603810190610502919061303a565b61154c565b005b610523600480360381019061051e9190612fe8565b6116c4565b005b61053f600480360381019061053a9190612f83565b6118a6565b60405161054c91906137ff565b60405180910390f35b61056f600480360381019061056a9190612fe8565b6119d8565b005b61058b60048036038101906105869190612ef8565b611ca2565b6040516105989190613a5c565b60405180910390f35b6105a9611d80565b6040516105b69190613a5c565b60405180910390f35b6105d960048036038101906105d49190612ecf565b611d86565b6040516105e691906137ff565b60405180910390f35b61060960048036038101906106049190612ecf565b611da6565b005b61062560048036038101906106209190612ecf565b611ed4565b005b610641600480360381019061063c9190612ecf565b612094565b005b6007805461065090613c74565b80601f016020809104026020016040519081016040528092919081815260200182805461067c90613c74565b80156106c95780601f1061069e576101008083540402835291602001916106c9565b820191906000526020600020905b8154815290600101906020018083116106ac57829003601f168201915b505050505081565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906139fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156107d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c89061389c565b60405180910390fd5b6001600660146101000a81548160ff02191690831515021790555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e8160405161085c919061373f565b60405180910390a150565b6000600260149054906101000a900460ff16156108b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b09061391c565b60405180910390fd5b600660149054906101000a900460ff161561098657600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aee92d333385856040518463ffffffff1660e01b815260040161092d939291906137c8565b602060405180830381600087803b15801561094757600080fd5b505af115801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190612fbf565b9050610993565b610990838361226c565b90505b92915050565b600660149054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a33906139fc565b60405180910390fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc60405160405180910390a250565b6000600660149054906101000a900460ff1615610b9857600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b5957600080fd5b505afa158015610b6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b919190613011565b9050610b9e565b600a5490505b90565b6000600260149054906101000a900460ff1615610bf3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bea9061391c565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c77906139dc565b60405180910390fd5b600660149054906101000a900460ff1615610d4f57600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638b477adb338686866040518563ffffffff1660e01b8152600401610cf69493929190613783565b602060405180830381600087803b158015610d1057600080fd5b505af1158015610d24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d489190612fbf565b9050610d5d565b610d5a84848461235e565b90505b9392505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960009054906101000a900460ff1681565b60045481565b600a5481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e30906139fc565b60405180910390fd5b600260149054906101000a900460ff16610e88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7f9061383c565b60405180910390fd5b6000600260146101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a1565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600260149054906101000a900460ff1681565b6000600260149054906101000a900460ff1615610f8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f839061391c565b60405180910390fd5b600660149054906101000a900460ff161561105957600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636001279f3385856040518463ffffffff1660e01b8152600401611000939291906137c8565b602060405180830381600087803b15801561101a57600080fd5b505af115801561102e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110529190612fbf565b9050611066565b61106383836123cd565b90505b92915050565b6000600660149054906101000a900460ff161561113557600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b81526004016110de919061373f565b60206040518083038186803b1580156110f657600080fd5b505afa15801561110a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112e9190613011565b9050611141565b61113e82612657565b90505b919050565b6000806127106003548461115a9190613b5e565b6111649190613b2d565b90506004548111156111765760045490505b80915050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461120f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611206906139fc565b60405180910390fd5b600260149054906101000a900460ff161561125f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112569061391c565b60405180910390fd5b6001600260146101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a1565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600880546112db90613c74565b80601f016020809104026020016040519081016040528092919081815260200182805461130790613c74565b80156113545780601f1061132957610100808354040283529160200191611354565b820191906000526020600020905b81548152906001019060200180831161133757829003601f168201915b505050505081565b6000600260149054906101000a900460ff16156113ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a59061391c565b60405180910390fd5b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561143b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611432906138bc565b60405180910390fd5b600660149054906101000a900460ff161561150857600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636e18980a3385856040518463ffffffff1660e01b81526004016114af939291906137c8565b602060405180830381600087803b1580156114c957600080fd5b505af11580156114dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115019190612fbf565b9050611515565b611512838361269f565b90505b92915050565b6000600660149054906101000a900460ff16156115425761153b82612657565b9050611547565b600090505b919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d3906139fc565b60405180910390fd5b6014821061161f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611616906139bc565b60405180910390fd5b60328110611662576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116599061399c565b60405180910390fd5b81600381905550670de0b6b3a76400008161167d9190613b5e565b6004819055507fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e6003546004546040516116b8929190613a77565b60405180910390a15050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906139fc565b60405180910390fd5b80600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546117c49190613ad7565b9250508190555080600a60008282546117dd9190613ad7565b925050819055507fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a816040516118139190613a5c565b60405180910390a1600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161189b9190613a5c565b60405180910390a350565b6000600260149054906101000a900460ff16156118f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ef9061391c565b60405180910390fd5b600660149054906101000a900460ff16156119c557600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a95381573385856040518463ffffffff1660e01b815260040161196c939291906137c8565b602060405180830381600087803b15801561198657600080fd5b505af115801561199a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119be9190612fbf565b90506119d2565b6119cf838361270b565b90505b92915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5f906139fc565b60405180910390fd5b80600a541015611aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa49061397c565b60405180910390fd5b80600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b479061393c565b60405180910390fd5b80600a6000828254611b629190613bb8565b9250508190555080600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bd99190613bb8565b925050819055507f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a4481604051611c0f9190613a5c565b60405180910390a1600073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c979190613a5c565b60405180910390a350565b6000600660149054906101000a900460ff1615611d6d57600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84846040518363ffffffff1660e01b8152600401611d1692919061375a565b60206040518083038186803b158015611d2e57600080fd5b505afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190613011565b9050611d7a565b611d77838361288b565b90505b92915050565b60035481565b60056020528060005260406000206000915054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2d906139fc565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c60405160405180910390a250565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5b906139fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611fd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fcb9061387c565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612124576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211b906139fc565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166121b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121a79061385c565b60405180910390fd5b60006121bb8261106c565b905060008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600a60008282546122139190613bb8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff167f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c6826040516122609190613a5c565b60405180910390a25050565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161234c9190613a5c565b60405180910390a36001905092915050565b60008061236a83611146565b90506000818461237a9190613bb8565b9050612387868683612912565b5060008211156123c0576123be86600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612912565b505b6001925050509392505050565b600080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808311156124de576000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061256b565b82816124ea9190613bb8565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516126449190613a5c565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806126ab83611146565b9050600081846126bb9190613bb8565b90506126c78582612c70565b5060008211156126ff576126fd600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683612c70565b505b60019250505092915050565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127999190613ad7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516128799190613a5c565b60405180910390a36001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297a906138fc565b60405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612a04576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129fb906138dc565b60405180910390fd5b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612aba90613a3c565b60405180910390fd5b816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612b119190613bb8565b92505081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612b669190613ad7565b9250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612bf99190613bb8565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612c5d9190613a5c565b60405180910390a3600190509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ce1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cd890613a1c565b60405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115612d62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d599061395c565b60405180910390fd5b816000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612db09190613bb8565b92505081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612e059190613ad7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612e699190613a5c565b60405180910390a36001905092915050565b600081359050612e8a81613d44565b92915050565b600081519050612e9f81613d5b565b92915050565b600081359050612eb481613d72565b92915050565b600081519050612ec981613d72565b92915050565b600060208284031215612ee157600080fd5b6000612eef84828501612e7b565b91505092915050565b60008060408385031215612f0b57600080fd5b6000612f1985828601612e7b565b9250506020612f2a85828601612e7b565b9150509250929050565b600080600060608486031215612f4957600080fd5b6000612f5786828701612e7b565b9350506020612f6886828701612e7b565b9250506040612f7986828701612ea5565b9150509250925092565b60008060408385031215612f9657600080fd5b6000612fa485828601612e7b565b9250506020612fb585828601612ea5565b9150509250929050565b600060208284031215612fd157600080fd5b6000612fdf84828501612e90565b91505092915050565b600060208284031215612ffa57600080fd5b600061300884828501612ea5565b91505092915050565b60006020828403121561302357600080fd5b600061303184828501612eba565b91505092915050565b6000806040838503121561304d57600080fd5b600061305b85828601612ea5565b925050602061306c85828601612ea5565b9150509250929050565b61307f81613bec565b82525050565b61308e81613bfe565b82525050565b600061309f82613abb565b6130a98185613ac6565b93506130b9818560208601613c41565b6130c281613d33565b840191505092915050565b60006130da601483613ac6565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b600061311a602483613ac6565b91507f546574686572546f6b656e3a2075736572206973206e6f7420626c61636b6c6960008301527f73746564000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613180602683613ac6565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006131e6602c83613ac6565b91507f546574686572546f6b656e3a206e65772061646472657373206973207468652060008301527f7a65726f206164647265737300000000000000000000000000000000000000006020830152604082019050919050565b600061324c602283613ac6565b91507f546574686572546f6b656e3a2073656e64657220697320626c61636b6c69737460008301527f65640000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006132b2602e83613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220616d6f756e74206560008301527f7863656564732062616c616e63650000000000000000000000000000000000006020830152604082019050919050565b6000613318602b83613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220746f20746865207a60008301527f65726f20616464726573730000000000000000000000000000000000000000006020830152604082019050919050565b600061337e601083613ac6565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b60006133be602a83613ac6565b91507f546574686572546f6b656e3a2072656465656d20616d6f756e7420657863656560008301527f64732062616c616e6365000000000000000000000000000000000000000000006020830152604082019050919050565b6000613424602b83613ac6565b91507f4261736963546f6b656e3a207472616e7366657220616d6f756e74206578636560008301527f6564732062616c616e63650000000000000000000000000000000000000000006020830152604082019050919050565b600061348a602f83613ac6565b91507f546574686572546f6b656e3a2072656465656d20616d6f756e7420657863656560008301527f647320746f74616c20737570706c7900000000000000000000000000000000006020830152604082019050919050565b60006134f0602783613ac6565b91507f5374616e64617264546f6b656e57697468466565733a206d617820666565207460008301527f6f6f2068696768000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613556602c83613ac6565b91507f5374616e64617264546f6b656e57697468466565733a20626173697320706f6960008301527f6e747320746f6f206869676800000000000000000000000000000000000000006020830152604082019050919050565b60006135bc602883613ac6565b91507f546574686572546f6b656e3a2066726f6d206164647265737320697320626c6160008301527f636b6c69737465640000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613622602083613ac6565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000613662602883613ac6565b91507f4261736963546f6b656e3a207472616e7366657220746f20746865207a65726f60008301527f20616464726573730000000000000000000000000000000000000000000000006020830152604082019050919050565b60006136c8603083613ac6565b91507f5374616e64617264546f6b656e3a207472616e7366657220616d6f756e74206560008301527f78636565647320616c6c6f77616e6365000000000000000000000000000000006020830152604082019050919050565b61372a81613c2a565b82525050565b61373981613c34565b82525050565b60006020820190506137546000830184613076565b92915050565b600060408201905061376f6000830185613076565b61377c6020830184613076565b9392505050565b60006080820190506137986000830187613076565b6137a56020830186613076565b6137b26040830185613076565b6137bf6060830184613721565b95945050505050565b60006060820190506137dd6000830186613076565b6137ea6020830185613076565b6137f76040830184613721565b949350505050565b60006020820190506138146000830184613085565b92915050565b600060208201905081810360008301526138348184613094565b905092915050565b60006020820190508181036000830152613855816130cd565b9050919050565b600060208201905081810360008301526138758161310d565b9050919050565b6000602082019050818103600083015261389581613173565b9050919050565b600060208201905081810360008301526138b5816131d9565b9050919050565b600060208201905081810360008301526138d58161323f565b9050919050565b600060208201905081810360008301526138f5816132a5565b9050919050565b600060208201905081810360008301526139158161330b565b9050919050565b6000602082019050818103600083015261393581613371565b9050919050565b60006020820190508181036000830152613955816133b1565b9050919050565b6000602082019050818103600083015261397581613417565b9050919050565b600060208201905081810360008301526139958161347d565b9050919050565b600060208201905081810360008301526139b5816134e3565b9050919050565b600060208201905081810360008301526139d581613549565b9050919050565b600060208201905081810360008301526139f5816135af565b9050919050565b60006020820190508181036000830152613a1581613615565b9050919050565b60006020820190508181036000830152613a3581613655565b9050919050565b60006020820190508181036000830152613a55816136bb565b9050919050565b6000602082019050613a716000830184613721565b92915050565b6000604082019050613a8c6000830185613721565b613a996020830184613721565b9392505050565b6000602082019050613ab56000830184613730565b92915050565b600081519050919050565b600082825260208201905092915050565b6000613ae282613c2a565b9150613aed83613c2a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613b2257613b21613ca6565b5b828201905092915050565b6000613b3882613c2a565b9150613b4383613c2a565b925082613b5357613b52613cd5565b5b828204905092915050565b6000613b6982613c2a565b9150613b7483613c2a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613bad57613bac613ca6565b5b828202905092915050565b6000613bc382613c2a565b9150613bce83613c2a565b925082821015613be157613be0613ca6565b5b828203905092915050565b6000613bf782613c0a565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015613c5f578082015181840152602081019050613c44565b83811115613c6e576000848401525b50505050565b60006002820490506001821680613c8c57607f821691505b60208210811415613ca057613c9f613d04565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b613d4d81613bec565b8114613d5857600080fd5b50565b613d6481613bfe565b8114613d6f57600080fd5b50565b613d7b81613c2a565b8114613d8657600080fd5b5056fea26469706673582212209406906b6e5c37cb4b0b6e7bcc07e94f89d07c43f1f1d7f967c2b93e380eda9d64736f6c63430008000033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000e8d4a51000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000b546574686572546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _initialSupply (uint256): 1000000000000
Arg [1] : _name (string): TetherToken
Arg [2] : _symbol (string): USDT
Arg [3] : _decimals (uint8): 18
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000000000e8d4a51000
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [5] : 546574686572546f6b656e000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [7] : 5553445400000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
7490:4946:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7634:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10737:284;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9370:316;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7603:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1493:149;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11029:223;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8446:430;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7566:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7686:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5960:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7714:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1058:106;;;:::i;:::-;;1365:120;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;665:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10060:373;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8884:249;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6097:217;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;946:104;;;:::i;:::-;;84:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7659;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8050:388;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9141:221;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7004:424;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11260:202;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9694:358;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11470:398;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10441:288;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5919:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1208:46;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1650:164;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;388:234;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11876:369;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7634:18;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10737:284::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;10846:1:::1;10818:30;;:16;:30;;;;10810:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;10921:4;10908:10;;:17;;;;;;;;;;;;;;;;;;10954:16;10936:15;;:34;;;;;;;;;;;;;;;;;;10986:27;10996:16;10986:27;;;;;;:::i;:::-;;;;;;;;10737:284:::0;:::o;9370:316::-;9457:4;791:6;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;9478:10:::1;;;;;;;;;;;9474:205;;;9534:15;;;;;;;;;;;9512:54;;;9567:10;9579:8;9589:6;9512:84;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9505:91;;;;9474:205;9636:31;9650:8;9660:6;9636:13;:31::i;:::-;9629:38;;829:1;9370:316:::0;;;;:::o;7603:22::-;;;;;;;;;;;;;:::o;1493:149::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;1589:4:::1;1562:13;:24;1576:9;1562:24;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;1624:9;1609:25;;;;;;;;;;;;1493:149:::0;:::o;11029:223::-;11082:4;11103:10;;;;;;;;;;;11099:146;;;11151:15;;;;;;;;;;;11137:42;;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11130:51;;;;11099:146;11221:12;;11214:19;;11029:223;;:::o;8446:430::-;8548:4;791:6;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;8574:13:::1;:20;8588:5;8574:20;;;;;;;;;;;;;;;;;;;;;;;;;8573:21;8565:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;8654:10;;;;;;;;;;;8650:219;;;8710:15;;;;;;;;;;;8688:59;;;8748:10;8760:5;8767:3;8772:6;8688:91;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8681:98;;;;8650:219;8819:38;8838:5;8845:3;8850:6;8819:18;:38::i;:::-;8812:45;;829:1;8446:430:::0;;;;;:::o;7566:30::-;;;;;;;;;;;;;:::o;7686:21::-;;;;;;;;;;;;;:::o;5960:29::-;;;;:::o;7714:24::-;;;;:::o;1058:106::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;887:6:::1;;;;;;;;;;;879:39;;;;;;;;;;;;:::i;:::-;;;;;;;;;1125:5:::2;1116:6;;:14;;;;;;;;;;;;;;;;;;1146:10;;;;;;;;;;1058:106::o:0;1365:120::-;1432:4;1456:13;:21;1470:6;1456:21;;;;;;;;;;;;;;;;;;;;;;;;;1449:28;;1365:120;;;:::o;665:26::-;;;;;;;;;;;;;:::o;10060:373::-;10166:4;791:6;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;10187:10:::1;;;;;;;;;;;10183:243;;;10243:15;;;;;;;;;;;10221:63;;;10285:10;10297:8;10307:16;10221:103;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10214:110;;;;10183:243;10364:50;10387:8;10397:16;10364:22;:50::i;:::-;10357:57;;829:1;10060:373:::0;;;;:::o;8884:249::-;8946:4;8967:10;;;;;;;;;;;8963:163;;;9023:15;;;;;;;;;;;9001:48;;;9050:3;9001:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8994:60;;;;8963:163;9094:20;9110:3;9094:15;:20::i;:::-;9087:27;;8884:249;;;;:::o;6097:217::-;6148:4;6165:8;6205:5;6186:15;;6177:6;:24;;;;:::i;:::-;6176:34;;;;:::i;:::-;6165:45;;6231:10;;6225:3;:16;6221:65;;;6264:10;;6258:16;;6221:65;6303:3;6296:10;;;6097:217;;;:::o;946:104::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;791:6:::1;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;1014:4:::2;1005:6;;:13;;;;;;;;;;;;;;;;;;1034:8;;;;;;;;;;946:104::o:0;84:20::-;;;;;;;;;;;;;:::o;7659:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8050:388::-;8133:4;791:6;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;8159:13:::1;:25;8173:10;8159:25;;;;;;;;;;;;;;;;;;;;;;;;;8158:26;8150:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;8238:10;;;;;;;;;;;8234:197;;;8294:15;;;;;;;;;;;8272:55;;;8328:10;8340:3;8345:6;8272:80;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8265:87;;;;8234:197;8392:27;8407:3;8412:6;8392:14;:27::i;:::-;8385:34;;829:1;8050:388:::0;;;;:::o;9141:221::-;9197:4;9218:10;;;;;;;;;;;9214:141;;;9252:20;9268:3;9252:15;:20::i;:::-;9245:27;;;;9214:141;9312:1;9305:8;;9141:221;;;;:::o;7004:424::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6041:2:::1;7096:14;:42;7088:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;6086:2;7206:9;:28;7198:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;7309:14;7291:15;:32;;;;7360:6;7347:9;:20;;;;:::i;:::-;7334:10;:33;;;;7385:35;7392:15;;7409:10;;7385:35;;;;;;;:::i;:::-;;;;;;;;7004:424:::0;;:::o;11260:202::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11335:6:::1;11316:8;:15:::0;11325:5:::1;;;;;;;;;;;11316:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;11368:6;11352:12;;:22;;;;;;;:::i;:::-;;;;;;;;11390:13;11396:6;11390:13;;;;;;:::i;:::-;;;;;;;;11440:5;;;;;;;;;;;11419:35;;11436:1;11419:35;;;11447:6;11419:35;;;;;;:::i;:::-;;;;;;;;11260:202:::0;:::o;9694:358::-;9795:4;791:6;;;;;;;;;;;790:7;782:36;;;;;;;;;;;;:::i;:::-;;;;;;;;;9816:10:::1;;;;;;;;;;;9812:233;;;9872:15;;;;;;;;;;;9850:63;;;9914:10;9926:8;9936:11;9850:98;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9843:105;;;;9812:233;9988:45;10011:8;10021:11;9988:22;:45::i;:::-;9981:52;;829:1;9694:358:::0;;;;:::o;11470:398::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11551:6:::1;11535:12;;:22;;11527:82;;;;;;;;;;;;:::i;:::-;;;;;;;;;11647:6;11628:8;:15:::0;11637:5:::1;;;;;;;;;;;11628:15;;;;;;;;;;;;;;;;:25;;11620:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;11737:6;11721:12;;:22;;;;;;;:::i;:::-;;;;;;;;11773:6;11754:8;:15:::0;11763:5:::1;;;;;;;;;;;11754:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;11795:14;11802:6;11795:14;;;;;;:::i;:::-;;;;;;;;11849:1;11825:35;;11834:5;;;;;;;;;;;11825:35;;;11853:6;11825:35;;;;;;:::i;:::-;;;;;;;;11470:398:::0;:::o;10441:288::-;10524:4;10545:10;;;;;;;;;;;10541:181;;;10593:15;;;;;;;;;;;10579:40;;;10620:6;10628:8;10579:58;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10572:65;;;;10541:181;10677:33;10693:6;10701:8;10677:15;:33::i;:::-;10670:40;;10441:288;;;;;:::o;5919:34::-;;;;:::o;1208:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;1650:164::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;1755:5:::1;1725:13;:27;1739:12;1725:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;1793:12;1776:30;;;;;;;;;;;;1650:164:::0;:::o;388:234::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;489:1:::1;469:22;;:8;:22;;;;461:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;578:8;550:37;;571:5;;;;;;;;;;;550:37;;;;;;;;;;;;606:8;598:5;;:16;;;;;;;;;;;;;;;;;;388:234:::0;:::o;11876:369::-;318:5;;;;;;;;;;;304:19;;:10;:19;;;296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11966:13:::1;:31;11980:16;11966:31;;;;;;;;;;;;;;;;;;;;;;;;;11958:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;12049:15;12067:27;12077:16;12067:9;:27::i;:::-;12049:45;;12134:1;12105:8:::0;:26:::1;12114:16;12105:26;;;;;;;;;;;;;;;:30;;;;12162:10;12146:12;;:26;;;;;;;:::i;:::-;;;;;;;;12208:16;12188:49;;;12226:10;12188:49;;;;;;:::i;:::-;;;;;;;;371:1;11876:369:::0;:::o;4741:223::-;4825:4;4874:6;4842:7;:19;4850:10;4842:19;;;;;;;;;;;;;;;:29;4862:8;4842:29;;;;;;;;;;;;;;;:38;;;;4917:8;4896:38;;4905:10;4896:38;;;4927:6;4896:38;;;;;;:::i;:::-;;;;;;;;4952:4;4945:11;;4741:223;;;;:::o;6641:355::-;6740:4;6757:8;6768:15;6776:6;6768:7;:15::i;:::-;6757:26;;6794:15;6821:3;6812:6;:12;;;;:::i;:::-;6794:30;;6837:42;6856:5;6863:3;6868:10;6837:18;:42::i;:::-;;6900:1;6894:3;:7;6890:77;;;6918:37;6937:5;6944;;;;;;;;;;;6951:3;6918:18;:37::i;:::-;;6890:77;6984:4;6977:11;;;;6641:355;;;;;:::o;5393:455::-;5484:4;5501:13;5517:7;:19;5525:10;5517:19;;;;;;;;;;;;;;;:29;5537:8;5517:29;;;;;;;;;;;;;;;;5501:45;;5580:8;5561:16;:27;5557:185;;;5637:1;5605:7;:19;5613:10;5605:19;;;;;;;;;;;;;;;:29;5625:8;5605:29;;;;;;;;;;;;;;;:33;;;;5557:185;;;5714:16;5703:8;:27;;;;:::i;:::-;5671:7;:19;5679:10;5671:19;;;;;;;;;;;;;;;:29;5691:8;5671:29;;;;;;;;;;;;;;;:59;;;;5557:185;5778:8;5757:61;;5766:10;5757:61;;;5788:7;:19;5796:10;5788:19;;;;;;;;;;;;;;;:29;5808:8;5788:29;;;;;;;;;;;;;;;;5757:61;;;;;;:::i;:::-;;;;;;;;5836:4;5829:11;;;5393:455;;;;:::o;3883:132::-;3956:15;3991:8;:16;4000:6;3991:16;;;;;;;;;;;;;;;;3984:23;;3883:132;;;:::o;6322:311::-;6399:4;6416:8;6427:15;6435:6;6427:7;:15::i;:::-;6416:26;;6453:15;6480:3;6471:6;:12;;;;:::i;:::-;6453:30;;6496:31;6511:3;6516:10;6496:14;:31::i;:::-;;6548:1;6542:3;:7;6538:66;;;6566:26;6581:5;;;;;;;;;;;6588:3;6566:14;:26::i;:::-;;6538:66;6621:4;6614:11;;;;6322:311;;;;:::o;5131:254::-;5217:4;5267:11;5234:7;:19;5242:10;5234:19;;;;;;;;;;;;;;;:29;5254:8;5234:29;;;;;;;;;;;;;;;;:44;;;;;;;:::i;:::-;;;;;;;;5315:8;5294:61;;5303:10;5294:61;;;5325:7;:19;5333:10;5325:19;;;;;;;;;;;;;;;:29;5345:8;5325:29;;;;;;;;;;;;;;;;5294:61;;;;;;:::i;:::-;;;;;;;;5373:4;5366:11;;5131:254;;;;:::o;4972:151::-;5063:7;5090;:15;5098:6;5090:15;;;;;;;;;;;;;;;:25;5106:8;5090:25;;;;;;;;;;;;;;;;5083:32;;4972:151;;;;:::o;4148:585::-;4247:4;4287:1;4272:17;;:3;:17;;;;4264:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4366:8;:15;4375:5;4366:15;;;;;;;;;;;;;;;;4356:6;:25;;4348:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;4461:7;:14;4469:5;4461:14;;;;;;;;;;;;;;;:26;4476:10;4461:26;;;;;;;;;;;;;;;;4451:6;:36;;4443:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;4572:6;4553:8;:15;4562:5;4553:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;4606:6;4589:8;:13;4598:3;4589:13;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;4653:6;4623:7;:14;4631:5;4623:14;;;;;;;;;;;;;;;:26;4638:10;4623:26;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;4691:3;4675:28;;4684:5;4675:28;;;4696:6;4675:28;;;;;;:::i;:::-;;;;;;;;4721:4;4714:11;;4148:585;;;;;:::o;3455:420::-;3535:4;3575:1;3560:17;;:3;:17;;;;3552:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;3651:8;:20;3660:10;3651:20;;;;;;;;;;;;;;;;3641:6;:30;;3633:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;3756:6;3732:8;:20;3741:10;3732:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;3790:6;3773:8;:13;3782:3;3773:13;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;3833:3;3812:33;;3821:10;3812:33;;;3838:6;3812:33;;;;;;:::i;:::-;;;;;;;;3863:4;3856:11;;3455:420;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:137::-;;237:6;231:13;222:22;;253:30;277:5;253:30;:::i;:::-;212:77;;;;:::o;295:139::-;;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;347:87;;;;:::o;440:143::-;;528:6;522:13;513:22;;544:33;571:5;544:33;:::i;:::-;503:80;;;;:::o;589:262::-;;697:2;685:9;676:7;672:23;668:32;665:2;;;713:1;710;703:12;665:2;756:1;781:53;826:7;817:6;806:9;802:22;781:53;:::i;:::-;771:63;;727:117;655:196;;;;:::o;857:407::-;;;982:2;970:9;961:7;957:23;953:32;950:2;;;998:1;995;988:12;950:2;1041:1;1066:53;1111:7;1102:6;1091:9;1087:22;1066:53;:::i;:::-;1056:63;;1012:117;1168:2;1194:53;1239:7;1230:6;1219:9;1215:22;1194:53;:::i;:::-;1184:63;;1139:118;940:324;;;;;:::o;1270:552::-;;;;1412:2;1400:9;1391:7;1387:23;1383:32;1380:2;;;1428:1;1425;1418:12;1380:2;1471:1;1496:53;1541:7;1532:6;1521:9;1517:22;1496:53;:::i;:::-;1486:63;;1442:117;1598:2;1624:53;1669:7;1660:6;1649:9;1645:22;1624:53;:::i;:::-;1614:63;;1569:118;1726:2;1752:53;1797:7;1788:6;1777:9;1773:22;1752:53;:::i;:::-;1742:63;;1697:118;1370:452;;;;;:::o;1828:407::-;;;1953:2;1941:9;1932:7;1928:23;1924:32;1921:2;;;1969:1;1966;1959:12;1921:2;2012:1;2037:53;2082:7;2073:6;2062:9;2058:22;2037:53;:::i;:::-;2027:63;;1983:117;2139:2;2165:53;2210:7;2201:6;2190:9;2186:22;2165:53;:::i;:::-;2155:63;;2110:118;1911:324;;;;;:::o;2241:278::-;;2357:2;2345:9;2336:7;2332:23;2328:32;2325:2;;;2373:1;2370;2363:12;2325:2;2416:1;2441:61;2494:7;2485:6;2474:9;2470:22;2441:61;:::i;:::-;2431:71;;2387:125;2315:204;;;;:::o;2525:262::-;;2633:2;2621:9;2612:7;2608:23;2604:32;2601:2;;;2649:1;2646;2639:12;2601:2;2692:1;2717:53;2762:7;2753:6;2742:9;2738:22;2717:53;:::i;:::-;2707:63;;2663:117;2591:196;;;;:::o;2793:284::-;;2912:2;2900:9;2891:7;2887:23;2883:32;2880:2;;;2928:1;2925;2918:12;2880:2;2971:1;2996:64;3052:7;3043:6;3032:9;3028:22;2996:64;:::i;:::-;2986:74;;2942:128;2870:207;;;;:::o;3083:407::-;;;3208:2;3196:9;3187:7;3183:23;3179:32;3176:2;;;3224:1;3221;3214:12;3176:2;3267:1;3292:53;3337:7;3328:6;3317:9;3313:22;3292:53;:::i;:::-;3282:63;;3238:117;3394:2;3420:53;3465:7;3456:6;3445:9;3441:22;3420:53;:::i;:::-;3410:63;;3365:118;3166:324;;;;;:::o;3496:118::-;3583:24;3601:5;3583:24;:::i;:::-;3578:3;3571:37;3561:53;;:::o;3620:109::-;3701:21;3716:5;3701:21;:::i;:::-;3696:3;3689:34;3679:50;;:::o;3735:364::-;;3851:39;3884:5;3851:39;:::i;:::-;3906:71;3970:6;3965:3;3906:71;:::i;:::-;3899:78;;3986:52;4031:6;4026:3;4019:4;4012:5;4008:16;3986:52;:::i;:::-;4063:29;4085:6;4063:29;:::i;:::-;4058:3;4054:39;4047:46;;3827:272;;;;;:::o;4105:318::-;;4268:67;4332:2;4327:3;4268:67;:::i;:::-;4261:74;;4365:22;4361:1;4356:3;4352:11;4345:43;4414:2;4409:3;4405:12;4398:19;;4251:172;;;:::o;4429:368::-;;4592:67;4656:2;4651:3;4592:67;:::i;:::-;4585:74;;4689:34;4685:1;4680:3;4676:11;4669:55;4755:6;4750:2;4745:3;4741:12;4734:28;4788:2;4783:3;4779:12;4772:19;;4575:222;;;:::o;4803:370::-;;4966:67;5030:2;5025:3;4966:67;:::i;:::-;4959:74;;5063:34;5059:1;5054:3;5050:11;5043:55;5129:8;5124:2;5119:3;5115:12;5108:30;5164:2;5159:3;5155:12;5148:19;;4949:224;;;:::o;5179:376::-;;5342:67;5406:2;5401:3;5342:67;:::i;:::-;5335:74;;5439:34;5435:1;5430:3;5426:11;5419:55;5505:14;5500:2;5495:3;5491:12;5484:36;5546:2;5541:3;5537:12;5530:19;;5325:230;;;:::o;5561:366::-;;5724:67;5788:2;5783:3;5724:67;:::i;:::-;5717:74;;5821:34;5817:1;5812:3;5808:11;5801:55;5887:4;5882:2;5877:3;5873:12;5866:26;5918:2;5913:3;5909:12;5902:19;;5707:220;;;:::o;5933:378::-;;6096:67;6160:2;6155:3;6096:67;:::i;:::-;6089:74;;6193:34;6189:1;6184:3;6180:11;6173:55;6259:16;6254:2;6249:3;6245:12;6238:38;6302:2;6297:3;6293:12;6286:19;;6079:232;;;:::o;6317:375::-;;6480:67;6544:2;6539:3;6480:67;:::i;:::-;6473:74;;6577:34;6573:1;6568:3;6564:11;6557:55;6643:13;6638:2;6633:3;6629:12;6622:35;6683:2;6678:3;6674:12;6667:19;;6463:229;;;:::o;6698:314::-;;6861:67;6925:2;6920:3;6861:67;:::i;:::-;6854:74;;6958:18;6954:1;6949:3;6945:11;6938:39;7003:2;6998:3;6994:12;6987:19;;6844:168;;;:::o;7018:374::-;;7181:67;7245:2;7240:3;7181:67;:::i;:::-;7174:74;;7278:34;7274:1;7269:3;7265:11;7258:55;7344:12;7339:2;7334:3;7330:12;7323:34;7383:2;7378:3;7374:12;7367:19;;7164:228;;;:::o;7398:375::-;;7561:67;7625:2;7620:3;7561:67;:::i;:::-;7554:74;;7658:34;7654:1;7649:3;7645:11;7638:55;7724:13;7719:2;7714:3;7710:12;7703:35;7764:2;7759:3;7755:12;7748:19;;7544:229;;;:::o;7779:379::-;;7942:67;8006:2;8001:3;7942:67;:::i;:::-;7935:74;;8039:34;8035:1;8030:3;8026:11;8019:55;8105:17;8100:2;8095:3;8091:12;8084:39;8149:2;8144:3;8140:12;8133:19;;7925:233;;;:::o;8164:371::-;;8327:67;8391:2;8386:3;8327:67;:::i;:::-;8320:74;;8424:34;8420:1;8415:3;8411:11;8404:55;8490:9;8485:2;8480:3;8476:12;8469:31;8526:2;8521:3;8517:12;8510:19;;8310:225;;;:::o;8541:376::-;;8704:67;8768:2;8763:3;8704:67;:::i;:::-;8697:74;;8801:34;8797:1;8792:3;8788:11;8781:55;8867:14;8862:2;8857:3;8853:12;8846:36;8908:2;8903:3;8899:12;8892:19;;8687:230;;;:::o;8923:372::-;;9086:67;9150:2;9145:3;9086:67;:::i;:::-;9079:74;;9183:34;9179:1;9174:3;9170:11;9163:55;9249:10;9244:2;9239:3;9235:12;9228:32;9286:2;9281:3;9277:12;9270:19;;9069:226;;;:::o;9301:330::-;;9464:67;9528:2;9523:3;9464:67;:::i;:::-;9457:74;;9561:34;9557:1;9552:3;9548:11;9541:55;9622:2;9617:3;9613:12;9606:19;;9447:184;;;:::o;9637:372::-;;9800:67;9864:2;9859:3;9800:67;:::i;:::-;9793:74;;9897:34;9893:1;9888:3;9884:11;9877:55;9963:10;9958:2;9953:3;9949:12;9942:32;10000:2;9995:3;9991:12;9984:19;;9783:226;;;:::o;10015:380::-;;10178:67;10242:2;10237:3;10178:67;:::i;:::-;10171:74;;10275:34;10271:1;10266:3;10262:11;10255:55;10341:18;10336:2;10331:3;10327:12;10320:40;10386:2;10381:3;10377:12;10370:19;;10161:234;;;:::o;10401:118::-;10488:24;10506:5;10488:24;:::i;:::-;10483:3;10476:37;10466:53;;:::o;10525:112::-;10608:22;10624:5;10608:22;:::i;:::-;10603:3;10596:35;10586:51;;:::o;10643:222::-;;10774:2;10763:9;10759:18;10751:26;;10787:71;10855:1;10844:9;10840:17;10831:6;10787:71;:::i;:::-;10741:124;;;;:::o;10871:332::-;;11030:2;11019:9;11015:18;11007:26;;11043:71;11111:1;11100:9;11096:17;11087:6;11043:71;:::i;:::-;11124:72;11192:2;11181:9;11177:18;11168:6;11124:72;:::i;:::-;10997:206;;;;;:::o;11209:553::-;;11424:3;11413:9;11409:19;11401:27;;11438:71;11506:1;11495:9;11491:17;11482:6;11438:71;:::i;:::-;11519:72;11587:2;11576:9;11572:18;11563:6;11519:72;:::i;:::-;11601;11669:2;11658:9;11654:18;11645:6;11601:72;:::i;:::-;11683;11751:2;11740:9;11736:18;11727:6;11683:72;:::i;:::-;11391:371;;;;;;;:::o;11768:442::-;;11955:2;11944:9;11940:18;11932:26;;11968:71;12036:1;12025:9;12021:17;12012:6;11968:71;:::i;:::-;12049:72;12117:2;12106:9;12102:18;12093:6;12049:72;:::i;:::-;12131;12199:2;12188:9;12184:18;12175:6;12131:72;:::i;:::-;11922:288;;;;;;:::o;12216:210::-;;12341:2;12330:9;12326:18;12318:26;;12354:65;12416:1;12405:9;12401:17;12392:6;12354:65;:::i;:::-;12308:118;;;;:::o;12432:313::-;;12583:2;12572:9;12568:18;12560:26;;12632:9;12626:4;12622:20;12618:1;12607:9;12603:17;12596:47;12660:78;12733:4;12724:6;12660:78;:::i;:::-;12652:86;;12550:195;;;;:::o;12751:419::-;;12955:2;12944:9;12940:18;12932:26;;13004:9;12998:4;12994:20;12990:1;12979:9;12975:17;12968:47;13032:131;13158:4;13032:131;:::i;:::-;13024:139;;12922:248;;;:::o;13176:419::-;;13380:2;13369:9;13365:18;13357:26;;13429:9;13423:4;13419:20;13415:1;13404:9;13400:17;13393:47;13457:131;13583:4;13457:131;:::i;:::-;13449:139;;13347:248;;;:::o;13601:419::-;;13805:2;13794:9;13790:18;13782:26;;13854:9;13848:4;13844:20;13840:1;13829:9;13825:17;13818:47;13882:131;14008:4;13882:131;:::i;:::-;13874:139;;13772:248;;;:::o;14026:419::-;;14230:2;14219:9;14215:18;14207:26;;14279:9;14273:4;14269:20;14265:1;14254:9;14250:17;14243:47;14307:131;14433:4;14307:131;:::i;:::-;14299:139;;14197:248;;;:::o;14451:419::-;;14655:2;14644:9;14640:18;14632:26;;14704:9;14698:4;14694:20;14690:1;14679:9;14675:17;14668:47;14732:131;14858:4;14732:131;:::i;:::-;14724:139;;14622:248;;;:::o;14876:419::-;;15080:2;15069:9;15065:18;15057:26;;15129:9;15123:4;15119:20;15115:1;15104:9;15100:17;15093:47;15157:131;15283:4;15157:131;:::i;:::-;15149:139;;15047:248;;;:::o;15301:419::-;;15505:2;15494:9;15490:18;15482:26;;15554:9;15548:4;15544:20;15540:1;15529:9;15525:17;15518:47;15582:131;15708:4;15582:131;:::i;:::-;15574:139;;15472:248;;;:::o;15726:419::-;;15930:2;15919:9;15915:18;15907:26;;15979:9;15973:4;15969:20;15965:1;15954:9;15950:17;15943:47;16007:131;16133:4;16007:131;:::i;:::-;15999:139;;15897:248;;;:::o;16151:419::-;;16355:2;16344:9;16340:18;16332:26;;16404:9;16398:4;16394:20;16390:1;16379:9;16375:17;16368:47;16432:131;16558:4;16432:131;:::i;:::-;16424:139;;16322:248;;;:::o;16576:419::-;;16780:2;16769:9;16765:18;16757:26;;16829:9;16823:4;16819:20;16815:1;16804:9;16800:17;16793:47;16857:131;16983:4;16857:131;:::i;:::-;16849:139;;16747:248;;;:::o;17001:419::-;;17205:2;17194:9;17190:18;17182:26;;17254:9;17248:4;17244:20;17240:1;17229:9;17225:17;17218:47;17282:131;17408:4;17282:131;:::i;:::-;17274:139;;17172:248;;;:::o;17426:419::-;;17630:2;17619:9;17615:18;17607:26;;17679:9;17673:4;17669:20;17665:1;17654:9;17650:17;17643:47;17707:131;17833:4;17707:131;:::i;:::-;17699:139;;17597:248;;;:::o;17851:419::-;;18055:2;18044:9;18040:18;18032:26;;18104:9;18098:4;18094:20;18090:1;18079:9;18075:17;18068:47;18132:131;18258:4;18132:131;:::i;:::-;18124:139;;18022:248;;;:::o;18276:419::-;;18480:2;18469:9;18465:18;18457:26;;18529:9;18523:4;18519:20;18515:1;18504:9;18500:17;18493:47;18557:131;18683:4;18557:131;:::i;:::-;18549:139;;18447:248;;;:::o;18701:419::-;;18905:2;18894:9;18890:18;18882:26;;18954:9;18948:4;18944:20;18940:1;18929:9;18925:17;18918:47;18982:131;19108:4;18982:131;:::i;:::-;18974:139;;18872:248;;;:::o;19126:419::-;;19330:2;19319:9;19315:18;19307:26;;19379:9;19373:4;19369:20;19365:1;19354:9;19350:17;19343:47;19407:131;19533:4;19407:131;:::i;:::-;19399:139;;19297:248;;;:::o;19551:419::-;;19755:2;19744:9;19740:18;19732:26;;19804:9;19798:4;19794:20;19790:1;19779:9;19775:17;19768:47;19832:131;19958:4;19832:131;:::i;:::-;19824:139;;19722:248;;;:::o;19976:222::-;;20107:2;20096:9;20092:18;20084:26;;20120:71;20188:1;20177:9;20173:17;20164:6;20120:71;:::i;:::-;20074:124;;;;:::o;20204:332::-;;20363:2;20352:9;20348:18;20340:26;;20376:71;20444:1;20433:9;20429:17;20420:6;20376:71;:::i;:::-;20457:72;20525:2;20514:9;20510:18;20501:6;20457:72;:::i;:::-;20330:206;;;;;:::o;20542:214::-;;20669:2;20658:9;20654:18;20646:26;;20682:67;20746:1;20735:9;20731:17;20722:6;20682:67;:::i;:::-;20636:120;;;;:::o;20762:99::-;;20848:5;20842:12;20832:22;;20821:40;;;:::o;20867:169::-;;20985:6;20980:3;20973:19;21025:4;21020:3;21016:14;21001:29;;20963:73;;;;:::o;21042:305::-;;21101:20;21119:1;21101:20;:::i;:::-;21096:25;;21135:20;21153:1;21135:20;:::i;:::-;21130:25;;21289:1;21221:66;21217:74;21214:1;21211:81;21208:2;;;21295:18;;:::i;:::-;21208:2;21339:1;21336;21332:9;21325:16;;21086:261;;;;:::o;21353:185::-;;21410:20;21428:1;21410:20;:::i;:::-;21405:25;;21444:20;21462:1;21444:20;:::i;:::-;21439:25;;21483:1;21473:2;;21488:18;;:::i;:::-;21473:2;21530:1;21527;21523:9;21518:14;;21395:143;;;;:::o;21544:348::-;;21607:20;21625:1;21607:20;:::i;:::-;21602:25;;21641:20;21659:1;21641:20;:::i;:::-;21636:25;;21829:1;21761:66;21757:74;21754:1;21751:81;21746:1;21739:9;21732:17;21728:105;21725:2;;;21836:18;;:::i;:::-;21725:2;21884:1;21881;21877:9;21866:20;;21592:300;;;;:::o;21898:191::-;;21958:20;21976:1;21958:20;:::i;:::-;21953:25;;21992:20;22010:1;21992:20;:::i;:::-;21987:25;;22031:1;22028;22025:8;22022:2;;;22036:18;;:::i;:::-;22022:2;22081:1;22078;22074:9;22066:17;;21943:146;;;;:::o;22095:96::-;;22161:24;22179:5;22161:24;:::i;:::-;22150:35;;22140:51;;;:::o;22197:90::-;;22274:5;22267:13;22260:21;22249:32;;22239:48;;;:::o;22293:126::-;;22370:42;22363:5;22359:54;22348:65;;22338:81;;;:::o;22425:77::-;;22491:5;22480:16;;22470:32;;;:::o;22508:86::-;;22583:4;22576:5;22572:16;22561:27;;22551:43;;;:::o;22600:307::-;22668:1;22678:113;22692:6;22689:1;22686:13;22678:113;;;22777:1;22772:3;22768:11;22762:18;22758:1;22753:3;22749:11;22742:39;22714:2;22711:1;22707:10;22702:15;;22678:113;;;22809:6;22806:1;22803:13;22800:2;;;22889:1;22880:6;22875:3;22871:16;22864:27;22800:2;22649:258;;;;:::o;22913:320::-;;22994:1;22988:4;22984:12;22974:22;;23041:1;23035:4;23031:12;23062:18;23052:2;;23118:4;23110:6;23106:17;23096:27;;23052:2;23180;23172:6;23169:14;23149:18;23146:38;23143:2;;;23199:18;;:::i;:::-;23143:2;22964:269;;;;:::o;23239:180::-;23287:77;23284:1;23277:88;23384:4;23381:1;23374:15;23408:4;23405:1;23398:15;23425:180;23473:77;23470:1;23463:88;23570:4;23567:1;23560:15;23594:4;23591:1;23584:15;23611:180;23659:77;23656:1;23649:88;23756:4;23753:1;23746:15;23780:4;23777:1;23770:15;23797:102;;23889:2;23885:7;23880:2;23873:5;23869:14;23865:28;23855:38;;23845:54;;;:::o;23905:122::-;23978:24;23996:5;23978:24;:::i;:::-;23971:5;23968:35;23958:2;;24017:1;24014;24007:12;23958:2;23948:79;:::o;24033:116::-;24103:21;24118:5;24103:21;:::i;:::-;24096:5;24093:32;24083:2;;24139:1;24136;24129:12;24083:2;24073:76;:::o;24155:122::-;24228:24;24246:5;24228:24;:::i;:::-;24221:5;24218:35;24208:2;;24267:1;24264;24257:12;24208:2;24198:79;:::o
Swarm Source
ipfs://9406906b6e5c37cb4b0b6e7bcc07e94f89d07c43f1f1d7f967c2b93e380eda9d
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.