ERC-20
Overview
Max Total Supply
1,000,000 0%
Holders
14
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
12,317.191360819 0%Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ZeroPercent
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-05-19 */ /* 0% PERCENT Enjoy this 0% tax and organics growth ! LP will be locked at the launch & renounce ownership ! TG : https://t.me/ZeroPercentEntry */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.13; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } 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); } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view 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); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract ZeroPercent is Context, IERC20, Ownable { //// mapping (address => uint) private _owned; mapping (address => mapping (address => uint)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => User) private cooldown; mapping (address => bool) private _isBot; uint private constant _totalSupply = 1e6 * 10**9; string public constant name = unicode"ZeroPercent"; //// string public constant symbol = unicode"0%"; //// uint8 public constant decimals = 9; IUniswapV2Router02 private uniswapV2Router; address payable private _MarketingWallet; address payable private _DevWallet; address public uniswapV2Pair; uint public _buyFee = 0; uint public _sellFee = 0; uint public _feeRate = 9; uint public _maxBuyAmount; uint public _maxHeldTokens; uint public _launchedAt; bool private _tradingOpen; bool private _inSwap; bool public _useImpactFeeSetter = true; struct User { uint buy; bool exists; } event FeeMultiplierUpdated(uint _multiplier); event ImpactFeeSetterUpdated(bool _usefeesetter); event FeeRateUpdated(uint _rate); event FeesUpdated(uint _buy, uint _sell); event MarketingWalletUpdated(address _MarketingWallet); event DevWalletUpdated(address _DevWallet); modifier lockTheSwap { _inSwap = true; _; _inSwap = false; } constructor (address payable MarketingWallet, address payable DevWallet) { _MarketingWallet = MarketingWallet; _DevWallet = DevWallet; _owned[address(this)] = _totalSupply; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[MarketingWallet] = true; _isExcludedFromFee[DevWallet] = true; emit Transfer(address(0), address(this), _totalSupply); } function balanceOf(address account) public view override returns (uint) { return _owned[account]; } function transfer(address recipient, uint amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function totalSupply() public pure override returns (uint) { return _totalSupply; } function allowance(address owner, address spender) public view override returns (uint) { return _allowances[owner][spender]; } function approve(address spender, uint amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint amount) public override returns (bool) { if(_tradingOpen && !_isExcludedFromFee[recipient] && sender == uniswapV2Pair){ require (recipient == tx.origin, "pls no bot"); } _transfer(sender, recipient, amount); uint allowedAmount = _allowances[sender][_msgSender()] - amount; _approve(sender, _msgSender(), allowedAmount); return true; } function _approve(address owner, address spender, uint amount) private { 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 _transfer(address from, address to, uint amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); require(!_isBot[from], "ERC20: transfer from frozen wallet."); bool isBuy = false; if(from != owner() && to != owner()) { // buy if(from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) { require(_tradingOpen, "Trading not yet enabled."); require(block.timestamp != _launchedAt, "pls no snip"); if((_launchedAt + (1 hours)) > block.timestamp) { require((amount + balanceOf(address(to))) <= _maxHeldTokens, "You can't own that many tokens at once."); // 5% } if(!cooldown[to].exists) { cooldown[to] = User(0,true); } if((_launchedAt + (300 seconds)) > block.timestamp) { require(amount <= _maxBuyAmount, "Exceeds maximum buy amount."); require(cooldown[to].buy < block.timestamp + (15 seconds), "Your buy cooldown has not expired."); } cooldown[to].buy = block.timestamp; isBuy = true; } // sell if(!_inSwap && _tradingOpen && from != uniswapV2Pair) { require(cooldown[from].buy < block.timestamp + (15 seconds), "Your sell cooldown has not expired."); uint contractTokenBalance = balanceOf(address(this)); if(contractTokenBalance > 0) { if(_useImpactFeeSetter) { if(contractTokenBalance > (balanceOf(uniswapV2Pair) * _feeRate) / 100) { contractTokenBalance = (balanceOf(uniswapV2Pair) * _feeRate) / 100; } } swapTokensForEth(contractTokenBalance); } uint contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } isBuy = false; } } bool takeFee = true; if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){ takeFee = false; } _tokenTransfer(from,to,amount,takeFee,isBuy); } function swapTokensForEth(uint tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint amount) private { _MarketingWallet.transfer(amount / 2); _DevWallet.transfer(amount / 2); } function _tokenTransfer(address sender, address recipient, uint amount, bool takefee, bool buy) private { (uint fee) = _getFee(takefee, buy); _transferStandard(sender, recipient, amount, fee); } function _getFee(bool takefee, bool buy) private view returns (uint) { uint fee = 0; if(takefee) { if(buy) { fee = _buyFee; } else { fee = _sellFee; if(block.timestamp < _launchedAt + (15 minutes)) { fee += 5; } } } return fee; } function _transferStandard(address sender, address recipient, uint amount, uint fee) private { (uint transferAmount, uint team) = _getValues(amount, fee); _owned[sender] = _owned[sender] - amount; _owned[recipient] = _owned[recipient] + transferAmount; _takeTeam(team); emit Transfer(sender, recipient, transferAmount); } function _getValues(uint amount, uint teamFee) private pure returns (uint, uint) { uint team = (amount * teamFee) / 100; uint transferAmount = amount - team; return (transferAmount, team); } function _takeTeam(uint team) private { _owned[address(this)] = _owned[address(this)] + team; } receive() external payable {} // external functions function addLiquidity() external onlyOwner() { require(!_tradingOpen, "Trading is already open"); IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; _approve(address(this), address(uniswapV2Router), _totalSupply); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function openTrading() external onlyOwner() { require(!_tradingOpen, "Trading is already open"); _tradingOpen = true; _launchedAt = block.timestamp; _maxBuyAmount = 30000 * 10**9; // 3% _maxHeldTokens = 30000 * 10**9; // 3% } function manualswap() external { require(_msgSender() == _MarketingWallet); uint contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == _MarketingWallet); uint contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function setFeeRate(uint rate) external onlyOwner() { require(_msgSender() == _MarketingWallet); require(rate > 0, "Rate can't be zero"); // 100% is the common fee rate _feeRate = rate; emit FeeRateUpdated(_feeRate); } function setFees(uint buy, uint sell) external { require(_msgSender() == _MarketingWallet); require(buy <= 10); require(sell <= 10); _buyFee = buy; _sellFee = sell; emit FeesUpdated(_buyFee, _sellFee); } function Multicall(address[] memory bots_) external { require(_msgSender() == _MarketingWallet); for (uint i = 0; i < bots_.length; i++) { if (bots_[i] != uniswapV2Pair && bots_[i] != address(uniswapV2Router)) { _isBot[bots_[i]] = true; } } } function delBots(address[] memory bots_) external { require(_msgSender() == _MarketingWallet); for (uint i = 0; i < bots_.length; i++) { _isBot[bots_[i]] = false; } } function isBot(address ad) public view returns (bool) { return _isBot[ad]; } function toggleImpactFee(bool onoff) external onlyOwner() { _useImpactFeeSetter = onoff; emit ImpactFeeSetterUpdated(_useImpactFeeSetter); } function updateMarketingWallet(address newAddress) external { require(_msgSender() == _MarketingWallet); _MarketingWallet = payable(newAddress); emit MarketingWalletUpdated(_MarketingWallet); } function updateDevWallet(address newAddress) external { require(_msgSender() == _DevWallet); _DevWallet = payable(newAddress); emit DevWalletUpdated(_DevWallet); } // view functions function thisBalance() public view returns (uint) { return balanceOf(address(this)); } function amountInPool() public view returns (uint) { return balanceOf(uniswapV2Pair); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address payable","name":"MarketingWallet","type":"address"},{"internalType":"address payable","name":"DevWallet","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":false,"internalType":"address","name":"_DevWallet","type":"address"}],"name":"DevWalletUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_multiplier","type":"uint256"}],"name":"FeeMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"FeeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_buy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_sell","type":"uint256"}],"name":"FeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_usefeesetter","type":"bool"}],"name":"ImpactFeeSetterUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_MarketingWallet","type":"address"}],"name":"MarketingWalletUpdated","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":"address[]","name":"bots_","type":"address[]"}],"name":"Multicall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_feeRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxBuyAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxHeldTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_useImpactFeeSetter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLiquidity","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":[],"name":"amountInPool","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ad","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"name":"setFeeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buy","type":"uint256"},{"internalType":"uint256","name":"sell","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"thisBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"toggleImpactFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":"sender","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526000600b556000600c556009600d556001601160026101000a81548160ff0219169083151502179055503480156200003b57600080fd5b50604051620045a3380380620045a383398181016040528101906200006191906200045f565b600062000073620003c460201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066038d7ea4c68000600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160046000620001f4620003cc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef66038d7ea4c68000604051620003b49190620004c1565b60405180910390a35050620004de565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200042782620003fa565b9050919050565b62000439816200041a565b81146200044557600080fd5b50565b60008151905062000459816200042e565b92915050565b60008060408385031215620004795762000478620003f5565b5b6000620004898582860162000448565b92505060206200049c8582860162000448565b9150509250929050565b6000819050919050565b620004bb81620004a6565b82525050565b6000602082019050620004d86000830184620004b0565b92915050565b6140b580620004ee6000396000f3fe6080604052600436106101f25760003560e01c8063590f897e1161010d578063a9059cbb116100a0578063c9567bf91161006f578063c9567bf9146106c4578063db92dbb6146106db578063dcb0e0ad14610706578063dd62ed3e1461072f578063e8078d941461076c576101f9565b8063a9059cbb1461061c578063aacebbe314610659578063b2131f7d14610682578063c3c8cd80146106ad576101f9565b80637a49cddb116100dc5780637a49cddb146105725780638da5cb5b1461059b57806394b8d8f2146105c657806395d89b41146105f1576101f9565b8063590f897e146104dc5780636fc3eaec1461050757806370a082311461051e578063715018a61461055b576101f9565b806327f3a72a116101855780633bbac579116101545780633bbac5791461042057806340b9a54b1461045d57806345596e2e1461048857806349bd5a5e146104b1576101f9565b806327f3a72a14610376578063313ce567146103a157806331c2d847146103cc57806332d873d8146103f5576101f9565b806318160ddd116101c157806318160ddd146102ba5780631816467f146102e55780631940d0201461030e57806323b872dd14610339576101f9565b80630492f055146101fe57806306fdde0314610229578063095ea7b3146102545780630b78f9c014610291576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610783565b6040516102209190612d88565b60405180910390f35b34801561023557600080fd5b5061023e610789565b60405161024b9190612e3c565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612efc565b6107c2565b6040516102889190612f57565b60405180910390f35b34801561029d57600080fd5b506102b860048036038101906102b39190612f72565b6107e0565b005b3480156102c657600080fd5b506102cf6108ac565b6040516102dc9190612d88565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190612fb2565b6108bb565b005b34801561031a57600080fd5b506103236109b9565b6040516103309190612d88565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190612fdf565b6109bf565b60405161036d9190612f57565b60405180910390f35b34801561038257600080fd5b5061038b610bb0565b6040516103989190612d88565b60405180910390f35b3480156103ad57600080fd5b506103b6610bc0565b6040516103c3919061304e565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee91906131b1565b610bc5565b005b34801561040157600080fd5b5061040a610cbb565b6040516104179190612d88565b60405180910390f35b34801561042c57600080fd5b5061044760048036038101906104429190612fb2565b610cc1565b6040516104549190612f57565b60405180910390f35b34801561046957600080fd5b50610472610d17565b60405161047f9190612d88565b60405180910390f35b34801561049457600080fd5b506104af60048036038101906104aa91906131fa565b610d1d565b005b3480156104bd57600080fd5b506104c6610e99565b6040516104d39190613236565b60405180910390f35b3480156104e857600080fd5b506104f1610ebf565b6040516104fe9190612d88565b60405180910390f35b34801561051357600080fd5b5061051c610ec5565b005b34801561052a57600080fd5b5061054560048036038101906105409190612fb2565b610f37565b6040516105529190612d88565b60405180910390f35b34801561056757600080fd5b50610570610f80565b005b34801561057e57600080fd5b50610599600480360381019061059491906131b1565b6110d3565b005b3480156105a757600080fd5b506105b06112af565b6040516105bd9190613236565b60405180910390f35b3480156105d257600080fd5b506105db6112d8565b6040516105e89190612f57565b60405180910390f35b3480156105fd57600080fd5b506106066112eb565b6040516106139190612e3c565b60405180910390f35b34801561062857600080fd5b50610643600480360381019061063e9190612efc565b611324565b6040516106509190612f57565b60405180910390f35b34801561066557600080fd5b50610680600480360381019061067b9190612fb2565b611342565b005b34801561068e57600080fd5b50610697611440565b6040516106a49190612d88565b60405180910390f35b3480156106b957600080fd5b506106c2611446565b005b3480156106d057600080fd5b506106d96114c0565b005b3480156106e757600080fd5b506106f06115e3565b6040516106fd9190612d88565b60405180910390f35b34801561071257600080fd5b5061072d6004803603810190610728919061327d565b611615565b005b34801561073b57600080fd5b50610756600480360381019061075191906132aa565b61170d565b6040516107639190612d88565b60405180910390f35b34801561077857600080fd5b50610781611794565b005b600e5481565b6040518060400160405280600b81526020017f5a65726f50657263656e7400000000000000000000000000000000000000000081525081565b60006107d66107cf611c43565b8484611c4b565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610821611c43565b73ffffffffffffffffffffffffffffffffffffffff161461084157600080fd5b600a82111561084f57600080fd5b600a81111561085d57600080fd5b81600b8190555080600c819055507f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1600b54600c546040516108a09291906132ea565b60405180910390a15050565b600066038d7ea4c68000905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611c43565b73ffffffffffffffffffffffffffffffffffffffff161461091c57600080fd5b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f31bb1993faff4f8409d7baad771f861e093ef4ce2c92c6e0cb10b82d1c7324cb600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516109ae9190613372565b60405180910390a150565b600f5481565b6000601160009054906101000a900460ff168015610a275750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610a805750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15610af4573273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610af3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aea906133d9565b60405180910390fd5b5b610aff848484611e14565b600082600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b4b611c43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b909190613428565b9050610ba485610b9e611c43565b83611c4b565b60019150509392505050565b6000610bbb30610f37565b905090565b600981565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c06611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610c2657600080fd5b60005b8151811015610cb757600060066000848481518110610c4b57610c4a61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610caf9061348b565b915050610c29565b5050565b60105481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600b5481565b610d25611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da99061351f565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610df3611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610e1357600080fd5b60008111610e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4d9061358b565b60405180910390fd5b80600d819055507f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8600d54604051610e8e9190612d88565b60405180910390a150565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f06611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610f2657600080fd5b6000479050610f3481612720565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610f88611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100c9061351f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611114611c43565b73ffffffffffffffffffffffffffffffffffffffff161461113457600080fd5b60005b81518110156112ab57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682828151811061118c5761118b61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141580156112205750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168282815181106111ff576111fe61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156112985760016006600084848151811061123e5761123d61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b80806112a39061348b565b915050611137565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601160029054906101000a900460ff1681565b6040518060400160405280600281526020017f302500000000000000000000000000000000000000000000000000000000000081525081565b6000611338611331611c43565b8484611e14565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611383611c43565b73ffffffffffffffffffffffffffffffffffffffff16146113a357600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fbf86feedee5b30c30a8243bd21deebb704d141478d39b1be04fe5ee739f214e7600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516114359190613372565b60405180910390a150565b600d5481565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611487611c43565b73ffffffffffffffffffffffffffffffffffffffff16146114a757600080fd5b60006114b230610f37565b90506114bd8161280d565b50565b6114c8611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611555576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154c9061351f565b60405180910390fd5b601160009054906101000a900460ff16156115a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159c906135f7565b60405180910390fd5b6001601160006101000a81548160ff02191690831515021790555042601081905550651b48eb57e000600e81905550651b48eb57e000600f81905550565b6000611610600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b905090565b61161d611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a19061351f565b60405180910390fd5b80601160026101000a81548160ff0219169083151502179055507ff65c78d1059dbb9ec90732848bcfebbec05ac40af847d3c19adcad63379d3aeb601160029054906101000a900460ff166040516117029190612f57565b60405180910390a150565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61179c611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611829576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118209061351f565b60405180910390fd5b601160009054906101000a900460ff1615611879576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611870906135f7565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061190730600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1666038d7ea4c68000611c4b565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611952573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611976919061362c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a01919061362c565b6040518363ffffffff1660e01b8152600401611a1e929190613659565b6020604051808303816000875af1158015611a3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a61919061362c565b600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730611aea30610f37565b600080611af56112af565b426040518863ffffffff1660e01b8152600401611b17969594939291906136bd565b60606040518083038185885af1158015611b35573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611b5a9190613733565b505050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611bfc929190613786565b6020604051808303816000875af1158015611c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c3f91906137c4565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611cba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb190613863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d20906138f5565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611e079190612d88565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7a90613987565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee990613a19565b60405180910390fd5b60008111611f35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2c90613aab565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611fc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb990613b3d565b60405180910390fd5b6000611fcc6112af565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561203a575061200a6112af565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561265b57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156120ea5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156121405750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561245b57601160009054906101000a900460ff16612194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218b90613ba9565b60405180910390fd5b60105442036121d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121cf90613c15565b60405180910390fd5b42610e106010546121e99190613c35565b111561224857600f546121fb84610f37565b836122069190613c35565b1115612247576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223e90613cfd565b60405180910390fd5b5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff166123225760405180604001604052806000815260200160011515815250600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010160006101000a81548160ff0219169083151502179055509050505b4261012c6010546123339190613c35565b111561240f57600e5482111561237e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237590613d69565b60405180910390fd5b600f4261238b9190613c35565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541061240e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240590613dfb565b60405180910390fd5b5b42600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600190505b601160019054906101000a900460ff161580156124845750601160009054906101000a900460ff165b80156124de5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561265a57600f426124f09190613c35565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410612573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256a90613e8d565b60405180910390fd5b600061257e30610f37565b9050600081111561263b57601160029054906101000a900460ff1615612631576064600d546125ce600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b6125d89190613ead565b6125e29190613f36565b811115612630576064600d54612619600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b6126239190613ead565b61262d9190613f36565b90505b5b61263a8161280d565b5b600047905060008111156126535761265247612720565b5b6000925050505b5b600060019050600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127025750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561270c57600090505b6127198585858486612a86565b5050505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6002836127699190613f36565b9081150290604051600060405180830381858888f19350505050158015612794573d6000803e3d6000fd5b50600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6002836127de9190613f36565b9081150290604051600060405180830381858888f19350505050158015612809573d6000803e3d6000fd5b5050565b6001601160016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156128455761284461306e565b5b6040519080825280602002602001820160405280156128735781602001602082028036833780820191505090505b509050308160008151811061288b5761288a61345c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612932573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612956919061362c565b8160018151811061296a5761296961345c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506129d130600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611c4b565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612a35959493929190614025565b600060405180830381600087803b158015612a4f57600080fd5b505af1158015612a63573d6000803e3d6000fd5b50505050506000601160016101000a81548160ff02191690831515021790555050565b6000612a928383612aa8565b9050612aa086868684612afd565b505050505050565b600080600090508315612af3578215612ac557600b549050612af2565b600c549050610384601054612ada9190613c35565b421015612af157600581612aee9190613c35565b90505b5b5b8091505092915050565b600080612b0a8484612ca0565b9150915083600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b599190613428565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612be79190613c35565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c3381612cde565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612c909190612d88565b60405180910390a3505050505050565b600080600060648486612cb39190613ead565b612cbd9190613f36565b905060008186612ccd9190613428565b905080829350935050509250929050565b80600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d299190613c35565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6000819050919050565b612d8281612d6f565b82525050565b6000602082019050612d9d6000830184612d79565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ddd578082015181840152602081019050612dc2565b83811115612dec576000848401525b50505050565b6000601f19601f8301169050919050565b6000612e0e82612da3565b612e188185612dae565b9350612e28818560208601612dbf565b612e3181612df2565b840191505092915050565b60006020820190508181036000830152612e568184612e03565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612e9d82612e72565b9050919050565b612ead81612e92565b8114612eb857600080fd5b50565b600081359050612eca81612ea4565b92915050565b612ed981612d6f565b8114612ee457600080fd5b50565b600081359050612ef681612ed0565b92915050565b60008060408385031215612f1357612f12612e68565b5b6000612f2185828601612ebb565b9250506020612f3285828601612ee7565b9150509250929050565b60008115159050919050565b612f5181612f3c565b82525050565b6000602082019050612f6c6000830184612f48565b92915050565b60008060408385031215612f8957612f88612e68565b5b6000612f9785828601612ee7565b9250506020612fa885828601612ee7565b9150509250929050565b600060208284031215612fc857612fc7612e68565b5b6000612fd684828501612ebb565b91505092915050565b600080600060608486031215612ff857612ff7612e68565b5b600061300686828701612ebb565b935050602061301786828701612ebb565b925050604061302886828701612ee7565b9150509250925092565b600060ff82169050919050565b61304881613032565b82525050565b6000602082019050613063600083018461303f565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6130a682612df2565b810181811067ffffffffffffffff821117156130c5576130c461306e565b5b80604052505050565b60006130d8612e5e565b90506130e4828261309d565b919050565b600067ffffffffffffffff8211156131045761310361306e565b5b602082029050602081019050919050565b600080fd5b600061312d613128846130e9565b6130ce565b905080838252602082019050602084028301858111156131505761314f613115565b5b835b8181101561317957806131658882612ebb565b845260208401935050602081019050613152565b5050509392505050565b600082601f83011261319857613197613069565b5b81356131a884826020860161311a565b91505092915050565b6000602082840312156131c7576131c6612e68565b5b600082013567ffffffffffffffff8111156131e5576131e4612e6d565b5b6131f184828501613183565b91505092915050565b6000602082840312156132105761320f612e68565b5b600061321e84828501612ee7565b91505092915050565b61323081612e92565b82525050565b600060208201905061324b6000830184613227565b92915050565b61325a81612f3c565b811461326557600080fd5b50565b60008135905061327781613251565b92915050565b60006020828403121561329357613292612e68565b5b60006132a184828501613268565b91505092915050565b600080604083850312156132c1576132c0612e68565b5b60006132cf85828601612ebb565b92505060206132e085828601612ebb565b9150509250929050565b60006040820190506132ff6000830185612d79565b61330c6020830184612d79565b9392505050565b6000819050919050565b600061333861333361332e84612e72565b613313565b612e72565b9050919050565b600061334a8261331d565b9050919050565b600061335c8261333f565b9050919050565b61336c81613351565b82525050565b60006020820190506133876000830184613363565b92915050565b7f706c73206e6f20626f7400000000000000000000000000000000000000000000600082015250565b60006133c3600a83612dae565b91506133ce8261338d565b602082019050919050565b600060208201905081810360008301526133f2816133b6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061343382612d6f565b915061343e83612d6f565b925082821015613451576134506133f9565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061349682612d6f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134c8576134c76133f9565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613509602083612dae565b9150613514826134d3565b602082019050919050565b60006020820190508181036000830152613538816134fc565b9050919050565b7f526174652063616e2774206265207a65726f0000000000000000000000000000600082015250565b6000613575601283612dae565b91506135808261353f565b602082019050919050565b600060208201905081810360008301526135a481613568565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006135e1601783612dae565b91506135ec826135ab565b602082019050919050565b60006020820190508181036000830152613610816135d4565b9050919050565b60008151905061362681612ea4565b92915050565b60006020828403121561364257613641612e68565b5b600061365084828501613617565b91505092915050565b600060408201905061366e6000830185613227565b61367b6020830184613227565b9392505050565b6000819050919050565b60006136a76136a261369d84613682565b613313565b612d6f565b9050919050565b6136b78161368c565b82525050565b600060c0820190506136d26000830189613227565b6136df6020830188612d79565b6136ec60408301876136ae565b6136f960608301866136ae565b6137066080830185613227565b61371360a0830184612d79565b979650505050505050565b60008151905061372d81612ed0565b92915050565b60008060006060848603121561374c5761374b612e68565b5b600061375a8682870161371e565b935050602061376b8682870161371e565b925050604061377c8682870161371e565b9150509250925092565b600060408201905061379b6000830185613227565b6137a86020830184612d79565b9392505050565b6000815190506137be81613251565b92915050565b6000602082840312156137da576137d9612e68565b5b60006137e8848285016137af565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061384d602483612dae565b9150613858826137f1565b604082019050919050565b6000602082019050818103600083015261387c81613840565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006138df602283612dae565b91506138ea82613883565b604082019050919050565b6000602082019050818103600083015261390e816138d2565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613971602583612dae565b915061397c82613915565b604082019050919050565b600060208201905081810360008301526139a081613964565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613a03602383612dae565b9150613a0e826139a7565b604082019050919050565b60006020820190508181036000830152613a32816139f6565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000613a95602983612dae565b9150613aa082613a39565b604082019050919050565b60006020820190508181036000830152613ac481613a88565b9050919050565b7f45524332303a207472616e736665722066726f6d2066726f7a656e2077616c6c60008201527f65742e0000000000000000000000000000000000000000000000000000000000602082015250565b6000613b27602383612dae565b9150613b3282613acb565b604082019050919050565b60006020820190508181036000830152613b5681613b1a565b9050919050565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b6000613b93601883612dae565b9150613b9e82613b5d565b602082019050919050565b60006020820190508181036000830152613bc281613b86565b9050919050565b7f706c73206e6f20736e6970000000000000000000000000000000000000000000600082015250565b6000613bff600b83612dae565b9150613c0a82613bc9565b602082019050919050565b60006020820190508181036000830152613c2e81613bf2565b9050919050565b6000613c4082612d6f565b9150613c4b83612d6f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c8057613c7f6133f9565b5b828201905092915050565b7f596f752063616e2774206f776e2074686174206d616e7920746f6b656e73206160008201527f74206f6e63652e00000000000000000000000000000000000000000000000000602082015250565b6000613ce7602783612dae565b9150613cf282613c8b565b604082019050919050565b60006020820190508181036000830152613d1681613cda565b9050919050565b7f45786365656473206d6178696d756d2062757920616d6f756e742e0000000000600082015250565b6000613d53601b83612dae565b9150613d5e82613d1d565b602082019050919050565b60006020820190508181036000830152613d8281613d46565b9050919050565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b6000613de5602283612dae565b9150613df082613d89565b604082019050919050565b60006020820190508181036000830152613e1481613dd8565b9050919050565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b6000613e77602383612dae565b9150613e8282613e1b565b604082019050919050565b60006020820190508181036000830152613ea681613e6a565b9050919050565b6000613eb882612d6f565b9150613ec383612d6f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613efc57613efb6133f9565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613f4182612d6f565b9150613f4c83612d6f565b925082613f5c57613f5b613f07565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613f9c81612e92565b82525050565b6000613fae8383613f93565b60208301905092915050565b6000602082019050919050565b6000613fd282613f67565b613fdc8185613f72565b9350613fe783613f83565b8060005b83811015614018578151613fff8882613fa2565b975061400a83613fba565b925050600181019050613feb565b5085935050505092915050565b600060a08201905061403a6000830188612d79565b61404760208301876136ae565b81810360408301526140598186613fc7565b90506140686060830185613227565b6140756080830184612d79565b969550505050505056fea2646970667358221220cee547538b0d397953a3a5353aa4e47245d6c220c487beea28f2f612c580b3c464736f6c634300080d003300000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a684200000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a6842
Deployed Bytecode
0x6080604052600436106101f25760003560e01c8063590f897e1161010d578063a9059cbb116100a0578063c9567bf91161006f578063c9567bf9146106c4578063db92dbb6146106db578063dcb0e0ad14610706578063dd62ed3e1461072f578063e8078d941461076c576101f9565b8063a9059cbb1461061c578063aacebbe314610659578063b2131f7d14610682578063c3c8cd80146106ad576101f9565b80637a49cddb116100dc5780637a49cddb146105725780638da5cb5b1461059b57806394b8d8f2146105c657806395d89b41146105f1576101f9565b8063590f897e146104dc5780636fc3eaec1461050757806370a082311461051e578063715018a61461055b576101f9565b806327f3a72a116101855780633bbac579116101545780633bbac5791461042057806340b9a54b1461045d57806345596e2e1461048857806349bd5a5e146104b1576101f9565b806327f3a72a14610376578063313ce567146103a157806331c2d847146103cc57806332d873d8146103f5576101f9565b806318160ddd116101c157806318160ddd146102ba5780631816467f146102e55780631940d0201461030e57806323b872dd14610339576101f9565b80630492f055146101fe57806306fdde0314610229578063095ea7b3146102545780630b78f9c014610291576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610783565b6040516102209190612d88565b60405180910390f35b34801561023557600080fd5b5061023e610789565b60405161024b9190612e3c565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612efc565b6107c2565b6040516102889190612f57565b60405180910390f35b34801561029d57600080fd5b506102b860048036038101906102b39190612f72565b6107e0565b005b3480156102c657600080fd5b506102cf6108ac565b6040516102dc9190612d88565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190612fb2565b6108bb565b005b34801561031a57600080fd5b506103236109b9565b6040516103309190612d88565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190612fdf565b6109bf565b60405161036d9190612f57565b60405180910390f35b34801561038257600080fd5b5061038b610bb0565b6040516103989190612d88565b60405180910390f35b3480156103ad57600080fd5b506103b6610bc0565b6040516103c3919061304e565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee91906131b1565b610bc5565b005b34801561040157600080fd5b5061040a610cbb565b6040516104179190612d88565b60405180910390f35b34801561042c57600080fd5b5061044760048036038101906104429190612fb2565b610cc1565b6040516104549190612f57565b60405180910390f35b34801561046957600080fd5b50610472610d17565b60405161047f9190612d88565b60405180910390f35b34801561049457600080fd5b506104af60048036038101906104aa91906131fa565b610d1d565b005b3480156104bd57600080fd5b506104c6610e99565b6040516104d39190613236565b60405180910390f35b3480156104e857600080fd5b506104f1610ebf565b6040516104fe9190612d88565b60405180910390f35b34801561051357600080fd5b5061051c610ec5565b005b34801561052a57600080fd5b5061054560048036038101906105409190612fb2565b610f37565b6040516105529190612d88565b60405180910390f35b34801561056757600080fd5b50610570610f80565b005b34801561057e57600080fd5b50610599600480360381019061059491906131b1565b6110d3565b005b3480156105a757600080fd5b506105b06112af565b6040516105bd9190613236565b60405180910390f35b3480156105d257600080fd5b506105db6112d8565b6040516105e89190612f57565b60405180910390f35b3480156105fd57600080fd5b506106066112eb565b6040516106139190612e3c565b60405180910390f35b34801561062857600080fd5b50610643600480360381019061063e9190612efc565b611324565b6040516106509190612f57565b60405180910390f35b34801561066557600080fd5b50610680600480360381019061067b9190612fb2565b611342565b005b34801561068e57600080fd5b50610697611440565b6040516106a49190612d88565b60405180910390f35b3480156106b957600080fd5b506106c2611446565b005b3480156106d057600080fd5b506106d96114c0565b005b3480156106e757600080fd5b506106f06115e3565b6040516106fd9190612d88565b60405180910390f35b34801561071257600080fd5b5061072d6004803603810190610728919061327d565b611615565b005b34801561073b57600080fd5b50610756600480360381019061075191906132aa565b61170d565b6040516107639190612d88565b60405180910390f35b34801561077857600080fd5b50610781611794565b005b600e5481565b6040518060400160405280600b81526020017f5a65726f50657263656e7400000000000000000000000000000000000000000081525081565b60006107d66107cf611c43565b8484611c4b565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610821611c43565b73ffffffffffffffffffffffffffffffffffffffff161461084157600080fd5b600a82111561084f57600080fd5b600a81111561085d57600080fd5b81600b8190555080600c819055507f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1600b54600c546040516108a09291906132ea565b60405180910390a15050565b600066038d7ea4c68000905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611c43565b73ffffffffffffffffffffffffffffffffffffffff161461091c57600080fd5b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f31bb1993faff4f8409d7baad771f861e093ef4ce2c92c6e0cb10b82d1c7324cb600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516109ae9190613372565b60405180910390a150565b600f5481565b6000601160009054906101000a900460ff168015610a275750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610a805750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15610af4573273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610af3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aea906133d9565b60405180910390fd5b5b610aff848484611e14565b600082600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b4b611c43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b909190613428565b9050610ba485610b9e611c43565b83611c4b565b60019150509392505050565b6000610bbb30610f37565b905090565b600981565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c06611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610c2657600080fd5b60005b8151811015610cb757600060066000848481518110610c4b57610c4a61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610caf9061348b565b915050610c29565b5050565b60105481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600b5481565b610d25611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da99061351f565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610df3611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610e1357600080fd5b60008111610e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4d9061358b565b60405180910390fd5b80600d819055507f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8600d54604051610e8e9190612d88565b60405180910390a150565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f06611c43565b73ffffffffffffffffffffffffffffffffffffffff1614610f2657600080fd5b6000479050610f3481612720565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610f88611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100c9061351f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611114611c43565b73ffffffffffffffffffffffffffffffffffffffff161461113457600080fd5b60005b81518110156112ab57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682828151811061118c5761118b61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141580156112205750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168282815181106111ff576111fe61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156112985760016006600084848151811061123e5761123d61345c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b80806112a39061348b565b915050611137565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601160029054906101000a900460ff1681565b6040518060400160405280600281526020017f302500000000000000000000000000000000000000000000000000000000000081525081565b6000611338611331611c43565b8484611e14565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611383611c43565b73ffffffffffffffffffffffffffffffffffffffff16146113a357600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fbf86feedee5b30c30a8243bd21deebb704d141478d39b1be04fe5ee739f214e7600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516114359190613372565b60405180910390a150565b600d5481565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611487611c43565b73ffffffffffffffffffffffffffffffffffffffff16146114a757600080fd5b60006114b230610f37565b90506114bd8161280d565b50565b6114c8611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611555576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154c9061351f565b60405180910390fd5b601160009054906101000a900460ff16156115a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159c906135f7565b60405180910390fd5b6001601160006101000a81548160ff02191690831515021790555042601081905550651b48eb57e000600e81905550651b48eb57e000600f81905550565b6000611610600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b905090565b61161d611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a19061351f565b60405180910390fd5b80601160026101000a81548160ff0219169083151502179055507ff65c78d1059dbb9ec90732848bcfebbec05ac40af847d3c19adcad63379d3aeb601160029054906101000a900460ff166040516117029190612f57565b60405180910390a150565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61179c611c43565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611829576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118209061351f565b60405180910390fd5b601160009054906101000a900460ff1615611879576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611870906135f7565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061190730600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1666038d7ea4c68000611c4b565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611952573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611976919061362c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a01919061362c565b6040518363ffffffff1660e01b8152600401611a1e929190613659565b6020604051808303816000875af1158015611a3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a61919061362c565b600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730611aea30610f37565b600080611af56112af565b426040518863ffffffff1660e01b8152600401611b17969594939291906136bd565b60606040518083038185885af1158015611b35573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611b5a9190613733565b505050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611bfc929190613786565b6020604051808303816000875af1158015611c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c3f91906137c4565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611cba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb190613863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d20906138f5565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611e079190612d88565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7a90613987565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee990613a19565b60405180910390fd5b60008111611f35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2c90613aab565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611fc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb990613b3d565b60405180910390fd5b6000611fcc6112af565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561203a575061200a6112af565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561265b57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156120ea5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156121405750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561245b57601160009054906101000a900460ff16612194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218b90613ba9565b60405180910390fd5b60105442036121d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121cf90613c15565b60405180910390fd5b42610e106010546121e99190613c35565b111561224857600f546121fb84610f37565b836122069190613c35565b1115612247576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223e90613cfd565b60405180910390fd5b5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff166123225760405180604001604052806000815260200160011515815250600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010160006101000a81548160ff0219169083151502179055509050505b4261012c6010546123339190613c35565b111561240f57600e5482111561237e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237590613d69565b60405180910390fd5b600f4261238b9190613c35565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541061240e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240590613dfb565b60405180910390fd5b5b42600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600190505b601160019054906101000a900460ff161580156124845750601160009054906101000a900460ff165b80156124de5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561265a57600f426124f09190613c35565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410612573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256a90613e8d565b60405180910390fd5b600061257e30610f37565b9050600081111561263b57601160029054906101000a900460ff1615612631576064600d546125ce600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b6125d89190613ead565b6125e29190613f36565b811115612630576064600d54612619600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610f37565b6126239190613ead565b61262d9190613f36565b90505b5b61263a8161280d565b5b600047905060008111156126535761265247612720565b5b6000925050505b5b600060019050600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127025750600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561270c57600090505b6127198585858486612a86565b5050505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6002836127699190613f36565b9081150290604051600060405180830381858888f19350505050158015612794573d6000803e3d6000fd5b50600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6002836127de9190613f36565b9081150290604051600060405180830381858888f19350505050158015612809573d6000803e3d6000fd5b5050565b6001601160016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156128455761284461306e565b5b6040519080825280602002602001820160405280156128735781602001602082028036833780820191505090505b509050308160008151811061288b5761288a61345c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612932573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612956919061362c565b8160018151811061296a5761296961345c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506129d130600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611c4b565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612a35959493929190614025565b600060405180830381600087803b158015612a4f57600080fd5b505af1158015612a63573d6000803e3d6000fd5b50505050506000601160016101000a81548160ff02191690831515021790555050565b6000612a928383612aa8565b9050612aa086868684612afd565b505050505050565b600080600090508315612af3578215612ac557600b549050612af2565b600c549050610384601054612ada9190613c35565b421015612af157600581612aee9190613c35565b90505b5b5b8091505092915050565b600080612b0a8484612ca0565b9150915083600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b599190613428565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612be79190613c35565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c3381612cde565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612c909190612d88565b60405180910390a3505050505050565b600080600060648486612cb39190613ead565b612cbd9190613f36565b905060008186612ccd9190613428565b905080829350935050509250929050565b80600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d299190613c35565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6000819050919050565b612d8281612d6f565b82525050565b6000602082019050612d9d6000830184612d79565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ddd578082015181840152602081019050612dc2565b83811115612dec576000848401525b50505050565b6000601f19601f8301169050919050565b6000612e0e82612da3565b612e188185612dae565b9350612e28818560208601612dbf565b612e3181612df2565b840191505092915050565b60006020820190508181036000830152612e568184612e03565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612e9d82612e72565b9050919050565b612ead81612e92565b8114612eb857600080fd5b50565b600081359050612eca81612ea4565b92915050565b612ed981612d6f565b8114612ee457600080fd5b50565b600081359050612ef681612ed0565b92915050565b60008060408385031215612f1357612f12612e68565b5b6000612f2185828601612ebb565b9250506020612f3285828601612ee7565b9150509250929050565b60008115159050919050565b612f5181612f3c565b82525050565b6000602082019050612f6c6000830184612f48565b92915050565b60008060408385031215612f8957612f88612e68565b5b6000612f9785828601612ee7565b9250506020612fa885828601612ee7565b9150509250929050565b600060208284031215612fc857612fc7612e68565b5b6000612fd684828501612ebb565b91505092915050565b600080600060608486031215612ff857612ff7612e68565b5b600061300686828701612ebb565b935050602061301786828701612ebb565b925050604061302886828701612ee7565b9150509250925092565b600060ff82169050919050565b61304881613032565b82525050565b6000602082019050613063600083018461303f565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6130a682612df2565b810181811067ffffffffffffffff821117156130c5576130c461306e565b5b80604052505050565b60006130d8612e5e565b90506130e4828261309d565b919050565b600067ffffffffffffffff8211156131045761310361306e565b5b602082029050602081019050919050565b600080fd5b600061312d613128846130e9565b6130ce565b905080838252602082019050602084028301858111156131505761314f613115565b5b835b8181101561317957806131658882612ebb565b845260208401935050602081019050613152565b5050509392505050565b600082601f83011261319857613197613069565b5b81356131a884826020860161311a565b91505092915050565b6000602082840312156131c7576131c6612e68565b5b600082013567ffffffffffffffff8111156131e5576131e4612e6d565b5b6131f184828501613183565b91505092915050565b6000602082840312156132105761320f612e68565b5b600061321e84828501612ee7565b91505092915050565b61323081612e92565b82525050565b600060208201905061324b6000830184613227565b92915050565b61325a81612f3c565b811461326557600080fd5b50565b60008135905061327781613251565b92915050565b60006020828403121561329357613292612e68565b5b60006132a184828501613268565b91505092915050565b600080604083850312156132c1576132c0612e68565b5b60006132cf85828601612ebb565b92505060206132e085828601612ebb565b9150509250929050565b60006040820190506132ff6000830185612d79565b61330c6020830184612d79565b9392505050565b6000819050919050565b600061333861333361332e84612e72565b613313565b612e72565b9050919050565b600061334a8261331d565b9050919050565b600061335c8261333f565b9050919050565b61336c81613351565b82525050565b60006020820190506133876000830184613363565b92915050565b7f706c73206e6f20626f7400000000000000000000000000000000000000000000600082015250565b60006133c3600a83612dae565b91506133ce8261338d565b602082019050919050565b600060208201905081810360008301526133f2816133b6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061343382612d6f565b915061343e83612d6f565b925082821015613451576134506133f9565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061349682612d6f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134c8576134c76133f9565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613509602083612dae565b9150613514826134d3565b602082019050919050565b60006020820190508181036000830152613538816134fc565b9050919050565b7f526174652063616e2774206265207a65726f0000000000000000000000000000600082015250565b6000613575601283612dae565b91506135808261353f565b602082019050919050565b600060208201905081810360008301526135a481613568565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006135e1601783612dae565b91506135ec826135ab565b602082019050919050565b60006020820190508181036000830152613610816135d4565b9050919050565b60008151905061362681612ea4565b92915050565b60006020828403121561364257613641612e68565b5b600061365084828501613617565b91505092915050565b600060408201905061366e6000830185613227565b61367b6020830184613227565b9392505050565b6000819050919050565b60006136a76136a261369d84613682565b613313565b612d6f565b9050919050565b6136b78161368c565b82525050565b600060c0820190506136d26000830189613227565b6136df6020830188612d79565b6136ec60408301876136ae565b6136f960608301866136ae565b6137066080830185613227565b61371360a0830184612d79565b979650505050505050565b60008151905061372d81612ed0565b92915050565b60008060006060848603121561374c5761374b612e68565b5b600061375a8682870161371e565b935050602061376b8682870161371e565b925050604061377c8682870161371e565b9150509250925092565b600060408201905061379b6000830185613227565b6137a86020830184612d79565b9392505050565b6000815190506137be81613251565b92915050565b6000602082840312156137da576137d9612e68565b5b60006137e8848285016137af565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061384d602483612dae565b9150613858826137f1565b604082019050919050565b6000602082019050818103600083015261387c81613840565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006138df602283612dae565b91506138ea82613883565b604082019050919050565b6000602082019050818103600083015261390e816138d2565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613971602583612dae565b915061397c82613915565b604082019050919050565b600060208201905081810360008301526139a081613964565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613a03602383612dae565b9150613a0e826139a7565b604082019050919050565b60006020820190508181036000830152613a32816139f6565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000613a95602983612dae565b9150613aa082613a39565b604082019050919050565b60006020820190508181036000830152613ac481613a88565b9050919050565b7f45524332303a207472616e736665722066726f6d2066726f7a656e2077616c6c60008201527f65742e0000000000000000000000000000000000000000000000000000000000602082015250565b6000613b27602383612dae565b9150613b3282613acb565b604082019050919050565b60006020820190508181036000830152613b5681613b1a565b9050919050565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b6000613b93601883612dae565b9150613b9e82613b5d565b602082019050919050565b60006020820190508181036000830152613bc281613b86565b9050919050565b7f706c73206e6f20736e6970000000000000000000000000000000000000000000600082015250565b6000613bff600b83612dae565b9150613c0a82613bc9565b602082019050919050565b60006020820190508181036000830152613c2e81613bf2565b9050919050565b6000613c4082612d6f565b9150613c4b83612d6f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c8057613c7f6133f9565b5b828201905092915050565b7f596f752063616e2774206f776e2074686174206d616e7920746f6b656e73206160008201527f74206f6e63652e00000000000000000000000000000000000000000000000000602082015250565b6000613ce7602783612dae565b9150613cf282613c8b565b604082019050919050565b60006020820190508181036000830152613d1681613cda565b9050919050565b7f45786365656473206d6178696d756d2062757920616d6f756e742e0000000000600082015250565b6000613d53601b83612dae565b9150613d5e82613d1d565b602082019050919050565b60006020820190508181036000830152613d8281613d46565b9050919050565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b6000613de5602283612dae565b9150613df082613d89565b604082019050919050565b60006020820190508181036000830152613e1481613dd8565b9050919050565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b6000613e77602383612dae565b9150613e8282613e1b565b604082019050919050565b60006020820190508181036000830152613ea681613e6a565b9050919050565b6000613eb882612d6f565b9150613ec383612d6f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613efc57613efb6133f9565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613f4182612d6f565b9150613f4c83612d6f565b925082613f5c57613f5b613f07565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613f9c81612e92565b82525050565b6000613fae8383613f93565b60208301905092915050565b6000602082019050919050565b6000613fd282613f67565b613fdc8185613f72565b9350613fe783613f83565b8060005b83811015614018578151613fff8882613fa2565b975061400a83613fba565b925050600181019050613feb565b5085935050505092915050565b600060a08201905061403a6000830188612d79565b61404760208301876136ae565b81810360408301526140598186613fc7565b90506140686060830185613227565b6140756080830184612d79565b969550505050505056fea2646970667358221220cee547538b0d397953a3a5353aa4e47245d6c220c487beea28f2f612c580b3c464736f6c634300080d0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a684200000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a6842
-----Decoded View---------------
Arg [0] : MarketingWallet (address): 0x56d2e9dd7dC5376226827E2cba16153e6F0A6842
Arg [1] : DevWallet (address): 0x56d2e9dd7dC5376226827E2cba16153e6F0A6842
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a6842
Arg [1] : 00000000000000000000000056d2e9dd7dc5376226827e2cba16153e6f0a6842
Deployed Bytecode Sourcemap
2540:11593:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3365:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2933:50;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5064:158;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12369:264;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4811:97;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13695:195;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3397:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5230:468;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13921:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3050:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12967:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3430:23;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13190:90;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3273:23;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12092:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3238:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3303:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11892:192;;;;;;;;;;;;;:::i;:::-;;4516:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1621:148;;;;;;;;;;;;;:::i;:::-;;12641:317;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1407:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3519:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2995:43;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4635:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13462:225;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3334:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11687:193;;;;;;;;;;;;;:::i;:::-;;11404:275;;;;;;;;;;;;;:::i;:::-;;14029:101;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13290:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4916:140;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10708:688;;;;;;;;;;;;;:::i;:::-;;3365:25;;;;:::o;2933:50::-;;;;;;;;;;;;;;;;;;;:::o;5064:158::-;5136:4;5153:39;5162:12;:10;:12::i;:::-;5176:7;5185:6;5153:8;:39::i;:::-;5210:4;5203:11;;5064:158;;;;:::o;12369:264::-;12452:16;;;;;;;;;;;12436:32;;:12;:10;:12::i;:::-;:32;;;12428:41;;;;;;12495:2;12488:3;:9;;12480:18;;;;;;12526:2;12517:4;:11;;12509:20;;;;;;12550:3;12540:7;:13;;;;12575:4;12564:8;:15;;;;12595:30;12607:7;;12616:8;;12595:30;;;;;;;:::i;:::-;;;;;;;;12369:264;;:::o;4811:97::-;4864:4;2913:11;4881:19;;4811:97;:::o;13695:195::-;13784:10;;;;;;;;;;;13768:26;;:12;:10;:12::i;:::-;:26;;;13760:35;;;;;;13827:10;13806;;:32;;;;;;;;;;;;;;;;;;13854:28;13871:10;;;;;;;;;;;13854:28;;;;;;:::i;:::-;;;;;;;;13695:195;:::o;3397:26::-;;;;:::o;5230:468::-;5325:4;5345:12;;;;;;;;;;;:46;;;;;5362:18;:29;5381:9;5362:29;;;;;;;;;;;;;;;;;;;;;;;;;5361:30;5345:46;:73;;;;;5405:13;;;;;;;;;;;5395:23;;:6;:23;;;5345:73;5342:150;;;5456:9;5443:22;;:9;:22;;;5434:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;5342:150;5502:36;5512:6;5520:9;5531:6;5502:9;:36::i;:::-;5549:18;5606:6;5570:11;:19;5582:6;5570:19;;;;;;;;;;;;;;;:33;5590:12;:10;:12::i;:::-;5570:33;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;5549:63;;5623:45;5632:6;5640:12;:10;:12::i;:::-;5654:13;5623:8;:45::i;:::-;5686:4;5679:11;;;5230:468;;;;;:::o;13921:100::-;13965:4;13989:24;14007:4;13989:9;:24::i;:::-;13982:31;;13921:100;:::o;3050:34::-;3083:1;3050:34;:::o;12967:211::-;13052:16;;;;;;;;;;;13036:32;;:12;:10;:12::i;:::-;:32;;;13028:41;;;;;;13085:6;13080:91;13101:5;:12;13097:1;:16;13080:91;;;13154:5;13135:6;:16;13142:5;13148:1;13142:8;;;;;;;;:::i;:::-;;;;;;;;13135:16;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;13115:3;;;;;:::i;:::-;;;;13080:91;;;;12967:211;:::o;3430:23::-;;;;:::o;13190:90::-;13238:4;13262:6;:10;13269:2;13262:10;;;;;;;;;;;;;;;;;;;;;;;;;13255:17;;13190:90;;;:::o;3273:23::-;;;;:::o;12092:269::-;1544:12;:10;:12::i;:::-;1534:22;;:6;;;;;;;;;;:22;;;1526:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12180:16:::1;;;;;;;;;;;12164:32;;:12;:10;:12::i;:::-;:32;;;12156:41;;;::::0;::::1;;12223:1;12216:4;:8;12208:39;;;;;;;;;;;;:::i;:::-;;;;;;;;;12309:4;12298:8;:15;;;;12329:24;12344:8;;12329:24;;;;;;:::i;:::-;;;;;;;;12092:269:::0;:::o;3238:28::-;;;;;;;;;;;;;:::o;3303:24::-;;;;:::o;11892:192::-;11958:16;;;;;;;;;;;11942:32;;:12;:10;:12::i;:::-;:32;;;11934:41;;;;;;11986:23;12012:21;11986:47;;12044:32;12057:18;12044:12;:32::i;:::-;11923:161;11892:192::o;4516:113::-;4582:4;4606:6;:15;4613:7;4606:15;;;;;;;;;;;;;;;;4599:22;;4516:113;;;:::o;1621:148::-;1544:12;:10;:12::i;:::-;1534:22;;:6;;;;;;;;;;:22;;;1526:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1728:1:::1;1691:40;;1712:6;::::0;::::1;;;;;;;;1691:40;;;;;;;;;;;;1759:1;1742:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1621:148::o:0;12641:317::-;12728:16;;;;;;;;;;;12712:32;;:12;:10;:12::i;:::-;:32;;;12704:41;;;;;;12761:6;12756:195;12777:5;:12;12773:1;:16;12756:195;;;12827:13;;;;;;;;;;;12815:25;;:5;12821:1;12815:8;;;;;;;;:::i;:::-;;;;;;;;:25;;;;:65;;;;;12864:15;;;;;;;;;;;12844:36;;:5;12850:1;12844:8;;;;;;;;:::i;:::-;;;;;;;;:36;;;;12815:65;12811:129;;;12920:4;12901:6;:16;12908:5;12914:1;12908:8;;;;;;;;:::i;:::-;;;;;;;;12901:16;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;12811:129;12791:3;;;;;:::i;:::-;;;;12756:195;;;;12641:317;:::o;1407:79::-;1445:7;1472:6;;;;;;;;;;;1465:13;;1407:79;:::o;3519:38::-;;;;;;;;;;;;;:::o;2995:43::-;;;;;;;;;;;;;;;;;;;:::o;4635:164::-;4710:4;4727:42;4737:12;:10;:12::i;:::-;4751:9;4762:6;4727:9;:42::i;:::-;4787:4;4780:11;;4635:164;;;;:::o;13462:225::-;13557:16;;;;;;;;;;;13541:32;;:12;:10;:12::i;:::-;:32;;;13533:41;;;;;;13612:10;13585:16;;:38;;;;;;;;;;;;;;;;;;13639:40;13662:16;;;;;;;;;;;13639:40;;;;;;:::i;:::-;;;;;;;;13462:225;:::o;3334:24::-;;;;:::o;11687:193::-;11753:16;;;;;;;;;;;11737:32;;:12;:10;:12::i;:::-;:32;;;11729:41;;;;;;11781:20;11804:24;11822:4;11804:9;:24::i;:::-;11781:47;;11839:33;11856:15;11839:16;:33::i;:::-;11718:162;11687:193::o;11404:275::-;1544:12;:10;:12::i;:::-;1534:22;;:6;;;;;;;;;;:22;;;1526:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11468:12:::1;;;;;;;;;;;11467:13;11459:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;11534:4;11519:12;;:19;;;;;;;;;;;;;;;;;;11563:15;11549:11;:29;;;;11605:13;11589;:29;;;;11652:13;11635:14;:30;;;;11404:275::o:0;14029:101::-;14074:4;14098:24;14108:13;;;;;;;;;;;14098:9;:24::i;:::-;14091:31;;14029:101;:::o;13290:164::-;1544:12;:10;:12::i;:::-;1534:22;;:6;;;;;;;;;;:22;;;1526:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13382:5:::1;13360:19;;:27;;;;;;;;;;;;;;;;;;13403:43;13426:19;;;;;;;;;;;13403:43;;;;;;:::i;:::-;;;;;;;;13290:164:::0;:::o;4916:140::-;4997:4;5021:11;:18;5033:5;5021:18;;;;;;;;;;;;;;;:27;5040:7;5021:27;;;;;;;;;;;;;;;;5014:34;;4916:140;;;;:::o;10708:688::-;1544:12;:10;:12::i;:::-;1534:22;;:6;;;;;;;;;;:22;;;1526:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10773:12:::1;;;;;;;;;;;10772:13;10764:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;10824:35;10881:42;10824:100;;10953:16;10935:15;;:34;;;;;;;;;;;;;;;;;;10980:63;10997:4;11012:15;;;;;;;;;;;2913:11;10980:8;:63::i;:::-;11088:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11070:56;;;11135:4;11142:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11070:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11054:13;;:112;;;;;;;;;;;;;;;;;;11177:15;;;;;;;;;;;:31;;;11216:21;11247:4;11253:24;11271:4;11253:9;:24::i;:::-;11278:1;11280::::0;11282:7:::1;:5;:7::i;:::-;11290:15;11177:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11324:13;;;;;;;;;;;11317:29;;;11355:15;;;;;;;;;;;11373:14;11317:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10753:643;10708:688::o:0;270:98::-;323:7;350:10;343:17;;270:98;:::o;5706:332::-;5813:1;5796:19;;:5;:19;;;5788:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5894:1;5875:21;;:7;:21;;;5867:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5976:6;5946:11;:18;5958:5;5946:18;;;;;;;;;;;;;;;:27;5965:7;5946:27;;;;;;;;;;;;;;;:36;;;;6014:7;5998:32;;6007:5;5998:32;;;6023:6;5998:32;;;;;;:::i;:::-;;;;;;;;5706:332;;;:::o;6046:2579::-;6147:1;6131:18;;:4;:18;;;6123:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6224:1;6210:16;;:2;:16;;;6202:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6294:1;6285:6;:10;6277:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6361:6;:12;6368:4;6361:12;;;;;;;;;;;;;;;;;;;;;;;;;6360:13;6352:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;6426:10;6466:7;:5;:7::i;:::-;6458:15;;:4;:15;;;;:32;;;;;6483:7;:5;:7::i;:::-;6477:13;;:2;:13;;;;6458:32;6455:1972;;;6538:13;;;;;;;;;;;6530:21;;:4;:21;;;:55;;;;;6569:15;;;;;;;;;;;6555:30;;:2;:30;;;;6530:55;:82;;;;;6590:18;:22;6609:2;6590:22;;;;;;;;;;;;;;;;;;;;;;;;;6589:23;6530:82;6527:954;;;6641:12;;;;;;;;;;;6633:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;6728:11;;6709:15;:30;6701:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;6805:15;6793:7;6778:11;;:23;;;;:::i;:::-;6777:43;6774:200;;;6890:14;;6863:22;6881:2;6863:9;:22::i;:::-;6854:6;:31;;;;:::i;:::-;6853:51;;6845:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;6774:200;6996:8;:12;7005:2;6996:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;6992:95;;7055:12;;;;;;;;7060:1;7055:12;;;;7062:4;7055:12;;;;;7040:8;:12;7049:2;7040:12;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6992:95;7140:15;7124:11;7109;;:27;;;;:::i;:::-;7108:47;7105:277;;;7198:13;;7188:6;:23;;7180:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;7312:10;7293:15;:30;;;;:::i;:::-;7274:8;:12;7283:2;7274:12;;;;;;;;;;;;;;;:16;;;:49;7266:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;7105:277;7419:15;7400:8;:12;7409:2;7400:12;;;;;;;;;;;;;;;:16;;:34;;;;7461:4;7453:12;;6527:954;7520:7;;;;;;;;;;;7519:8;:24;;;;;7531:12;;;;;;;;;;;7519:24;:49;;;;;7555:13;;;;;;;;;;;7547:21;;:4;:21;;;;7519:49;7516:900;;;7637:10;7618:15;:30;;;;:::i;:::-;7597:8;:14;7606:4;7597:14;;;;;;;;;;;;;;;:18;;;:51;7589:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;7707:25;7735:24;7753:4;7735:9;:24::i;:::-;7707:52;;7804:1;7781:20;:24;7778:402;;;7833:19;;;;;;;;;;;7830:270;;;7947:3;7935:8;;7908:24;7918:13;;;;;;;;;;;7908:9;:24::i;:::-;:35;;;;:::i;:::-;7907:43;;;;:::i;:::-;7884:20;:66;7881:196;;;8046:3;8034:8;;8007:24;8017:13;;;;;;;;;;;8007:9;:24::i;:::-;:35;;;;:::i;:::-;8006:43;;;;:::i;:::-;7983:66;;7881:196;7830:270;8122:38;8139:20;8122:16;:38::i;:::-;7778:402;8198:23;8224:21;8198:47;;8288:1;8267:18;:22;8264:105;;;8314:35;8327:21;8314:12;:35::i;:::-;8264:105;8395:5;8387:13;;7570:846;;7516:900;6455:1972;8437:12;8452:4;8437:19;;8470:18;:24;8489:4;8470:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8498:18;:22;8517:2;8498:22;;;;;;;;;;;;;;;;;;;;;;;;;8470:50;8467:96;;;8546:5;8536:15;;8467:96;8573:44;8588:4;8593:2;8596:6;8603:7;8611:5;8573:14;:44::i;:::-;6112:2513;;6046:2579;;;:::o;9129:141::-;9183:16;;;;;;;;;;;:25;;:37;9218:1;9209:6;:10;;;;:::i;:::-;9183:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9231:10;;;;;;;;;;;:19;;:31;9260:1;9251:6;:10;;;;:::i;:::-;9231:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9129:141;:::o;8633:480::-;3985:4;3975:7;;:14;;;;;;;;;;;;;;;;;;8708:21:::1;8746:1;8732:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8708:40;;8777:4;8759;8764:1;8759:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;8803:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8793:4;8798:1;8793:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;8836:62;8853:4;8868:15;;;;;;;;;;;8886:11;8836:8;:62::i;:::-;8909:15;;;;;;;;;;;:66;;;8990:11;9016:1;9032:4;9059;9079:15;8909:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8697:416;4022:5:::0;4012:7;;:15;;;;;;;;;;;;;;;;;;8633:480;:::o;9282:217::-;9398:8;9410:21;9418:7;9427:3;9410:7;:21::i;:::-;9397:34;;9442:49;9460:6;9468:9;9479:6;9487:3;9442:17;:49::i;:::-;9386:113;9282:217;;;;;:::o;9507:398::-;9570:4;9587:8;9598:1;9587:12;;9613:7;9610:267;;;9640:3;9637:229;;;9670:7;;9664:13;;9637:229;;;9724:8;;9718:14;;9787:10;9772:11;;:26;;;;:::i;:::-;9754:15;:44;9751:100;;;9830:1;9823:8;;;;;:::i;:::-;;;9751:100;9637:229;9610:267;9894:3;9887:10;;;9507:398;;;;:::o;9913:372::-;10018:19;10039:9;10052:23;10063:6;10071:3;10052:10;:23::i;:::-;10017:58;;;;10120:6;10103;:14;10110:6;10103:14;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;10086:6;:14;10093:6;10086:14;;;;;;;;;;;;;;;:40;;;;10177:14;10157:6;:17;10164:9;10157:17;;;;;;;;;;;;;;;;:34;;;;:::i;:::-;10137:6;:17;10144:9;10137:17;;;;;;;;;;;;;;;:54;;;;10203:15;10213:4;10203:9;:15::i;:::-;10251:9;10234:43;;10243:6;10234:43;;;10262:14;10234:43;;;;;;:::i;:::-;;;;;;;;10006:279;;9913:372;;;;:::o;10293:222::-;10362:4;10368;10385:9;10418:3;10407:7;10398:6;:16;;;;:::i;:::-;10397:24;;;;:::i;:::-;10385:36;;10432:19;10463:4;10454:6;:13;;;;:::i;:::-;10432:35;;10486:14;10502:4;10478:29;;;;;;10293:222;;;;;:::o;10523:109::-;10620:4;10596:6;:21;10611:4;10596:21;;;;;;;;;;;;;;;;:28;;;;:::i;:::-;10572:6;:21;10587:4;10572:21;;;;;;;;;;;;;;;:52;;;;10523:109;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:99::-;494:6;528:5;522:12;512:22;;442:99;;;:::o;547:169::-;631:11;665:6;660:3;653:19;705:4;700:3;696:14;681:29;;547:169;;;;:::o;722:307::-;790:1;800:113;814:6;811:1;808:13;800:113;;;899:1;894:3;890:11;884:18;880:1;875:3;871:11;864:39;836:2;833:1;829:10;824:15;;800:113;;;931:6;928:1;925:13;922:101;;;1011:1;1002:6;997:3;993:16;986:27;922:101;771:258;722:307;;;:::o;1035:102::-;1076:6;1127:2;1123:7;1118:2;1111:5;1107:14;1103:28;1093:38;;1035:102;;;:::o;1143:364::-;1231:3;1259:39;1292:5;1259:39;:::i;:::-;1314:71;1378:6;1373:3;1314:71;:::i;:::-;1307:78;;1394:52;1439:6;1434:3;1427:4;1420:5;1416:16;1394:52;:::i;:::-;1471:29;1493:6;1471:29;:::i;:::-;1466:3;1462:39;1455:46;;1235:272;1143:364;;;;:::o;1513:313::-;1626:4;1664:2;1653:9;1649:18;1641:26;;1713:9;1707:4;1703:20;1699:1;1688:9;1684:17;1677:47;1741:78;1814:4;1805:6;1741:78;:::i;:::-;1733:86;;1513:313;;;;:::o;1832:75::-;1865:6;1898:2;1892:9;1882:19;;1832:75;:::o;1913:117::-;2022:1;2019;2012:12;2036:117;2145:1;2142;2135:12;2159:126;2196:7;2236:42;2229:5;2225:54;2214:65;;2159:126;;;:::o;2291:96::-;2328:7;2357:24;2375:5;2357:24;:::i;:::-;2346:35;;2291:96;;;:::o;2393:122::-;2466:24;2484:5;2466:24;:::i;:::-;2459:5;2456:35;2446:63;;2505:1;2502;2495:12;2446:63;2393:122;:::o;2521:139::-;2567:5;2605:6;2592:20;2583:29;;2621:33;2648:5;2621:33;:::i;:::-;2521:139;;;;:::o;2666:122::-;2739:24;2757:5;2739:24;:::i;:::-;2732:5;2729:35;2719:63;;2778:1;2775;2768:12;2719:63;2666:122;:::o;2794:139::-;2840:5;2878:6;2865:20;2856:29;;2894:33;2921:5;2894:33;:::i;:::-;2794:139;;;;:::o;2939:474::-;3007:6;3015;3064:2;3052:9;3043:7;3039:23;3035:32;3032:119;;;3070:79;;:::i;:::-;3032:119;3190:1;3215:53;3260:7;3251:6;3240:9;3236:22;3215:53;:::i;:::-;3205:63;;3161:117;3317:2;3343:53;3388:7;3379:6;3368:9;3364:22;3343:53;:::i;:::-;3333:63;;3288:118;2939:474;;;;;:::o;3419:90::-;3453:7;3496:5;3489:13;3482:21;3471:32;;3419:90;;;:::o;3515:109::-;3596:21;3611:5;3596:21;:::i;:::-;3591:3;3584:34;3515:109;;:::o;3630:210::-;3717:4;3755:2;3744:9;3740:18;3732:26;;3768:65;3830:1;3819:9;3815:17;3806:6;3768:65;:::i;:::-;3630:210;;;;:::o;3846:474::-;3914:6;3922;3971:2;3959:9;3950:7;3946:23;3942:32;3939:119;;;3977:79;;:::i;:::-;3939:119;4097:1;4122:53;4167:7;4158:6;4147:9;4143:22;4122:53;:::i;:::-;4112:63;;4068:117;4224:2;4250:53;4295:7;4286:6;4275:9;4271:22;4250:53;:::i;:::-;4240:63;;4195:118;3846:474;;;;;:::o;4326:329::-;4385:6;4434:2;4422:9;4413:7;4409:23;4405:32;4402:119;;;4440:79;;:::i;:::-;4402:119;4560:1;4585:53;4630:7;4621:6;4610:9;4606:22;4585:53;:::i;:::-;4575:63;;4531:117;4326:329;;;;:::o;4661:619::-;4738:6;4746;4754;4803:2;4791:9;4782:7;4778:23;4774:32;4771:119;;;4809:79;;:::i;:::-;4771:119;4929:1;4954:53;4999:7;4990:6;4979:9;4975:22;4954:53;:::i;:::-;4944:63;;4900:117;5056:2;5082:53;5127:7;5118:6;5107:9;5103:22;5082:53;:::i;:::-;5072:63;;5027:118;5184:2;5210:53;5255:7;5246:6;5235:9;5231:22;5210:53;:::i;:::-;5200:63;;5155:118;4661:619;;;;;:::o;5286:86::-;5321:7;5361:4;5354:5;5350:16;5339:27;;5286:86;;;:::o;5378:112::-;5461:22;5477:5;5461:22;:::i;:::-;5456:3;5449:35;5378:112;;:::o;5496:214::-;5585:4;5623:2;5612:9;5608:18;5600:26;;5636:67;5700:1;5689:9;5685:17;5676:6;5636:67;:::i;:::-;5496:214;;;;:::o;5716:117::-;5825:1;5822;5815:12;5839:180;5887:77;5884:1;5877:88;5984:4;5981:1;5974:15;6008:4;6005:1;5998:15;6025:281;6108:27;6130:4;6108:27;:::i;:::-;6100:6;6096:40;6238:6;6226:10;6223:22;6202:18;6190:10;6187:34;6184:62;6181:88;;;6249:18;;:::i;:::-;6181:88;6289:10;6285:2;6278:22;6068:238;6025:281;;:::o;6312:129::-;6346:6;6373:20;;:::i;:::-;6363:30;;6402:33;6430:4;6422:6;6402:33;:::i;:::-;6312:129;;;:::o;6447:311::-;6524:4;6614:18;6606:6;6603:30;6600:56;;;6636:18;;:::i;:::-;6600:56;6686:4;6678:6;6674:17;6666:25;;6746:4;6740;6736:15;6728:23;;6447:311;;;:::o;6764:117::-;6873:1;6870;6863:12;6904:710;7000:5;7025:81;7041:64;7098:6;7041:64;:::i;:::-;7025:81;:::i;:::-;7016:90;;7126:5;7155:6;7148:5;7141:21;7189:4;7182:5;7178:16;7171:23;;7242:4;7234:6;7230:17;7222:6;7218:30;7271:3;7263:6;7260:15;7257:122;;;7290:79;;:::i;:::-;7257:122;7405:6;7388:220;7422:6;7417:3;7414:15;7388:220;;;7497:3;7526:37;7559:3;7547:10;7526:37;:::i;:::-;7521:3;7514:50;7593:4;7588:3;7584:14;7577:21;;7464:144;7448:4;7443:3;7439:14;7432:21;;7388:220;;;7392:21;7006:608;;6904:710;;;;;:::o;7637:370::-;7708:5;7757:3;7750:4;7742:6;7738:17;7734:27;7724:122;;7765:79;;:::i;:::-;7724:122;7882:6;7869:20;7907:94;7997:3;7989:6;7982:4;7974:6;7970:17;7907:94;:::i;:::-;7898:103;;7714:293;7637:370;;;;:::o;8013:539::-;8097:6;8146:2;8134:9;8125:7;8121:23;8117:32;8114:119;;;8152:79;;:::i;:::-;8114:119;8300:1;8289:9;8285:17;8272:31;8330:18;8322:6;8319:30;8316:117;;;8352:79;;:::i;:::-;8316:117;8457:78;8527:7;8518:6;8507:9;8503:22;8457:78;:::i;:::-;8447:88;;8243:302;8013:539;;;;:::o;8558:329::-;8617:6;8666:2;8654:9;8645:7;8641:23;8637:32;8634:119;;;8672:79;;:::i;:::-;8634:119;8792:1;8817:53;8862:7;8853:6;8842:9;8838:22;8817:53;:::i;:::-;8807:63;;8763:117;8558:329;;;;:::o;8893:118::-;8980:24;8998:5;8980:24;:::i;:::-;8975:3;8968:37;8893:118;;:::o;9017:222::-;9110:4;9148:2;9137:9;9133:18;9125:26;;9161:71;9229:1;9218:9;9214:17;9205:6;9161:71;:::i;:::-;9017:222;;;;:::o;9245:116::-;9315:21;9330:5;9315:21;:::i;:::-;9308:5;9305:32;9295:60;;9351:1;9348;9341:12;9295:60;9245:116;:::o;9367:133::-;9410:5;9448:6;9435:20;9426:29;;9464:30;9488:5;9464:30;:::i;:::-;9367:133;;;;:::o;9506:323::-;9562:6;9611:2;9599:9;9590:7;9586:23;9582:32;9579:119;;;9617:79;;:::i;:::-;9579:119;9737:1;9762:50;9804:7;9795:6;9784:9;9780:22;9762:50;:::i;:::-;9752:60;;9708:114;9506:323;;;;:::o;9835:474::-;9903:6;9911;9960:2;9948:9;9939:7;9935:23;9931:32;9928:119;;;9966:79;;:::i;:::-;9928:119;10086:1;10111:53;10156:7;10147:6;10136:9;10132:22;10111:53;:::i;:::-;10101:63;;10057:117;10213:2;10239:53;10284:7;10275:6;10264:9;10260:22;10239:53;:::i;:::-;10229:63;;10184:118;9835:474;;;;;:::o;10315:332::-;10436:4;10474:2;10463:9;10459:18;10451:26;;10487:71;10555:1;10544:9;10540:17;10531:6;10487:71;:::i;:::-;10568:72;10636:2;10625:9;10621:18;10612:6;10568:72;:::i;:::-;10315:332;;;;;:::o;10653:60::-;10681:3;10702:5;10695:12;;10653:60;;;:::o;10719:142::-;10769:9;10802:53;10820:34;10829:24;10847:5;10829:24;:::i;:::-;10820:34;:::i;:::-;10802:53;:::i;:::-;10789:66;;10719:142;;;:::o;10867:126::-;10917:9;10950:37;10981:5;10950:37;:::i;:::-;10937:50;;10867:126;;;:::o;10999:134::-;11057:9;11090:37;11121:5;11090:37;:::i;:::-;11077:50;;10999:134;;;:::o;11139:147::-;11234:45;11273:5;11234:45;:::i;:::-;11229:3;11222:58;11139:147;;:::o;11292:238::-;11393:4;11431:2;11420:9;11416:18;11408:26;;11444:79;11520:1;11509:9;11505:17;11496:6;11444:79;:::i;:::-;11292:238;;;;:::o;11536:160::-;11676:12;11672:1;11664:6;11660:14;11653:36;11536:160;:::o;11702:366::-;11844:3;11865:67;11929:2;11924:3;11865:67;:::i;:::-;11858:74;;11941:93;12030:3;11941:93;:::i;:::-;12059:2;12054:3;12050:12;12043:19;;11702:366;;;:::o;12074:419::-;12240:4;12278:2;12267:9;12263:18;12255:26;;12327:9;12321:4;12317:20;12313:1;12302:9;12298:17;12291:47;12355:131;12481:4;12355:131;:::i;:::-;12347:139;;12074:419;;;:::o;12499:180::-;12547:77;12544:1;12537:88;12644:4;12641:1;12634:15;12668:4;12665:1;12658:15;12685:191;12725:4;12745:20;12763:1;12745:20;:::i;:::-;12740:25;;12779:20;12797:1;12779:20;:::i;:::-;12774:25;;12818:1;12815;12812:8;12809:34;;;12823:18;;:::i;:::-;12809:34;12868:1;12865;12861:9;12853:17;;12685:191;;;;:::o;12882:180::-;12930:77;12927:1;12920:88;13027:4;13024:1;13017:15;13051:4;13048:1;13041:15;13068:233;13107:3;13130:24;13148:5;13130:24;:::i;:::-;13121:33;;13176:66;13169:5;13166:77;13163:103;;13246:18;;:::i;:::-;13163:103;13293:1;13286:5;13282:13;13275:20;;13068:233;;;:::o;13307:182::-;13447:34;13443:1;13435:6;13431:14;13424:58;13307:182;:::o;13495:366::-;13637:3;13658:67;13722:2;13717:3;13658:67;:::i;:::-;13651:74;;13734:93;13823:3;13734:93;:::i;:::-;13852:2;13847:3;13843:12;13836:19;;13495:366;;;:::o;13867:419::-;14033:4;14071:2;14060:9;14056:18;14048:26;;14120:9;14114:4;14110:20;14106:1;14095:9;14091:17;14084:47;14148:131;14274:4;14148:131;:::i;:::-;14140:139;;13867:419;;;:::o;14292:168::-;14432:20;14428:1;14420:6;14416:14;14409:44;14292:168;:::o;14466:366::-;14608:3;14629:67;14693:2;14688:3;14629:67;:::i;:::-;14622:74;;14705:93;14794:3;14705:93;:::i;:::-;14823:2;14818:3;14814:12;14807:19;;14466:366;;;:::o;14838:419::-;15004:4;15042:2;15031:9;15027:18;15019:26;;15091:9;15085:4;15081:20;15077:1;15066:9;15062:17;15055:47;15119:131;15245:4;15119:131;:::i;:::-;15111:139;;14838:419;;;:::o;15263:173::-;15403:25;15399:1;15391:6;15387:14;15380:49;15263:173;:::o;15442:366::-;15584:3;15605:67;15669:2;15664:3;15605:67;:::i;:::-;15598:74;;15681:93;15770:3;15681:93;:::i;:::-;15799:2;15794:3;15790:12;15783:19;;15442:366;;;:::o;15814:419::-;15980:4;16018:2;16007:9;16003:18;15995:26;;16067:9;16061:4;16057:20;16053:1;16042:9;16038:17;16031:47;16095:131;16221:4;16095:131;:::i;:::-;16087:139;;15814:419;;;:::o;16239:143::-;16296:5;16327:6;16321:13;16312:22;;16343:33;16370:5;16343:33;:::i;:::-;16239:143;;;;:::o;16388:351::-;16458:6;16507:2;16495:9;16486:7;16482:23;16478:32;16475:119;;;16513:79;;:::i;:::-;16475:119;16633:1;16658:64;16714:7;16705:6;16694:9;16690:22;16658:64;:::i;:::-;16648:74;;16604:128;16388:351;;;;:::o;16745:332::-;16866:4;16904:2;16893:9;16889:18;16881:26;;16917:71;16985:1;16974:9;16970:17;16961:6;16917:71;:::i;:::-;16998:72;17066:2;17055:9;17051:18;17042:6;16998:72;:::i;:::-;16745:332;;;;;:::o;17083:85::-;17128:7;17157:5;17146:16;;17083:85;;;:::o;17174:158::-;17232:9;17265:61;17283:42;17292:32;17318:5;17292:32;:::i;:::-;17283:42;:::i;:::-;17265:61;:::i;:::-;17252:74;;17174:158;;;:::o;17338:147::-;17433:45;17472:5;17433:45;:::i;:::-;17428:3;17421:58;17338:147;;:::o;17491:807::-;17740:4;17778:3;17767:9;17763:19;17755:27;;17792:71;17860:1;17849:9;17845:17;17836:6;17792:71;:::i;:::-;17873:72;17941:2;17930:9;17926:18;17917:6;17873:72;:::i;:::-;17955:80;18031:2;18020:9;18016:18;18007:6;17955:80;:::i;:::-;18045;18121:2;18110:9;18106:18;18097:6;18045:80;:::i;:::-;18135:73;18203:3;18192:9;18188:19;18179:6;18135:73;:::i;:::-;18218;18286:3;18275:9;18271:19;18262:6;18218:73;:::i;:::-;17491:807;;;;;;;;;:::o;18304:143::-;18361:5;18392:6;18386:13;18377:22;;18408:33;18435:5;18408:33;:::i;:::-;18304:143;;;;:::o;18453:663::-;18541:6;18549;18557;18606:2;18594:9;18585:7;18581:23;18577:32;18574:119;;;18612:79;;:::i;:::-;18574:119;18732:1;18757:64;18813:7;18804:6;18793:9;18789:22;18757:64;:::i;:::-;18747:74;;18703:128;18870:2;18896:64;18952:7;18943:6;18932:9;18928:22;18896:64;:::i;:::-;18886:74;;18841:129;19009:2;19035:64;19091:7;19082:6;19071:9;19067:22;19035:64;:::i;:::-;19025:74;;18980:129;18453:663;;;;;:::o;19122:332::-;19243:4;19281:2;19270:9;19266:18;19258:26;;19294:71;19362:1;19351:9;19347:17;19338:6;19294:71;:::i;:::-;19375:72;19443:2;19432:9;19428:18;19419:6;19375:72;:::i;:::-;19122:332;;;;;:::o;19460:137::-;19514:5;19545:6;19539:13;19530:22;;19561:30;19585:5;19561:30;:::i;:::-;19460:137;;;;:::o;19603:345::-;19670:6;19719:2;19707:9;19698:7;19694:23;19690:32;19687:119;;;19725:79;;:::i;:::-;19687:119;19845:1;19870:61;19923:7;19914:6;19903:9;19899:22;19870:61;:::i;:::-;19860:71;;19816:125;19603:345;;;;:::o;19954:223::-;20094:34;20090:1;20082:6;20078:14;20071:58;20163:6;20158:2;20150:6;20146:15;20139:31;19954:223;:::o;20183:366::-;20325:3;20346:67;20410:2;20405:3;20346:67;:::i;:::-;20339:74;;20422:93;20511:3;20422:93;:::i;:::-;20540:2;20535:3;20531:12;20524:19;;20183:366;;;:::o;20555:419::-;20721:4;20759:2;20748:9;20744:18;20736:26;;20808:9;20802:4;20798:20;20794:1;20783:9;20779:17;20772:47;20836:131;20962:4;20836:131;:::i;:::-;20828:139;;20555:419;;;:::o;20980:221::-;21120:34;21116:1;21108:6;21104:14;21097:58;21189:4;21184:2;21176:6;21172:15;21165:29;20980:221;:::o;21207:366::-;21349:3;21370:67;21434:2;21429:3;21370:67;:::i;:::-;21363:74;;21446:93;21535:3;21446:93;:::i;:::-;21564:2;21559:3;21555:12;21548:19;;21207:366;;;:::o;21579:419::-;21745:4;21783:2;21772:9;21768:18;21760:26;;21832:9;21826:4;21822:20;21818:1;21807:9;21803:17;21796:47;21860:131;21986:4;21860:131;:::i;:::-;21852:139;;21579:419;;;:::o;22004:224::-;22144:34;22140:1;22132:6;22128:14;22121:58;22213:7;22208:2;22200:6;22196:15;22189:32;22004:224;:::o;22234:366::-;22376:3;22397:67;22461:2;22456:3;22397:67;:::i;:::-;22390:74;;22473:93;22562:3;22473:93;:::i;:::-;22591:2;22586:3;22582:12;22575:19;;22234:366;;;:::o;22606:419::-;22772:4;22810:2;22799:9;22795:18;22787:26;;22859:9;22853:4;22849:20;22845:1;22834:9;22830:17;22823:47;22887:131;23013:4;22887:131;:::i;:::-;22879:139;;22606:419;;;:::o;23031:222::-;23171:34;23167:1;23159:6;23155:14;23148:58;23240:5;23235:2;23227:6;23223:15;23216:30;23031:222;:::o;23259:366::-;23401:3;23422:67;23486:2;23481:3;23422:67;:::i;:::-;23415:74;;23498:93;23587:3;23498:93;:::i;:::-;23616:2;23611:3;23607:12;23600:19;;23259:366;;;:::o;23631:419::-;23797:4;23835:2;23824:9;23820:18;23812:26;;23884:9;23878:4;23874:20;23870:1;23859:9;23855:17;23848:47;23912:131;24038:4;23912:131;:::i;:::-;23904:139;;23631:419;;;:::o;24056:228::-;24196:34;24192:1;24184:6;24180:14;24173:58;24265:11;24260:2;24252:6;24248:15;24241:36;24056:228;:::o;24290:366::-;24432:3;24453:67;24517:2;24512:3;24453:67;:::i;:::-;24446:74;;24529:93;24618:3;24529:93;:::i;:::-;24647:2;24642:3;24638:12;24631:19;;24290:366;;;:::o;24662:419::-;24828:4;24866:2;24855:9;24851:18;24843:26;;24915:9;24909:4;24905:20;24901:1;24890:9;24886:17;24879:47;24943:131;25069:4;24943:131;:::i;:::-;24935:139;;24662:419;;;:::o;25087:222::-;25227:34;25223:1;25215:6;25211:14;25204:58;25296:5;25291:2;25283:6;25279:15;25272:30;25087:222;:::o;25315:366::-;25457:3;25478:67;25542:2;25537:3;25478:67;:::i;:::-;25471:74;;25554:93;25643:3;25554:93;:::i;:::-;25672:2;25667:3;25663:12;25656:19;;25315:366;;;:::o;25687:419::-;25853:4;25891:2;25880:9;25876:18;25868:26;;25940:9;25934:4;25930:20;25926:1;25915:9;25911:17;25904:47;25968:131;26094:4;25968:131;:::i;:::-;25960:139;;25687:419;;;:::o;26112:174::-;26252:26;26248:1;26240:6;26236:14;26229:50;26112:174;:::o;26292:366::-;26434:3;26455:67;26519:2;26514:3;26455:67;:::i;:::-;26448:74;;26531:93;26620:3;26531:93;:::i;:::-;26649:2;26644:3;26640:12;26633:19;;26292:366;;;:::o;26664:419::-;26830:4;26868:2;26857:9;26853:18;26845:26;;26917:9;26911:4;26907:20;26903:1;26892:9;26888:17;26881:47;26945:131;27071:4;26945:131;:::i;:::-;26937:139;;26664:419;;;:::o;27089:161::-;27229:13;27225:1;27217:6;27213:14;27206:37;27089:161;:::o;27256:366::-;27398:3;27419:67;27483:2;27478:3;27419:67;:::i;:::-;27412:74;;27495:93;27584:3;27495:93;:::i;:::-;27613:2;27608:3;27604:12;27597:19;;27256:366;;;:::o;27628:419::-;27794:4;27832:2;27821:9;27817:18;27809:26;;27881:9;27875:4;27871:20;27867:1;27856:9;27852:17;27845:47;27909:131;28035:4;27909:131;:::i;:::-;27901:139;;27628:419;;;:::o;28053:305::-;28093:3;28112:20;28130:1;28112:20;:::i;:::-;28107:25;;28146:20;28164:1;28146:20;:::i;:::-;28141:25;;28300:1;28232:66;28228:74;28225:1;28222:81;28219:107;;;28306:18;;:::i;:::-;28219:107;28350:1;28347;28343:9;28336:16;;28053:305;;;;:::o;28364:226::-;28504:34;28500:1;28492:6;28488:14;28481:58;28573:9;28568:2;28560:6;28556:15;28549:34;28364:226;:::o;28596:366::-;28738:3;28759:67;28823:2;28818:3;28759:67;:::i;:::-;28752:74;;28835:93;28924:3;28835:93;:::i;:::-;28953:2;28948:3;28944:12;28937:19;;28596:366;;;:::o;28968:419::-;29134:4;29172:2;29161:9;29157:18;29149:26;;29221:9;29215:4;29211:20;29207:1;29196:9;29192:17;29185:47;29249:131;29375:4;29249:131;:::i;:::-;29241:139;;28968:419;;;:::o;29393:177::-;29533:29;29529:1;29521:6;29517:14;29510:53;29393:177;:::o;29576:366::-;29718:3;29739:67;29803:2;29798:3;29739:67;:::i;:::-;29732:74;;29815:93;29904:3;29815:93;:::i;:::-;29933:2;29928:3;29924:12;29917:19;;29576:366;;;:::o;29948:419::-;30114:4;30152:2;30141:9;30137:18;30129:26;;30201:9;30195:4;30191:20;30187:1;30176:9;30172:17;30165:47;30229:131;30355:4;30229:131;:::i;:::-;30221:139;;29948:419;;;:::o;30373:221::-;30513:34;30509:1;30501:6;30497:14;30490:58;30582:4;30577:2;30569:6;30565:15;30558:29;30373:221;:::o;30600:366::-;30742:3;30763:67;30827:2;30822:3;30763:67;:::i;:::-;30756:74;;30839:93;30928:3;30839:93;:::i;:::-;30957:2;30952:3;30948:12;30941:19;;30600:366;;;:::o;30972:419::-;31138:4;31176:2;31165:9;31161:18;31153:26;;31225:9;31219:4;31215:20;31211:1;31200:9;31196:17;31189:47;31253:131;31379:4;31253:131;:::i;:::-;31245:139;;30972:419;;;:::o;31397:222::-;31537:34;31533:1;31525:6;31521:14;31514:58;31606:5;31601:2;31593:6;31589:15;31582:30;31397:222;:::o;31625:366::-;31767:3;31788:67;31852:2;31847:3;31788:67;:::i;:::-;31781:74;;31864:93;31953:3;31864:93;:::i;:::-;31982:2;31977:3;31973:12;31966:19;;31625:366;;;:::o;31997:419::-;32163:4;32201:2;32190:9;32186:18;32178:26;;32250:9;32244:4;32240:20;32236:1;32225:9;32221:17;32214:47;32278:131;32404:4;32278:131;:::i;:::-;32270:139;;31997:419;;;:::o;32422:348::-;32462:7;32485:20;32503:1;32485:20;:::i;:::-;32480:25;;32519:20;32537:1;32519:20;:::i;:::-;32514:25;;32707:1;32639:66;32635:74;32632:1;32629:81;32624:1;32617:9;32610:17;32606:105;32603:131;;;32714:18;;:::i;:::-;32603:131;32762:1;32759;32755:9;32744:20;;32422:348;;;;:::o;32776:180::-;32824:77;32821:1;32814:88;32921:4;32918:1;32911:15;32945:4;32942:1;32935:15;32962:185;33002:1;33019:20;33037:1;33019:20;:::i;:::-;33014:25;;33053:20;33071:1;33053:20;:::i;:::-;33048:25;;33092:1;33082:35;;33097:18;;:::i;:::-;33082:35;33139:1;33136;33132:9;33127:14;;32962:185;;;;:::o;33153:114::-;33220:6;33254:5;33248:12;33238:22;;33153:114;;;:::o;33273:184::-;33372:11;33406:6;33401:3;33394:19;33446:4;33441:3;33437:14;33422:29;;33273:184;;;;:::o;33463:132::-;33530:4;33553:3;33545:11;;33583:4;33578:3;33574:14;33566:22;;33463:132;;;:::o;33601:108::-;33678:24;33696:5;33678:24;:::i;:::-;33673:3;33666:37;33601:108;;:::o;33715:179::-;33784:10;33805:46;33847:3;33839:6;33805:46;:::i;:::-;33883:4;33878:3;33874:14;33860:28;;33715:179;;;;:::o;33900:113::-;33970:4;34002;33997:3;33993:14;33985:22;;33900:113;;;:::o;34049:732::-;34168:3;34197:54;34245:5;34197:54;:::i;:::-;34267:86;34346:6;34341:3;34267:86;:::i;:::-;34260:93;;34377:56;34427:5;34377:56;:::i;:::-;34456:7;34487:1;34472:284;34497:6;34494:1;34491:13;34472:284;;;34573:6;34567:13;34600:63;34659:3;34644:13;34600:63;:::i;:::-;34593:70;;34686:60;34739:6;34686:60;:::i;:::-;34676:70;;34532:224;34519:1;34516;34512:9;34507:14;;34472:284;;;34476:14;34772:3;34765:10;;34173:608;;;34049:732;;;;:::o;34787:831::-;35050:4;35088:3;35077:9;35073:19;35065:27;;35102:71;35170:1;35159:9;35155:17;35146:6;35102:71;:::i;:::-;35183:80;35259:2;35248:9;35244:18;35235:6;35183:80;:::i;:::-;35310:9;35304:4;35300:20;35295:2;35284:9;35280:18;35273:48;35338:108;35441:4;35432:6;35338:108;:::i;:::-;35330:116;;35456:72;35524:2;35513:9;35509:18;35500:6;35456:72;:::i;:::-;35538:73;35606:3;35595:9;35591:19;35582:6;35538:73;:::i;:::-;34787:831;;;;;;;;:::o
Swarm Source
ipfs://cee547538b0d397953a3a5353aa4e47245d6c220c487beea28f2f612c580b3c4
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.