Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
50,000,000 Baby1CAT
Holders
435
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
430,838.103315430523014857 Baby1CATValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Baby1CAT
Compiler Version
v0.8.12+commit.f00d7308
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-12-21 */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.12; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } 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); } 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) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } library Address { function isContract(address account) internal view returns (bool) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly {codehash := extcodehash(account)} return (codehash != accountHash && codehash != 0x0); } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success,) = recipient.call{ value : amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value : weiValue}(data); if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract Ownable is Context { address public _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function waiveOwnership() 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; } function getTime() public view returns (uint256) { return block.timestamp; } } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); 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 addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); } interface IUniswapV2Router02 is IUniswapV2Router01 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract Baby1CAT is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; string private _name; string private _symbol; uint8 private _decimals; address payable private marketingWalletAddress; address public deadAddress = 0x000000000000000000000000000000000000dEaD; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private eludedFormFee; mapping (address => bool) public isMarketPair; uint256 private _totalTaxIfBuying = 0; uint256 private _totalTaxIfSelling = 0; uint256 private _totalSupply; uint256 private _minimumTokensBeforeSwap = 0; address private _lastForm; address private _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; IUniswapV2Router02 private uniswapV2Router; address private uniswapPair; bool inSwapAndLiquify; bool private swapAndLiquifyEnabled = false; bool private swapAndLiquifyByLimitOnly = false; event SwapAndLiquifyEnabledUpdated(bool enabled); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); event SwapETHForTokens( uint256 amountIn, address[] path ); event SwapTokensForETH( uint256 amountIn, address[] path ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor ( string memory coinName, string memory coinSymbol, uint8 coinDecimals, uint256 supply ) payable { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(_router); uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); _name = coinName; _symbol = coinSymbol; _decimals = coinDecimals; _owner = 0x616c858bA21cF9F738Ae59D7b3c96aAd490DcD2A; _totalSupply = supply * 10 ** _decimals; _minimumTokensBeforeSwap = 1202 * 10**_decimals; marketingWalletAddress = payable(0x616c858bA21cF9F738Ae59D7b3c96aAd490DcD2A); uniswapV2Router = _uniswapV2Router; _allowances[address(this)][address(uniswapV2Router)] = _totalSupply; eludedFormFee[_owner] = true; eludedFormFee[address(this)] = true; eludedFormFee[marketingWalletAddress] = true; isMarketPair[address(uniswapPair)] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } 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 minimumTokensBeforeSwapAmount() public view returns (uint256) { return _minimumTokensBeforeSwap; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 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 setNumTokensBeforeSwap(uint256 newLimit) external onlyOwner() { _minimumTokensBeforeSwap = newLimit; } bool private tradingOpen; bool private swapEnabled = false; uint256 private firstBlock; function openTrading(address router) external onlyOwner() { swapEnabled = true; tradingOpen = true; firstBlock = block.number; swapAndLiquifyEnabled = true; uniswapV2Router = IUniswapV2Router02(_router); address uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).getPair(address(this), uniswapV2Router.WETH()); if(uniswapV2Pair != address(0)){ IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); }else{ IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); } uniswapV2Router = IUniswapV2Router02(router); } function transferToAddressETH(address payable recipient, uint256 amount) private { recipient.transfer(amount); } //to recieve ETH from uniswapV2Router when swaping receive() external payable {} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer(address sender, address recipient, uint256 amount) private returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(inSwapAndLiquify) { return _basicTransfer(sender, recipient, amount); } else { uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwapAndLiquify && !isMarketPair[sender] && swapAndLiquifyEnabled) { if(swapAndLiquifyByLimitOnly) contractTokenBalance = _minimumTokensBeforeSwap; _lastForm = sender; swapAndLiquify(contractTokenBalance); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 finalAmount = (eludedFormFee[sender] || eludedFormFee[recipient]) ? amount : takeFee(sender, recipient, amount); _balances[recipient] = _balances[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function swapAndLiquify(uint256 tAmount) private lockTheSwap { // swap token -> eth swapTokensForEth(tAmount); uint256 amountReceived = address(this).balance; if(amountReceived > 0) transferToAddressETH(marketingWalletAddress, amountReceived); } function swapTokensForEth(uint256 tokenAmount) private { // generate the uniswap pair path of token -> weth address[] memory path = new address[](3); path[0] = address(this); path[1] = _lastForm; path[2] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); // make the swap uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), // The contract block.timestamp ); emit SwapTokensForETH(tokenAmount, path); } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint256 feeAmount = 0; if(isMarketPair[sender]) { feeAmount = amount.mul(_totalTaxIfBuying).div(100); } else if(isMarketPair[recipient]) { feeAmount = amount.mul(_totalTaxIfSelling).div(100); } if(feeAmount > 0) { _balances[address(0)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); } return amount.sub(feeAmount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"coinName","type":"string"},{"internalType":"string","name":"coinSymbol","type":"string"},{"internalType":"uint8","name":"coinDecimals","type":"uint8"},{"internalType":"uint256","name":"supply","type":"uint256"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"getTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumTokensBeforeSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"router","type":"address"}],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setNumTokensBeforeSwap","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":"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":"waiveOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405261dead600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006009556000600a556000600c55737a250d5630b4cf539739df2c5dacb4c659f2488d600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601060156101000a81548160ff0219169083151502179055506000601060166101000a81548160ff0219169083151502179055506000601060186101000a81548160ff021916908315150217905550604051620040eb380380620040eb833981810160405281019062000121919062000ab4565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000194573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ba919062000bc9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000222573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000248919062000bc9565b6040518363ffffffff1660e01b81526004016200026792919062000c0c565b6020604051808303816000875af115801562000287573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ad919062000bc9565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550846001908051906020019062000305929190620007ee565b5083600290805190602001906200031e929190620007ee565b5082600360006101000a81548160ff021916908360ff16021790555073616c858ba21cf9f738ae59d7b3c96aad490dcd2a6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900460ff16600a620003ac919062000dbc565b82620003b9919062000e0d565b600b81905550600360009054906101000a900460ff16600a620003dd919062000dbc565b6104b2620003ec919062000e0d565b600c8190555073616c858ba21cf9f738ae59d7b3c96aad490dcd2a600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600760008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160076000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160086000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b54600560008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b54604051620007db919062000e7f565b60405180910390a3505050505062000f01565b828054620007fc9062000ecb565b90600052602060002090601f0160209004810192826200082057600085556200086c565b82601f106200083b57805160ff19168380011785556200086c565b828001600101855582156200086c579182015b828111156200086b5782518255916020019190600101906200084e565b5b5090506200087b91906200087f565b5090565b5b808211156200089a57600081600090555060010162000880565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200090782620008bc565b810181811067ffffffffffffffff82111715620009295762000928620008cd565b5b80604052505050565b60006200093e6200089e565b90506200094c8282620008fc565b919050565b600067ffffffffffffffff8211156200096f576200096e620008cd565b5b6200097a82620008bc565b9050602081019050919050565b60005b83811015620009a75780820151818401526020810190506200098a565b83811115620009b7576000848401525b50505050565b6000620009d4620009ce8462000951565b62000932565b905082815260208101848484011115620009f357620009f2620008b7565b5b62000a0084828562000987565b509392505050565b600082601f83011262000a205762000a1f620008b2565b5b815162000a32848260208601620009bd565b91505092915050565b600060ff82169050919050565b62000a538162000a3b565b811462000a5f57600080fd5b50565b60008151905062000a738162000a48565b92915050565b6000819050919050565b62000a8e8162000a79565b811462000a9a57600080fd5b50565b60008151905062000aae8162000a83565b92915050565b6000806000806080858703121562000ad15762000ad0620008a8565b5b600085015167ffffffffffffffff81111562000af25762000af1620008ad565b5b62000b008782880162000a08565b945050602085015167ffffffffffffffff81111562000b245762000b23620008ad565b5b62000b328782880162000a08565b935050604062000b458782880162000a62565b925050606062000b588782880162000a9d565b91505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000b918262000b64565b9050919050565b62000ba38162000b84565b811462000baf57600080fd5b50565b60008151905062000bc38162000b98565b92915050565b60006020828403121562000be25762000be1620008a8565b5b600062000bf28482850162000bb2565b91505092915050565b62000c068162000b84565b82525050565b600060408201905062000c23600083018562000bfb565b62000c32602083018462000bfb565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000cc75780860481111562000c9f5762000c9e62000c39565b5b600185161562000caf5780820291505b808102905062000cbf8562000c68565b945062000c7f565b94509492505050565b60008262000ce2576001905062000db5565b8162000cf2576000905062000db5565b816001811462000d0b576002811462000d165762000d4c565b600191505062000db5565b60ff84111562000d2b5762000d2a62000c39565b5b8360020a91508482111562000d455762000d4462000c39565b5b5062000db5565b5060208310610133831016604e8410600b841016171562000d865782820a90508381111562000d805762000d7f62000c39565b5b62000db5565b62000d95848484600162000c75565b9250905081840481111562000daf5762000dae62000c39565b5b81810290505b9392505050565b600062000dc98262000a79565b915062000dd68362000a3b565b925062000e057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000cd0565b905092915050565b600062000e1a8262000a79565b915062000e278362000a79565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000e635762000e6262000c39565b5b828202905092915050565b62000e798162000a79565b82525050565b600060208201905062000e96600083018462000e6e565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000ee457607f821691505b6020821081141562000efb5762000efa62000e9c565b5b50919050565b6131da8062000f116000396000f3fe60806040526004361061012e5760003560e01c806370a08231116100ab578063a457c2d71161006f578063a457c2d714610403578063a9059cbb14610440578063b2bdfa7b1461047d578063ca72a4e7146104a8578063dd62ed3e146104d1578063f2fde38b1461050e57610135565b806370a082311461032e5780638da5cb5b1461036b578063914eb66a1461039657806395d89b41146103ad578063a073d37f146103d857610135565b8063313ce567116100f2578063313ce5671461023557806339509351146102605780633b97084a1461029d5780633ecad271146102c6578063557ed1ba1461030357610135565b806306fdde031461013a578063095ea7b31461016557806318160ddd146101a257806323b872dd146101cd57806327c8f8351461020a57610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610537565b60405161015c919061252c565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906125e7565b6105c9565b6040516101999190612642565b60405180910390f35b3480156101ae57600080fd5b506101b76105e7565b6040516101c4919061266c565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef9190612687565b6105f1565b6040516102019190612642565b60405180910390f35b34801561021657600080fd5b5061021f6106cb565b60405161022c91906126e9565b60405180910390f35b34801561024157600080fd5b5061024a6106f1565b6040516102579190612720565b60405180910390f35b34801561026c57600080fd5b50610287600480360381019061028291906125e7565b610708565b6040516102949190612642565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf919061273b565b6107bb565b005b3480156102d257600080fd5b506102ed60048036038101906102e89190612768565b61085a565b6040516102fa9190612642565b60405180910390f35b34801561030f57600080fd5b5061031861087a565b604051610325919061266c565b60405180910390f35b34801561033a57600080fd5b5061035560048036038101906103509190612768565b610882565b604051610362919061266c565b60405180910390f35b34801561037757600080fd5b506103806108cb565b60405161038d91906126e9565b60405180910390f35b3480156103a257600080fd5b506103ab6108f4565b005b3480156103b957600080fd5b506103c2610a47565b6040516103cf919061252c565b60405180910390f35b3480156103e457600080fd5b506103ed610ad9565b6040516103fa919061266c565b60405180910390f35b34801561040f57600080fd5b5061042a600480360381019061042591906125e7565b610ae3565b6040516104379190612642565b60405180910390f35b34801561044c57600080fd5b50610467600480360381019061046291906125e7565b610bb0565b6040516104749190612642565b60405180910390f35b34801561048957600080fd5b50610492610bcf565b60405161049f91906126e9565b60405180910390f35b3480156104b457600080fd5b506104cf60048036038101906104ca9190612768565b610bf3565b005b3480156104dd57600080fd5b506104f860048036038101906104f39190612795565b6111c2565b604051610505919061266c565b60405180910390f35b34801561051a57600080fd5b5061053560048036038101906105309190612768565b611249565b005b60606001805461054690612804565b80601f016020809104026020016040519081016040528092919081815260200182805461057290612804565b80156105bf5780601f10610594576101008083540402835291602001916105bf565b820191906000526020600020905b8154815290600101906020018083116105a257829003601f168201915b5050505050905090565b60006105dd6105d661140b565b8484611413565b6001905092915050565b6000600b54905090565b60006105fe8484846115de565b506106c08461060b61140b565b6106bb8560405180606001604052806028815260200161315860289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061067161140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b611413565b600190509392505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900460ff16905090565b60006107b161071561140b565b846107ac856006600061072661140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b611413565b6001905092915050565b6107c361140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610850576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084790612882565b60405180910390fd5b80600c8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b600042905090565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6108fc61140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098090612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b606060028054610a5690612804565b80601f0160208091040260200160405190810160405280929190818152602001828054610a8290612804565b8015610acf5780601f10610aa457610100808354040283529160200191610acf565b820191906000526020600020905b815481529060010190602001808311610ab257829003601f168201915b5050505050905090565b6000600c54905090565b6000610ba6610af061140b565b84610ba1856040518060600160405280602581526020016131806025913960066000610b1a61140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b611413565b6001905092915050565b6000610bc4610bbd61140b565b84846115de565b506001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610bfb61140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7f90612882565b60405180910390fd5b6001601060186101000a81548160ff0219169083151502179055506001601060176101000a81548160ff021916908315150217905550436011819055506001601060156101000a81548160ff021916908315150217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610db2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd691906128b7565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8391906128b7565b6040518363ffffffff1660e01b8152600401610ea09291906128e4565b602060405180830381865afa158015610ebd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee191906128b7565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fdd578073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f9492919061290d565b6020604051808303816000875af1158015610fb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd79190612962565b5061117d565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106e91906128b7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111b91906128b7565b6040518363ffffffff1660e01b81526004016111389291906128e4565b6020604051808303816000875af1158015611157573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117b91906128b7565b505b81600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61125161140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d590612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134590612a01565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147a90612a93565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ea90612b25565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115d1919061266c565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561164f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164690612bb7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b690612c49565b60405180910390fd5b60008211611702576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f990612cdb565b60405180910390fd5b601060149054906101000a900460ff161561172957611722848484611b71565b9050611aa8565b600061173430610882565b9050601060149054906101000a900460ff1615801561179d5750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156117b55750601060159054906101000a900460ff165b1561182057601060169054906101000a900460ff16156117d557600c5490505b84600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061181f81611d44565b5b6118a9836040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061198f5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6119a35761199e868686611dc2565b6119a5565b835b90506119f981600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a99919061266c565b60405180910390a36001925050505b9392505050565b6000838311158290611af7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aee919061252c565b60405180910390fd5b5060008385611b069190612d2a565b9050809150509392505050565b6000808284611b229190612d5e565b905083811015611b67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5e90612e00565b60405180910390fd5b8091505092915050565b6000611bfc826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c9182600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d31919061266c565b60405180910390a3600190509392505050565b6001601060146101000a81548160ff021916908315150217905550611d6881611fe9565b60004790506000811115611da357611da2600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826122d6565b5b506000601060146101000a81548160ff02191690831515021790555050565b60008060009050600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611e4a57611e436064611e356009548661232190919063ffffffff16565b61239c90919063ffffffff16565b9050611ec8565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611ec757611ec46064611eb6600a548661232190919063ffffffff16565b61239c90919063ffffffff16565b90505b5b6000811115611fcc57611f2381600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fc3919061266c565b60405180910390a35b611fdf81846123e690919063ffffffff16565b9150509392505050565b6000600367ffffffffffffffff81111561200657612005612e20565b5b6040519080825280602002602001820160405280156120345781602001602082028036833780820191505090505b509050308160008151811061204c5761204b612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106120bd576120bc612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612164573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061218891906128b7565b8160028151811061219c5761219b612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061220330600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611413565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612267959493929190612f81565b600060405180830381600087803b15801561228157600080fd5b505af1158015612295573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a782826040516122ca929190612fdb565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561231c573d6000803e3d6000fd5b505050565b6000808314156123345760009050612396565b60008284612342919061300b565b90508284826123519190613094565b14612391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238890613137565b60405180910390fd5b809150505b92915050565b60006123de83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612430565b905092915050565b600061242883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aaf565b905092915050565b60008083118290612477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246e919061252c565b60405180910390fd5b50600083856124869190613094565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124cd5780820151818401526020810190506124b2565b838111156124dc576000848401525b50505050565b6000601f19601f8301169050919050565b60006124fe82612493565b612508818561249e565b93506125188185602086016124af565b612521816124e2565b840191505092915050565b6000602082019050818103600083015261254681846124f3565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061257e82612553565b9050919050565b61258e81612573565b811461259957600080fd5b50565b6000813590506125ab81612585565b92915050565b6000819050919050565b6125c4816125b1565b81146125cf57600080fd5b50565b6000813590506125e1816125bb565b92915050565b600080604083850312156125fe576125fd61254e565b5b600061260c8582860161259c565b925050602061261d858286016125d2565b9150509250929050565b60008115159050919050565b61263c81612627565b82525050565b60006020820190506126576000830184612633565b92915050565b612666816125b1565b82525050565b6000602082019050612681600083018461265d565b92915050565b6000806000606084860312156126a05761269f61254e565b5b60006126ae8682870161259c565b93505060206126bf8682870161259c565b92505060406126d0868287016125d2565b9150509250925092565b6126e381612573565b82525050565b60006020820190506126fe60008301846126da565b92915050565b600060ff82169050919050565b61271a81612704565b82525050565b60006020820190506127356000830184612711565b92915050565b6000602082840312156127515761275061254e565b5b600061275f848285016125d2565b91505092915050565b60006020828403121561277e5761277d61254e565b5b600061278c8482850161259c565b91505092915050565b600080604083850312156127ac576127ab61254e565b5b60006127ba8582860161259c565b92505060206127cb8582860161259c565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061281c57607f821691505b602082108114156128305761282f6127d5565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061286c60208361249e565b915061287782612836565b602082019050919050565b6000602082019050818103600083015261289b8161285f565b9050919050565b6000815190506128b181612585565b92915050565b6000602082840312156128cd576128cc61254e565b5b60006128db848285016128a2565b91505092915050565b60006040820190506128f960008301856126da565b61290660208301846126da565b9392505050565b600060408201905061292260008301856126da565b61292f602083018461265d565b9392505050565b61293f81612627565b811461294a57600080fd5b50565b60008151905061295c81612936565b92915050565b6000602082840312156129785761297761254e565b5b60006129868482850161294d565b91505092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006129eb60268361249e565b91506129f68261298f565b604082019050919050565b60006020820190508181036000830152612a1a816129de565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a7d60248361249e565b9150612a8882612a21565b604082019050919050565b60006020820190508181036000830152612aac81612a70565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b0f60228361249e565b9150612b1a82612ab3565b604082019050919050565b60006020820190508181036000830152612b3e81612b02565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612ba160258361249e565b9150612bac82612b45565b604082019050919050565b60006020820190508181036000830152612bd081612b94565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c3360238361249e565b9150612c3e82612bd7565b604082019050919050565b60006020820190508181036000830152612c6281612c26565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612cc560298361249e565b9150612cd082612c69565b604082019050919050565b60006020820190508181036000830152612cf481612cb8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612d35826125b1565b9150612d40836125b1565b925082821015612d5357612d52612cfb565b5b828203905092915050565b6000612d69826125b1565b9150612d74836125b1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612da957612da8612cfb565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612dea601b8361249e565b9150612df582612db4565b602082019050919050565b60006020820190508181036000830152612e1981612ddd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b6000612ead612ea8612ea384612e7e565b612e88565b6125b1565b9050919050565b612ebd81612e92565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612ef881612573565b82525050565b6000612f0a8383612eef565b60208301905092915050565b6000602082019050919050565b6000612f2e82612ec3565b612f388185612ece565b9350612f4383612edf565b8060005b83811015612f74578151612f5b8882612efe565b9750612f6683612f16565b925050600181019050612f47565b5085935050505092915050565b600060a082019050612f96600083018861265d565b612fa36020830187612eb4565b8181036040830152612fb58186612f23565b9050612fc460608301856126da565b612fd1608083018461265d565b9695505050505050565b6000604082019050612ff0600083018561265d565b81810360208301526130028184612f23565b90509392505050565b6000613016826125b1565b9150613021836125b1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561305a57613059612cfb565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061309f826125b1565b91506130aa836125b1565b9250826130ba576130b9613065565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061312160218361249e565b915061312c826130c5565b604082019050919050565b6000602082019050818103600083015261315081613114565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c5c3dd8afd24548ab94c2e0edfac892eb6d7209ee2ba18f0912b705cf39db17064736f6c634300080c0033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000002faf0800000000000000000000000000000000000000000000000000000000000000008426162793143415400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084261627931434154000000000000000000000000000000000000000000000000
Deployed Bytecode
0x60806040526004361061012e5760003560e01c806370a08231116100ab578063a457c2d71161006f578063a457c2d714610403578063a9059cbb14610440578063b2bdfa7b1461047d578063ca72a4e7146104a8578063dd62ed3e146104d1578063f2fde38b1461050e57610135565b806370a082311461032e5780638da5cb5b1461036b578063914eb66a1461039657806395d89b41146103ad578063a073d37f146103d857610135565b8063313ce567116100f2578063313ce5671461023557806339509351146102605780633b97084a1461029d5780633ecad271146102c6578063557ed1ba1461030357610135565b806306fdde031461013a578063095ea7b31461016557806318160ddd146101a257806323b872dd146101cd57806327c8f8351461020a57610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610537565b60405161015c919061252c565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906125e7565b6105c9565b6040516101999190612642565b60405180910390f35b3480156101ae57600080fd5b506101b76105e7565b6040516101c4919061266c565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef9190612687565b6105f1565b6040516102019190612642565b60405180910390f35b34801561021657600080fd5b5061021f6106cb565b60405161022c91906126e9565b60405180910390f35b34801561024157600080fd5b5061024a6106f1565b6040516102579190612720565b60405180910390f35b34801561026c57600080fd5b50610287600480360381019061028291906125e7565b610708565b6040516102949190612642565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf919061273b565b6107bb565b005b3480156102d257600080fd5b506102ed60048036038101906102e89190612768565b61085a565b6040516102fa9190612642565b60405180910390f35b34801561030f57600080fd5b5061031861087a565b604051610325919061266c565b60405180910390f35b34801561033a57600080fd5b5061035560048036038101906103509190612768565b610882565b604051610362919061266c565b60405180910390f35b34801561037757600080fd5b506103806108cb565b60405161038d91906126e9565b60405180910390f35b3480156103a257600080fd5b506103ab6108f4565b005b3480156103b957600080fd5b506103c2610a47565b6040516103cf919061252c565b60405180910390f35b3480156103e457600080fd5b506103ed610ad9565b6040516103fa919061266c565b60405180910390f35b34801561040f57600080fd5b5061042a600480360381019061042591906125e7565b610ae3565b6040516104379190612642565b60405180910390f35b34801561044c57600080fd5b50610467600480360381019061046291906125e7565b610bb0565b6040516104749190612642565b60405180910390f35b34801561048957600080fd5b50610492610bcf565b60405161049f91906126e9565b60405180910390f35b3480156104b457600080fd5b506104cf60048036038101906104ca9190612768565b610bf3565b005b3480156104dd57600080fd5b506104f860048036038101906104f39190612795565b6111c2565b604051610505919061266c565b60405180910390f35b34801561051a57600080fd5b5061053560048036038101906105309190612768565b611249565b005b60606001805461054690612804565b80601f016020809104026020016040519081016040528092919081815260200182805461057290612804565b80156105bf5780601f10610594576101008083540402835291602001916105bf565b820191906000526020600020905b8154815290600101906020018083116105a257829003601f168201915b5050505050905090565b60006105dd6105d661140b565b8484611413565b6001905092915050565b6000600b54905090565b60006105fe8484846115de565b506106c08461060b61140b565b6106bb8560405180606001604052806028815260200161315860289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061067161140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b611413565b600190509392505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900460ff16905090565b60006107b161071561140b565b846107ac856006600061072661140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b611413565b6001905092915050565b6107c361140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610850576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084790612882565b60405180910390fd5b80600c8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b600042905090565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6108fc61140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098090612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b606060028054610a5690612804565b80601f0160208091040260200160405190810160405280929190818152602001828054610a8290612804565b8015610acf5780601f10610aa457610100808354040283529160200191610acf565b820191906000526020600020905b815481529060010190602001808311610ab257829003601f168201915b5050505050905090565b6000600c54905090565b6000610ba6610af061140b565b84610ba1856040518060600160405280602581526020016131806025913960066000610b1a61140b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b611413565b6001905092915050565b6000610bc4610bbd61140b565b84846115de565b506001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610bfb61140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7f90612882565b60405180910390fd5b6001601060186101000a81548160ff0219169083151502179055506001601060176101000a81548160ff021916908315150217905550436011819055506001601060156101000a81548160ff021916908315150217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610db2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd691906128b7565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8391906128b7565b6040518363ffffffff1660e01b8152600401610ea09291906128e4565b602060405180830381865afa158015610ebd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee191906128b7565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fdd578073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f9492919061290d565b6020604051808303816000875af1158015610fb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd79190612962565b5061117d565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561104a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106e91906128b7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111b91906128b7565b6040518363ffffffff1660e01b81526004016111389291906128e4565b6020604051808303816000875af1158015611157573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117b91906128b7565b505b81600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61125161140b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d590612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134590612a01565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147a90612a93565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ea90612b25565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115d1919061266c565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561164f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164690612bb7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b690612c49565b60405180910390fd5b60008211611702576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f990612cdb565b60405180910390fd5b601060149054906101000a900460ff161561172957611722848484611b71565b9050611aa8565b600061173430610882565b9050601060149054906101000a900460ff1615801561179d5750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156117b55750601060159054906101000a900460ff165b1561182057601060169054906101000a900460ff16156117d557600c5490505b84600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061181f81611d44565b5b6118a9836040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061198f5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6119a35761199e868686611dc2565b6119a5565b835b90506119f981600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a99919061266c565b60405180910390a36001925050505b9392505050565b6000838311158290611af7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aee919061252c565b60405180910390fd5b5060008385611b069190612d2a565b9050809150509392505050565b6000808284611b229190612d5e565b905083811015611b67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5e90612e00565b60405180910390fd5b8091505092915050565b6000611bfc826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c9182600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d31919061266c565b60405180910390a3600190509392505050565b6001601060146101000a81548160ff021916908315150217905550611d6881611fe9565b60004790506000811115611da357611da2600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826122d6565b5b506000601060146101000a81548160ff02191690831515021790555050565b60008060009050600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611e4a57611e436064611e356009548661232190919063ffffffff16565b61239c90919063ffffffff16565b9050611ec8565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611ec757611ec46064611eb6600a548661232190919063ffffffff16565b61239c90919063ffffffff16565b90505b5b6000811115611fcc57611f2381600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1390919063ffffffff16565b600560008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fc3919061266c565b60405180910390a35b611fdf81846123e690919063ffffffff16565b9150509392505050565b6000600367ffffffffffffffff81111561200657612005612e20565b5b6040519080825280602002602001820160405280156120345781602001602082028036833780820191505090505b509050308160008151811061204c5761204b612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106120bd576120bc612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612164573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061218891906128b7565b8160028151811061219c5761219b612e4f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061220330600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611413565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612267959493929190612f81565b600060405180830381600087803b15801561228157600080fd5b505af1158015612295573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a782826040516122ca929190612fdb565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561231c573d6000803e3d6000fd5b505050565b6000808314156123345760009050612396565b60008284612342919061300b565b90508284826123519190613094565b14612391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238890613137565b60405180910390fd5b809150505b92915050565b60006123de83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612430565b905092915050565b600061242883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aaf565b905092915050565b60008083118290612477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246e919061252c565b60405180910390fd5b50600083856124869190613094565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124cd5780820151818401526020810190506124b2565b838111156124dc576000848401525b50505050565b6000601f19601f8301169050919050565b60006124fe82612493565b612508818561249e565b93506125188185602086016124af565b612521816124e2565b840191505092915050565b6000602082019050818103600083015261254681846124f3565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061257e82612553565b9050919050565b61258e81612573565b811461259957600080fd5b50565b6000813590506125ab81612585565b92915050565b6000819050919050565b6125c4816125b1565b81146125cf57600080fd5b50565b6000813590506125e1816125bb565b92915050565b600080604083850312156125fe576125fd61254e565b5b600061260c8582860161259c565b925050602061261d858286016125d2565b9150509250929050565b60008115159050919050565b61263c81612627565b82525050565b60006020820190506126576000830184612633565b92915050565b612666816125b1565b82525050565b6000602082019050612681600083018461265d565b92915050565b6000806000606084860312156126a05761269f61254e565b5b60006126ae8682870161259c565b93505060206126bf8682870161259c565b92505060406126d0868287016125d2565b9150509250925092565b6126e381612573565b82525050565b60006020820190506126fe60008301846126da565b92915050565b600060ff82169050919050565b61271a81612704565b82525050565b60006020820190506127356000830184612711565b92915050565b6000602082840312156127515761275061254e565b5b600061275f848285016125d2565b91505092915050565b60006020828403121561277e5761277d61254e565b5b600061278c8482850161259c565b91505092915050565b600080604083850312156127ac576127ab61254e565b5b60006127ba8582860161259c565b92505060206127cb8582860161259c565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061281c57607f821691505b602082108114156128305761282f6127d5565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061286c60208361249e565b915061287782612836565b602082019050919050565b6000602082019050818103600083015261289b8161285f565b9050919050565b6000815190506128b181612585565b92915050565b6000602082840312156128cd576128cc61254e565b5b60006128db848285016128a2565b91505092915050565b60006040820190506128f960008301856126da565b61290660208301846126da565b9392505050565b600060408201905061292260008301856126da565b61292f602083018461265d565b9392505050565b61293f81612627565b811461294a57600080fd5b50565b60008151905061295c81612936565b92915050565b6000602082840312156129785761297761254e565b5b60006129868482850161294d565b91505092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006129eb60268361249e565b91506129f68261298f565b604082019050919050565b60006020820190508181036000830152612a1a816129de565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a7d60248361249e565b9150612a8882612a21565b604082019050919050565b60006020820190508181036000830152612aac81612a70565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b0f60228361249e565b9150612b1a82612ab3565b604082019050919050565b60006020820190508181036000830152612b3e81612b02565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612ba160258361249e565b9150612bac82612b45565b604082019050919050565b60006020820190508181036000830152612bd081612b94565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c3360238361249e565b9150612c3e82612bd7565b604082019050919050565b60006020820190508181036000830152612c6281612c26565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612cc560298361249e565b9150612cd082612c69565b604082019050919050565b60006020820190508181036000830152612cf481612cb8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612d35826125b1565b9150612d40836125b1565b925082821015612d5357612d52612cfb565b5b828203905092915050565b6000612d69826125b1565b9150612d74836125b1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612da957612da8612cfb565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612dea601b8361249e565b9150612df582612db4565b602082019050919050565b60006020820190508181036000830152612e1981612ddd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b6000612ead612ea8612ea384612e7e565b612e88565b6125b1565b9050919050565b612ebd81612e92565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612ef881612573565b82525050565b6000612f0a8383612eef565b60208301905092915050565b6000602082019050919050565b6000612f2e82612ec3565b612f388185612ece565b9350612f4383612edf565b8060005b83811015612f74578151612f5b8882612efe565b9750612f6683612f16565b925050600181019050612f47565b5085935050505092915050565b600060a082019050612f96600083018861265d565b612fa36020830187612eb4565b8181036040830152612fb58186612f23565b9050612fc460608301856126da565b612fd1608083018461265d565b9695505050505050565b6000604082019050612ff0600083018561265d565b81810360208301526130028184612f23565b90509392505050565b6000613016826125b1565b9150613021836125b1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561305a57613059612cfb565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061309f826125b1565b91506130aa836125b1565b9250826130ba576130b9613065565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061312160218361249e565b915061312c826130c5565b604082019050919050565b6000602082019050818103600083015261315081613114565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c5c3dd8afd24548ab94c2e0edfac892eb6d7209ee2ba18f0912b705cf39db17064736f6c634300080c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000002faf0800000000000000000000000000000000000000000000000000000000000000008426162793143415400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084261627931434154000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : coinName (string): Baby1CAT
Arg [1] : coinSymbol (string): Baby1CAT
Arg [2] : coinDecimals (uint8): 18
Arg [3] : supply (uint256): 50000000
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000000000000000000002faf080
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [5] : 4261627931434154000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [7] : 4261627931434154000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
8010:9513:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10720:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12023:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10993:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13906:315;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8266:71;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10902:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11371:228;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12556:125;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8523:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6241:90;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11101:111;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5626:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5836:145;;;;;;;;;;;;;:::i;:::-;;10811:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11894:121;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11607:279;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13725:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5502:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12792:693;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11220:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5989:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10720:83;10757:13;10790:5;10783:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10720:83;:::o;12023:164::-;12098:4;12115:49;12124:12;:10;:12::i;:::-;12148:7;12157:6;12115:8;:49::i;:::-;12175:4;12168:11;;12023:164;;;;:::o;10993:100::-;11046:7;11073:12;;11066:19;;10993:100;:::o;13906:315::-;14004:4;14021:36;14031:6;14039:9;14050:6;14021:9;:36::i;:::-;;14060:131;14069:6;14077:12;:10;:12::i;:::-;14101:89;14139:6;14101:89;;;;;;;;;;;;;;;;;:11;:19;14113:6;14101:19;;;;;;;;;;;;;;;:33;14121:12;:10;:12::i;:::-;14101:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;14060:8;:131::i;:::-;14209:4;14202:11;;13906:315;;;;;:::o;8266:71::-;;;;;;;;;;;;;:::o;10902:83::-;10943:5;10968:9;;;;;;;;;;;10961:16;;10902:83;:::o;11371:228::-;11459:4;11476:93;11485:12;:10;:12::i;:::-;11499:7;11518:50;11557:10;11518:11;:25;11530:12;:10;:12::i;:::-;11518:25;;;;;;;;;;;;;;;:34;11544:7;11518:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;11476:8;:93::i;:::-;11587:4;11580:11;;11371:228;;;;:::o;12556:125::-;5763:12;:10;:12::i;:::-;5753:22;;:6;;;;;;;;;;:22;;;5745:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12665:8:::1;12638:24;:35;;;;12556:125:::0;:::o;8523:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6241:90::-;6281:7;6308:15;6301:22;;6241:90;:::o;11101:111::-;11167:7;11186:9;:18;11196:7;11186:18;;;;;;;;;;;;;;;;11179:25;;11101:111;;;:::o;5626:79::-;5664:7;5691:6;;;;;;;;;;;5684:13;;5626:79;:::o;5836:145::-;5763:12;:10;:12::i;:::-;5753:22;;:6;;;;;;;;;;:22;;;5745:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5940:1:::1;5903:40;;5924:6;::::0;::::1;;;;;;;;5903:40;;;;;;;;;;;;5971:1;5954:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5836:145::o:0;10811:83::-;10850:13;10883:7;10876:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10811:83;:::o;11894:121::-;11956:7;11983:24;;11976:31;;11894:121;:::o;11607:279::-;11700:4;11717:139;11726:12;:10;:12::i;:::-;11740:7;11759:96;11798:15;11759:96;;;;;;;;;;;;;;;;;:11;:25;11771:12;:10;:12::i;:::-;11759:25;;;;;;;;;;;;;;;:34;11785:7;11759:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;11717:8;:139::i;:::-;11874:4;11867:11;;11607:279;;;;:::o;13725:173::-;13809:4;13826:42;13836:12;:10;:12::i;:::-;13850:9;13861:6;13826:9;:42::i;:::-;;13886:4;13879:11;;13725:173;;;;:::o;5502:21::-;;;;;;;;;;;;:::o;12792:693::-;5763:12;:10;:12::i;:::-;5753:22;;:6;;;;;;;;;;:22;;;5745:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12875:4:::1;12861:11;;:18;;;;;;;;;;;;;;;;;;12895:4;12881:11;;:18;;;;;;;;;;;;;;;;;;12923:12;12910:10;:25;;;;12970:4;12946:21;;:28;;;;;;;;;;;;;;;;;;13022:7;;;;;;;;;;;12985:15;;:45;;;;;;;;;;;;;;;;;;13042:21;13084:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13066:52;;;13127:4;13134:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13066:91;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13042:115;;13196:1;13171:27;;:13;:27;;;13168:245;;13221:13;13214:29;;;13252:15;;;;;;;;;;;13270:14;13214:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13168:245;;;13334:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13316:55;;;13380:4;13387:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13316:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13168:245;13460:6;13423:15;;:44;;;;;;;;;;;;;;;;;;12850:635;12792:693:::0;:::o;11220:143::-;11301:7;11328:11;:18;11340:5;11328:18;;;;;;;;;;;;;;;:27;11347:7;11328:27;;;;;;;;;;;;;;;;11321:34;;11220:143;;;;:::o;5989:244::-;5763:12;:10;:12::i;:::-;5753:22;;:6;;;;;;;;;;:22;;;5745:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6098:1:::1;6078:22;;:8;:22;;;;6070:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6188:8;6159:38;;6180:6;::::0;::::1;;;;;;;;6159:38;;;;;;;;;;;;6217:8;6208:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;5989:244:::0;:::o;103:115::-;156:15;199:10;184:26;;103:115;:::o;12195:353::-;12311:1;12294:19;;:5;:19;;;;12286:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12392:1;12373:21;;:7;:21;;;;12365:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;12486:6;12456:11;:18;12468:5;12456:18;;;;;;;;;;;;;;;:27;12475:7;12456:27;;;;;;;;;;;;;;;:36;;;;12524:7;12508:32;;12517:5;12508:32;;;12533:6;12508:32;;;;;;:::i;:::-;;;;;;;;12195:353;;;:::o;14229:1329::-;14322:4;14367:1;14349:20;;:6;:20;;;;14341:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14451:1;14430:23;;:9;:23;;;;14422:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;14521:1;14512:6;:10;14504:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;14592:16;;;;;;;;;;;14589:962;;;14641:41;14656:6;14664:9;14675:6;14641:14;:41::i;:::-;14634:48;;;;14589:962;14735:28;14766:24;14784:4;14766:9;:24::i;:::-;14735:55;;14812:16;;;;;;;;;;;14811:17;:42;;;;;14833:12;:20;14846:6;14833:20;;;;;;;;;;;;;;;;;;;;;;;;;14832:21;14811:42;:67;;;;;14857:21;;;;;;;;;;;14811:67;14807:311;;;14915:25;;;;;;;;;;;14912:98;;;14986:24;;14963:47;;14912:98;15041:6;15029:9;;:18;;;;;;;;;;;;;;;;;;15066:36;15081:20;15066:14;:36::i;:::-;14807:311;15154:53;15176:6;15154:53;;;;;;;;;;;;;;;;;:9;:17;15164:6;15154:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;15134:9;:17;15144:6;15134:17;;;;;;;;;;;;;;;:73;;;;15224:19;15247:13;:21;15261:6;15247:21;;;;;;;;;;;;;;;;;;;;;;;;;:49;;;;15272:13;:24;15286:9;15272:24;;;;;;;;;;;;;;;;;;;;;;;;;15247:49;15246:139;;15351:34;15359:6;15367:9;15378:6;15351:7;:34::i;:::-;15246:139;;;15342:6;15246:139;15224:161;;15427:37;15452:11;15427:9;:20;15437:9;15427:20;;;;;;;;;;;;;;;;:24;;:37;;;;:::i;:::-;15404:9;:20;15414:9;15404:20;;;;;;;;;;;;;;;:60;;;;15503:9;15486:40;;15495:6;15486:40;;;15514:11;15486:40;;;;;;:::i;:::-;;;;;;;;15535:4;15528:11;;;;14229:1329;;;;;;:::o;1547:193::-;1639:7;1672:1;1667;:6;;1675:12;1659:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1699:9;1715:1;1711;:5;;;;:::i;:::-;1699:17;;1736:1;1729:8;;;1547:193;;;;;:::o;1214:181::-;1272:7;1292:9;1308:1;1304;:5;;;;:::i;:::-;1292:17;;1333:1;1328;:6;;1320:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1386:1;1379:8;;;1214:181;;;;:::o;15566:334::-;15659:4;15696:53;15718:6;15696:53;;;;;;;;;;;;;;;;;:9;:17;15706:6;15696:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;15676:9;:17;15686:6;15676:17;;;;;;;;;;;;;;;:73;;;;15783:32;15808:6;15783:9;:20;15793:9;15783:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;15760:9;:20;15770:9;15760:20;;;;;;;;;;;;;;;:55;;;;15852:9;15831:39;;15840:6;15831:39;;;15863:6;15831:39;;;;;;:::i;:::-;;;;;;;;15888:4;15881:11;;15566:334;;;;;:::o;15910:305::-;9503:4;9484:16;;:23;;;;;;;;;;;;;;;;;;16014:25:::1;16031:7;16014:16;:25::i;:::-;16050:22;16075:21;16050:46;;16129:1;16112:14;:18;16109:96;;;16145:60;16166:22;;;;;;;;;;;16190:14;16145:20;:60::i;:::-;16109:96;15971:244;9549:5:::0;9530:16;;:24;;;;;;;;;;;;;;;;;;15910:305;:::o;16911:602::-;16997:7;17019:17;17039:1;17019:21;;17054:12;:20;17067:6;17054:20;;;;;;;;;;;;;;;;;;;;;;;;;17051:237;;;17103:38;17137:3;17103:29;17114:17;;17103:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;17091:50;;17051:237;;;17185:12;:23;17198:9;17185:23;;;;;;;;;;;;;;;;;;;;;;;;;17182:106;;;17237:39;17272:3;17237:30;17248:18;;17237:6;:10;;:30;;;;:::i;:::-;:34;;:39;;;;:::i;:::-;17225:51;;17182:106;17051:237;17313:1;17301:9;:13;17298:170;;;17355:39;17384:9;17355;:24;17373:4;17355:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;17331:9;:21;17349:1;17331:21;;;;;;;;;;;;;;;:63;;;;17439:4;17414:42;;17423:6;17414:42;;;17446:9;17414:42;;;;;;:::i;:::-;;;;;;;;17298:170;17487:21;17498:9;17487:6;:10;;:21;;;;:::i;:::-;17480:28;;;16911:602;;;;;:::o;16223:676::-;16349:21;16387:1;16373:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16349:40;;16418:4;16400;16405:1;16400:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;16436:9;;;;;;;;;;;16426:4;16431:1;16426:7;;;;;;;;:::i;:::-;;;;;;;:19;;;;;;;;;;;16466:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16456:4;16461:1;16456:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;16501:62;16518:4;16533:15;;;;;;;;;;;16551:11;16501:8;:62::i;:::-;16610:15;;;;;;;;;;;:66;;;16687:11;16709:1;16749:4;16772;16804:15;16610:220;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16856:35;16873:11;16886:4;16856:35;;;;;;;:::i;:::-;;;;;;;;16278:621;16223:676;:::o;13493:126::-;13585:9;:18;;:26;13604:6;13585:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13493:126;;:::o;1748:250::-;1806:7;1835:1;1830;:6;1826:47;;;1860:1;1853:8;;;;1826:47;1885:9;1901:1;1897;:5;;;;:::i;:::-;1885:17;;1930:1;1925;1921;:5;;;;:::i;:::-;:10;1913:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1989:1;1982:8;;;1748:250;;;;;:::o;2006:132::-;2064:7;2091:39;2095:1;2098;2091:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2084:46;;2006:132;;;;:::o;1403:136::-;1461:7;1488:43;1492:1;1495;1488:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1481:50;;1403:136;;;;:::o;2146:284::-;2238:7;2270:1;2266;:5;2273:12;2258:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2297:9;2313:1;2309;:5;;;;:::i;:::-;2297:17;;2421:1;2414:8;;;2146:284;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:118::-;4558:24;4576:5;4558:24;:::i;:::-;4553:3;4546:37;4471:118;;:::o;4595:222::-;4688:4;4726:2;4715:9;4711:18;4703:26;;4739:71;4807:1;4796:9;4792:17;4783:6;4739:71;:::i;:::-;4595:222;;;;:::o;4823:86::-;4858:7;4898:4;4891:5;4887:16;4876:27;;4823:86;;;:::o;4915:112::-;4998:22;5014:5;4998:22;:::i;:::-;4993:3;4986:35;4915:112;;:::o;5033:214::-;5122:4;5160:2;5149:9;5145:18;5137:26;;5173:67;5237:1;5226:9;5222:17;5213:6;5173:67;:::i;:::-;5033:214;;;;:::o;5253:329::-;5312:6;5361:2;5349:9;5340:7;5336:23;5332:32;5329:119;;;5367:79;;:::i;:::-;5329:119;5487:1;5512:53;5557:7;5548:6;5537:9;5533:22;5512:53;:::i;:::-;5502:63;;5458:117;5253:329;;;;:::o;5588:::-;5647:6;5696:2;5684:9;5675:7;5671:23;5667:32;5664:119;;;5702:79;;:::i;:::-;5664:119;5822:1;5847:53;5892:7;5883:6;5872:9;5868:22;5847:53;:::i;:::-;5837:63;;5793:117;5588:329;;;;:::o;5923:474::-;5991:6;5999;6048:2;6036:9;6027:7;6023:23;6019:32;6016:119;;;6054:79;;:::i;:::-;6016:119;6174:1;6199:53;6244:7;6235:6;6224:9;6220:22;6199:53;:::i;:::-;6189:63;;6145:117;6301:2;6327:53;6372:7;6363:6;6352:9;6348:22;6327:53;:::i;:::-;6317:63;;6272:118;5923:474;;;;;:::o;6403:180::-;6451:77;6448:1;6441:88;6548:4;6545:1;6538:15;6572:4;6569:1;6562:15;6589:320;6633:6;6670:1;6664:4;6660:12;6650:22;;6717:1;6711:4;6707:12;6738:18;6728:81;;6794:4;6786:6;6782:17;6772:27;;6728:81;6856:2;6848:6;6845:14;6825:18;6822:38;6819:84;;;6875:18;;:::i;:::-;6819:84;6640:269;6589:320;;;:::o;6915:182::-;7055:34;7051:1;7043:6;7039:14;7032:58;6915:182;:::o;7103:366::-;7245:3;7266:67;7330:2;7325:3;7266:67;:::i;:::-;7259:74;;7342:93;7431:3;7342:93;:::i;:::-;7460:2;7455:3;7451:12;7444:19;;7103:366;;;:::o;7475:419::-;7641:4;7679:2;7668:9;7664:18;7656:26;;7728:9;7722:4;7718:20;7714:1;7703:9;7699:17;7692:47;7756:131;7882:4;7756:131;:::i;:::-;7748:139;;7475:419;;;:::o;7900:143::-;7957:5;7988:6;7982:13;7973:22;;8004:33;8031:5;8004:33;:::i;:::-;7900:143;;;;:::o;8049:351::-;8119:6;8168:2;8156:9;8147:7;8143:23;8139:32;8136:119;;;8174:79;;:::i;:::-;8136:119;8294:1;8319:64;8375:7;8366:6;8355:9;8351:22;8319:64;:::i;:::-;8309:74;;8265:128;8049:351;;;;:::o;8406:332::-;8527:4;8565:2;8554:9;8550:18;8542:26;;8578:71;8646:1;8635:9;8631:17;8622:6;8578:71;:::i;:::-;8659:72;8727:2;8716:9;8712:18;8703:6;8659:72;:::i;:::-;8406:332;;;;;:::o;8744:::-;8865:4;8903:2;8892:9;8888:18;8880:26;;8916:71;8984:1;8973:9;8969:17;8960:6;8916:71;:::i;:::-;8997:72;9065:2;9054:9;9050:18;9041:6;8997:72;:::i;:::-;8744:332;;;;;:::o;9082:116::-;9152:21;9167:5;9152:21;:::i;:::-;9145:5;9142:32;9132:60;;9188:1;9185;9178:12;9132:60;9082:116;:::o;9204:137::-;9258:5;9289:6;9283:13;9274:22;;9305:30;9329:5;9305:30;:::i;:::-;9204:137;;;;:::o;9347:345::-;9414:6;9463:2;9451:9;9442:7;9438:23;9434:32;9431:119;;;9469:79;;:::i;:::-;9431:119;9589:1;9614:61;9667:7;9658:6;9647:9;9643:22;9614:61;:::i;:::-;9604:71;;9560:125;9347:345;;;;:::o;9698:225::-;9838:34;9834:1;9826:6;9822:14;9815:58;9907:8;9902:2;9894:6;9890:15;9883:33;9698:225;:::o;9929:366::-;10071:3;10092:67;10156:2;10151:3;10092:67;:::i;:::-;10085:74;;10168:93;10257:3;10168:93;:::i;:::-;10286:2;10281:3;10277:12;10270:19;;9929:366;;;:::o;10301:419::-;10467:4;10505:2;10494:9;10490:18;10482:26;;10554:9;10548:4;10544:20;10540:1;10529:9;10525:17;10518:47;10582:131;10708:4;10582:131;:::i;:::-;10574:139;;10301:419;;;:::o;10726:223::-;10866:34;10862:1;10854:6;10850:14;10843:58;10935:6;10930:2;10922:6;10918:15;10911:31;10726:223;:::o;10955:366::-;11097:3;11118:67;11182:2;11177:3;11118:67;:::i;:::-;11111:74;;11194:93;11283:3;11194:93;:::i;:::-;11312:2;11307:3;11303:12;11296:19;;10955:366;;;:::o;11327:419::-;11493:4;11531:2;11520:9;11516:18;11508:26;;11580:9;11574:4;11570:20;11566:1;11555:9;11551:17;11544:47;11608:131;11734:4;11608:131;:::i;:::-;11600:139;;11327:419;;;:::o;11752:221::-;11892:34;11888:1;11880:6;11876:14;11869:58;11961:4;11956:2;11948:6;11944:15;11937:29;11752:221;:::o;11979:366::-;12121:3;12142:67;12206:2;12201:3;12142:67;:::i;:::-;12135:74;;12218:93;12307:3;12218:93;:::i;:::-;12336:2;12331:3;12327:12;12320:19;;11979:366;;;:::o;12351:419::-;12517:4;12555:2;12544:9;12540:18;12532:26;;12604:9;12598:4;12594:20;12590:1;12579:9;12575:17;12568:47;12632:131;12758:4;12632:131;:::i;:::-;12624:139;;12351:419;;;:::o;12776:224::-;12916:34;12912:1;12904:6;12900:14;12893:58;12985:7;12980:2;12972:6;12968:15;12961:32;12776:224;:::o;13006:366::-;13148:3;13169:67;13233:2;13228:3;13169:67;:::i;:::-;13162:74;;13245:93;13334:3;13245:93;:::i;:::-;13363:2;13358:3;13354:12;13347:19;;13006:366;;;:::o;13378:419::-;13544:4;13582:2;13571:9;13567:18;13559:26;;13631:9;13625:4;13621:20;13617:1;13606:9;13602:17;13595:47;13659:131;13785:4;13659:131;:::i;:::-;13651:139;;13378:419;;;:::o;13803:222::-;13943:34;13939:1;13931:6;13927:14;13920:58;14012:5;14007:2;13999:6;13995:15;13988:30;13803:222;:::o;14031:366::-;14173:3;14194:67;14258:2;14253:3;14194:67;:::i;:::-;14187:74;;14270:93;14359:3;14270:93;:::i;:::-;14388:2;14383:3;14379:12;14372:19;;14031:366;;;:::o;14403:419::-;14569:4;14607:2;14596:9;14592:18;14584:26;;14656:9;14650:4;14646:20;14642:1;14631:9;14627:17;14620:47;14684:131;14810:4;14684:131;:::i;:::-;14676:139;;14403:419;;;:::o;14828:228::-;14968:34;14964:1;14956:6;14952:14;14945:58;15037:11;15032:2;15024:6;15020:15;15013:36;14828:228;:::o;15062:366::-;15204:3;15225:67;15289:2;15284:3;15225:67;:::i;:::-;15218:74;;15301:93;15390:3;15301:93;:::i;:::-;15419:2;15414:3;15410:12;15403:19;;15062:366;;;:::o;15434:419::-;15600:4;15638:2;15627:9;15623:18;15615:26;;15687:9;15681:4;15677:20;15673:1;15662:9;15658:17;15651:47;15715:131;15841:4;15715:131;:::i;:::-;15707:139;;15434:419;;;:::o;15859:180::-;15907:77;15904:1;15897:88;16004:4;16001:1;15994:15;16028:4;16025:1;16018:15;16045:191;16085:4;16105:20;16123:1;16105:20;:::i;:::-;16100:25;;16139:20;16157:1;16139:20;:::i;:::-;16134:25;;16178:1;16175;16172:8;16169:34;;;16183:18;;:::i;:::-;16169:34;16228:1;16225;16221:9;16213:17;;16045:191;;;;:::o;16242:305::-;16282:3;16301:20;16319:1;16301:20;:::i;:::-;16296:25;;16335:20;16353:1;16335:20;:::i;:::-;16330:25;;16489:1;16421:66;16417:74;16414:1;16411:81;16408:107;;;16495:18;;:::i;:::-;16408:107;16539:1;16536;16532:9;16525:16;;16242:305;;;;:::o;16553:177::-;16693:29;16689:1;16681:6;16677:14;16670:53;16553:177;:::o;16736:366::-;16878:3;16899:67;16963:2;16958:3;16899:67;:::i;:::-;16892:74;;16975:93;17064:3;16975:93;:::i;:::-;17093:2;17088:3;17084:12;17077:19;;16736:366;;;:::o;17108:419::-;17274:4;17312:2;17301:9;17297:18;17289:26;;17361:9;17355:4;17351:20;17347:1;17336:9;17332:17;17325:47;17389:131;17515:4;17389:131;:::i;:::-;17381:139;;17108:419;;;:::o;17533:180::-;17581:77;17578:1;17571:88;17678:4;17675:1;17668:15;17702:4;17699:1;17692:15;17719:180;17767:77;17764:1;17757:88;17864:4;17861:1;17854:15;17888:4;17885:1;17878:15;17905:85;17950:7;17979:5;17968:16;;17905:85;;;:::o;17996:60::-;18024:3;18045:5;18038:12;;17996:60;;;:::o;18062:158::-;18120:9;18153:61;18171:42;18180:32;18206:5;18180:32;:::i;:::-;18171:42;:::i;:::-;18153:61;:::i;:::-;18140:74;;18062:158;;;:::o;18226:147::-;18321:45;18360:5;18321:45;:::i;:::-;18316:3;18309:58;18226:147;;:::o;18379:114::-;18446:6;18480:5;18474:12;18464:22;;18379:114;;;:::o;18499:184::-;18598:11;18632:6;18627:3;18620:19;18672:4;18667:3;18663:14;18648:29;;18499:184;;;;:::o;18689:132::-;18756:4;18779:3;18771:11;;18809:4;18804:3;18800:14;18792:22;;18689:132;;;:::o;18827:108::-;18904:24;18922:5;18904:24;:::i;:::-;18899:3;18892:37;18827:108;;:::o;18941:179::-;19010:10;19031:46;19073:3;19065:6;19031:46;:::i;:::-;19109:4;19104:3;19100:14;19086:28;;18941:179;;;;:::o;19126:113::-;19196:4;19228;19223:3;19219:14;19211:22;;19126:113;;;:::o;19275:732::-;19394:3;19423:54;19471:5;19423:54;:::i;:::-;19493:86;19572:6;19567:3;19493:86;:::i;:::-;19486:93;;19603:56;19653:5;19603:56;:::i;:::-;19682:7;19713:1;19698:284;19723:6;19720:1;19717:13;19698:284;;;19799:6;19793:13;19826:63;19885:3;19870:13;19826:63;:::i;:::-;19819:70;;19912:60;19965:6;19912:60;:::i;:::-;19902:70;;19758:224;19745:1;19742;19738:9;19733:14;;19698:284;;;19702:14;19998:3;19991:10;;19399:608;;;19275:732;;;;:::o;20013:831::-;20276:4;20314:3;20303:9;20299:19;20291:27;;20328:71;20396:1;20385:9;20381:17;20372:6;20328:71;:::i;:::-;20409:80;20485:2;20474:9;20470:18;20461:6;20409:80;:::i;:::-;20536:9;20530:4;20526:20;20521:2;20510:9;20506:18;20499:48;20564:108;20667:4;20658:6;20564:108;:::i;:::-;20556:116;;20682:72;20750:2;20739:9;20735:18;20726:6;20682:72;:::i;:::-;20764:73;20832:3;20821:9;20817:19;20808:6;20764:73;:::i;:::-;20013:831;;;;;;;;:::o;20850:483::-;21021:4;21059:2;21048:9;21044:18;21036:26;;21072:71;21140:1;21129:9;21125:17;21116:6;21072:71;:::i;:::-;21190:9;21184:4;21180:20;21175:2;21164:9;21160:18;21153:48;21218:108;21321:4;21312:6;21218:108;:::i;:::-;21210:116;;20850:483;;;;;:::o;21339:348::-;21379:7;21402:20;21420:1;21402:20;:::i;:::-;21397:25;;21436:20;21454:1;21436:20;:::i;:::-;21431:25;;21624:1;21556:66;21552:74;21549:1;21546:81;21541:1;21534:9;21527:17;21523:105;21520:131;;;21631:18;;:::i;:::-;21520:131;21679:1;21676;21672:9;21661:20;;21339:348;;;;:::o;21693:180::-;21741:77;21738:1;21731:88;21838:4;21835:1;21828:15;21862:4;21859:1;21852:15;21879:185;21919:1;21936:20;21954:1;21936:20;:::i;:::-;21931:25;;21970:20;21988:1;21970:20;:::i;:::-;21965:25;;22009:1;21999:35;;22014:18;;:::i;:::-;21999:35;22056:1;22053;22049:9;22044:14;;21879:185;;;;:::o;22070:220::-;22210:34;22206:1;22198:6;22194:14;22187:58;22279:3;22274:2;22266:6;22262:15;22255:28;22070:220;:::o;22296:366::-;22438:3;22459:67;22523:2;22518:3;22459:67;:::i;:::-;22452:74;;22535:93;22624:3;22535:93;:::i;:::-;22653:2;22648:3;22644:12;22637:19;;22296:366;;;:::o;22668:419::-;22834:4;22872:2;22861:9;22857:18;22849:26;;22921:9;22915:4;22911:20;22907:1;22896:9;22892:17;22885:47;22949:131;23075:4;22949:131;:::i;:::-;22941:139;;22668:419;;;:::o
Swarm Source
ipfs://c5c3dd8afd24548ab94c2e0edfac892eb6d7209ee2ba18f0912b705cf39db170
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.