ETH Price: $3,385.72 (-2.74%)
Gas: 1 Gwei

Token

CryptoCart V2 (CCv2)
 

Overview

Max Total Supply

1,000,000 CCv2

Holders

1,716

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000026369412 CCv2

Value
$0.00
0x2ab503888d7f020a5926deeae3037b1301fdb435
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CryptoCartV2

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-11-07
*/

/** 
	   _____                  _         _____           _    __      _____  
	  / ____|                | |       / ____|         | |   \ \    / /__ \ 
	 | |     _ __ _   _ _ __ | |_ ___ | |     __ _ _ __| |_   \ \  / /   ) |
	 | |    | '__| | | | '_ \| __/ _ \| |    / _` | '__| __|   \ \/ /   / / 
	 | |____| |  | |_| | |_) | || (_) | |___| (_| | |  | |_     \  /   / /_ 
	  \_____|_|   \__, | .__/ \__\___/ \_____\__,_|_|   \__|     \/   |____|
				   __/ | |                                                  
				  |___/|_|                                                  
                                                          
   #CryptoCart V2
   
   Great features:
   -2% fee auto moved to vault address

   1,000,000 total supply

*/


// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.9;

abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }
    
    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
	
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

abstract contract Editor is Context {
    address private _editor;

    event EditorRoleTransferred(address indexed previousEditor, address indexed newEditor);

    constructor () {
        address msgSender = _msgSender();
        _editor = msgSender;
        emit EditorRoleTransferred(address(0), msgSender);
    }
    
    function editors() public view virtual returns (address) {
        return _editor;
    }

    modifier onlyEditor() {
        require(editors() == _msgSender(), "caller is not the editors");
        _;
    }
	
    function transferEditorRole(address newEditor) public virtual onlyEditor {
        require(newEditor != address(0), "new editor is the zero address");
        emit EditorRoleTransferred(_editor, newEditor);
        _editor = newEditor;
    }
}

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 ERC20 is Context, IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor (string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
        _decimals = 18;
    }

    function name() public view virtual returns (string memory) {
        return _name;
    }

    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
	
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        _beforeTokenTransfer(sender, recipient, amount);
        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");
        _beforeTokenTransfer(address(0), account, amount);
        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }
	
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
	
    function _setupDecimals(uint8 decimals_) internal virtual {
        _decimals = decimals_;
    }
	
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }
}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router01 {
	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);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external;
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }
	
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction overflow");
        return a - b;
    }
	
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) return 0;
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }
	
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: division by zero");
        return a / b;
    }
	
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: modulo by zero");
        return a % b;
    }
	
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        return a - b;
    }
	
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        return a / b;
    }
	
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        return a % b;
    }
}

contract CryptoCartV2 is ERC20, Ownable, Editor {
    using SafeMath for uint256;
	
    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;

    bool private swapping;
	
	address public immutable vaultAddress;
	uint8 public immutable vaultFee = 200;
	
    mapping (address => bool) public _isExcludedFromFees;
    mapping (address => bool) public automatedMarketMakerPairs;
    
    event ExcludeFromFees(address indexed account, bool isExcluded);
    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);
    event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);
	
    constructor(address payable _vaultAddress) ERC20("CryptoCart V2", "CCv2") {
	    vaultAddress = _vaultAddress;
		
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
		
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair   = _uniswapV2Pair;
		
        _setAutomatedMarketMakerPair(_uniswapV2Pair, true);

        excludeFromFees(address(this), true);
		excludeFromFees(owner(), true);
        _mint(owner(), 1000000 * (10**18));
    }

    receive() external payable {
  	}

    function _setAutomatedMarketMakerPair(address pair, bool value) private {
        require(automatedMarketMakerPairs[pair] != value, "CCv2: Automated market maker pair is already set to that value");
        automatedMarketMakerPairs[pair] = value;
        emit SetAutomatedMarketMakerPair(pair, value);
    }
		
    function excludeFromFees(address account, bool excluded) public OwnerOrEditor{
        require(_isExcludedFromFees[account] != excluded, "CCv2: Account is already the value of 'excluded'");
        _isExcludedFromFees[account] = excluded;
        emit ExcludeFromFees(account, excluded);
    }
		
	function _transfer(address from, address to, uint256 amount) internal override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
		
		if(automatedMarketMakerPairs[to])
		{
			bool takeFee = true;
			
			if(_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
				takeFee = false;
			}
			
			if(takeFee) 
			{
				uint256 vfees = amount.div(10000).mul(vaultFee);
				if(vfees > 0) {
				   super._transfer(from, vaultAddress, vfees);
				}
				amount = amount.sub(vfees);
			}
        }
        super._transfer(from, to, amount);
    }
	
	modifier OwnerOrEditor() {
        require(_msgSender() == owner() || _msgSender() == editors(), "caller is not the owner or editor");
        _;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_vaultAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousEditor","type":"address"},{"indexed":true,"internalType":"address","name":"newEditor","type":"address"}],"name":"EditorRoleTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"","type":"address"}],"name":"_isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"editors","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newEditor","type":"address"}],"name":"transferEditorRole","outputs":[],"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":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vaultAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vaultFee","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

61010060405260c860ff1660e09060ff168152503480156200002057600080fd5b50604051620039f3380380620039f3833981810160405281019062000046919062000c17565b6040518060400160405280600d81526020017f43727970746f43617274205632000000000000000000000000000000000000008152506040518060400160405280600481526020017f43437632000000000000000000000000000000000000000000000000000000008152508160039080519060200190620000ca92919062000afd565b508060049080519060200190620000e392919062000afd565b506012600560006101000a81548160ff021916908360ff16021790555050506000620001146200052e60201b60201c565b905080600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000620001c56200052e60201b60201c565b905080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167feb06fff24919671058102c8574cfabeaaaa9bdb457630fad2d33420615fdcd3260405160405180910390a3508073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250506000737a250d5630b4cf539739df2c5dacb4c659f2488d905060008173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002fa57600080fd5b505afa1580156200030f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000335919062000c8e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308473ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039857600080fd5b505afa158015620003ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d3919062000c8e565b6040518363ffffffff1660e01b8152600401620003f292919062000cd1565b602060405180830381600087803b1580156200040d57600080fd5b505af115801562000422573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000448919062000c8e565b90508173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050620004c58160016200053660201b60201c565b620004d83060016200066d60201b60201c565b620004fa620004ec6200089260201b60201c565b60016200066d60201b60201c565b620005256200050e6200089260201b60201c565b69d3c21bcecceda1000000620008bc60201b60201c565b5050506200111e565b600033905090565b801515600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415620005cc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005c39062000d85565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6200067d6200089260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620006a36200052e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614806200070f5750620006d162000a6b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620006f76200052e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16145b62000751576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007489062000e1d565b60405180910390fd5b801515600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415620007e7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007de9062000eb5565b60405180910390fd5b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405162000886919062000ef4565b60405180910390a25050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200092f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009269062000f61565b60405180910390fd5b620009436000838362000a9560201b60201c565b6200095f8160025462000a9a60201b620012131790919060201c565b600281905550620009bd816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000a9a60201b620012131790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000a5f919062000f9e565b60405180910390a35050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b505050565b600080828462000aab919062000fea565b90508381101562000af3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000aea9062001097565b60405180910390fd5b8091505092915050565b82805462000b0b90620010e8565b90600052602060002090601f01602090048101928262000b2f576000855562000b7b565b82601f1062000b4a57805160ff191683800117855562000b7b565b8280016001018555821562000b7b579182015b8281111562000b7a57825182559160200191906001019062000b5d565b5b50905062000b8a919062000b8e565b5090565b5b8082111562000ba957600081600090555060010162000b8f565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bdf8262000bb2565b9050919050565b62000bf18162000bd2565b811462000bfd57600080fd5b50565b60008151905062000c118162000be6565b92915050565b60006020828403121562000c305762000c2f62000bad565b5b600062000c408482850162000c00565b91505092915050565b600062000c568262000bb2565b9050919050565b62000c688162000c49565b811462000c7457600080fd5b50565b60008151905062000c888162000c5d565b92915050565b60006020828403121562000ca75762000ca662000bad565b5b600062000cb78482850162000c77565b91505092915050565b62000ccb8162000c49565b82525050565b600060408201905062000ce8600083018562000cc0565b62000cf7602083018462000cc0565b9392505050565b600082825260208201905092915050565b7f434376323a204175746f6d61746564206d61726b6574206d616b65722070616960008201527f7220697320616c72656164792073657420746f20746861742076616c75650000602082015250565b600062000d6d603e8362000cfe565b915062000d7a8262000d0f565b604082019050919050565b6000602082019050818103600083015262000da08162000d5e565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572206f7220656469746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600062000e0560218362000cfe565b915062000e128262000da7565b604082019050919050565b6000602082019050818103600083015262000e388162000df6565b9050919050565b7f434376323a204163636f756e7420697320616c7265616479207468652076616c60008201527f7565206f6620276578636c756465642700000000000000000000000000000000602082015250565b600062000e9d60308362000cfe565b915062000eaa8262000e3f565b604082019050919050565b6000602082019050818103600083015262000ed08162000e8e565b9050919050565b60008115159050919050565b62000eee8162000ed7565b82525050565b600060208201905062000f0b600083018462000ee3565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000f49601f8362000cfe565b915062000f568262000f11565b602082019050919050565b6000602082019050818103600083015262000f7c8162000f3a565b9050919050565b6000819050919050565b62000f988162000f83565b82525050565b600060208201905062000fb5600083018462000f8d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000ff78262000f83565b9150620010048362000f83565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200103c576200103b62000fbb565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006200107f601b8362000cfe565b91506200108c8262001047565b602082019050919050565b60006020820190508181036000830152620010b28162001070565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200110157607f821691505b60208210811415620011185762001117620010b9565b5b50919050565b60805160a05160c05160e05161288d62001166600039600081816105b7015261163401526000818161085c015261168a015260006108800152600061068b015261288d6000f3fe6080604052600436106101445760003560e01c80636c1282ec116100b6578063a9059cbb1161006f578063a9059cbb1461046f578063b62496f5146104ac578063c0246668146104e9578063dd62ed3e14610512578063e0bf7fd11461054f578063f2fde38b1461058c5761014b565b80636c1282ec1461035f57806370a0823114610388578063715018a6146103c55780638da5cb5b146103dc57806395d89b4114610407578063a457c2d7146104325761014b565b806323b872dd1161010857806323b872dd14610239578063313ce5671461027657806339509351146102a1578063430bf08a146102de57806349bd5a5e1461030957806362886459146103345761014b565b806301ac145b1461015057806306fdde031461017b578063095ea7b3146101a65780631694505e146101e357806318160ddd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105b5565b6040516101729190611b19565b60405180910390f35b34801561018757600080fd5b506101906105d9565b60405161019d9190611bcd565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c89190611c88565b61066b565b6040516101da9190611ce3565b60405180910390f35b3480156101ef57600080fd5b506101f8610689565b6040516102059190611d5d565b60405180910390f35b34801561021a57600080fd5b506102236106ad565b6040516102309190611d87565b60405180910390f35b34801561024557600080fd5b50610260600480360381019061025b9190611da2565b6106b7565b60405161026d9190611ce3565b60405180910390f35b34801561028257600080fd5b5061028b610790565b6040516102989190611b19565b60405180910390f35b3480156102ad57600080fd5b506102c860048036038101906102c39190611c88565b6107a7565b6040516102d59190611ce3565b60405180910390f35b3480156102ea57600080fd5b506102f361085a565b6040516103009190611e04565b60405180910390f35b34801561031557600080fd5b5061031e61087e565b60405161032b9190611e04565b60405180910390f35b34801561034057600080fd5b506103496108a2565b6040516103569190611e04565b60405180910390f35b34801561036b57600080fd5b5061038660048036038101906103819190611e1f565b6108cc565b005b34801561039457600080fd5b506103af60048036038101906103aa9190611e1f565b610a78565b6040516103bc9190611d87565b60405180910390f35b3480156103d157600080fd5b506103da610ac0565b005b3480156103e857600080fd5b506103f1610bfd565b6040516103fe9190611e04565b60405180910390f35b34801561041357600080fd5b5061041c610c27565b6040516104299190611bcd565b60405180910390f35b34801561043e57600080fd5b5061045960048036038101906104549190611c88565b610cb9565b6040516104669190611ce3565b60405180910390f35b34801561047b57600080fd5b5061049660048036038101906104919190611c88565b610d86565b6040516104a39190611ce3565b60405180910390f35b3480156104b857600080fd5b506104d360048036038101906104ce9190611e1f565b610da4565b6040516104e09190611ce3565b60405180910390f35b3480156104f557600080fd5b50610510600480360381019061050b9190611e78565b610dc4565b005b34801561051e57600080fd5b5061053960048036038101906105349190611eb8565b610fc0565b6040516105469190611d87565b60405180910390f35b34801561055b57600080fd5b5061057660048036038101906105719190611e1f565b611047565b6040516105839190611ce3565b60405180910390f35b34801561059857600080fd5b506105b360048036038101906105ae9190611e1f565b611067565b005b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105e890611f27565b80601f016020809104026020016040519081016040528092919081815260200182805461061490611f27565b80156106615780601f1061063657610100808354040283529160200191610661565b820191906000526020600020905b81548152906001019060200180831161064457829003601f168201915b5050505050905090565b600061067f610678611271565b8484611279565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b60006106c4848484611444565b610785846106d0611271565b6107808560405180606001604052806028815260200161280b60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610736611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b611279565b600190509392505050565b6000600560009054906101000a900460ff16905090565b60006108506107b4611271565b8461084b85600160006107c5611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121390919063ffffffff16565b611279565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6108d4611271565b73ffffffffffffffffffffffffffffffffffffffff166108f26108a2565b73ffffffffffffffffffffffffffffffffffffffff1614610948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093f90611fa5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156109b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109af90612011565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167feb06fff24919671058102c8574cfabeaaaa9bdb457630fad2d33420615fdcd3260405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ac8611271565b73ffffffffffffffffffffffffffffffffffffffff16610ae6610bfd565b73ffffffffffffffffffffffffffffffffffffffff1614610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b339061207d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610c3690611f27565b80601f0160208091040260200160405190810160405280929190818152602001828054610c6290611f27565b8015610caf5780601f10610c8457610100808354040283529160200191610caf565b820191906000526020600020905b815481529060010190602001808311610c9257829003601f168201915b5050505050905090565b6000610d7c610cc6611271565b84610d77856040518060600160405280602581526020016128336025913960016000610cf0611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b611279565b6001905092915050565b6000610d9a610d93611271565b8484611444565b6001905092915050565b60086020528060005260406000206000915054906101000a900460ff1681565b610dcc610bfd565b73ffffffffffffffffffffffffffffffffffffffff16610dea611271565b73ffffffffffffffffffffffffffffffffffffffff161480610e455750610e0f6108a2565b73ffffffffffffffffffffffffffffffffffffffff16610e2d611271565b73ffffffffffffffffffffffffffffffffffffffff16145b610e84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7b9061210f565b60405180910390fd5b801515600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610f17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0e906121a1565b60405180910390fd5b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051610fb49190611ce3565b60405180910390a25050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b61106f611271565b73ffffffffffffffffffffffffffffffffffffffff1661108d610bfd565b73ffffffffffffffffffffffffffffffffffffffff16146110e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110da9061207d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114a90612233565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082846112229190612282565b905083811015611267576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125e90612324565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e0906123b6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611359576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135090612448565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114379190611d87565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906124da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b9061256c565b60405180910390fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116c957600060019050600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061161d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561162757600090505b80156116c75760006116797f000000000000000000000000000000000000000000000000000000000000000060ff1661166b6127108661173790919063ffffffff16565b61178f90919063ffffffff16565b905060008111156116b0576116af857f00000000000000000000000000000000000000000000000000000000000000008361180a565b5b6116c38184611a9f90919063ffffffff16565b9250505b505b6116d483838361180a565b505050565b6000838311158290611721576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117189190611bcd565b60405180910390fd5b50828461172e919061258c565b90509392505050565b600080821161177b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117729061260c565b60405180910390fd5b8183611787919061265b565b905092915050565b6000808314156117a25760009050611804565b600082846117b0919061268c565b90508284826117bf919061265b565b146117ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f690612758565b60405180910390fd5b809150505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561187a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611871906124da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e19061256c565b60405180910390fd5b6118f5838383611af8565b611960816040518060600160405280602681526020016127e5602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119f3816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121390919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a929190611d87565b60405180910390a3505050565b600082821115611ae4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adb906127c4565b60405180910390fd5b8183611af0919061258c565b905092915050565b505050565b600060ff82169050919050565b611b1381611afd565b82525050565b6000602082019050611b2e6000830184611b0a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611b6e578082015181840152602081019050611b53565b83811115611b7d576000848401525b50505050565b6000601f19601f8301169050919050565b6000611b9f82611b34565b611ba98185611b3f565b9350611bb9818560208601611b50565b611bc281611b83565b840191505092915050565b60006020820190508181036000830152611be78184611b94565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c1f82611bf4565b9050919050565b611c2f81611c14565b8114611c3a57600080fd5b50565b600081359050611c4c81611c26565b92915050565b6000819050919050565b611c6581611c52565b8114611c7057600080fd5b50565b600081359050611c8281611c5c565b92915050565b60008060408385031215611c9f57611c9e611bef565b5b6000611cad85828601611c3d565b9250506020611cbe85828601611c73565b9150509250929050565b60008115159050919050565b611cdd81611cc8565b82525050565b6000602082019050611cf86000830184611cd4565b92915050565b6000819050919050565b6000611d23611d1e611d1984611bf4565b611cfe565b611bf4565b9050919050565b6000611d3582611d08565b9050919050565b6000611d4782611d2a565b9050919050565b611d5781611d3c565b82525050565b6000602082019050611d726000830184611d4e565b92915050565b611d8181611c52565b82525050565b6000602082019050611d9c6000830184611d78565b92915050565b600080600060608486031215611dbb57611dba611bef565b5b6000611dc986828701611c3d565b9350506020611dda86828701611c3d565b9250506040611deb86828701611c73565b9150509250925092565b611dfe81611c14565b82525050565b6000602082019050611e196000830184611df5565b92915050565b600060208284031215611e3557611e34611bef565b5b6000611e4384828501611c3d565b91505092915050565b611e5581611cc8565b8114611e6057600080fd5b50565b600081359050611e7281611e4c565b92915050565b60008060408385031215611e8f57611e8e611bef565b5b6000611e9d85828601611c3d565b9250506020611eae85828601611e63565b9150509250929050565b60008060408385031215611ecf57611ece611bef565b5b6000611edd85828601611c3d565b9250506020611eee85828601611c3d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611f3f57607f821691505b60208210811415611f5357611f52611ef8565b5b50919050565b7f63616c6c6572206973206e6f742074686520656469746f727300000000000000600082015250565b6000611f8f601983611b3f565b9150611f9a82611f59565b602082019050919050565b60006020820190508181036000830152611fbe81611f82565b9050919050565b7f6e657720656469746f7220697320746865207a65726f20616464726573730000600082015250565b6000611ffb601e83611b3f565b915061200682611fc5565b602082019050919050565b6000602082019050818103600083015261202a81611fee565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612067602083611b3f565b915061207282612031565b602082019050919050565b600060208201905081810360008301526120968161205a565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572206f7220656469746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006120f9602183611b3f565b91506121048261209d565b604082019050919050565b60006020820190508181036000830152612128816120ec565b9050919050565b7f434376323a204163636f756e7420697320616c7265616479207468652076616c60008201527f7565206f6620276578636c756465642700000000000000000000000000000000602082015250565b600061218b603083611b3f565b91506121968261212f565b604082019050919050565b600060208201905081810360008301526121ba8161217e565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061221d602683611b3f565b9150612228826121c1565b604082019050919050565b6000602082019050818103600083015261224c81612210565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061228d82611c52565b915061229883611c52565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122cd576122cc612253565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061230e601b83611b3f565b9150612319826122d8565b602082019050919050565b6000602082019050818103600083015261233d81612301565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006123a0602483611b3f565b91506123ab82612344565b604082019050919050565b600060208201905081810360008301526123cf81612393565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612432602283611b3f565b915061243d826123d6565b604082019050919050565b6000602082019050818103600083015261246181612425565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006124c4602583611b3f565b91506124cf82612468565b604082019050919050565b600060208201905081810360008301526124f3816124b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612556602383611b3f565b9150612561826124fa565b604082019050919050565b6000602082019050818103600083015261258581612549565b9050919050565b600061259782611c52565b91506125a283611c52565b9250828210156125b5576125b4612253565b5b828203905092915050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b60006125f6601a83611b3f565b9150612601826125c0565b602082019050919050565b60006020820190508181036000830152612625816125e9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061266682611c52565b915061267183611c52565b9250826126815761268061262c565b5b828204905092915050565b600061269782611c52565b91506126a283611c52565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156126db576126da612253565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612742602183611b3f565b915061274d826126e6565b604082019050919050565b6000602082019050818103600083015261277181612735565b9050919050565b7f536166654d6174683a207375627472616374696f6e206f766572666c6f770000600082015250565b60006127ae601e83611b3f565b91506127b982612778565b602082019050919050565b600060208201905081810360008301526127dd816127a1565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206eafc0ce7af7ab6409e9b20079aa93483a88f8bf7d3d51ed8ab25362f267760464736f6c6343000809003300000000000000000000000015e54c22f4195142222ed7130521e9636ec3ccec

Deployed Bytecode

0x6080604052600436106101445760003560e01c80636c1282ec116100b6578063a9059cbb1161006f578063a9059cbb1461046f578063b62496f5146104ac578063c0246668146104e9578063dd62ed3e14610512578063e0bf7fd11461054f578063f2fde38b1461058c5761014b565b80636c1282ec1461035f57806370a0823114610388578063715018a6146103c55780638da5cb5b146103dc57806395d89b4114610407578063a457c2d7146104325761014b565b806323b872dd1161010857806323b872dd14610239578063313ce5671461027657806339509351146102a1578063430bf08a146102de57806349bd5a5e1461030957806362886459146103345761014b565b806301ac145b1461015057806306fdde031461017b578063095ea7b3146101a65780631694505e146101e357806318160ddd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105b5565b6040516101729190611b19565b60405180910390f35b34801561018757600080fd5b506101906105d9565b60405161019d9190611bcd565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c89190611c88565b61066b565b6040516101da9190611ce3565b60405180910390f35b3480156101ef57600080fd5b506101f8610689565b6040516102059190611d5d565b60405180910390f35b34801561021a57600080fd5b506102236106ad565b6040516102309190611d87565b60405180910390f35b34801561024557600080fd5b50610260600480360381019061025b9190611da2565b6106b7565b60405161026d9190611ce3565b60405180910390f35b34801561028257600080fd5b5061028b610790565b6040516102989190611b19565b60405180910390f35b3480156102ad57600080fd5b506102c860048036038101906102c39190611c88565b6107a7565b6040516102d59190611ce3565b60405180910390f35b3480156102ea57600080fd5b506102f361085a565b6040516103009190611e04565b60405180910390f35b34801561031557600080fd5b5061031e61087e565b60405161032b9190611e04565b60405180910390f35b34801561034057600080fd5b506103496108a2565b6040516103569190611e04565b60405180910390f35b34801561036b57600080fd5b5061038660048036038101906103819190611e1f565b6108cc565b005b34801561039457600080fd5b506103af60048036038101906103aa9190611e1f565b610a78565b6040516103bc9190611d87565b60405180910390f35b3480156103d157600080fd5b506103da610ac0565b005b3480156103e857600080fd5b506103f1610bfd565b6040516103fe9190611e04565b60405180910390f35b34801561041357600080fd5b5061041c610c27565b6040516104299190611bcd565b60405180910390f35b34801561043e57600080fd5b5061045960048036038101906104549190611c88565b610cb9565b6040516104669190611ce3565b60405180910390f35b34801561047b57600080fd5b5061049660048036038101906104919190611c88565b610d86565b6040516104a39190611ce3565b60405180910390f35b3480156104b857600080fd5b506104d360048036038101906104ce9190611e1f565b610da4565b6040516104e09190611ce3565b60405180910390f35b3480156104f557600080fd5b50610510600480360381019061050b9190611e78565b610dc4565b005b34801561051e57600080fd5b5061053960048036038101906105349190611eb8565b610fc0565b6040516105469190611d87565b60405180910390f35b34801561055b57600080fd5b5061057660048036038101906105719190611e1f565b611047565b6040516105839190611ce3565b60405180910390f35b34801561059857600080fd5b506105b360048036038101906105ae9190611e1f565b611067565b005b7f00000000000000000000000000000000000000000000000000000000000000c881565b6060600380546105e890611f27565b80601f016020809104026020016040519081016040528092919081815260200182805461061490611f27565b80156106615780601f1061063657610100808354040283529160200191610661565b820191906000526020600020905b81548152906001019060200180831161064457829003601f168201915b5050505050905090565b600061067f610678611271565b8484611279565b6001905092915050565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6000600254905090565b60006106c4848484611444565b610785846106d0611271565b6107808560405180606001604052806028815260200161280b60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610736611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b611279565b600190509392505050565b6000600560009054906101000a900460ff16905090565b60006108506107b4611271565b8461084b85600160006107c5611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121390919063ffffffff16565b611279565b6001905092915050565b7f00000000000000000000000015e54c22f4195142222ed7130521e9636ec3ccec81565b7f000000000000000000000000bebc3520759bf96f1fe400f792271c325eaa9c4981565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6108d4611271565b73ffffffffffffffffffffffffffffffffffffffff166108f26108a2565b73ffffffffffffffffffffffffffffffffffffffff1614610948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093f90611fa5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156109b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109af90612011565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167feb06fff24919671058102c8574cfabeaaaa9bdb457630fad2d33420615fdcd3260405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ac8611271565b73ffffffffffffffffffffffffffffffffffffffff16610ae6610bfd565b73ffffffffffffffffffffffffffffffffffffffff1614610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b339061207d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610c3690611f27565b80601f0160208091040260200160405190810160405280929190818152602001828054610c6290611f27565b8015610caf5780601f10610c8457610100808354040283529160200191610caf565b820191906000526020600020905b815481529060010190602001808311610c9257829003601f168201915b5050505050905090565b6000610d7c610cc6611271565b84610d77856040518060600160405280602581526020016128336025913960016000610cf0611271565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b611279565b6001905092915050565b6000610d9a610d93611271565b8484611444565b6001905092915050565b60086020528060005260406000206000915054906101000a900460ff1681565b610dcc610bfd565b73ffffffffffffffffffffffffffffffffffffffff16610dea611271565b73ffffffffffffffffffffffffffffffffffffffff161480610e455750610e0f6108a2565b73ffffffffffffffffffffffffffffffffffffffff16610e2d611271565b73ffffffffffffffffffffffffffffffffffffffff16145b610e84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7b9061210f565b60405180910390fd5b801515600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610f17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0e906121a1565b60405180910390fd5b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051610fb49190611ce3565b60405180910390a25050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b61106f611271565b73ffffffffffffffffffffffffffffffffffffffff1661108d610bfd565b73ffffffffffffffffffffffffffffffffffffffff16146110e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110da9061207d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114a90612233565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082846112229190612282565b905083811015611267576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125e90612324565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e0906123b6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611359576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135090612448565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114379190611d87565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906124da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b9061256c565b60405180910390fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116c957600060019050600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061161d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561162757600090505b80156116c75760006116797f00000000000000000000000000000000000000000000000000000000000000c860ff1661166b6127108661173790919063ffffffff16565b61178f90919063ffffffff16565b905060008111156116b0576116af857f00000000000000000000000015e54c22f4195142222ed7130521e9636ec3ccec8361180a565b5b6116c38184611a9f90919063ffffffff16565b9250505b505b6116d483838361180a565b505050565b6000838311158290611721576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117189190611bcd565b60405180910390fd5b50828461172e919061258c565b90509392505050565b600080821161177b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117729061260c565b60405180910390fd5b8183611787919061265b565b905092915050565b6000808314156117a25760009050611804565b600082846117b0919061268c565b90508284826117bf919061265b565b146117ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f690612758565b60405180910390fd5b809150505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561187a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611871906124da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e19061256c565b60405180910390fd5b6118f5838383611af8565b611960816040518060600160405280602681526020016127e5602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116d99092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119f3816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121390919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a929190611d87565b60405180910390a3505050565b600082821115611ae4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adb906127c4565b60405180910390fd5b8183611af0919061258c565b905092915050565b505050565b600060ff82169050919050565b611b1381611afd565b82525050565b6000602082019050611b2e6000830184611b0a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611b6e578082015181840152602081019050611b53565b83811115611b7d576000848401525b50505050565b6000601f19601f8301169050919050565b6000611b9f82611b34565b611ba98185611b3f565b9350611bb9818560208601611b50565b611bc281611b83565b840191505092915050565b60006020820190508181036000830152611be78184611b94565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c1f82611bf4565b9050919050565b611c2f81611c14565b8114611c3a57600080fd5b50565b600081359050611c4c81611c26565b92915050565b6000819050919050565b611c6581611c52565b8114611c7057600080fd5b50565b600081359050611c8281611c5c565b92915050565b60008060408385031215611c9f57611c9e611bef565b5b6000611cad85828601611c3d565b9250506020611cbe85828601611c73565b9150509250929050565b60008115159050919050565b611cdd81611cc8565b82525050565b6000602082019050611cf86000830184611cd4565b92915050565b6000819050919050565b6000611d23611d1e611d1984611bf4565b611cfe565b611bf4565b9050919050565b6000611d3582611d08565b9050919050565b6000611d4782611d2a565b9050919050565b611d5781611d3c565b82525050565b6000602082019050611d726000830184611d4e565b92915050565b611d8181611c52565b82525050565b6000602082019050611d9c6000830184611d78565b92915050565b600080600060608486031215611dbb57611dba611bef565b5b6000611dc986828701611c3d565b9350506020611dda86828701611c3d565b9250506040611deb86828701611c73565b9150509250925092565b611dfe81611c14565b82525050565b6000602082019050611e196000830184611df5565b92915050565b600060208284031215611e3557611e34611bef565b5b6000611e4384828501611c3d565b91505092915050565b611e5581611cc8565b8114611e6057600080fd5b50565b600081359050611e7281611e4c565b92915050565b60008060408385031215611e8f57611e8e611bef565b5b6000611e9d85828601611c3d565b9250506020611eae85828601611e63565b9150509250929050565b60008060408385031215611ecf57611ece611bef565b5b6000611edd85828601611c3d565b9250506020611eee85828601611c3d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611f3f57607f821691505b60208210811415611f5357611f52611ef8565b5b50919050565b7f63616c6c6572206973206e6f742074686520656469746f727300000000000000600082015250565b6000611f8f601983611b3f565b9150611f9a82611f59565b602082019050919050565b60006020820190508181036000830152611fbe81611f82565b9050919050565b7f6e657720656469746f7220697320746865207a65726f20616464726573730000600082015250565b6000611ffb601e83611b3f565b915061200682611fc5565b602082019050919050565b6000602082019050818103600083015261202a81611fee565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612067602083611b3f565b915061207282612031565b602082019050919050565b600060208201905081810360008301526120968161205a565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572206f7220656469746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006120f9602183611b3f565b91506121048261209d565b604082019050919050565b60006020820190508181036000830152612128816120ec565b9050919050565b7f434376323a204163636f756e7420697320616c7265616479207468652076616c60008201527f7565206f6620276578636c756465642700000000000000000000000000000000602082015250565b600061218b603083611b3f565b91506121968261212f565b604082019050919050565b600060208201905081810360008301526121ba8161217e565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061221d602683611b3f565b9150612228826121c1565b604082019050919050565b6000602082019050818103600083015261224c81612210565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061228d82611c52565b915061229883611c52565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122cd576122cc612253565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061230e601b83611b3f565b9150612319826122d8565b602082019050919050565b6000602082019050818103600083015261233d81612301565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006123a0602483611b3f565b91506123ab82612344565b604082019050919050565b600060208201905081810360008301526123cf81612393565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612432602283611b3f565b915061243d826123d6565b604082019050919050565b6000602082019050818103600083015261246181612425565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006124c4602583611b3f565b91506124cf82612468565b604082019050919050565b600060208201905081810360008301526124f3816124b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612556602383611b3f565b9150612561826124fa565b604082019050919050565b6000602082019050818103600083015261258581612549565b9050919050565b600061259782611c52565b91506125a283611c52565b9250828210156125b5576125b4612253565b5b828203905092915050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b60006125f6601a83611b3f565b9150612601826125c0565b602082019050919050565b60006020820190508181036000830152612625816125e9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061266682611c52565b915061267183611c52565b9250826126815761268061262c565b5b828204905092915050565b600061269782611c52565b91506126a283611c52565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156126db576126da612253565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612742602183611b3f565b915061274d826126e6565b604082019050919050565b6000602082019050818103600083015261277181612735565b9050919050565b7f536166654d6174683a207375627472616374696f6e206f766572666c6f770000600082015250565b60006127ae601e83611b3f565b91506127b982612778565b602082019050919050565b600060208201905081810360008301526127dd816127a1565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206eafc0ce7af7ab6409e9b20079aa93483a88f8bf7d3d51ed8ab25362f267760464736f6c63430008090033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000015e54c22f4195142222ed7130521e9636ec3ccec

-----Decoded View---------------
Arg [0] : _vaultAddress (address): 0x15e54c22f4195142222ED7130521E9636EC3cCEC

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000015e54c22f4195142222ed7130521e9636ec3ccec


Deployed Bytecode Sourcemap

9613:2853:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9878:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4074:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4969:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9704:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4375:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5146:321;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4276:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5475:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9837:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9762:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2419:90;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2642:245;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4491:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1673:148;;;;;;;;;;;;;:::i;:::-;;1450:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4173:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5701:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4626:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9984:58;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11335:297;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4810:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9925:52;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1830:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9878:37;;;:::o;4074:91::-;4119:13;4152:5;4145:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4074:91;:::o;4969:169::-;5052:4;5069:39;5078:12;:10;:12::i;:::-;5092:7;5101:6;5069:8;:39::i;:::-;5126:4;5119:11;;4969:169;;;;:::o;9704:51::-;;;:::o;4375:108::-;4436:7;4463:12;;4456:19;;4375:108;:::o;5146:321::-;5252:4;5269:36;5279:6;5287:9;5298:6;5269:9;:36::i;:::-;5316:121;5325:6;5333:12;:10;:12::i;:::-;5347:89;5385:6;5347:89;;;;;;;;;;;;;;;;;:11;:19;5359:6;5347:19;;;;;;;;;;;;;;;:33;5367:12;:10;:12::i;:::-;5347:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5316:8;:121::i;:::-;5455:4;5448:11;;5146:321;;;;;:::o;4276:91::-;4325:5;4350:9;;;;;;;;;;;4343:16;;4276:91;:::o;5475:218::-;5563:4;5580:83;5589:12;:10;:12::i;:::-;5603:7;5612:50;5651:10;5612:11;:25;5624:12;:10;:12::i;:::-;5612:25;;;;;;;;;;;;;;;:34;5638:7;5612:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;5580:8;:83::i;:::-;5681:4;5674:11;;5475:218;;;;:::o;9837:37::-;;;:::o;9762:38::-;;;:::o;2419:90::-;2467:7;2494;;;;;;;;;;;2487:14;;2419:90;:::o;2642:245::-;2571:12;:10;:12::i;:::-;2558:25;;:9;:7;:9::i;:::-;:25;;;2550:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;2755:1:::1;2734:23;;:9;:23;;;;2726:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;2839:9;2808:41;;2830:7;;;;;;;;;;;2808:41;;;;;;;;;;;;2870:9;2860:7;;:19;;;;;;;;;;;;;;;;;;2642:245:::0;:::o;4491:127::-;4565:7;4592:9;:18;4602:7;4592:18;;;;;;;;;;;;;;;;4585:25;;4491:127;;;:::o;1673:148::-;1596:12;:10;:12::i;:::-;1585:23;;:7;:5;:7::i;:::-;:23;;;1577:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1780:1:::1;1743:40;;1764:6;;;;;;;;;;;1743:40;;;;;;;;;;;;1811:1;1794:6;;:19;;;;;;;;;;;;;;;;;;1673:148::o:0;1450:87::-;1496:7;1523:6;;;;;;;;;;;1516:13;;1450:87;:::o;4173:95::-;4220:13;4253:7;4246:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4173:95;:::o;5701:269::-;5794:4;5811:129;5820:12;:10;:12::i;:::-;5834:7;5843:96;5882:15;5843:96;;;;;;;;;;;;;;;;;:11;:25;5855:12;:10;:12::i;:::-;5843:25;;;;;;;;;;;;;;;:34;5869:7;5843:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;5811:8;:129::i;:::-;5958:4;5951:11;;5701:269;;;;:::o;4626:175::-;4712:4;4729:42;4739:12;:10;:12::i;:::-;4753:9;4764:6;4729:9;:42::i;:::-;4789:4;4782:11;;4626:175;;;;:::o;9984:58::-;;;;;;;;;;;;;;;;;;;;;;:::o;11335:297::-;12369:7;:5;:7::i;:::-;12353:23;;:12;:10;:12::i;:::-;:23;;;:52;;;;12396:9;:7;:9::i;:::-;12380:25;;:12;:10;:12::i;:::-;:25;;;12353:52;12345:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;11463:8:::1;11431:40;;:19;:28;11451:7;11431:28;;;;;;;;;;;;;;;;;;;;;;;;;:40;;;;11423:101;;;;;;;;;;;;:::i;:::-;;;;;;;;;11566:8;11535:19;:28;11555:7;11535:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;11606:7;11590:34;;;11615:8;11590:34;;;;;;:::i;:::-;;;;;;;;11335:297:::0;;:::o;4810:151::-;4899:7;4926:11;:18;4938:5;4926:18;;;;;;;;;;;;;;;:27;4945:7;4926:27;;;;;;;;;;;;;;;;4919:34;;4810:151;;;;:::o;9925:52::-;;;;;;;;;;;;;;;;;;;;;;:::o;1830:244::-;1596:12;:10;:12::i;:::-;1585:23;;:7;:5;:7::i;:::-;:23;;;1577:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1939:1:::1;1919:22;;:8;:22;;;;1911:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2029:8;2000:38;;2021:6;;;;;;;;;;;2000:38;;;;;;;;;;;;2058:8;2049:6;;:17;;;;;;;;;;;;;;;;;;1830:244:::0;:::o;8186:179::-;8244:7;8264:9;8280:1;8276;:5;;;;:::i;:::-;8264:17;;8305:1;8300;:6;;8292:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;8356:1;8349:8;;;8186:179;;;;:::o;873:115::-;926:15;969:10;954:26;;873:115;:::o;6904:344::-;7023:1;7006:19;;:5;:19;;;;6998:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7104:1;7085:21;;:7;:21;;;;7077:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7186:6;7156:11;:18;7168:5;7156:18;;;;;;;;;;;;;;;:27;7175:7;7156:27;;;;;;;;;;;;;;;:36;;;;7224:7;7208:32;;7217:5;7208:32;;;7233:6;7208:32;;;;;;:::i;:::-;;;;;;;;6904:344;;;:::o;11639:664::-;11753:1;11737:18;;:4;:18;;;;11729:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11830:1;11816:16;;:2;:16;;;;11808:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11884:25;:29;11910:2;11884:29;;;;;;;;;;;;;;;;;;;;;;;;;11881:371;;;11924:12;11939:4;11924:19;;11957;:25;11977:4;11957:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;11986:19;:23;12006:2;11986:23;;;;;;;;;;;;;;;;;;;;;;;;;11957:52;11954:86;;;12028:5;12018:15;;11954:86;12053:7;12050:191;;;12074:13;12090:31;12112:8;12090:31;;:17;12101:5;12090:6;:10;;:17;;;;:::i;:::-;:21;;:31;;;;:::i;:::-;12074:47;;12139:1;12131:5;:9;12128:74;;;12152:42;12168:4;12174:12;12188:5;12152:15;:42::i;:::-;12128:74;12217:17;12228:5;12217:6;:10;;:17;;;;:::i;:::-;12208:26;;12067:174;12050:191;11918:334;11881:371;12262:33;12278:4;12284:2;12288:6;12262:15;:33::i;:::-;11639:664;;;:::o;9092:166::-;9178:7;9211:1;9206;:6;;9214:12;9198:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;9249:1;9245;:5;;;;:::i;:::-;9238:12;;9092:166;;;;;:::o;8770:153::-;8828:7;8860:1;8856;:5;8848:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;8914:1;8910;:5;;;;:::i;:::-;8903:12;;8770:153;;;;:::o;8541:220::-;8599:7;8628:1;8623;:6;8619:20;;;8638:1;8631:8;;;;8619:20;8650:9;8666:1;8662;:5;;;;:::i;:::-;8650:17;;8695:1;8690;8686;:5;;;;:::i;:::-;:10;8678:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;8752:1;8745:8;;;8541:220;;;;;:::o;5978:535::-;6102:1;6084:20;;:6;:20;;;;6076:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6186:1;6165:23;;:9;:23;;;;6157:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6239:47;6260:6;6268:9;6279:6;6239:20;:47::i;:::-;6317:71;6339:6;6317:71;;;;;;;;;;;;;;;;;:9;:17;6327:6;6317:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;6297:9;:17;6307:6;6297:17;;;;;;;;;;;;;;;:91;;;;6422:32;6447:6;6422:9;:20;6432:9;6422:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6399:9;:20;6409:9;6399:20;;;;;;;;;;;;;;;:55;;;;6487:9;6470:35;;6479:6;6470:35;;;6498:6;6470:35;;;;;;:::i;:::-;;;;;;;;5978:535;;;:::o;8374:158::-;8432:7;8465:1;8460;:6;;8452:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;8523:1;8519;:5;;;;:::i;:::-;8512:12;;8374:158;;;;:::o;7364:92::-;;;;:::o;7:86:1:-;42:7;82:4;75:5;71:16;60:27;;7:86;;;:::o;99:112::-;182:22;198:5;182:22;:::i;:::-;177:3;170:35;99:112;;:::o;217:214::-;306:4;344:2;333:9;329:18;321:26;;357:67;421:1;410:9;406:17;397:6;357:67;:::i;:::-;217:214;;;;:::o;437:99::-;489:6;523:5;517:12;507:22;;437:99;;;:::o;542:169::-;626:11;660:6;655:3;648:19;700:4;695:3;691:14;676:29;;542:169;;;;:::o;717:307::-;785:1;795:113;809:6;806:1;803:13;795:113;;;894:1;889:3;885:11;879:18;875:1;870:3;866:11;859:39;831:2;828:1;824:10;819:15;;795:113;;;926:6;923:1;920:13;917:101;;;1006:1;997:6;992:3;988:16;981:27;917:101;766:258;717:307;;;:::o;1030:102::-;1071:6;1122:2;1118:7;1113:2;1106:5;1102:14;1098:28;1088:38;;1030:102;;;:::o;1138:364::-;1226:3;1254:39;1287:5;1254:39;:::i;:::-;1309:71;1373:6;1368:3;1309:71;:::i;:::-;1302:78;;1389:52;1434:6;1429:3;1422:4;1415:5;1411:16;1389:52;:::i;:::-;1466:29;1488:6;1466:29;:::i;:::-;1461:3;1457:39;1450:46;;1230:272;1138:364;;;;:::o;1508:313::-;1621:4;1659:2;1648:9;1644:18;1636:26;;1708:9;1702:4;1698:20;1694:1;1683:9;1679:17;1672:47;1736:78;1809:4;1800:6;1736:78;:::i;:::-;1728:86;;1508:313;;;;:::o;1908:117::-;2017:1;2014;2007:12;2154:126;2191:7;2231:42;2224:5;2220:54;2209:65;;2154:126;;;:::o;2286:96::-;2323:7;2352:24;2370:5;2352:24;:::i;:::-;2341:35;;2286:96;;;:::o;2388:122::-;2461:24;2479:5;2461:24;:::i;:::-;2454:5;2451:35;2441:63;;2500:1;2497;2490:12;2441:63;2388:122;:::o;2516:139::-;2562:5;2600:6;2587:20;2578:29;;2616:33;2643:5;2616:33;:::i;:::-;2516:139;;;;:::o;2661:77::-;2698:7;2727:5;2716:16;;2661:77;;;:::o;2744:122::-;2817:24;2835:5;2817:24;:::i;:::-;2810:5;2807:35;2797:63;;2856:1;2853;2846:12;2797:63;2744:122;:::o;2872:139::-;2918:5;2956:6;2943:20;2934:29;;2972:33;2999:5;2972:33;:::i;:::-;2872:139;;;;:::o;3017:474::-;3085:6;3093;3142:2;3130:9;3121:7;3117:23;3113:32;3110:119;;;3148:79;;:::i;:::-;3110:119;3268:1;3293:53;3338:7;3329:6;3318:9;3314:22;3293:53;:::i;:::-;3283:63;;3239:117;3395:2;3421:53;3466:7;3457:6;3446:9;3442:22;3421:53;:::i;:::-;3411:63;;3366:118;3017:474;;;;;:::o;3497:90::-;3531:7;3574:5;3567:13;3560:21;3549:32;;3497:90;;;:::o;3593:109::-;3674:21;3689:5;3674:21;:::i;:::-;3669:3;3662:34;3593:109;;:::o;3708:210::-;3795:4;3833:2;3822:9;3818:18;3810:26;;3846:65;3908:1;3897:9;3893:17;3884:6;3846:65;:::i;:::-;3708:210;;;;:::o;3924:60::-;3952:3;3973:5;3966:12;;3924:60;;;:::o;3990:142::-;4040:9;4073:53;4091:34;4100:24;4118:5;4100:24;:::i;:::-;4091:34;:::i;:::-;4073:53;:::i;:::-;4060:66;;3990:142;;;:::o;4138:126::-;4188:9;4221:37;4252:5;4221:37;:::i;:::-;4208:50;;4138:126;;;:::o;4270:152::-;4346:9;4379:37;4410:5;4379:37;:::i;:::-;4366:50;;4270:152;;;:::o;4428:183::-;4541:63;4598:5;4541:63;:::i;:::-;4536:3;4529:76;4428:183;;:::o;4617:274::-;4736:4;4774:2;4763:9;4759:18;4751:26;;4787:97;4881:1;4870:9;4866:17;4857:6;4787:97;:::i;:::-;4617:274;;;;:::o;4897:118::-;4984:24;5002:5;4984:24;:::i;:::-;4979:3;4972:37;4897:118;;:::o;5021:222::-;5114:4;5152:2;5141:9;5137:18;5129:26;;5165:71;5233:1;5222:9;5218:17;5209:6;5165:71;:::i;:::-;5021:222;;;;:::o;5249:619::-;5326:6;5334;5342;5391:2;5379:9;5370:7;5366:23;5362:32;5359:119;;;5397:79;;:::i;:::-;5359:119;5517:1;5542:53;5587:7;5578:6;5567:9;5563:22;5542:53;:::i;:::-;5532:63;;5488:117;5644:2;5670:53;5715:7;5706:6;5695:9;5691:22;5670:53;:::i;:::-;5660:63;;5615:118;5772:2;5798:53;5843:7;5834:6;5823:9;5819:22;5798:53;:::i;:::-;5788:63;;5743:118;5249:619;;;;;:::o;5874:118::-;5961:24;5979:5;5961:24;:::i;:::-;5956:3;5949:37;5874:118;;:::o;5998:222::-;6091:4;6129:2;6118:9;6114:18;6106:26;;6142:71;6210:1;6199:9;6195:17;6186:6;6142:71;:::i;:::-;5998:222;;;;:::o;6226:329::-;6285:6;6334:2;6322:9;6313:7;6309:23;6305:32;6302:119;;;6340:79;;:::i;:::-;6302:119;6460:1;6485:53;6530:7;6521:6;6510:9;6506:22;6485:53;:::i;:::-;6475:63;;6431:117;6226:329;;;;:::o;6561:116::-;6631:21;6646:5;6631:21;:::i;:::-;6624:5;6621:32;6611:60;;6667:1;6664;6657:12;6611:60;6561:116;:::o;6683:133::-;6726:5;6764:6;6751:20;6742:29;;6780:30;6804:5;6780:30;:::i;:::-;6683:133;;;;:::o;6822:468::-;6887:6;6895;6944:2;6932:9;6923:7;6919:23;6915:32;6912:119;;;6950:79;;:::i;:::-;6912:119;7070:1;7095:53;7140:7;7131:6;7120:9;7116:22;7095:53;:::i;:::-;7085:63;;7041:117;7197:2;7223:50;7265:7;7256:6;7245:9;7241:22;7223:50;:::i;:::-;7213:60;;7168:115;6822:468;;;;;:::o;7296:474::-;7364:6;7372;7421:2;7409:9;7400:7;7396:23;7392:32;7389:119;;;7427:79;;:::i;:::-;7389:119;7547:1;7572:53;7617:7;7608:6;7597:9;7593:22;7572:53;:::i;:::-;7562:63;;7518:117;7674:2;7700:53;7745:7;7736:6;7725:9;7721:22;7700:53;:::i;:::-;7690:63;;7645:118;7296:474;;;;;:::o;7776:180::-;7824:77;7821:1;7814:88;7921:4;7918:1;7911:15;7945:4;7942:1;7935:15;7962:320;8006:6;8043:1;8037:4;8033:12;8023:22;;8090:1;8084:4;8080:12;8111:18;8101:81;;8167:4;8159:6;8155:17;8145:27;;8101:81;8229:2;8221:6;8218:14;8198:18;8195:38;8192:84;;;8248:18;;:::i;:::-;8192:84;8013:269;7962:320;;;:::o;8288:175::-;8428:27;8424:1;8416:6;8412:14;8405:51;8288:175;:::o;8469:366::-;8611:3;8632:67;8696:2;8691:3;8632:67;:::i;:::-;8625:74;;8708:93;8797:3;8708:93;:::i;:::-;8826:2;8821:3;8817:12;8810:19;;8469:366;;;:::o;8841:419::-;9007:4;9045:2;9034:9;9030:18;9022:26;;9094:9;9088:4;9084:20;9080:1;9069:9;9065:17;9058:47;9122:131;9248:4;9122:131;:::i;:::-;9114:139;;8841:419;;;:::o;9266:180::-;9406:32;9402:1;9394:6;9390:14;9383:56;9266:180;:::o;9452:366::-;9594:3;9615:67;9679:2;9674:3;9615:67;:::i;:::-;9608:74;;9691:93;9780:3;9691:93;:::i;:::-;9809:2;9804:3;9800:12;9793:19;;9452:366;;;:::o;9824:419::-;9990:4;10028:2;10017:9;10013:18;10005:26;;10077:9;10071:4;10067:20;10063:1;10052:9;10048:17;10041:47;10105:131;10231:4;10105:131;:::i;:::-;10097:139;;9824:419;;;:::o;10249:182::-;10389:34;10385:1;10377:6;10373:14;10366:58;10249:182;:::o;10437:366::-;10579:3;10600:67;10664:2;10659:3;10600:67;:::i;:::-;10593:74;;10676:93;10765:3;10676:93;:::i;:::-;10794:2;10789:3;10785:12;10778:19;;10437:366;;;:::o;10809:419::-;10975:4;11013:2;11002:9;10998:18;10990:26;;11062:9;11056:4;11052:20;11048:1;11037:9;11033:17;11026:47;11090:131;11216:4;11090:131;:::i;:::-;11082:139;;10809:419;;;:::o;11234:220::-;11374:34;11370:1;11362:6;11358:14;11351:58;11443:3;11438:2;11430:6;11426:15;11419:28;11234:220;:::o;11460:366::-;11602:3;11623:67;11687:2;11682:3;11623:67;:::i;:::-;11616:74;;11699:93;11788:3;11699:93;:::i;:::-;11817:2;11812:3;11808:12;11801:19;;11460:366;;;:::o;11832:419::-;11998:4;12036:2;12025:9;12021:18;12013:26;;12085:9;12079:4;12075:20;12071:1;12060:9;12056:17;12049:47;12113:131;12239:4;12113:131;:::i;:::-;12105:139;;11832:419;;;:::o;12257:235::-;12397:34;12393:1;12385:6;12381:14;12374:58;12466:18;12461:2;12453:6;12449:15;12442:43;12257:235;:::o;12498:366::-;12640:3;12661:67;12725:2;12720:3;12661:67;:::i;:::-;12654:74;;12737:93;12826:3;12737:93;:::i;:::-;12855:2;12850:3;12846:12;12839:19;;12498:366;;;:::o;12870:419::-;13036:4;13074:2;13063:9;13059:18;13051:26;;13123:9;13117:4;13113:20;13109:1;13098:9;13094:17;13087:47;13151:131;13277:4;13151:131;:::i;:::-;13143:139;;12870:419;;;:::o;13295:225::-;13435:34;13431:1;13423:6;13419:14;13412:58;13504:8;13499:2;13491:6;13487:15;13480:33;13295:225;:::o;13526:366::-;13668:3;13689:67;13753:2;13748:3;13689:67;:::i;:::-;13682:74;;13765:93;13854:3;13765:93;:::i;:::-;13883:2;13878:3;13874:12;13867:19;;13526:366;;;:::o;13898:419::-;14064:4;14102:2;14091:9;14087:18;14079:26;;14151:9;14145:4;14141:20;14137:1;14126:9;14122:17;14115:47;14179:131;14305:4;14179:131;:::i;:::-;14171:139;;13898:419;;;:::o;14323:180::-;14371:77;14368:1;14361:88;14468:4;14465:1;14458:15;14492:4;14489:1;14482:15;14509:305;14549:3;14568:20;14586:1;14568:20;:::i;:::-;14563:25;;14602:20;14620:1;14602:20;:::i;:::-;14597:25;;14756:1;14688:66;14684:74;14681:1;14678:81;14675:107;;;14762:18;;:::i;:::-;14675:107;14806:1;14803;14799:9;14792:16;;14509:305;;;;:::o;14820:177::-;14960:29;14956:1;14948:6;14944:14;14937:53;14820:177;:::o;15003:366::-;15145:3;15166:67;15230:2;15225:3;15166:67;:::i;:::-;15159:74;;15242:93;15331:3;15242:93;:::i;:::-;15360:2;15355:3;15351:12;15344:19;;15003:366;;;:::o;15375:419::-;15541:4;15579:2;15568:9;15564:18;15556:26;;15628:9;15622:4;15618:20;15614:1;15603:9;15599:17;15592:47;15656:131;15782:4;15656:131;:::i;:::-;15648:139;;15375:419;;;:::o;15800:223::-;15940:34;15936:1;15928:6;15924:14;15917:58;16009:6;16004:2;15996:6;15992:15;15985:31;15800:223;:::o;16029:366::-;16171:3;16192:67;16256:2;16251:3;16192:67;:::i;:::-;16185:74;;16268:93;16357:3;16268:93;:::i;:::-;16386:2;16381:3;16377:12;16370:19;;16029:366;;;:::o;16401:419::-;16567:4;16605:2;16594:9;16590:18;16582:26;;16654:9;16648:4;16644:20;16640:1;16629:9;16625:17;16618:47;16682:131;16808:4;16682:131;:::i;:::-;16674:139;;16401:419;;;:::o;16826:221::-;16966:34;16962:1;16954:6;16950:14;16943:58;17035:4;17030:2;17022:6;17018:15;17011:29;16826:221;:::o;17053:366::-;17195:3;17216:67;17280:2;17275:3;17216:67;:::i;:::-;17209:74;;17292:93;17381:3;17292:93;:::i;:::-;17410:2;17405:3;17401:12;17394:19;;17053:366;;;:::o;17425:419::-;17591:4;17629:2;17618:9;17614:18;17606:26;;17678:9;17672:4;17668:20;17664:1;17653:9;17649:17;17642:47;17706:131;17832:4;17706:131;:::i;:::-;17698:139;;17425:419;;;:::o;17850:224::-;17990:34;17986:1;17978:6;17974:14;17967:58;18059:7;18054:2;18046:6;18042:15;18035:32;17850:224;:::o;18080:366::-;18222:3;18243:67;18307:2;18302:3;18243:67;:::i;:::-;18236:74;;18319:93;18408:3;18319:93;:::i;:::-;18437:2;18432:3;18428:12;18421:19;;18080:366;;;:::o;18452:419::-;18618:4;18656:2;18645:9;18641:18;18633:26;;18705:9;18699:4;18695:20;18691:1;18680:9;18676:17;18669:47;18733:131;18859:4;18733:131;:::i;:::-;18725:139;;18452:419;;;:::o;18877:222::-;19017:34;19013:1;19005:6;19001:14;18994:58;19086:5;19081:2;19073:6;19069:15;19062:30;18877:222;:::o;19105:366::-;19247:3;19268:67;19332:2;19327:3;19268:67;:::i;:::-;19261:74;;19344:93;19433:3;19344:93;:::i;:::-;19462:2;19457:3;19453:12;19446:19;;19105:366;;;:::o;19477:419::-;19643:4;19681:2;19670:9;19666:18;19658:26;;19730:9;19724:4;19720:20;19716:1;19705:9;19701:17;19694:47;19758:131;19884:4;19758:131;:::i;:::-;19750:139;;19477:419;;;:::o;19902:191::-;19942:4;19962:20;19980:1;19962:20;:::i;:::-;19957:25;;19996:20;20014:1;19996:20;:::i;:::-;19991:25;;20035:1;20032;20029:8;20026:34;;;20040:18;;:::i;:::-;20026:34;20085:1;20082;20078:9;20070:17;;19902:191;;;;:::o;20099:176::-;20239:28;20235:1;20227:6;20223:14;20216:52;20099:176;:::o;20281:366::-;20423:3;20444:67;20508:2;20503:3;20444:67;:::i;:::-;20437:74;;20520:93;20609:3;20520:93;:::i;:::-;20638:2;20633:3;20629:12;20622:19;;20281:366;;;:::o;20653:419::-;20819:4;20857:2;20846:9;20842:18;20834:26;;20906:9;20900:4;20896:20;20892:1;20881:9;20877:17;20870:47;20934:131;21060:4;20934:131;:::i;:::-;20926:139;;20653:419;;;:::o;21078:180::-;21126:77;21123:1;21116:88;21223:4;21220:1;21213:15;21247:4;21244:1;21237:15;21264:185;21304:1;21321:20;21339:1;21321:20;:::i;:::-;21316:25;;21355:20;21373:1;21355:20;:::i;:::-;21350:25;;21394:1;21384:35;;21399:18;;:::i;:::-;21384:35;21441:1;21438;21434:9;21429:14;;21264:185;;;;:::o;21455:348::-;21495:7;21518:20;21536:1;21518:20;:::i;:::-;21513:25;;21552:20;21570:1;21552:20;:::i;:::-;21547:25;;21740:1;21672:66;21668:74;21665:1;21662:81;21657:1;21650:9;21643:17;21639:105;21636:131;;;21747:18;;:::i;:::-;21636:131;21795:1;21792;21788:9;21777:20;;21455:348;;;;:::o;21809:220::-;21949:34;21945:1;21937:6;21933:14;21926:58;22018:3;22013:2;22005:6;22001:15;21994:28;21809:220;:::o;22035:366::-;22177:3;22198:67;22262:2;22257:3;22198:67;:::i;:::-;22191:74;;22274:93;22363:3;22274:93;:::i;:::-;22392:2;22387:3;22383:12;22376:19;;22035:366;;;:::o;22407:419::-;22573:4;22611:2;22600:9;22596:18;22588:26;;22660:9;22654:4;22650:20;22646:1;22635:9;22631:17;22624:47;22688:131;22814:4;22688:131;:::i;:::-;22680:139;;22407:419;;;:::o;22832:180::-;22972:32;22968:1;22960:6;22956:14;22949:56;22832:180;:::o;23018:366::-;23160:3;23181:67;23245:2;23240:3;23181:67;:::i;:::-;23174:74;;23257:93;23346:3;23257:93;:::i;:::-;23375:2;23370:3;23366:12;23359:19;;23018:366;;;:::o;23390:419::-;23556:4;23594:2;23583:9;23579:18;23571:26;;23643:9;23637:4;23633:20;23629:1;23618:9;23614:17;23607:47;23671:131;23797:4;23671:131;:::i;:::-;23663:139;;23390:419;;;:::o

Swarm Source

ipfs://6eafc0ce7af7ab6409e9b20079aa93483a88f8bf7d3d51ed8ab25362f2677604
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.