More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 47 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 17755549 | 978 days ago | IN | 0 ETH | 0.00098994 | ||||
| Transfer | 17755538 | 978 days ago | IN | 0 ETH | 0.00095995 | ||||
| Transfer | 17755531 | 978 days ago | IN | 0 ETH | 0.00106187 | ||||
| Transfer | 17755521 | 978 days ago | IN | 0 ETH | 0.00092521 | ||||
| Transfer | 17755514 | 978 days ago | IN | 0 ETH | 0.00097369 | ||||
| Transfer | 17755503 | 978 days ago | IN | 0 ETH | 0.00104431 | ||||
| Transfer | 17755494 | 978 days ago | IN | 0 ETH | 0.00096742 | ||||
| Transfer | 17755487 | 978 days ago | IN | 0 ETH | 0.00105121 | ||||
| Transfer | 17755478 | 978 days ago | IN | 0 ETH | 0.00102155 | ||||
| Transfer | 17755469 | 978 days ago | IN | 0 ETH | 0.00099671 | ||||
| Transfer | 17719420 | 983 days ago | IN | 0 ETH | 0.002329 | ||||
| Transfer | 17719405 | 983 days ago | IN | 0 ETH | 0.00315955 | ||||
| Transfer | 17719395 | 983 days ago | IN | 0 ETH | 0.00243518 | ||||
| Transfer | 17719386 | 983 days ago | IN | 0 ETH | 0.00352638 | ||||
| Transfer | 17719377 | 983 days ago | IN | 0 ETH | 0.0031943 | ||||
| Transfer | 17701272 | 985 days ago | IN | 0 ETH | 0.00091272 | ||||
| Transfer | 17701261 | 985 days ago | IN | 0 ETH | 0.00115628 | ||||
| Transfer | 17701253 | 985 days ago | IN | 0 ETH | 0.00087685 | ||||
| Transfer | 17701245 | 985 days ago | IN | 0 ETH | 0.00121591 | ||||
| Transfer | 17701220 | 985 days ago | IN | 0 ETH | 0.00104957 | ||||
| Transfer | 17701212 | 985 days ago | IN | 0 ETH | 0.00091052 | ||||
| Transfer | 17701204 | 985 days ago | IN | 0 ETH | 0.00096988 | ||||
| Transfer | 17701194 | 985 days ago | IN | 0 ETH | 0.00089361 | ||||
| Approve | 17701118 | 985 days ago | IN | 0 ETH | 0.00066013 | ||||
| Transfer | 17684018 | 988 days ago | IN | 0 ETH | 0.00120432 |
Latest 15 internal transactions
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Add Liquidity ET... | 17655598 | 992 days ago | 0.00108279 ETH | ||||
| Transfer | 17655598 | 992 days ago | 0.00144372 ETH | ||||
| Transfer | 17655598 | 992 days ago | 0.00288745 ETH | ||||
| Add Liquidity ET... | 17648206 | 993 days ago | 0.00108264 ETH | ||||
| Transfer | 17648206 | 993 days ago | 0.00144352 ETH | ||||
| Transfer | 17648206 | 993 days ago | 0.00288705 ETH | ||||
| Add Liquidity ET... | 17648094 | 993 days ago | 0.00108367 ETH | ||||
| Transfer | 17648094 | 993 days ago | 0.00144489 ETH | ||||
| Transfer | 17648094 | 993 days ago | 0.00288979 ETH | ||||
| Add Liquidity ET... | 17647823 | 993 days ago | 0.00107136 ETH | ||||
| Transfer | 17647823 | 993 days ago | 0.00142848 ETH | ||||
| Transfer | 17647823 | 993 days ago | 0.00285697 ETH | ||||
| Add Liquidity ET... | 17647793 | 993 days ago | 0.00108147 ETH | ||||
| Transfer | 17647793 | 993 days ago | 0.00144196 ETH | ||||
| Transfer | 17647793 | 993 days ago | 0.00288392 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
KIMIYO
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2023-05-09
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
interface ERC20 {
function totalSupply() external view returns (uint256);
function decimals() external view returns (uint8);
function symbol() external view returns (string memory);
function name() external view returns (string memory);
function getOwner() external view returns (address);
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;
return c;
}
}
abstract contract Ownable {
address internal owner;
constructor(address _owner) {
owner = _owner;
}
modifier onlyOwner() {
require(isOwner(msg.sender), "!OWNER"); _;
}
function isOwner(address account) public view returns (bool) {
return account == owner;
}
function renounceOwnership() public onlyOwner {
owner = address(0);
emit OwnershipTransferred(address(0));
}
event OwnershipTransferred(address owner);
}
interface IDEXFactory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IDEXRouter {
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 swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external payable;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
contract KIMIYO is ERC20, Ownable {
using SafeMath for uint256;
// IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
address DEAD = 0x000000000000000000000000000000000000dEaD;
string constant _name = "KIMIYO";
string constant _symbol = "KIMIYO";
uint8 constant _decimals = 18;
uint256 public _totalSupply = 1300500700900 * (10 ** _decimals);
uint256 public _maxWalletAmount = 1300500700900 * (10 ** _decimals);
uint256 public _maxTxAmount = 1300500700900 * (10 ** _decimals);
mapping (address => uint256) _balances;
mapping (address => mapping (address => uint256)) _allowances;
mapping (address => bool) isFeeExempt;
mapping (address => bool) isTxLimitExempt;
uint256 liquidityFee = 3;
uint256 marketingFee = 2;
uint256 totalFee = liquidityFee + marketingFee;
uint256 feeDenominator = 100;
address public marketingFeeReceiver = 0xE6aFF34D422e3d47B0DdB33420Ab1db3b3A1c9ad;
IDEXRouter public router;
address public pair;
bool public swapEnabled = true;
uint256 public swapThreshold = 10_000_000 * (10 ** _decimals); // Should be 0.1%
bool inSwap;
modifier swapping() { inSwap = true; _; inSwap = false; }
constructor () Ownable(msg.sender) {
router = IDEXRouter(routerAdress);
pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this));
_allowances[address(this)][address(router)] = type(uint256).max;
address _owner = owner;
isFeeExempt[marketingFeeReceiver] = true;
isTxLimitExempt[_owner] = true;
isTxLimitExempt[marketingFeeReceiver] = true;
isTxLimitExempt[DEAD] = true;
_balances[_owner] = _totalSupply;
emit Transfer(address(0), _owner, _totalSupply);
}
receive() external payable { }
function totalSupply() external view override returns (uint256) { return _totalSupply; }
function decimals() external pure override returns (uint8) { return _decimals; }
function symbol() external pure override returns (string memory) { return _symbol; }
function name() external pure override returns (string memory) { return _name; }
function getOwner() external view override returns (address) { return owner; }
function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }
function approve(address spender, uint256 amount) public override returns (bool) {
_allowances[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function approveMax(address spender) external returns (bool) {
return approve(spender, type(uint256).max);
}
function transfer(address recipient, uint256 amount) external override returns (bool) {
return _transferFrom(msg.sender, recipient, amount);
}
function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
if(_allowances[sender][msg.sender] != type(uint256).max){
_allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
}
return _transferFrom(sender, recipient, amount);
}
function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
if(inSwap){ return _basicTransfer(sender, recipient, amount); }
if (recipient != pair && recipient != DEAD) {
require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletAmount, "Transfer amount exceeds the bag size.");
}
if(shouldSwapBack()){ swapBack(); }
_balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, amount) : amount;
_balances[recipient] = _balances[recipient].add(amountReceived);
emit Transfer(sender, recipient, amountReceived);
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 shouldTakeFee(address sender) internal view returns (bool) {
return !isFeeExempt[sender];
}
function takeFee(address sender, uint256 amount) internal returns (uint256) {
uint256 feeAmount = amount.mul(totalFee).div(feeDenominator);
_balances[address(this)] = _balances[address(this)].add(feeAmount);
emit Transfer(sender, address(this), feeAmount);
return amount.sub(feeAmount);
}
function shouldSwapBack() internal view returns (bool) {
return msg.sender != pair
&& !inSwap
&& swapEnabled
&& _balances[address(this)] >= swapThreshold;
}
function swapBack() internal swapping {
uint256 contractTokenBalance = swapThreshold;
uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2);
uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify);
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = router.WETH();
uint256 balanceBefore = address(this).balance;
router.swapExactTokensForETHSupportingFeeOnTransferTokens(
amountToSwap,
0,
path,
address(this),
block.timestamp
);
uint256 amountETH = address(this).balance.sub(balanceBefore);
uint256 totalETHFee = totalFee.sub(liquidityFee.div(2));
uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2);
uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee);
(bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountETHMarketing, gas: 30000}("");
require(MarketingSuccess, "receiver rejected ETH transfer");
if(amountToLiquify > 0){
router.addLiquidityETH{value: amountETHLiquidity}(
address(this),
amountToLiquify,
0,
0,
marketingFeeReceiver,
block.timestamp
);
emit AutoLiquify(amountETHLiquidity, amountToLiquify);
}
}
function buyTokens(uint256 amount, address to) internal swapping {
address[] memory path = new address[](2);
path[0] = router.WETH();
path[1] = address(this);
router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
0,
path,
to,
block.timestamp
);
}
function clearStuckBalance() external {
payable(marketingFeeReceiver).transfer(address(this).balance);
}
function setWalletLimit(uint256 amountPercent) external onlyOwner {
_maxWalletAmount = (_totalSupply * amountPercent ) / 1000;
}
function setFee(uint256 _liquidityFee, uint256 _marketingFee) external onlyOwner {
liquidityFee = _liquidityFee;
marketingFee = _marketingFee;
totalFee = liquidityFee + marketingFee;
}
event AutoLiquify(uint256 amountETH, uint256 amountBOG);
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","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":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercent","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a620000ac919062000961565b65012ecbe1dee4620000bf9190620009b2565b6003556012600a620000d2919062000961565b65012ecbe1dee4620000e59190620009b2565b6004556012600a620000f8919062000961565b65012ecbe1dee46200010b9190620009b2565b6005556003600a556002600b55600b54600a546200012a9190620009fd565b600c556064600d5573e6aff34d422e3d47b0ddb33420ab1db3b3a1c9ad600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601060146101000a81548160ff0219169083151502179055506012600a620001b2919062000961565b62989680620001c29190620009b2565b601155348015620001d257600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002e6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030c919062000aa2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000395573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003bb919062000aa2565b306040518363ffffffff1660e01b8152600401620003db92919062000ae5565b6020604051808303816000875af1158015620003fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000421919062000aa2565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600354600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600354604051620007b8919062000b23565b60405180910390a35062000b40565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000855578086048111156200082d576200082c620007c7565b5b60018516156200083d5780820291505b80810290506200084d85620007f6565b94506200080d565b94509492505050565b60008262000870576001905062000943565b8162000880576000905062000943565b8160018114620008995760028114620008a457620008da565b600191505062000943565b60ff841115620008b957620008b8620007c7565b5b8360020a915084821115620008d357620008d2620007c7565b5b5062000943565b5060208310610133831016604e8410600b8410161715620009145782820a9050838111156200090e576200090d620007c7565b5b62000943565b62000923848484600162000803565b925090508184048111156200093d576200093c620007c7565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200096e826200094a565b91506200097b8362000954565b9250620009aa7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200085e565b905092915050565b6000620009bf826200094a565b9150620009cc836200094a565b9250828202620009dc816200094a565b91508282048414831517620009f657620009f5620007c7565b5b5092915050565b600062000a0a826200094a565b915062000a17836200094a565b925082820190508082111562000a325762000a31620007c7565b5b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000a6a8262000a3d565b9050919050565b62000a7c8162000a5d565b811462000a8857600080fd5b50565b60008151905062000a9c8162000a71565b92915050565b60006020828403121562000abb5762000aba62000a38565b5b600062000acb8482850162000a8b565b91505092915050565b62000adf8162000a5d565b82525050565b600060408201905062000afc600083018562000ad4565b62000b0b602083018462000ad4565b9392505050565b62000b1d816200094a565b82525050565b600060208201905062000b3a600083018462000b12565b92915050565b6127f58062000b506000396000f3fe60806040526004361061014f5760003560e01c80636ddd1713116100b6578063a8aa1b311161006f578063a8aa1b3114610491578063a9059cbb146104bc578063dd62ed3e146104f9578063e96fada214610536578063f1d5f51714610561578063f887ea401461058a57610156565b80636ddd17131461039157806370a08231146103bc578063715018a6146103f95780637d1db4a514610410578063893d20e81461043b57806395d89b411461046657610156565b8063313ce56711610108578063313ce56714610293578063364333f4146102be5780633eaaf86b146102d557806352f7c98814610300578063571ac8b0146103295780636c0a24eb1461036657610156565b80630445b6671461015b57806306fdde0314610186578063095ea7b3146101b157806318160ddd146101ee57806323b872dd146102195780632f54bf6e1461025657610156565b3661015657005b600080fd5b34801561016757600080fd5b506101706105b5565b60405161017d9190611d19565b60405180910390f35b34801561019257600080fd5b5061019b6105bb565b6040516101a89190611dc4565b60405180910390f35b3480156101bd57600080fd5b506101d860048036038101906101d39190611e75565b6105f8565b6040516101e59190611ed0565b60405180910390f35b3480156101fa57600080fd5b506102036106ea565b6040516102109190611d19565b60405180910390f35b34801561022557600080fd5b50610240600480360381019061023b9190611eeb565b6106f4565b60405161024d9190611ed0565b60405180910390f35b34801561026257600080fd5b5061027d60048036038101906102789190611f3e565b6108f4565b60405161028a9190611ed0565b60405180910390f35b34801561029f57600080fd5b506102a861094d565b6040516102b59190611f87565b60405180910390f35b3480156102ca57600080fd5b506102d3610956565b005b3480156102e157600080fd5b506102ea6109c1565b6040516102f79190611d19565b60405180910390f35b34801561030c57600080fd5b5061032760048036038101906103229190611fa2565b6109c7565b005b34801561033557600080fd5b50610350600480360381019061034b9190611f3e565b610a37565b60405161035d9190611ed0565b60405180910390f35b34801561037257600080fd5b5061037b610a6a565b6040516103889190611d19565b60405180910390f35b34801561039d57600080fd5b506103a6610a70565b6040516103b39190611ed0565b60405180910390f35b3480156103c857600080fd5b506103e360048036038101906103de9190611f3e565b610a83565b6040516103f09190611d19565b60405180910390f35b34801561040557600080fd5b5061040e610acc565b005b34801561041c57600080fd5b50610425610b8f565b6040516104329190611d19565b60405180910390f35b34801561044757600080fd5b50610450610b95565b60405161045d9190611ff1565b60405180910390f35b34801561047257600080fd5b5061047b610bbe565b6040516104889190611dc4565b60405180910390f35b34801561049d57600080fd5b506104a6610bfb565b6040516104b39190611ff1565b60405180910390f35b3480156104c857600080fd5b506104e360048036038101906104de9190611e75565b610c21565b6040516104f09190611ed0565b60405180910390f35b34801561050557600080fd5b50610520600480360381019061051b919061200c565b610c36565b60405161052d9190611d19565b60405180910390f35b34801561054257600080fd5b5061054b610cbd565b6040516105589190611ff1565b60405180910390f35b34801561056d57600080fd5b506105886004803603810190610583919061204c565b610ce3565b005b34801561059657600080fd5b5061059f610d4f565b6040516105ac91906120d8565b60405180910390f35b60115481565b60606040518060400160405280600681526020017f4b494d49594f0000000000000000000000000000000000000000000000000000815250905090565b600081600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106d89190611d19565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146108e05761085f826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6108eb848484610dd9565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156109be573d6000803e3d6000fd5b50565b60035481565b6109d0336108f4565b610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a069061213f565b60405180910390fd5b81600a8190555080600b81905550600b54600a54610a2d919061218e565b600c819055505050565b6000610a63827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105f8565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ad5336108f4565b610b14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0b9061213f565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b859190611ff1565b60405180910390a1565b60055481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4b494d49594f0000000000000000000000000000000000000000000000000000815250905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610c2e338484610dd9565b905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610cec336108f4565b610d2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d229061213f565b60405180910390fd5b6103e881600354610d3c91906121c2565b610d469190612233565b60048190555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610dbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db49190611dc4565b60405180910390fd5b5060008385610dcc9190612264565b9050809150509392505050565b6000601260009054906101000a900460ff1615610e0257610dfb8484846111a2565b905061119b565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610eae5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f9757600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f57575060045482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f54919061218e565b11155b610f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8d9061230a565b60405180910390fd5b5b610f9f611375565b15610fad57610fac61144c565b5b611036826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600061108485611996565b61108e5782611099565b61109885846119ed565b5b90506110ed81600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161118d9190611d19565b60405180910390a360019150505b9392505050565b600061122d826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506112c282600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113629190611d19565b60405180910390a3600190509392505050565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113e25750601260009054906101000a900460ff16155b80156113fa5750601060149054906101000a900460ff165b80156114475750601154600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114ac600261149e600c54611490600a5487611b8f90919063ffffffff16565b611c0990919063ffffffff16565b611c0990919063ffffffff16565b905060006114c38284611c5390919063ffffffff16565b90506000600267ffffffffffffffff8111156114e2576114e161232a565b5b6040519080825280602002602001820160405280156115105781602001602082028036833780820191505090505b509050308160008151811061152857611527612359565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f3919061239d565b8160018151811061160757611606612359565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b81526004016116aa9594939291906124c3565b600060405180830381600087803b1580156116c457600080fd5b505af11580156116d8573d6000803e3d6000fd5b5050505060006116f18247611c5390919063ffffffff16565b9050600061171f61170e6002600a54611c0990919063ffffffff16565b600c54611c5390919063ffffffff16565b9050600061175d600261174f84611741600a5488611b8f90919063ffffffff16565b611c0990919063ffffffff16565b611c0990919063ffffffff16565b905060006117888361177a600b5487611b8f90919063ffffffff16565b611c0990919063ffffffff16565b90506000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516117d69061254e565b600060405180830381858888f193505050503d8060008114611814576040519150601f19603f3d011682016040523d82523d6000602084013e611819565b606091505b505090508061185d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611854906125af565b60405180910390fd5b600089111561196f57600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c600080600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016118ef969594939291906125cf565b60606040518083038185885af115801561190d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906119329190612645565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a604051611966929190612698565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b600080611a19600d54611a0b600c5486611b8f90919063ffffffff16565b611c0990919063ffffffff16565b9050611a6d81600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b0d9190611d19565b60405180910390a3611b288184611c5390919063ffffffff16565b91505092915050565b6000808284611b40919061218e565b905083811015611b85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7c9061270d565b60405180910390fd5b8091505092915050565b6000808303611ba15760009050611c03565b60008284611baf91906121c2565b9050828482611bbe9190612233565b14611bfe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf59061279f565b60405180910390fd5b809150505b92915050565b6000611c4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9d565b905092915050565b6000611c9583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d75565b905092915050565b60008083118290611ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdb9190611dc4565b60405180910390fd5b5060008385611cf39190612233565b9050809150509392505050565b6000819050919050565b611d1381611d00565b82525050565b6000602082019050611d2e6000830184611d0a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d6e578082015181840152602081019050611d53565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d9682611d34565b611da08185611d3f565b9350611db0818560208601611d50565b611db981611d7a565b840191505092915050565b60006020820190508181036000830152611dde8184611d8b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611e1682611deb565b9050919050565b611e2681611e0b565b8114611e3157600080fd5b50565b600081359050611e4381611e1d565b92915050565b611e5281611d00565b8114611e5d57600080fd5b50565b600081359050611e6f81611e49565b92915050565b60008060408385031215611e8c57611e8b611de6565b5b6000611e9a85828601611e34565b9250506020611eab85828601611e60565b9150509250929050565b60008115159050919050565b611eca81611eb5565b82525050565b6000602082019050611ee56000830184611ec1565b92915050565b600080600060608486031215611f0457611f03611de6565b5b6000611f1286828701611e34565b9350506020611f2386828701611e34565b9250506040611f3486828701611e60565b9150509250925092565b600060208284031215611f5457611f53611de6565b5b6000611f6284828501611e34565b91505092915050565b600060ff82169050919050565b611f8181611f6b565b82525050565b6000602082019050611f9c6000830184611f78565b92915050565b60008060408385031215611fb957611fb8611de6565b5b6000611fc785828601611e60565b9250506020611fd885828601611e60565b9150509250929050565b611feb81611e0b565b82525050565b60006020820190506120066000830184611fe2565b92915050565b6000806040838503121561202357612022611de6565b5b600061203185828601611e34565b925050602061204285828601611e34565b9150509250929050565b60006020828403121561206257612061611de6565b5b600061207084828501611e60565b91505092915050565b6000819050919050565b600061209e61209961209484611deb565b612079565b611deb565b9050919050565b60006120b082612083565b9050919050565b60006120c2826120a5565b9050919050565b6120d2816120b7565b82525050565b60006020820190506120ed60008301846120c9565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000612129600683611d3f565b9150612134826120f3565b602082019050919050565b600060208201905081810360008301526121588161211c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061219982611d00565b91506121a483611d00565b92508282019050808211156121bc576121bb61215f565b5b92915050565b60006121cd82611d00565b91506121d883611d00565b92508282026121e681611d00565b915082820484148315176121fd576121fc61215f565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061223e82611d00565b915061224983611d00565b92508261225957612258612204565b5b828204905092915050565b600061226f82611d00565b915061227a83611d00565b92508282039050818111156122925761229161215f565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b60006122f4602583611d3f565b91506122ff82612298565b604082019050919050565b60006020820190508181036000830152612323816122e7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061239781611e1d565b92915050565b6000602082840312156123b3576123b2611de6565b5b60006123c184828501612388565b91505092915050565b6000819050919050565b60006123ef6123ea6123e5846123ca565b612079565b611d00565b9050919050565b6123ff816123d4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61243a81611e0b565b82525050565b600061244c8383612431565b60208301905092915050565b6000602082019050919050565b600061247082612405565b61247a8185612410565b935061248583612421565b8060005b838110156124b657815161249d8882612440565b97506124a883612458565b925050600181019050612489565b5085935050505092915050565b600060a0820190506124d86000830188611d0a565b6124e560208301876123f6565b81810360408301526124f78186612465565b90506125066060830185611fe2565b6125136080830184611d0a565b9695505050505050565b600081905092915050565b50565b600061253860008361251d565b915061254382612528565b600082019050919050565b60006125598261252b565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000612599601e83611d3f565b91506125a482612563565b602082019050919050565b600060208201905081810360008301526125c88161258c565b9050919050565b600060c0820190506125e46000830189611fe2565b6125f16020830188611d0a565b6125fe60408301876123f6565b61260b60608301866123f6565b6126186080830185611fe2565b61262560a0830184611d0a565b979650505050505050565b60008151905061263f81611e49565b92915050565b60008060006060848603121561265e5761265d611de6565b5b600061266c86828701612630565b935050602061267d86828701612630565b925050604061268e86828701612630565b9150509250925092565b60006040820190506126ad6000830185611d0a565b6126ba6020830184611d0a565b9392505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006126f7601b83611d3f565b9150612702826126c1565b602082019050919050565b60006020820190508181036000830152612726816126ea565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612789602183611d3f565b91506127948261272d565b604082019050919050565b600060208201905081810360008301526127b88161277c565b905091905056fea2646970667358221220ed7dd0056cb56ea7770b3ac526459323b653a29e6c12a1b87cb18168135ee94364736f6c63430008130033
Deployed Bytecode
0x60806040526004361061014f5760003560e01c80636ddd1713116100b6578063a8aa1b311161006f578063a8aa1b3114610491578063a9059cbb146104bc578063dd62ed3e146104f9578063e96fada214610536578063f1d5f51714610561578063f887ea401461058a57610156565b80636ddd17131461039157806370a08231146103bc578063715018a6146103f95780637d1db4a514610410578063893d20e81461043b57806395d89b411461046657610156565b8063313ce56711610108578063313ce56714610293578063364333f4146102be5780633eaaf86b146102d557806352f7c98814610300578063571ac8b0146103295780636c0a24eb1461036657610156565b80630445b6671461015b57806306fdde0314610186578063095ea7b3146101b157806318160ddd146101ee57806323b872dd146102195780632f54bf6e1461025657610156565b3661015657005b600080fd5b34801561016757600080fd5b506101706105b5565b60405161017d9190611d19565b60405180910390f35b34801561019257600080fd5b5061019b6105bb565b6040516101a89190611dc4565b60405180910390f35b3480156101bd57600080fd5b506101d860048036038101906101d39190611e75565b6105f8565b6040516101e59190611ed0565b60405180910390f35b3480156101fa57600080fd5b506102036106ea565b6040516102109190611d19565b60405180910390f35b34801561022557600080fd5b50610240600480360381019061023b9190611eeb565b6106f4565b60405161024d9190611ed0565b60405180910390f35b34801561026257600080fd5b5061027d60048036038101906102789190611f3e565b6108f4565b60405161028a9190611ed0565b60405180910390f35b34801561029f57600080fd5b506102a861094d565b6040516102b59190611f87565b60405180910390f35b3480156102ca57600080fd5b506102d3610956565b005b3480156102e157600080fd5b506102ea6109c1565b6040516102f79190611d19565b60405180910390f35b34801561030c57600080fd5b5061032760048036038101906103229190611fa2565b6109c7565b005b34801561033557600080fd5b50610350600480360381019061034b9190611f3e565b610a37565b60405161035d9190611ed0565b60405180910390f35b34801561037257600080fd5b5061037b610a6a565b6040516103889190611d19565b60405180910390f35b34801561039d57600080fd5b506103a6610a70565b6040516103b39190611ed0565b60405180910390f35b3480156103c857600080fd5b506103e360048036038101906103de9190611f3e565b610a83565b6040516103f09190611d19565b60405180910390f35b34801561040557600080fd5b5061040e610acc565b005b34801561041c57600080fd5b50610425610b8f565b6040516104329190611d19565b60405180910390f35b34801561044757600080fd5b50610450610b95565b60405161045d9190611ff1565b60405180910390f35b34801561047257600080fd5b5061047b610bbe565b6040516104889190611dc4565b60405180910390f35b34801561049d57600080fd5b506104a6610bfb565b6040516104b39190611ff1565b60405180910390f35b3480156104c857600080fd5b506104e360048036038101906104de9190611e75565b610c21565b6040516104f09190611ed0565b60405180910390f35b34801561050557600080fd5b50610520600480360381019061051b919061200c565b610c36565b60405161052d9190611d19565b60405180910390f35b34801561054257600080fd5b5061054b610cbd565b6040516105589190611ff1565b60405180910390f35b34801561056d57600080fd5b506105886004803603810190610583919061204c565b610ce3565b005b34801561059657600080fd5b5061059f610d4f565b6040516105ac91906120d8565b60405180910390f35b60115481565b60606040518060400160405280600681526020017f4b494d49594f0000000000000000000000000000000000000000000000000000815250905090565b600081600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106d89190611d19565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146108e05761085f826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6108eb848484610dd9565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156109be573d6000803e3d6000fd5b50565b60035481565b6109d0336108f4565b610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a069061213f565b60405180910390fd5b81600a8190555080600b81905550600b54600a54610a2d919061218e565b600c819055505050565b6000610a63827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105f8565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ad5336108f4565b610b14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0b9061213f565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b859190611ff1565b60405180910390a1565b60055481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4b494d49594f0000000000000000000000000000000000000000000000000000815250905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610c2e338484610dd9565b905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610cec336108f4565b610d2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d229061213f565b60405180910390fd5b6103e881600354610d3c91906121c2565b610d469190612233565b60048190555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610dbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db49190611dc4565b60405180910390fd5b5060008385610dcc9190612264565b9050809150509392505050565b6000601260009054906101000a900460ff1615610e0257610dfb8484846111a2565b905061119b565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610eae5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f9757600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f57575060045482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f54919061218e565b11155b610f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8d9061230a565b60405180910390fd5b5b610f9f611375565b15610fad57610fac61144c565b5b611036826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600061108485611996565b61108e5782611099565b61109885846119ed565b5b90506110ed81600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161118d9190611d19565b60405180910390a360019150505b9392505050565b600061122d826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d759092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506112c282600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113629190611d19565b60405180910390a3600190509392505050565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113e25750601260009054906101000a900460ff16155b80156113fa5750601060149054906101000a900460ff165b80156114475750601154600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114ac600261149e600c54611490600a5487611b8f90919063ffffffff16565b611c0990919063ffffffff16565b611c0990919063ffffffff16565b905060006114c38284611c5390919063ffffffff16565b90506000600267ffffffffffffffff8111156114e2576114e161232a565b5b6040519080825280602002602001820160405280156115105781602001602082028036833780820191505090505b509050308160008151811061152857611527612359565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f3919061239d565b8160018151811061160757611606612359565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b81526004016116aa9594939291906124c3565b600060405180830381600087803b1580156116c457600080fd5b505af11580156116d8573d6000803e3d6000fd5b5050505060006116f18247611c5390919063ffffffff16565b9050600061171f61170e6002600a54611c0990919063ffffffff16565b600c54611c5390919063ffffffff16565b9050600061175d600261174f84611741600a5488611b8f90919063ffffffff16565b611c0990919063ffffffff16565b611c0990919063ffffffff16565b905060006117888361177a600b5487611b8f90919063ffffffff16565b611c0990919063ffffffff16565b90506000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516117d69061254e565b600060405180830381858888f193505050503d8060008114611814576040519150601f19603f3d011682016040523d82523d6000602084013e611819565b606091505b505090508061185d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611854906125af565b60405180910390fd5b600089111561196f57600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c600080600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016118ef969594939291906125cf565b60606040518083038185885af115801561190d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906119329190612645565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a604051611966929190612698565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b600080611a19600d54611a0b600c5486611b8f90919063ffffffff16565b611c0990919063ffffffff16565b9050611a6d81600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b3190919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b0d9190611d19565b60405180910390a3611b288184611c5390919063ffffffff16565b91505092915050565b6000808284611b40919061218e565b905083811015611b85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7c9061270d565b60405180910390fd5b8091505092915050565b6000808303611ba15760009050611c03565b60008284611baf91906121c2565b9050828482611bbe9190612233565b14611bfe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf59061279f565b60405180910390fd5b809150505b92915050565b6000611c4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9d565b905092915050565b6000611c9583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d75565b905092915050565b60008083118290611ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdb9190611dc4565b60405180910390fd5b5060008385611cf39190612233565b9050809150509392505050565b6000819050919050565b611d1381611d00565b82525050565b6000602082019050611d2e6000830184611d0a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d6e578082015181840152602081019050611d53565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d9682611d34565b611da08185611d3f565b9350611db0818560208601611d50565b611db981611d7a565b840191505092915050565b60006020820190508181036000830152611dde8184611d8b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611e1682611deb565b9050919050565b611e2681611e0b565b8114611e3157600080fd5b50565b600081359050611e4381611e1d565b92915050565b611e5281611d00565b8114611e5d57600080fd5b50565b600081359050611e6f81611e49565b92915050565b60008060408385031215611e8c57611e8b611de6565b5b6000611e9a85828601611e34565b9250506020611eab85828601611e60565b9150509250929050565b60008115159050919050565b611eca81611eb5565b82525050565b6000602082019050611ee56000830184611ec1565b92915050565b600080600060608486031215611f0457611f03611de6565b5b6000611f1286828701611e34565b9350506020611f2386828701611e34565b9250506040611f3486828701611e60565b9150509250925092565b600060208284031215611f5457611f53611de6565b5b6000611f6284828501611e34565b91505092915050565b600060ff82169050919050565b611f8181611f6b565b82525050565b6000602082019050611f9c6000830184611f78565b92915050565b60008060408385031215611fb957611fb8611de6565b5b6000611fc785828601611e60565b9250506020611fd885828601611e60565b9150509250929050565b611feb81611e0b565b82525050565b60006020820190506120066000830184611fe2565b92915050565b6000806040838503121561202357612022611de6565b5b600061203185828601611e34565b925050602061204285828601611e34565b9150509250929050565b60006020828403121561206257612061611de6565b5b600061207084828501611e60565b91505092915050565b6000819050919050565b600061209e61209961209484611deb565b612079565b611deb565b9050919050565b60006120b082612083565b9050919050565b60006120c2826120a5565b9050919050565b6120d2816120b7565b82525050565b60006020820190506120ed60008301846120c9565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000612129600683611d3f565b9150612134826120f3565b602082019050919050565b600060208201905081810360008301526121588161211c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061219982611d00565b91506121a483611d00565b92508282019050808211156121bc576121bb61215f565b5b92915050565b60006121cd82611d00565b91506121d883611d00565b92508282026121e681611d00565b915082820484148315176121fd576121fc61215f565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061223e82611d00565b915061224983611d00565b92508261225957612258612204565b5b828204905092915050565b600061226f82611d00565b915061227a83611d00565b92508282039050818111156122925761229161215f565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b60006122f4602583611d3f565b91506122ff82612298565b604082019050919050565b60006020820190508181036000830152612323816122e7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061239781611e1d565b92915050565b6000602082840312156123b3576123b2611de6565b5b60006123c184828501612388565b91505092915050565b6000819050919050565b60006123ef6123ea6123e5846123ca565b612079565b611d00565b9050919050565b6123ff816123d4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61243a81611e0b565b82525050565b600061244c8383612431565b60208301905092915050565b6000602082019050919050565b600061247082612405565b61247a8185612410565b935061248583612421565b8060005b838110156124b657815161249d8882612440565b97506124a883612458565b925050600181019050612489565b5085935050505092915050565b600060a0820190506124d86000830188611d0a565b6124e560208301876123f6565b81810360408301526124f78186612465565b90506125066060830185611fe2565b6125136080830184611d0a565b9695505050505050565b600081905092915050565b50565b600061253860008361251d565b915061254382612528565b600082019050919050565b60006125598261252b565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000612599601e83611d3f565b91506125a482612563565b602082019050919050565b600060208201905081810360008301526125c88161258c565b9050919050565b600060c0820190506125e46000830189611fe2565b6125f16020830188611d0a565b6125fe60408301876123f6565b61260b60608301866123f6565b6126186080830185611fe2565b61262560a0830184611d0a565b979650505050505050565b60008151905061263f81611e49565b92915050565b60008060006060848603121561265e5761265d611de6565b5b600061266c86828701612630565b935050602061267d86828701612630565b925050604061268e86828701612630565b9150509250925092565b60006040820190506126ad6000830185611d0a565b6126ba6020830184611d0a565b9392505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006126f7601b83611d3f565b9150612702826126c1565b602082019050919050565b60006020820190508181036000830152612726816126ea565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612789602183611d3f565b91506127948261272d565b604082019050919050565b600060208201905081810360008301526127b88161277c565b905091905056fea2646970667358221220ed7dd0056cb56ea7770b3ac526459323b653a29e6c12a1b87cb18168135ee94364736f6c63430008130033
Deployed Bytecode Sourcemap
4107:7891:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5309:61;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6367:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6789:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6097:88;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7307:370;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2345:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6191:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11427:118;;;;;;;;;;;;;:::i;:::-;;4546:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11703:220;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7013:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4616:67;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5272:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6537:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2454:131;;;;;;;;;;;;;:::i;:::-;;4690:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6453:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6277:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5244:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7143:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6648:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5124:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11553:142;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5213:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5309:61;;;;:::o;6367:80::-;6415:13;6439:5;;;;;;;;;;;;;;;;;6432:12;;6367:80;:::o;6789:216::-;6864:4;6916:6;6881:11;:23;6893:10;6881:23;;;;;;;;;;;;;;;:32;6905:7;6881:32;;;;;;;;;;;;;;;:41;;;;6959:7;6938:37;;6947:10;6938:37;;;6968:6;6938:37;;;;;;:::i;:::-;;;;;;;;6993:4;6986:11;;6789:216;;;;:::o;6097:88::-;6152:7;6170:12;;6163:19;;6097:88;:::o;7307:370::-;7407:4;7462:17;7427:11;:19;7439:6;7427:19;;;;;;;;;;;;;;;:31;7447:10;7427:31;;;;;;;;;;;;;;;;:52;7424:186;;7529:69;7565:6;7529:69;;;;;;;;;;;;;;;;;:11;:19;7541:6;7529:19;;;;;;;;;;;;;;;:31;7549:10;7529:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;7495:11;:19;7507:6;7495:19;;;;;;;;;;;;;;;:31;7515:10;7495:31;;;;;;;;;;;;;;;:103;;;;7424:186;7629:40;7643:6;7651:9;7662:6;7629:13;:40::i;:::-;7622:47;;7307:370;;;;;:::o;2345:103::-;2400:4;2435:5;;;;;;;;;;;2424:16;;:7;:16;;;2417:23;;2345:103;;;:::o;6191:80::-;6243:5;4535:2;6252:16;;6191:80;:::o;11427:118::-;11484:20;;;;;;;;;;;11476:38;;:61;11515:21;11476:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11427:118::o;4546:63::-;;;;:::o;11703:220::-;2298:19;2306:10;2298:7;:19::i;:::-;2290:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;11811:13:::1;11796:12;:28;;;;11852:13;11837:12;:28;;;;11903:12;;11888;;:27;;;;:::i;:::-;11877:8;:38;;;;11703:220:::0;;:::o;7013:122::-;7068:4;7092:35;7100:7;7109:17;7092:7;:35::i;:::-;7085:42;;7013:122;;;:::o;4616:67::-;;;;:::o;5272:30::-;;;;;;;;;;;;;:::o;6537:105::-;6603:7;6621:9;:18;6631:7;6621:18;;;;;;;;;;;;;;;;6614:25;;6537:105;;;:::o;2454:131::-;2298:19;2306:10;2298:7;:19::i;:::-;2290:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2527:1:::1;2511:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;2545:32;2574:1;2545:32;;;;;;:::i;:::-;;;;;;;;2454:131::o:0;4690:63::-;;;;:::o;6453:78::-;6505:7;6523:5;;;;;;;;;;;6516:12;;6453:78;:::o;6277:84::-;6327:13;6351:7;;;;;;;;;;;;;;;;;6344:14;;6277:84;:::o;5244:19::-;;;;;;;;;;;;;:::o;7143:156::-;7223:4;7247:44;7261:10;7273:9;7284:6;7247:13;:44::i;:::-;7240:51;;7143:156;;;;:::o;6648:133::-;6732:7;6750:11;:19;6762:6;6750:19;;;;;;;;;;;;;;;:28;6770:7;6750:28;;;;;;;;;;;;;;;;6743:35;;6648:133;;;;:::o;5124:80::-;;;;;;;;;;;;;:::o;11553:142::-;2298:19;2306:10;2298:7;:19::i;:::-;2290:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;11683:4:::1;11665:13;11650:12;;:28;;;;:::i;:::-;11649:38;;;;:::i;:::-;11630:16;:57;;;;11553:142:::0;:::o;5213:24::-;;;;;;;;;;;;;:::o;1347:190::-;1433:7;1466:1;1461;:6;;1469:12;1453:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1493:9;1509:1;1505;:5;;;;:::i;:::-;1493:17;;1528:1;1521:8;;;1347:190;;;;;:::o;7685:792::-;7777:4;7797:6;;;;;;;;;;;7794:63;;;7813:41;7828:6;7836:9;7847:6;7813:14;:41::i;:::-;7806:48;;;;7794:63;7894:4;;;;;;;;;;;7881:17;;:9;:17;;;;:38;;;;;7915:4;;;;;;;;;;;7902:17;;:9;:17;;;;7881:38;7877:200;;;7944:15;:26;7960:9;7944:26;;;;;;;;;;;;;;;;;;;;;;;;;:79;;;;8007:16;;7997:6;7974:9;:20;7984:9;7974:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:49;;7944:79;7936:129;;;;;;;;;;;;:::i;:::-;;;;;;;;;7877:200;8100:16;:14;:16::i;:::-;8097:35;;;8119:10;:8;:10::i;:::-;8097:35;8165:53;8187:6;8165:53;;;;;;;;;;;;;;;;;:9;:17;8175:6;8165:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8145:9;:17;8155:6;8145:17;;;;;;;;;;;;;;;:73;;;;8231:22;8256:21;8270:6;8256:13;:21::i;:::-;:56;;8306:6;8256:56;;;8280:23;8288:6;8296;8280:7;:23::i;:::-;8256:56;8231:81;;8346:40;8371:14;8346:9;:20;8356:9;8346:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;8323:9;:20;8333:9;8323:20;;;;;;;;;;;;;;;:63;;;;8421:9;8404:43;;8413:6;8404:43;;;8432:14;8404:43;;;;;;:::i;:::-;;;;;;;;8465:4;8458:11;;;7685:792;;;;;;:::o;8489:330::-;8582:4;8619:53;8641:6;8619:53;;;;;;;;;;;;;;;;;:9;:17;8629:6;8619:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8599:9;:17;8609:6;8599:17;;;;;;;;;;;;;;;:73;;;;8706:32;8731:6;8706:9;:20;8716:9;8706:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8683:9;:20;8693:9;8683:20;;;;;;;;;;;;;;;:55;;;;8771:9;8754:35;;8763:6;8754:35;;;8782:6;8754:35;;;;;;:::i;:::-;;;;;;;;8807:4;8800:11;;8489:330;;;;;:::o;9286:197::-;9335:4;9373;;;;;;;;;;;9359:18;;:10;:18;;;;:38;;;;;9391:6;;;;;;;;;;;9390:7;9359:38;:62;;;;;9410:11;;;;;;;;;;;9359:62;:116;;;;;9462:13;;9434:9;:24;9452:4;9434:24;;;;;;;;;;;;;;;;:41;;9359:116;9352:123;;9286:197;:::o;9491:1550::-;5444:4;5435:6;;:13;;;;;;;;;;;;;;;;;;9540:28:::1;9571:13;;9540:44;;9595:23;9621:59;9678:1;9621:52;9664:8;;9621:38;9646:12;;9621:20;:24;;:38;;;;:::i;:::-;:42;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;9595:85;;9691:20;9714:41;9739:15;9714:20;:24;;:41;;;;:::i;:::-;9691:64;;9768:21;9806:1;9792:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9768:40;;9837:4;9819;9824:1;9819:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9863:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9853:4;9858:1;9853:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9889:21;9913;9889:45;;9947:6;;;;;;;;;;;:57;;;10019:12;10046:1;10062:4;10089;10109:15;9947:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10146:17;10166:40;10192:13;10166:21;:25;;:40;;;;:::i;:::-;10146:60;;10217:19;10239:33;10252:19;10269:1;10252:12;;:16;;:19;;;;:::i;:::-;10239:8;;:12;;:33;;;;:::i;:::-;10217:55;;10283:26;10312:51;10361:1;10312:44;10344:11;10312:27;10326:12;;10312:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;10283:80;;10374:26;10403:44;10435:11;10403:27;10417:12;;10403:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;10374:73;;10463:21;10521:20;;;;;;;;;;;10513:34;;10555:18;10580:5;10513:77;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10462:128;;;10609:16;10601:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;10694:1;10676:15;:19;10673:361;;;10711:6;;;;;;;;;;;:22;;;10741:18;10787:4;10811:15;10845:1;10865::::0;10885:20:::1;;;;;;;;;;;10924:15;10711:243;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10974:48;10986:18;11006:15;10974:48;;;;;;;:::i;:::-;;;;;;;;10673:361;9529:1512;;;;;;;;;;5462:5:::0;5453:6;;:14;;;;;;;;;;;;;;;;;;9491:1550::o;8827:114::-;8889:4;8914:11;:19;8926:6;8914:19;;;;;;;;;;;;;;;;;;;;;;;;;8913:20;8906:27;;8827:114;;;:::o;8949:329::-;9016:7;9036:17;9056:40;9081:14;;9056:20;9067:8;;9056:6;:10;;:20;;;;:::i;:::-;:24;;:40;;;;:::i;:::-;9036:60;;9134:39;9163:9;9134;:24;9152:4;9134:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9107:9;:24;9125:4;9107:24;;;;;;;;;;;;;;;:66;;;;9214:4;9189:42;;9198:6;9189:42;;;9221:9;9189:42;;;;;;:::i;:::-;;;;;;;;9249:21;9260:9;9249:6;:10;;:21;;;;:::i;:::-;9242:28;;;8949:329;;;;:::o;1020:179::-;1078:7;1098:9;1114:1;1110;:5;;;;:::i;:::-;1098:17;;1139:1;1134;:6;;1126:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1190:1;1183:8;;;1020:179;;;;:::o;1543:246::-;1601:7;1630:1;1625;:6;1621:47;;1655:1;1648:8;;;;1621:47;1678:9;1694:1;1690;:5;;;;:::i;:::-;1678:17;;1723:1;1718;1714;:5;;;;:::i;:::-;:10;1706:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1780:1;1773:8;;;1543:246;;;;;:::o;1795:132::-;1853:7;1880:39;1884:1;1887;1880:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1873:46;;1795:132;;;;:::o;1205:136::-;1263:7;1290:43;1294:1;1297;1290:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1283:50;;1205:136;;;;:::o;1933:189::-;2019:7;2051:1;2047;:5;2054:12;2039:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2078:9;2094:1;2090;:5;;;;:::i;:::-;2078:17;;2113:1;2106:8;;;1933:189;;;;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:99::-;494:6;528:5;522:12;512:22;;442:99;;;:::o;547:169::-;631:11;665:6;660:3;653:19;705:4;700:3;696:14;681:29;;547:169;;;;:::o;722:246::-;803:1;813:113;827:6;824:1;821:13;813:113;;;912:1;907:3;903:11;897:18;893:1;888:3;884:11;877:39;849:2;846:1;842:10;837:15;;813:113;;;960:1;951:6;946:3;942:16;935:27;784:184;722:246;;;:::o;974:102::-;1015:6;1066:2;1062:7;1057:2;1050:5;1046:14;1042:28;1032:38;;974:102;;;:::o;1082:377::-;1170:3;1198:39;1231:5;1198:39;:::i;:::-;1253:71;1317:6;1312:3;1253:71;:::i;:::-;1246:78;;1333:65;1391:6;1386:3;1379:4;1372:5;1368:16;1333:65;:::i;:::-;1423:29;1445:6;1423:29;:::i;:::-;1418:3;1414:39;1407:46;;1174:285;1082:377;;;;:::o;1465:313::-;1578:4;1616:2;1605:9;1601:18;1593:26;;1665:9;1659:4;1655:20;1651:1;1640:9;1636:17;1629:47;1693:78;1766:4;1757:6;1693:78;:::i;:::-;1685:86;;1465:313;;;;:::o;1865:117::-;1974:1;1971;1964:12;2111:126;2148:7;2188:42;2181:5;2177:54;2166:65;;2111:126;;;:::o;2243:96::-;2280:7;2309:24;2327:5;2309:24;:::i;:::-;2298:35;;2243:96;;;:::o;2345:122::-;2418:24;2436:5;2418:24;:::i;:::-;2411:5;2408:35;2398:63;;2457:1;2454;2447:12;2398:63;2345:122;:::o;2473:139::-;2519:5;2557:6;2544:20;2535:29;;2573:33;2600:5;2573:33;:::i;:::-;2473:139;;;;:::o;2618:122::-;2691:24;2709:5;2691:24;:::i;:::-;2684:5;2681:35;2671:63;;2730:1;2727;2720:12;2671:63;2618:122;:::o;2746:139::-;2792:5;2830:6;2817:20;2808:29;;2846:33;2873:5;2846:33;:::i;:::-;2746:139;;;;:::o;2891:474::-;2959:6;2967;3016:2;3004:9;2995:7;2991:23;2987:32;2984:119;;;3022:79;;:::i;:::-;2984:119;3142:1;3167:53;3212:7;3203:6;3192:9;3188:22;3167:53;:::i;:::-;3157:63;;3113:117;3269:2;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3240:118;2891:474;;;;;:::o;3371:90::-;3405:7;3448:5;3441:13;3434:21;3423:32;;3371:90;;;:::o;3467:109::-;3548:21;3563:5;3548:21;:::i;:::-;3543:3;3536:34;3467:109;;:::o;3582:210::-;3669:4;3707:2;3696:9;3692:18;3684:26;;3720:65;3782:1;3771:9;3767:17;3758:6;3720:65;:::i;:::-;3582:210;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:329::-;4482:6;4531:2;4519:9;4510:7;4506:23;4502:32;4499:119;;;4537:79;;:::i;:::-;4499:119;4657:1;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4628:117;4423:329;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:474::-;5256:6;5264;5313:2;5301:9;5292:7;5288:23;5284:32;5281:119;;;5319:79;;:::i;:::-;5281:119;5439:1;5464:53;5509:7;5500:6;5489:9;5485:22;5464:53;:::i;:::-;5454:63;;5410:117;5566:2;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5537:118;5188:474;;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:474::-;6088:6;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6020:474;;;;;:::o;6500:329::-;6559:6;6608:2;6596:9;6587:7;6583:23;6579:32;6576:119;;;6614:79;;:::i;:::-;6576:119;6734:1;6759:53;6804:7;6795:6;6784:9;6780:22;6759:53;:::i;:::-;6749:63;;6705:117;6500:329;;;;:::o;6835:60::-;6863:3;6884:5;6877:12;;6835:60;;;:::o;6901:142::-;6951:9;6984:53;7002:34;7011:24;7029:5;7011:24;:::i;:::-;7002:34;:::i;:::-;6984:53;:::i;:::-;6971:66;;6901:142;;;:::o;7049:126::-;7099:9;7132:37;7163:5;7132:37;:::i;:::-;7119:50;;7049:126;;;:::o;7181:144::-;7249:9;7282:37;7313:5;7282:37;:::i;:::-;7269:50;;7181:144;;;:::o;7331:167::-;7436:55;7485:5;7436:55;:::i;:::-;7431:3;7424:68;7331:167;;:::o;7504:258::-;7615:4;7653:2;7642:9;7638:18;7630:26;;7666:89;7752:1;7741:9;7737:17;7728:6;7666:89;:::i;:::-;7504:258;;;;:::o;7768:156::-;7908:8;7904:1;7896:6;7892:14;7885:32;7768:156;:::o;7930:365::-;8072:3;8093:66;8157:1;8152:3;8093:66;:::i;:::-;8086:73;;8168:93;8257:3;8168:93;:::i;:::-;8286:2;8281:3;8277:12;8270:19;;7930:365;;;:::o;8301:419::-;8467:4;8505:2;8494:9;8490:18;8482:26;;8554:9;8548:4;8544:20;8540:1;8529:9;8525:17;8518:47;8582:131;8708:4;8582:131;:::i;:::-;8574:139;;8301:419;;;:::o;8726:180::-;8774:77;8771:1;8764:88;8871:4;8868:1;8861:15;8895:4;8892:1;8885:15;8912:191;8952:3;8971:20;8989:1;8971:20;:::i;:::-;8966:25;;9005:20;9023:1;9005:20;:::i;:::-;9000:25;;9048:1;9045;9041:9;9034:16;;9069:3;9066:1;9063:10;9060:36;;;9076:18;;:::i;:::-;9060:36;8912:191;;;;:::o;9109:410::-;9149:7;9172:20;9190:1;9172:20;:::i;:::-;9167:25;;9206:20;9224:1;9206:20;:::i;:::-;9201:25;;9261:1;9258;9254:9;9283:30;9301:11;9283:30;:::i;:::-;9272:41;;9462:1;9453:7;9449:15;9446:1;9443:22;9423:1;9416:9;9396:83;9373:139;;9492:18;;:::i;:::-;9373:139;9157:362;9109:410;;;;:::o;9525:180::-;9573:77;9570:1;9563:88;9670:4;9667:1;9660:15;9694:4;9691:1;9684:15;9711:185;9751:1;9768:20;9786:1;9768:20;:::i;:::-;9763:25;;9802:20;9820:1;9802:20;:::i;:::-;9797:25;;9841:1;9831:35;;9846:18;;:::i;:::-;9831:35;9888:1;9885;9881:9;9876:14;;9711:185;;;;:::o;9902:194::-;9942:4;9962:20;9980:1;9962:20;:::i;:::-;9957:25;;9996:20;10014:1;9996:20;:::i;:::-;9991:25;;10040:1;10037;10033:9;10025:17;;10064:1;10058:4;10055:11;10052:37;;;10069:18;;:::i;:::-;10052:37;9902:194;;;;:::o;10102:224::-;10242:34;10238:1;10230:6;10226:14;10219:58;10311:7;10306:2;10298:6;10294:15;10287:32;10102:224;:::o;10332:366::-;10474:3;10495:67;10559:2;10554:3;10495:67;:::i;:::-;10488:74;;10571:93;10660:3;10571:93;:::i;:::-;10689:2;10684:3;10680:12;10673:19;;10332:366;;;:::o;10704:419::-;10870:4;10908:2;10897:9;10893:18;10885:26;;10957:9;10951:4;10947:20;10943:1;10932:9;10928:17;10921:47;10985:131;11111:4;10985:131;:::i;:::-;10977:139;;10704:419;;;:::o;11129:180::-;11177:77;11174:1;11167:88;11274:4;11271:1;11264:15;11298:4;11295:1;11288:15;11315:180;11363:77;11360:1;11353:88;11460:4;11457:1;11450:15;11484:4;11481:1;11474:15;11501:143;11558:5;11589:6;11583:13;11574:22;;11605:33;11632:5;11605:33;:::i;:::-;11501:143;;;;:::o;11650:351::-;11720:6;11769:2;11757:9;11748:7;11744:23;11740:32;11737:119;;;11775:79;;:::i;:::-;11737:119;11895:1;11920:64;11976:7;11967:6;11956:9;11952:22;11920:64;:::i;:::-;11910:74;;11866:128;11650:351;;;;:::o;12007:85::-;12052:7;12081:5;12070:16;;12007:85;;;:::o;12098:158::-;12156:9;12189:61;12207:42;12216:32;12242:5;12216:32;:::i;:::-;12207:42;:::i;:::-;12189:61;:::i;:::-;12176:74;;12098:158;;;:::o;12262:147::-;12357:45;12396:5;12357:45;:::i;:::-;12352:3;12345:58;12262:147;;:::o;12415:114::-;12482:6;12516:5;12510:12;12500:22;;12415:114;;;:::o;12535:184::-;12634:11;12668:6;12663:3;12656:19;12708:4;12703:3;12699:14;12684:29;;12535:184;;;;:::o;12725:132::-;12792:4;12815:3;12807:11;;12845:4;12840:3;12836:14;12828:22;;12725:132;;;:::o;12863:108::-;12940:24;12958:5;12940:24;:::i;:::-;12935:3;12928:37;12863:108;;:::o;12977:179::-;13046:10;13067:46;13109:3;13101:6;13067:46;:::i;:::-;13145:4;13140:3;13136:14;13122:28;;12977:179;;;;:::o;13162:113::-;13232:4;13264;13259:3;13255:14;13247:22;;13162:113;;;:::o;13311:732::-;13430:3;13459:54;13507:5;13459:54;:::i;:::-;13529:86;13608:6;13603:3;13529:86;:::i;:::-;13522:93;;13639:56;13689:5;13639:56;:::i;:::-;13718:7;13749:1;13734:284;13759:6;13756:1;13753:13;13734:284;;;13835:6;13829:13;13862:63;13921:3;13906:13;13862:63;:::i;:::-;13855:70;;13948:60;14001:6;13948:60;:::i;:::-;13938:70;;13794:224;13781:1;13778;13774:9;13769:14;;13734:284;;;13738:14;14034:3;14027:10;;13435:608;;;13311:732;;;;:::o;14049:831::-;14312:4;14350:3;14339:9;14335:19;14327:27;;14364:71;14432:1;14421:9;14417:17;14408:6;14364:71;:::i;:::-;14445:80;14521:2;14510:9;14506:18;14497:6;14445:80;:::i;:::-;14572:9;14566:4;14562:20;14557:2;14546:9;14542:18;14535:48;14600:108;14703:4;14694:6;14600:108;:::i;:::-;14592:116;;14718:72;14786:2;14775:9;14771:18;14762:6;14718:72;:::i;:::-;14800:73;14868:3;14857:9;14853:19;14844:6;14800:73;:::i;:::-;14049:831;;;;;;;;:::o;14886:147::-;14987:11;15024:3;15009:18;;14886:147;;;;:::o;15039:114::-;;:::o;15159:398::-;15318:3;15339:83;15420:1;15415:3;15339:83;:::i;:::-;15332:90;;15431:93;15520:3;15431:93;:::i;:::-;15549:1;15544:3;15540:11;15533:18;;15159:398;;;:::o;15563:379::-;15747:3;15769:147;15912:3;15769:147;:::i;:::-;15762:154;;15933:3;15926:10;;15563:379;;;:::o;15948:180::-;16088:32;16084:1;16076:6;16072:14;16065:56;15948:180;:::o;16134:366::-;16276:3;16297:67;16361:2;16356:3;16297:67;:::i;:::-;16290:74;;16373:93;16462:3;16373:93;:::i;:::-;16491:2;16486:3;16482:12;16475:19;;16134:366;;;:::o;16506:419::-;16672:4;16710:2;16699:9;16695:18;16687:26;;16759:9;16753:4;16749:20;16745:1;16734:9;16730:17;16723:47;16787:131;16913:4;16787:131;:::i;:::-;16779:139;;16506:419;;;:::o;16931:807::-;17180:4;17218:3;17207:9;17203:19;17195:27;;17232:71;17300:1;17289:9;17285:17;17276:6;17232:71;:::i;:::-;17313:72;17381:2;17370:9;17366:18;17357:6;17313:72;:::i;:::-;17395:80;17471:2;17460:9;17456:18;17447:6;17395:80;:::i;:::-;17485;17561:2;17550:9;17546:18;17537:6;17485:80;:::i;:::-;17575:73;17643:3;17632:9;17628:19;17619:6;17575:73;:::i;:::-;17658;17726:3;17715:9;17711:19;17702:6;17658:73;:::i;:::-;16931:807;;;;;;;;;:::o;17744:143::-;17801:5;17832:6;17826:13;17817:22;;17848:33;17875:5;17848:33;:::i;:::-;17744:143;;;;:::o;17893:663::-;17981:6;17989;17997;18046:2;18034:9;18025:7;18021:23;18017:32;18014:119;;;18052:79;;:::i;:::-;18014:119;18172:1;18197:64;18253:7;18244:6;18233:9;18229:22;18197:64;:::i;:::-;18187:74;;18143:128;18310:2;18336:64;18392:7;18383:6;18372:9;18368:22;18336:64;:::i;:::-;18326:74;;18281:129;18449:2;18475:64;18531:7;18522:6;18511:9;18507:22;18475:64;:::i;:::-;18465:74;;18420:129;17893:663;;;;;:::o;18562:332::-;18683:4;18721:2;18710:9;18706:18;18698:26;;18734:71;18802:1;18791:9;18787:17;18778:6;18734:71;:::i;:::-;18815:72;18883:2;18872:9;18868:18;18859:6;18815:72;:::i;:::-;18562:332;;;;;:::o;18900:177::-;19040:29;19036:1;19028:6;19024:14;19017:53;18900:177;:::o;19083:366::-;19225:3;19246:67;19310:2;19305:3;19246:67;:::i;:::-;19239:74;;19322:93;19411:3;19322:93;:::i;:::-;19440:2;19435:3;19431:12;19424:19;;19083:366;;;:::o;19455:419::-;19621:4;19659:2;19648:9;19644:18;19636:26;;19708:9;19702:4;19698:20;19694:1;19683:9;19679:17;19672:47;19736:131;19862:4;19736:131;:::i;:::-;19728:139;;19455:419;;;:::o;19880:220::-;20020:34;20016:1;20008:6;20004:14;19997:58;20089:3;20084:2;20076:6;20072:15;20065:28;19880:220;:::o;20106:366::-;20248:3;20269:67;20333:2;20328:3;20269:67;:::i;:::-;20262:74;;20345:93;20434:3;20345:93;:::i;:::-;20463:2;20458:3;20454:12;20447:19;;20106:366;;;:::o;20478:419::-;20644:4;20682:2;20671:9;20667:18;20659:26;;20731:9;20725:4;20721:20;20717:1;20706:9;20702:17;20695:47;20759:131;20885:4;20759:131;:::i;:::-;20751:139;;20478:419;;;:::o
Swarm Source
ipfs://ed7dd0056cb56ea7770b3ac526459323b653a29e6c12a1b87cb18168135ee943
Loading...
Loading
Loading...
Loading
OVERVIEW
KIMIYO is an ERC20 Ethereum Token (Symbol: KIMIYO) created by KIMIYO NAKAZAWA for the KIMIYO Community with Liquidity, Staking and KIMIYO SWAP Exchange that uses Ethereum Blockchain to secure transactions and verify the swap of assets.Net Worth in USD
$3.61
Net Worth in ETH
0.0018
Token Allocations
ETH
100.00%
Multichain Portfolio | 32 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| ETH | 100.00% | $2,004.47 | 0.00180065 | $3.61 |
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.