Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 2,072 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 24504372 | 27 hrs ago | IN | 0 ETH | 0.00000245 | ||||
| Approve | 24479751 | 4 days ago | IN | 0 ETH | 0.00002334 | ||||
| Pan | 24446506 | 9 days ago | IN | 0 ETH | 0.00000634 | ||||
| Pan | 24436124 | 10 days ago | IN | 0 ETH | 0.00001355 | ||||
| Approve | 24360462 | 21 days ago | IN | 0 ETH | 0.00000617 | ||||
| Pan | 24358898 | 21 days ago | IN | 0 ETH | 0.00000911 | ||||
| Approve | 24339356 | 24 days ago | IN | 0 ETH | 0.00000395 | ||||
| Approve | 24336825 | 24 days ago | IN | 0 ETH | 0.00014433 | ||||
| Approve | 24336825 | 24 days ago | IN | 0 ETH | 0.00014433 | ||||
| Approve | 24314364 | 27 days ago | IN | 0 ETH | 0.00001092 | ||||
| Approve | 24270225 | 33 days ago | IN | 0 ETH | 0.00000189 | ||||
| Approve | 24270221 | 33 days ago | IN | 0 ETH | 0.00000361 | ||||
| Approve | 24255614 | 35 days ago | IN | 0 ETH | 0.00002726 | ||||
| Pan | 24246020 | 37 days ago | IN | 0 ETH | 0.00000408 | ||||
| Approve | 24239549 | 38 days ago | IN | 0 ETH | 0.00001529 | ||||
| Approve | 24238787 | 38 days ago | IN | 0 ETH | 0.00000509 | ||||
| Approve | 24225946 | 39 days ago | IN | 0 ETH | 0.00000343 | ||||
| Approve | 24225913 | 39 days ago | IN | 0 ETH | 0.00003243 | ||||
| Approve | 24218460 | 41 days ago | IN | 0 ETH | 0.0000035 | ||||
| Transfer | 24114109 | 55 days ago | IN | 0 ETH | 0.00026665 | ||||
| Pan | 24090818 | 58 days ago | IN | 0 ETH | 0.00000456 | ||||
| Pan | 24088699 | 59 days ago | IN | 0 ETH | 0.00000114 | ||||
| Pan | 24088696 | 59 days ago | IN | 0 ETH | 0.00000283 | ||||
| Approve | 24078808 | 60 days ago | IN | 0 ETH | 0.00000153 | ||||
| Approve | 24072707 | 61 days ago | IN | 0 ETH | 0.00000157 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Deposit | 24479752 | 4 days ago | 0.00871838 ETH | ||||
| Transfer | 24479752 | 4 days ago | 0.00871838 ETH | ||||
| Transfer | 24479752 | 4 days ago | 0.01743676 ETH | ||||
| Deposit | 24339359 | 24 days ago | 0.00915974 ETH | ||||
| Transfer | 24339359 | 24 days ago | 0.00915974 ETH | ||||
| Transfer | 24339359 | 24 days ago | 0.01831949 ETH | ||||
| Deposit | 24337961 | 24 days ago | 0.01593651 ETH | ||||
| Transfer | 24337961 | 24 days ago | 0.01593651 ETH | ||||
| Transfer | 24337961 | 24 days ago | 0.03187302 ETH | ||||
| Deposit | 24323954 | 26 days ago | 0.01006188 ETH | ||||
| Transfer | 24323954 | 26 days ago | 0.01006188 ETH | ||||
| Transfer | 24323954 | 26 days ago | 0.02012376 ETH | ||||
| Deposit | 24255556 | 35 days ago | 0.01584942 ETH | ||||
| Transfer | 24255556 | 35 days ago | 0.01584942 ETH | ||||
| Transfer | 24255556 | 35 days ago | 0.03169884 ETH | ||||
| Deposit | 24239549 | 38 days ago | 0.01068959 ETH | ||||
| Transfer | 24239549 | 38 days ago | 0.01068959 ETH | ||||
| Transfer | 24239549 | 38 days ago | 0.02137919 ETH | ||||
| Deposit | 24118027 | 55 days ago | 0.00785518 ETH | ||||
| Transfer | 24118027 | 55 days ago | 0.00785518 ETH | ||||
| Transfer | 24118027 | 55 days ago | 0.01571036 ETH | ||||
| Deposit | 23949250 | 78 days ago | 0.00935295 ETH | ||||
| Transfer | 23949250 | 78 days ago | 0.00935295 ETH | ||||
| Transfer | 23949250 | 78 days ago | 0.0187059 ETH | ||||
| Deposit | 23925351 | 82 days ago | 0.00999943 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
MIDAS
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2025-03-25
*/
/*
Midas of DeFi – Where Every Trade Turns to Gold.
TG: https://t.me/MidasofDeFi
Unlock the Vault: https://midasofdefi.xyz/
*/
// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.13;
/**
* Standard SafeMath, stripped down to just add/sub/mul/div
*/
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) {
// Solidity only automatically asserts when dividing by 0
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;
}
}
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor () {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
/**
* ERC20 standard interface.
*/
interface IERC20 {
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 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);
}
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;
}
interface IMidasV {
function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external;
function setShare(address shareholder, uint256 amount) external;
function deposit() external payable;
function process(uint256 gas) external;
function pan(address shareholder) external;
}
contract MidasVV is IMidasV {
using SafeMath for uint256;
address _token;
address public PAXG;
IDEXRouter router;
struct Share {
uint256 amount;
uint256 totalExcluded;
uint256 totalRealised;
}
address[] shareholders;
mapping (address => uint256) shareholderIndexes;
mapping (address => uint256) shareholderClaims;
mapping (address => Share) public shares;
uint256 public totalShares;
uint256 public totalDividends;
uint256 public totalDistributed;
uint256 public dividendsPerShare;
uint256 public dividendsPerShareAccuracyFactor = 10 ** 36;
uint256 public minPeriod = 30 minutes;
uint256 public minDistribution = 0 * (10 ** 9);
uint256 public currentIndex;
bool initialized;
modifier initialization() {
require(!initialized);
_;
initialized = true;
}
modifier onlyToken() {
require(msg.sender == _token); _;
}
constructor () {
_token = msg.sender;
router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
PAXG = 0x45804880De22913dAFE09f4980848ECE6EcbAf78;
}
receive() external payable {
deposit();
}
function setDistributionCriteria(uint256 newMinPeriod, uint256 newMinDistribution) external override onlyToken {
minPeriod = newMinPeriod;
minDistribution = newMinDistribution;
}
function setShare(address shareholder, uint256 amount) external override onlyToken {
if(shares[shareholder].amount > 0){
distributeDividend(shareholder);
}
if(amount > 0 && shares[shareholder].amount == 0){
addShareholder(shareholder);
}else if(amount == 0 && shares[shareholder].amount > 0){
removeShareholder(shareholder);
}
totalShares = totalShares.sub(shares[shareholder].amount).add(amount);
shares[shareholder].amount = amount;
shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
}
function deposit() public payable override {
uint256 balanceBefore = IERC20(PAXG).balanceOf(address(this));
address[] memory path = new address[](2);
path[0] = router.WETH();
path[1] = address(PAXG);
router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: msg.value}(
0,
path,
address(this),
block.timestamp
);
uint256 amount = IERC20(PAXG).balanceOf(address(this)).sub(balanceBefore);
totalDividends = totalDividends.add(amount);
dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(amount).div(totalShares));
}
function process(uint256 gas) external override {
uint256 shareholderCount = shareholders.length;
if(shareholderCount == 0) { return; }
uint256 iterations = 0;
uint256 gasUsed = 0;
uint256 gasLeft = gasleft();
while(gasUsed < gas && iterations < shareholderCount) {
if(currentIndex >= shareholderCount){ currentIndex = 0; }
if(shouldDistribute(shareholders[currentIndex])){
distributeDividend(shareholders[currentIndex]);
}
gasUsed = gasUsed.add(gasLeft.sub(gasleft()));
gasLeft = gasleft();
currentIndex++;
iterations++;
}
}
function shouldDistribute(address shareholder) public view returns (bool) {
return shareholderClaims[shareholder] + minPeriod < block.timestamp
&& getUnpaidEarnings(shareholder) > minDistribution;
}
function distributeDividend(address shareholder) internal {
if(shares[shareholder].amount == 0){ return; }
uint256 amount = getUnpaidEarnings(shareholder);
if(amount > 0){
totalDistributed = totalDistributed.add(amount);
IERC20(PAXG).transfer(shareholder, amount);
shareholderClaims[shareholder] = block.timestamp;
shares[shareholder].totalRealised = shares[shareholder].totalRealised.add(amount);
shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
}
}
function pan(address shareholder) external override onlyToken {
distributeDividend(shareholder);
}
function getUnpaidEarnings(address shareholder) public view returns (uint256) {
if(shares[shareholder].amount == 0){ return 0; }
uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount);
uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded;
if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; }
return shareholderTotalDividends.sub(shareholderTotalExcluded);
}
function getCumulativeDividends(uint256 share) internal view returns (uint256) {
return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor);
}
function addShareholder(address shareholder) internal {
shareholderIndexes[shareholder] = shareholders.length;
shareholders.push(shareholder);
}
function removeShareholder(address shareholder) internal {
shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1];
shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder];
shareholders.pop();
}
}
contract MIDAS is IERC20, Ownable {
using SafeMath for uint256;
address public PAXG = 0x45804880De22913dAFE09f4980848ECE6EcbAf78; //$PAXG token address
string private constant _name = "Midas of DeFi";
string private constant _symbol = "MIDAS";
uint8 private constant _decimals = 18;
uint256 private _totalSupply = 100000000 * (10 ** _decimals);
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
mapping (address => uint256) private cooldown;
address private WETH;
address DEAD = 0x000000000000000000000000000000000000dEaD;
address ZERO = 0x0000000000000000000000000000000000000000;
bool public antiBot = true;
mapping (address => bool) private bots;
mapping (address => bool) public isFeeExempt;
mapping (address => bool) public isTxLimitExempt;
mapping (address => bool) public isDividendExempt;
uint256 public launchedAt;
address private lpWallet = DEAD;
uint256 public buyFee = 20;
uint256 public sellFee = 25;
uint256 public toReflections = 30;
uint256 public toLiquidity = 0;
uint256 public toMarketing = 70;
uint256 public allocationSum = 100;
IDEXRouter public router;
address public pair;
address public factory;
address public MidasVault = payable(0xe98c3CFd3e636f3e82b90953bF8620b111dF2535);
bool inSwapAndLiquify;
bool public swapAndLiquifyEnabled = true;
bool public tradingOpen = false;
MidasVV public MidasV;
uint256 public MidasGas = 0;
modifier lockTheSwap {
inSwapAndLiquify = true;
_;
inSwapAndLiquify = false;
}
uint256 public maxTx = _totalSupply.div(50);
uint256 public maxWallet = _totalSupply.div(50);
uint256 public swapThreshold = _totalSupply.div(400);
constructor () {
router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
WETH = router.WETH();
pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
_allowances[address(this)][address(router)] = type(uint256).max;
MidasV = new MidasVV();
isFeeExempt[owner()] = true;
isFeeExempt[MidasVault] = true;
isDividendExempt[pair] = true;
isDividendExempt[address(this)] = true;
isDividendExempt[DEAD] = true;
isTxLimitExempt[owner()] = true;
isTxLimitExempt[pair] = true;
isTxLimitExempt[DEAD] = true;
isTxLimitExempt[MidasVault] = true;
_balances[owner()] = _totalSupply;
emit Transfer(address(0), owner(), _totalSupply);
}
receive() external payable { }
function setBots(address[] memory bots_) external onlyOwner {
for (uint i = 0; i < bots_.length; i++) {
bots[bots_[i]] = true;
}
}
//once enabled, cannot be reversed
function openTrading() external onlyOwner {
launchedAt = block.number;
tradingOpen = true;
}
function changeTotalFees(uint256 newBuyFee, uint256 newSellFee) external onlyOwner {
buyFee = newBuyFee;
sellFee = newSellFee;
require(buyFee <= 50, "too high");
require(sellFee <= 50, "too high");
}
function changeFeeAllocation(uint256 newRewardFee, uint256 newLpFee, uint256 newMarketingFee) external onlyOwner {
toReflections = newRewardFee;
toLiquidity = newLpFee;
toMarketing = newMarketingFee;
}
function changeTxLimit(uint256 newLimit) external onlyOwner {
maxTx = newLimit;
}
function changeWalletLimit(uint256 newLimit) external onlyOwner {
maxWallet = newLimit;
}
function changeIsFeeExempt(address holder, bool exempt) external onlyOwner {
isFeeExempt[holder] = exempt;
}
function changeIsTxLimitExempt(address holder, bool exempt) external onlyOwner {
isTxLimitExempt[holder] = exempt;
}
function setMidasVault(address payable newMidasVault) external onlyOwner {
MidasVault = payable(newMidasVault);
}
function setLpWallet(address newLpWallet) external onlyOwner {
lpWallet = newLpWallet;
}
function changeSwapBackSettings(bool enableSwapBack, uint256 newSwapBackLimit) external onlyOwner {
swapAndLiquifyEnabled = enableSwapBack;
swapThreshold = newSwapBackLimit;
}
function setDistributionCriteria(uint256 newMinPeriod, uint256 newMinDistribution) external onlyOwner {
MidasV.setDistributionCriteria(newMinPeriod, newMinDistribution);
}
function delBot(address notbot) external onlyOwner {
bots[notbot] = false;
}
function _setIsDividendExempt(address holder, bool exempt) internal {
require(holder != address(this) && holder != pair);
isDividendExempt[holder] = exempt;
if(exempt){
MidasV.setShare(holder, 0);
}else{
MidasV.setShare(holder, _balances[holder]);
}
}
function setIsDividendExempt(address holder, bool exempt) external onlyOwner {
_setIsDividendExempt(holder, exempt);
}
function changeMidasGas(uint256 newGas) external onlyOwner {
MidasGas = newGas;
}
function getCirculatingSupply() public view returns (uint256) {
return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
}
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 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 _transfer(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 _transfer(sender, recipient, amount);
}
function _transfer(address sender, address recipient, uint256 amount) internal returns (bool) {
if (sender!= owner() && recipient!= owner()) require(tradingOpen, "hold ur horses big guy."); //transfers disabled before tradingActive
require(!bots[sender] && !bots[recipient]);
if(inSwapAndLiquify){ return _basicTransfer(sender, recipient, amount); }
require(amount <= maxTx || isTxLimitExempt[sender], "tx");
if(!isTxLimitExempt[recipient] && antiBot)
{
require(_balances[recipient].add(amount) <= maxWallet, "wallet");
}
if(msg.sender != pair && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold){ swapBack(); }
_balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? takeFee(sender, recipient, amount) : amount;
_balances[recipient] = _balances[recipient].add(finalAmount);
// Dividend tracker
if(!isDividendExempt[sender]) {
try MidasV.setShare(sender, _balances[sender]) {} catch {}
}
if(!isDividendExempt[recipient]) {
try MidasV.setShare(recipient, _balances[recipient]) {} catch {}
}
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 takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
uint256 feeApplicable = pair == recipient ? sellFee : buyFee;
uint256 feeAmount = amount.mul(feeApplicable).div(100);
_balances[address(this)] = _balances[address(this)].add(feeAmount);
emit Transfer(sender, address(this), feeAmount);
return amount.sub(feeAmount);
}
function swapTokensForEth(uint256 tokenAmount) private {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = router.WETH();
approve(address(this), tokenAmount);
router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0, // accept any amount of ETH
path,
address(this),
block.timestamp
);
}
function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
router.addLiquidityETH{value: ethAmount}(
address(this),
tokenAmount,
0,
0,
lpWallet,
block.timestamp
);
}
function swapBack() internal lockTheSwap {
uint256 tokenBalance = _balances[address(this)];
uint256 tokensForLiquidity = tokenBalance.mul(toLiquidity).div(100).div(2);
uint256 amountToSwap = tokenBalance.sub(tokensForLiquidity);
swapTokensForEth(amountToSwap);
uint256 totalEthBalance = address(this).balance;
uint256 ethForPan = totalEthBalance.mul(toReflections).div(100);
uint256 ethForMidasVault = totalEthBalance.mul(toMarketing).div(100);
uint256 ethForLiquidity = totalEthBalance.mul(toLiquidity).div(100).div(2);
if (totalEthBalance > 0){
payable(MidasVault).transfer(ethForMidasVault);
}
try MidasV.deposit{value: ethForPan}() {} catch {}
if (tokensForLiquidity > 0){
addLiquidity(tokensForLiquidity, ethForLiquidity);
}
}
function manualSwapBack() external onlyOwner {
swapBack();
}
function clearStuckEth() external onlyOwner {
uint256 contractETHBalance = address(this).balance;
if(contractETHBalance > 0){
payable(MidasVault).transfer(contractETHBalance);
}
}
function manualProcessGas(uint256 manualGas) external onlyOwner {
MidasV.process(manualGas);
}
function checkPendingReflections(address shareholder) external view returns (uint256) {
return MidasV.getUnpaidEarnings(shareholder);
}
function pan() external {
MidasV.pan(msg.sender);
}
}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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MidasGas","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MidasV","outputs":[{"internalType":"contract MidasVV","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MidasVault","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAXG","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"allocationSum","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":[],"name":"antiBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newRewardFee","type":"uint256"},{"internalType":"uint256","name":"newLpFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"}],"name":"changeFeeAllocation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newGas","type":"uint256"}],"name":"changeMidasGas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"}],"name":"changeSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyFee","type":"uint256"},{"internalType":"uint256","name":"newSellFee","type":"uint256"}],"name":"changeTotalFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"checkPendingReflections","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"manualGas","type":"uint256"}],"name":"manualProcessGas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwapBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pan","outputs":[],"stateMutability":"nonpayable","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":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMinPeriod","type":"uint256"},{"internalType":"uint256","name":"newMinDistribution","type":"uint256"}],"name":"setDistributionCriteria","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newLpWallet","type":"address"}],"name":"setLpWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMidasVault","type":"address"}],"name":"setMidasVault","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","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":"toLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toMarketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toReflections","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052600180546001600160a01b0319167345804880de22913dafe09f4980848ece6ecbaf78179055620000386012600a62000653565b62000048906305f5e10062000664565b6002819055600780546001600160a01b031990811661dead908117909255600880546001600160a81b031916600160a01b179055600e805490911690911790556014600f8190556019601055601e601155600060128190556046601355606490915560188054600162ffff0160a01b031916750100e98c3cfd3e636f3e82b90953bf8620b111df2535179055601a55620000f3906032620014ac6200049a602090811b91909117901c565b601b556200011360326002546200049a60201b620014ac1790919060201c565b601c55620001346101906002546200049a60201b620014ac1790919060201c565b601d553480156200014457600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620001eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000211919062000686565b600680546001600160a01b0319166001600160a01b039283161790556015546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000270573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000296919062000686565b6006546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620002e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030e919062000686565b601680546001600160a01b0319166001600160a01b0392831617905530600090815260046020908152604080832060155490941683529290528190206000199055516200035b9062000532565b604051809103906000f08015801562000378573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b039283161790556000805482168152600a60209081526040808320805460ff199081166001908117909255601880548716865283862080548316841790556016805488168752600c86528487208054841685179055308752848720805484168517905560078054891688528588208054851686179055875489168852600b8752858820805485168617905590548816875284872080548416851790555487168652838620805483168417905554861685528285208054909116909117905560025483548516845260038352818420819055835491519081529316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a362000733565b6000620004e483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620004ed60201b60201c565b90505b92915050565b600081836200051a5760405162461bcd60e51b8152600401620005119190620006b8565b60405180910390fd5b50600062000529848662000710565b95945050505050565b61109d8062002d1b83390190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005975781600019048211156200057b576200057b62000540565b808516156200058957918102915b93841c93908002906200055b565b509250929050565b600082620005b057506001620004e7565b81620005bf57506000620004e7565b8160018114620005d85760028114620005e35762000603565b6001915050620004e7565b60ff841115620005f757620005f762000540565b50506001821b620004e7565b5060208310610133831016604e8410600b841016171562000628575081810a620004e7565b62000634838362000556565b80600019048211156200064b576200064b62000540565b029392505050565b6000620004e460ff8416836200059f565b600081600019048311821515161562000681576200068162000540565b500290565b6000602082840312156200069957600080fd5b81516001600160a01b0381168114620006b157600080fd5b9392505050565b600060208083528351808285015260005b81811015620006e757858101830151858201604001528201620006c9565b81811115620006fa576000604083870101525b50601f01601f1916929092016040019392505050565b6000826200072e57634e487b7160e01b600052601260045260246000fd5b500490565b6125d880620007436000396000f3fe60806040526004361061037a5760003560e01c806375df1305116101d1578063b515566a11610102578063dd62ed3e116100a0578063f8b45b051161006f578063f8b45b0514610a47578063fabe628314610a5d578063fee9627314610a7d578063ffb54a9914610a9d57600080fd5b8063dd62ed3e146109a1578063f2fde38b146109e7578063f708a64f14610a07578063f887ea4014610a2757600080fd5b8063c8d1293d116100dc578063c8d1293d14610940578063c9567bf914610956578063caa5581b1461096b578063d920334e1461098157600080fd5b8063b515566a146108ea578063bf56b3711461090a578063c45a01551461092057600080fd5b80638b42507f1161016f5780639ca6da2e116101495780639ca6da2e1461086a578063a3a2e89e1461088a578063a8aa1b31146108aa578063a9059cbb146108ca57600080fd5b80638b42507f146107ee5780638da5cb5b1461081e57806395d89b411461083c57600080fd5b80637dfcbe34116101ab5780637dfcbe34146107785780637e8e12c81461079957806381934031146107b957806389291a8f146107d957600080fd5b806375df13051461072257806377359aa7146107385780637db1342c1461075857600080fd5b80633f4218e0116102ab5780635e142999116102495780636e93de84116102235780636e93de84146106ac57806370a08231146106c1578063715018a6146106f75780637437681e1461070c57600080fd5b80635e1429991461063f57806360cf3f831461067757806366eb37851461069757600080fd5b8063468c7ee211610285578063468c7ee2146105c857806347062402146105e85780634a74bb02146105fe578063571ac8b01461061f57600080fd5b80633f4218e0146105525780634355855a1461058257806345434377146105b257600080fd5b80632b14ca56116103185780632dbea2e1116102f25780632dbea2e1146104d657806330ca34ee146104f6578063313ce567146105165780633dab52691461053257600080fd5b80632b14ca561461048a5780632b76c57c146104a05780632d48e896146104b657600080fd5b806318160ddd1161035457806318160ddd1461041e57806323b872dd14610433578063273123b7146104535780632b112e491461047557600080fd5b80630445b6671461038657806306fdde03146103af578063095ea7b3146103ee57600080fd5b3661038157005b600080fd5b34801561039257600080fd5b5061039c601d5481565b6040519081526020015b60405180910390f35b3480156103bb57600080fd5b5060408051808201909152600d81526c4d69646173206f66204465466960981b60208201525b6040516103a69190612103565b3480156103fa57600080fd5b5061040e61040936600461217d565b610abe565b60405190151581526020016103a6565b34801561042a57600080fd5b5060025461039c565b34801561043f57600080fd5b5061040e61044e3660046121a9565b610b2b565b34801561045f57600080fd5b5061047361046e3660046121ea565b610bed565b005b34801561048157600080fd5b5061039c610c41565b34801561049657600080fd5b5061039c60105481565b3480156104ac57600080fd5b5061039c601a5481565b3480156104c257600080fd5b506104736104d1366004612207565b610c93565b3480156104e257600080fd5b506104736104f1366004612229565b610d27565b34801561050257600080fd5b50610473610511366004612207565b610d5f565b34801561052257600080fd5b50604051601281526020016103a6565b34801561053e57600080fd5b5061047361054d366004612265565b610e11565b34801561055e57600080fd5b5061040e61056d3660046121ea565b600a6020526000908152604090205460ff1681565b34801561058e57600080fd5b5061040e61059d3660046121ea565b600c6020526000908152604090205460ff1681565b3480156105be57600080fd5b5061039c60145481565b3480156105d457600080fd5b506104736105e33660046121ea565b610e5d565b3480156105f457600080fd5b5061039c600f5481565b34801561060a57600080fd5b5060185461040e90600160a81b900460ff1681565b34801561062b57600080fd5b5061040e61063a3660046121ea565b610ea9565b34801561064b57600080fd5b5060185461065f906001600160a01b031681565b6040516001600160a01b0390911681526020016103a6565b34801561068357600080fd5b5060195461065f906001600160a01b031681565b3480156106a357600080fd5b50610473610eb7565b3480156106b857600080fd5b50610473610eeb565b3480156106cd57600080fd5b5061039c6106dc3660046121ea565b6001600160a01b031660009081526003602052604090205490565b34801561070357600080fd5b50610473610f4a565b34801561071857600080fd5b5061039c601b5481565b34801561072e57600080fd5b5061039c60135481565b34801561074457600080fd5b5061039c6107533660046121ea565b610fbe565b34801561076457600080fd5b50610473610773366004612281565b61102d565b34801561078457600080fd5b5060085461040e90600160a01b900460ff1681565b3480156107a557600080fd5b506104736107b4366004612281565b61105c565b3480156107c557600080fd5b506104736107d4366004612281565b61108b565b3480156107e557600080fd5b50610473611119565b3480156107fa57600080fd5b5061040e6108093660046121ea565b600b6020526000908152604090205460ff1681565b34801561082a57600080fd5b506000546001600160a01b031661065f565b34801561084857600080fd5b506040805180820190915260058152644d4944415360d81b60208201526103e1565b34801561087657600080fd5b5060015461065f906001600160a01b031681565b34801561089657600080fd5b506104736108a536600461229a565b611187565b3480156108b657600080fd5b5060165461065f906001600160a01b031681565b3480156108d657600080fd5b5061040e6108e536600461217d565b6111dc565b3480156108f657600080fd5b506104736109053660046122e5565b6111e9565b34801561091657600080fd5b5061039c600d5481565b34801561092c57600080fd5b5060175461065f906001600160a01b031681565b34801561094c57600080fd5b5061039c60125481565b34801561096257600080fd5b5061047361127b565b34801561097757600080fd5b5061039c60115481565b34801561098d57600080fd5b5061047361099c366004612281565b6112be565b3480156109ad57600080fd5b5061039c6109bc3660046123aa565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156109f357600080fd5b50610473610a023660046121ea565b6112ed565b348015610a1357600080fd5b50610473610a2236600461229a565b6113d7565b348015610a3357600080fd5b5060155461065f906001600160a01b031681565b348015610a5357600080fd5b5061039c601c5481565b348015610a6957600080fd5b50610473610a7836600461229a565b61140b565b348015610a8957600080fd5b50610473610a983660046121ea565b611460565b348015610aa957600080fd5b5060185461040e90600160b01b900460ff1681565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610b199086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001914610bd8576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600482528381203382529091529190912054610bb39184906114ee565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b610be3848484611528565b90505b9392505050565b6000546001600160a01b03163314610c205760405162461bcd60e51b8152600401610c17906123e3565b60405180910390fd5b6001600160a01b03166000908152600960205260409020805460ff19169055565b6008546001600160a01b0316600090815260036020526040812054610c8e906007546001600160a01b0316600090815260036020526040902054610c8890600254906119de565b906119de565b905090565b6000546001600160a01b03163314610cbd5760405162461bcd60e51b8152600401610c17906123e3565b6019546040516316a4744b60e11b815260048101849052602481018390526001600160a01b0390911690632d48e896906044015b600060405180830381600087803b158015610d0b57600080fd5b505af1158015610d1f573d6000803e3d6000fd5b505050505050565b6000546001600160a01b03163314610d515760405162461bcd60e51b8152600401610c17906123e3565b601192909255601255601355565b6000546001600160a01b03163314610d895760405162461bcd60e51b8152600401610c17906123e3565b600f82905560108190556032821115610dcf5760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610c17565b60326010541115610e0d5760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610c17565b5050565b6000546001600160a01b03163314610e3b5760405162461bcd60e51b8152600401610c17906123e3565b60188054921515600160a81b0260ff60a81b1990931692909217909155601d55565b6000546001600160a01b03163314610e875760405162461bcd60e51b8152600401610c17906123e3565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b2582600019610abe565b6000546001600160a01b03163314610ee15760405162461bcd60e51b8152600401610c17906123e3565b610ee9611a20565b565b601954604051633ea1732560e21b81523360048201526001600160a01b039091169063fa85cc9490602401600060405180830381600087803b158015610f3057600080fd5b505af1158015610f44573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610f745760405162461bcd60e51b8152600401610c17906123e3565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60195460405163051fa63360e31b81526001600160a01b03838116600483015260009216906328fd319890602401602060405180830381865afa158015611009573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b259190612418565b6000546001600160a01b031633146110575760405162461bcd60e51b8152600401610c17906123e3565b601c55565b6000546001600160a01b031633146110865760405162461bcd60e51b8152600401610c17906123e3565b601a55565b6000546001600160a01b031633146110b55760405162461bcd60e51b8152600401610c17906123e3565b6019546040516001624d3b8760e01b03198152600481018390526001600160a01b039091169063ffb2c47990602401600060405180830381600087803b1580156110fe57600080fd5b505af1158015611112573d6000803e3d6000fd5b5050505050565b6000546001600160a01b031633146111435760405162461bcd60e51b8152600401610c17906123e3565b478015611184576018546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e0d573d6000803e3d6000fd5b50565b6000546001600160a01b031633146111b15760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000610be6338484611528565b6000546001600160a01b031633146112135760405162461bcd60e51b8152600401610c17906123e3565b60005b8151811015610e0d5760016009600084848151811061123757611237612431565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806112738161245d565b915050611216565b6000546001600160a01b031633146112a55760405162461bcd60e51b8152600401610c17906123e3565b43600d556018805460ff60b01b1916600160b01b179055565b6000546001600160a01b031633146112e85760405162461bcd60e51b8152600401610c17906123e3565b601b55565b6000546001600160a01b031633146113175760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03811661137c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c17565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146114015760405162461bcd60e51b8152600401610c17906123e3565b610e0d8282611bae565b6000546001600160a01b031633146114355760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461148a5760405162461bcd60e51b8152600401610c17906123e3565b601880546001600160a01b0319166001600160a01b0392909216919091179055565b6000610be683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c8d565b600081848411156115125760405162461bcd60e51b8152600401610c179190612103565b50600061151f8486612476565b95945050505050565b600080546001600160a01b0385811691161480159061155557506000546001600160a01b03848116911614155b156115b357601854600160b01b900460ff166115b35760405162461bcd60e51b815260206004820152601760248201527f686f6c6420757220686f7273657320626967206775792e0000000000000000006044820152606401610c17565b6001600160a01b03841660009081526009602052604090205460ff161580156115f557506001600160a01b03831660009081526009602052604090205460ff16155b6115fe57600080fd5b601854600160a01b900460ff16156116225761161b848484611cbb565b9050610be6565b601b548211158061164b57506001600160a01b0384166000908152600b602052604090205460ff165b61167c5760405162461bcd60e51b81526020600482015260026024820152610e8f60f31b6044820152606401610c17565b6001600160a01b0383166000908152600b602052604090205460ff161580156116ae5750600854600160a01b900460ff165b1561171057601c546001600160a01b0384166000908152600360205260409020546116d99084611da1565b11156117105760405162461bcd60e51b81526020600482015260066024820152651dd85b1b195d60d21b6044820152606401610c17565b6016546001600160a01b031633148015906117355750601854600160a01b900460ff16155b801561174a5750601854600160a81b900460ff165b80156117675750601d543060009081526003602052604090205410155b1561177457611774611a20565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600390915291909120546117c69184906114ee565b6001600160a01b038516600090815260036020908152604080832093909355600a90529081205460ff1615801561181657506001600160a01b0384166000908152600a602052604090205460ff16155b611820578261182b565b61182b858585611e00565b6001600160a01b0385166000908152600360205260409020549091506118519082611da1565b6001600160a01b038086166000908152600360209081526040808320949094559188168152600c909152205460ff166118f5576019546001600160a01b0386811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b1580156118e257600080fd5b505af19250505080156118f3575060015b505b6001600160a01b0384166000908152600c602052604090205460ff16611986576019546001600160a01b0385811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561197357600080fd5b505af1925050508015611984575060015b505b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119cb91815260200190565b60405180910390a3506001949350505050565b6000610be683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114ee565b6018805460ff60a01b1916600160a01b17905530600090815260036020526040812054601254909190611a6690600290611a609060649082908790611ec3565b906114ac565b90506000611a7483836119de565b9050611a7f81611f45565b60004790506000611aa06064611a6060115485611ec390919063ffffffff16565b90506000611abe6064611a6060135486611ec390919063ffffffff16565b90506000611ae16002611a606064611a6060125489611ec390919063ffffffff16565b90508315611b25576018546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611b23573d6000803e3d6000fd5b505b601960009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0846040518263ffffffff1660e01b81526004016000604051808303818588803b158015611b7557600080fd5b505af193505050508015611b87575060015b508515611b9857611b98868261206e565b50506018805460ff60a01b191690555050505050565b6001600160a01b0382163014801590611bd557506016546001600160a01b03838116911614155b611bde57600080fd5b6001600160a01b0382166000908152600c60205260409020805460ff19168215801591909117909155611c4457601954604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca9690604401610cf1565b6019546001600160a01b0383811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401610cf1565b60008183611cae5760405162461bcd60e51b8152600401610c179190612103565b50600061151f848661248d565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054611d0c9184906114ee565b6001600160a01b038086166000908152600360205260408082209390935590851681522054611d3b9083611da1565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d8f9086815260200190565b60405180910390a35060019392505050565b600080611dae83856124af565b905083811015610be65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610c17565b60165460009081906001600160a01b03858116911614611e2257600f54611e26565b6010545b90506000611e396064611a608685611ec3565b30600090815260036020526040902054909150611e569082611da1565b30600081815260036020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611ea79085815260200190565b60405180910390a3611eb984826119de565b9695505050505050565b600082600003611ed557506000610b25565b6000611ee183856124c7565b905082611eee858361248d565b14610be65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610c17565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f7a57611f7a612431565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611fd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ff791906124e6565b8160018151811061200a5761200a612431565b60200260200101906001600160a01b031690816001600160a01b0316815250506120343083610abe565b5060155460405163791ac94760e01b81526001600160a01b039091169063791ac94790610cf1908590600090869030904290600401612503565b601554600e5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156120de573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111129190612574565b600060208083528351808285015260005b8181101561213057858101830151858201604001528201612114565b81811115612142576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461118457600080fd5b803561217881612158565b919050565b6000806040838503121561219057600080fd5b823561219b81612158565b946020939093013593505050565b6000806000606084860312156121be57600080fd5b83356121c981612158565b925060208401356121d981612158565b929592945050506040919091013590565b6000602082840312156121fc57600080fd5b8135610be681612158565b6000806040838503121561221a57600080fd5b50508035926020909101359150565b60008060006060848603121561223e57600080fd5b505081359360208301359350604090920135919050565b8035801515811461217857600080fd5b6000806040838503121561227857600080fd5b61219b83612255565b60006020828403121561229357600080fd5b5035919050565b600080604083850312156122ad57600080fd5b82356122b881612158565b91506122c660208401612255565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156122f857600080fd5b823567ffffffffffffffff8082111561231057600080fd5b818501915085601f83011261232457600080fd5b813581811115612336576123366122cf565b8060051b604051601f19603f8301168101818110858211171561235b5761235b6122cf565b60405291825284820192508381018501918883111561237957600080fd5b938501935b8285101561239e5761238f8561216d565b8452938501939285019261237e565b98975050505050505050565b600080604083850312156123bd57600080fd5b82356123c881612158565b915060208301356123d881612158565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561242a57600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161246f5761246f612447565b5060010190565b60008282101561248857612488612447565b500390565b6000826124aa57634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156124c2576124c2612447565b500190565b60008160001904831182151516156124e1576124e1612447565b500290565b6000602082840312156124f857600080fd5b8151610be681612158565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125535784516001600160a01b03168352938301939183019160010161252e565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561258957600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205f751a4dcbd239a184493cb64e977b8e07bc8869757324e87cdf72a25eabb51664736f6c634300080d003360806040526ec097ce7bc90715b34b9f1000000000600b55610708600c556000600d5534801561002e57600080fd5b50600080546001600160a01b03199081163317909155600280548216737a250d5630b4cf539739df2c5dacb4c659f2488d179055600180549091167345804880de22913dafe09f4980848ece6ecbaf7817905561100d806100906000396000f3fe6080604052600436106101025760003560e01c8063997664d711610095578063e2d2e21911610064578063e2d2e219146102be578063efca2eed146102d4578063fa85cc94146102ea578063ffb2c4791461030a578063ffd49c841461032a57600080fd5b8063997664d7146102115780639ca6da2e14610227578063ce7c2ac21461025f578063d0e30db0146102b657600080fd5b80632d48e896116100d15780632d48e896146101955780633a98ef39146101b55780634fab0ae8146101cb5780638c21cd52146101e157600080fd5b806311ce023d1461011657806314b6ca961461013f57806326987b601461015f57806328fd31981461017557600080fd5b366101115761010f610340565b005b600080fd5b34801561012257600080fd5b5061012c600b5481565b6040519081526020015b60405180910390f35b34801561014b57600080fd5b5061010f61015a366004610d71565b6105b8565b34801561016b57600080fd5b5061012c600e5481565b34801561018157600080fd5b5061012c610190366004610d9d565b610730565b3480156101a157600080fd5b5061010f6101b0366004610dba565b6107bb565b3480156101c157600080fd5b5061012c60075481565b3480156101d757600080fd5b5061012c600d5481565b3480156101ed57600080fd5b506102016101fc366004610d9d565b6107dd565b6040519015158152602001610136565b34801561021d57600080fd5b5061012c60085481565b34801561023357600080fd5b50600154610247906001600160a01b031681565b6040516001600160a01b039091168152602001610136565b34801561026b57600080fd5b5061029b61027a366004610d9d565b60066020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610136565b61010f610340565b3480156102ca57600080fd5b5061012c600a5481565b3480156102e057600080fd5b5061012c60095481565b3480156102f657600080fd5b5061010f610305366004610d9d565b610823565b34801561031657600080fd5b5061010f610325366004610ddc565b610846565b34801561033657600080fd5b5061012c600c5481565b6001546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610389573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ad9190610df5565b60408051600280825260608201835292935060009290916020830190803683375050600254604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa15801561041c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104409190610e0e565b8160008151811061045357610453610e2b565b6001600160a01b039283166020918202929092010152600180548351921691839190811061048357610483610e2b565b6001600160a01b03928316602091820292909201015260025460405163b6f9de9560e01b815291169063b6f9de959034906104c990600090869030904290600401610e41565b6000604051808303818588803b1580156104e257600080fd5b505af11580156104f6573d6000803e3d6000fd5b50506001546040516370a0823160e01b81523060048201526000945061057693508692506001600160a01b03909116906370a0823190602401602060405180830381865afa15801561054c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105709190610df5565b90610933565b600854909150610586908261097c565b600855600754600b546105b0916105a7916105a190856109e0565b90610a62565b600a549061097c565b600a55505050565b6000546001600160a01b031633146105cf57600080fd5b6001600160a01b038216600090815260066020526040902054156105f6576105f682610aa4565b60008111801561061c57506001600160a01b038216600090815260066020526040902054155b1561068257600380546001600160a01b0384166000818152600460205260408120839055600183018455929092527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b03191690911790556106b5565b801580156106a757506001600160a01b03821660009081526006602052604090205415155b156106b5576106b582610bc2565b6001600160a01b0382166000908152600660205260409020546007546106e69183916106e091610933565b9061097c565b6007556001600160a01b038216600090815260066020526040902081905561070d81610cd7565b6001600160a01b0390921660009081526006602052604090206001019190915550565b6001600160a01b038116600090815260066020526040812054810361075757506000919050565b6001600160a01b03821660009081526006602052604081205461077990610cd7565b6001600160a01b0384166000908152600660205260409020600101549091508082116107a9575060009392505050565b6107b38282610933565b949350505050565b6000546001600160a01b031633146107d257600080fd5b600c91909155600d55565b600c546001600160a01b038216600090815260056020526040812054909142916108079190610ec1565b10801561081d5750600d5461081b83610730565b115b92915050565b6000546001600160a01b0316331461083a57600080fd5b61084381610aa4565b50565b6003546000819003610856575050565b60008060005a90505b848210801561086d57508383105b1561092c5783600e5410610881576000600e555b6108b36003600e548154811061089957610899610e2b565b6000918252602090912001546001600160a01b03166107dd565b156108ea576108ea6003600e54815481106108d0576108d0610e2b565b6000918252602090912001546001600160a01b0316610aa4565b6108ff6108f85a8390610933565b839061097c565b91505a600e8054919250600061091483610ed9565b9190505550828061092490610ed9565b93505061085f565b5050505050565b600061097583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cf4565b9392505050565b6000806109898385610ec1565b9050838110156109755760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064015b60405180910390fd5b6000826000036109f25750600061081d565b60006109fe8385610ef2565b905082610a0b8583610f11565b146109755760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109d7565b600061097583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d2e565b6001600160a01b0381166000908152600660205260408120549003610ac65750565b6000610ad182610730565b90508015610bbe57600954610ae6908261097c565b60095560015460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af1158015610b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b609190610f33565b506001600160a01b03821660009081526005602090815260408083204290556006909152902060020154610b94908261097c565b6001600160a01b038316600090815260066020526040902060028101919091555461070d90610cd7565b5050565b60038054610bd290600190610f55565b81548110610be257610be2610e2b565b60009182526020808320909101546001600160a01b0384811684526004909252604090922054600380549290931692918110610c2057610c20610e2b565b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055918316815260049182905260408120546003805491939291610c6c90600190610f55565b81548110610c7c57610c7c610e2b565b60009182526020808320909101546001600160a01b031683528201929092526040019020556003805480610cb257610cb2610f6c565b600082815260209020810160001990810180546001600160a01b031916905501905550565b600061081d600b546105a1600a54856109e090919063ffffffff16565b60008184841115610d185760405162461bcd60e51b81526004016109d79190610f82565b506000610d258486610f55565b95945050505050565b60008183610d4f5760405162461bcd60e51b81526004016109d79190610f82565b506000610d258486610f11565b6001600160a01b038116811461084357600080fd5b60008060408385031215610d8457600080fd5b8235610d8f81610d5c565b946020939093013593505050565b600060208284031215610daf57600080fd5b813561097581610d5c565b60008060408385031215610dcd57600080fd5b50508035926020909101359150565b600060208284031215610dee57600080fd5b5035919050565b600060208284031215610e0757600080fd5b5051919050565b600060208284031215610e2057600080fd5b815161097581610d5c565b634e487b7160e01b600052603260045260246000fd5b600060808201868352602060808185015281875180845260a086019150828901935060005b81811015610e8b5784516001600160a01b031683529383019391830191600101610e66565b50506001600160a01b039690961660408501525050506060015292915050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610ed457610ed4610eab565b500190565b600060018201610eeb57610eeb610eab565b5060010190565b6000816000190483118215151615610f0c57610f0c610eab565b500290565b600082610f2e57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215610f4557600080fd5b8151801515811461097557600080fd5b600082821015610f6757610f67610eab565b500390565b634e487b7160e01b600052603160045260246000fd5b600060208083528351808285015260005b81811015610faf57858101830151858201604001528201610f93565b81811115610fc1576000604083870101525b50601f01601f191692909201604001939250505056fea264697066735822122080519c5eb75489547d948477bfd20634da20c17398bd855e1020921cbdfb204764736f6c634300080d0033
Deployed Bytecode
0x60806040526004361061037a5760003560e01c806375df1305116101d1578063b515566a11610102578063dd62ed3e116100a0578063f8b45b051161006f578063f8b45b0514610a47578063fabe628314610a5d578063fee9627314610a7d578063ffb54a9914610a9d57600080fd5b8063dd62ed3e146109a1578063f2fde38b146109e7578063f708a64f14610a07578063f887ea4014610a2757600080fd5b8063c8d1293d116100dc578063c8d1293d14610940578063c9567bf914610956578063caa5581b1461096b578063d920334e1461098157600080fd5b8063b515566a146108ea578063bf56b3711461090a578063c45a01551461092057600080fd5b80638b42507f1161016f5780639ca6da2e116101495780639ca6da2e1461086a578063a3a2e89e1461088a578063a8aa1b31146108aa578063a9059cbb146108ca57600080fd5b80638b42507f146107ee5780638da5cb5b1461081e57806395d89b411461083c57600080fd5b80637dfcbe34116101ab5780637dfcbe34146107785780637e8e12c81461079957806381934031146107b957806389291a8f146107d957600080fd5b806375df13051461072257806377359aa7146107385780637db1342c1461075857600080fd5b80633f4218e0116102ab5780635e142999116102495780636e93de84116102235780636e93de84146106ac57806370a08231146106c1578063715018a6146106f75780637437681e1461070c57600080fd5b80635e1429991461063f57806360cf3f831461067757806366eb37851461069757600080fd5b8063468c7ee211610285578063468c7ee2146105c857806347062402146105e85780634a74bb02146105fe578063571ac8b01461061f57600080fd5b80633f4218e0146105525780634355855a1461058257806345434377146105b257600080fd5b80632b14ca56116103185780632dbea2e1116102f25780632dbea2e1146104d657806330ca34ee146104f6578063313ce567146105165780633dab52691461053257600080fd5b80632b14ca561461048a5780632b76c57c146104a05780632d48e896146104b657600080fd5b806318160ddd1161035457806318160ddd1461041e57806323b872dd14610433578063273123b7146104535780632b112e491461047557600080fd5b80630445b6671461038657806306fdde03146103af578063095ea7b3146103ee57600080fd5b3661038157005b600080fd5b34801561039257600080fd5b5061039c601d5481565b6040519081526020015b60405180910390f35b3480156103bb57600080fd5b5060408051808201909152600d81526c4d69646173206f66204465466960981b60208201525b6040516103a69190612103565b3480156103fa57600080fd5b5061040e61040936600461217d565b610abe565b60405190151581526020016103a6565b34801561042a57600080fd5b5060025461039c565b34801561043f57600080fd5b5061040e61044e3660046121a9565b610b2b565b34801561045f57600080fd5b5061047361046e3660046121ea565b610bed565b005b34801561048157600080fd5b5061039c610c41565b34801561049657600080fd5b5061039c60105481565b3480156104ac57600080fd5b5061039c601a5481565b3480156104c257600080fd5b506104736104d1366004612207565b610c93565b3480156104e257600080fd5b506104736104f1366004612229565b610d27565b34801561050257600080fd5b50610473610511366004612207565b610d5f565b34801561052257600080fd5b50604051601281526020016103a6565b34801561053e57600080fd5b5061047361054d366004612265565b610e11565b34801561055e57600080fd5b5061040e61056d3660046121ea565b600a6020526000908152604090205460ff1681565b34801561058e57600080fd5b5061040e61059d3660046121ea565b600c6020526000908152604090205460ff1681565b3480156105be57600080fd5b5061039c60145481565b3480156105d457600080fd5b506104736105e33660046121ea565b610e5d565b3480156105f457600080fd5b5061039c600f5481565b34801561060a57600080fd5b5060185461040e90600160a81b900460ff1681565b34801561062b57600080fd5b5061040e61063a3660046121ea565b610ea9565b34801561064b57600080fd5b5060185461065f906001600160a01b031681565b6040516001600160a01b0390911681526020016103a6565b34801561068357600080fd5b5060195461065f906001600160a01b031681565b3480156106a357600080fd5b50610473610eb7565b3480156106b857600080fd5b50610473610eeb565b3480156106cd57600080fd5b5061039c6106dc3660046121ea565b6001600160a01b031660009081526003602052604090205490565b34801561070357600080fd5b50610473610f4a565b34801561071857600080fd5b5061039c601b5481565b34801561072e57600080fd5b5061039c60135481565b34801561074457600080fd5b5061039c6107533660046121ea565b610fbe565b34801561076457600080fd5b50610473610773366004612281565b61102d565b34801561078457600080fd5b5060085461040e90600160a01b900460ff1681565b3480156107a557600080fd5b506104736107b4366004612281565b61105c565b3480156107c557600080fd5b506104736107d4366004612281565b61108b565b3480156107e557600080fd5b50610473611119565b3480156107fa57600080fd5b5061040e6108093660046121ea565b600b6020526000908152604090205460ff1681565b34801561082a57600080fd5b506000546001600160a01b031661065f565b34801561084857600080fd5b506040805180820190915260058152644d4944415360d81b60208201526103e1565b34801561087657600080fd5b5060015461065f906001600160a01b031681565b34801561089657600080fd5b506104736108a536600461229a565b611187565b3480156108b657600080fd5b5060165461065f906001600160a01b031681565b3480156108d657600080fd5b5061040e6108e536600461217d565b6111dc565b3480156108f657600080fd5b506104736109053660046122e5565b6111e9565b34801561091657600080fd5b5061039c600d5481565b34801561092c57600080fd5b5060175461065f906001600160a01b031681565b34801561094c57600080fd5b5061039c60125481565b34801561096257600080fd5b5061047361127b565b34801561097757600080fd5b5061039c60115481565b34801561098d57600080fd5b5061047361099c366004612281565b6112be565b3480156109ad57600080fd5b5061039c6109bc3660046123aa565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156109f357600080fd5b50610473610a023660046121ea565b6112ed565b348015610a1357600080fd5b50610473610a2236600461229a565b6113d7565b348015610a3357600080fd5b5060155461065f906001600160a01b031681565b348015610a5357600080fd5b5061039c601c5481565b348015610a6957600080fd5b50610473610a7836600461229a565b61140b565b348015610a8957600080fd5b50610473610a983660046121ea565b611460565b348015610aa957600080fd5b5060185461040e90600160b01b900460ff1681565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610b199086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001914610bd8576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600482528381203382529091529190912054610bb39184906114ee565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b610be3848484611528565b90505b9392505050565b6000546001600160a01b03163314610c205760405162461bcd60e51b8152600401610c17906123e3565b60405180910390fd5b6001600160a01b03166000908152600960205260409020805460ff19169055565b6008546001600160a01b0316600090815260036020526040812054610c8e906007546001600160a01b0316600090815260036020526040902054610c8890600254906119de565b906119de565b905090565b6000546001600160a01b03163314610cbd5760405162461bcd60e51b8152600401610c17906123e3565b6019546040516316a4744b60e11b815260048101849052602481018390526001600160a01b0390911690632d48e896906044015b600060405180830381600087803b158015610d0b57600080fd5b505af1158015610d1f573d6000803e3d6000fd5b505050505050565b6000546001600160a01b03163314610d515760405162461bcd60e51b8152600401610c17906123e3565b601192909255601255601355565b6000546001600160a01b03163314610d895760405162461bcd60e51b8152600401610c17906123e3565b600f82905560108190556032821115610dcf5760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610c17565b60326010541115610e0d5760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610c17565b5050565b6000546001600160a01b03163314610e3b5760405162461bcd60e51b8152600401610c17906123e3565b60188054921515600160a81b0260ff60a81b1990931692909217909155601d55565b6000546001600160a01b03163314610e875760405162461bcd60e51b8152600401610c17906123e3565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b2582600019610abe565b6000546001600160a01b03163314610ee15760405162461bcd60e51b8152600401610c17906123e3565b610ee9611a20565b565b601954604051633ea1732560e21b81523360048201526001600160a01b039091169063fa85cc9490602401600060405180830381600087803b158015610f3057600080fd5b505af1158015610f44573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610f745760405162461bcd60e51b8152600401610c17906123e3565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60195460405163051fa63360e31b81526001600160a01b03838116600483015260009216906328fd319890602401602060405180830381865afa158015611009573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b259190612418565b6000546001600160a01b031633146110575760405162461bcd60e51b8152600401610c17906123e3565b601c55565b6000546001600160a01b031633146110865760405162461bcd60e51b8152600401610c17906123e3565b601a55565b6000546001600160a01b031633146110b55760405162461bcd60e51b8152600401610c17906123e3565b6019546040516001624d3b8760e01b03198152600481018390526001600160a01b039091169063ffb2c47990602401600060405180830381600087803b1580156110fe57600080fd5b505af1158015611112573d6000803e3d6000fd5b5050505050565b6000546001600160a01b031633146111435760405162461bcd60e51b8152600401610c17906123e3565b478015611184576018546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e0d573d6000803e3d6000fd5b50565b6000546001600160a01b031633146111b15760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000610be6338484611528565b6000546001600160a01b031633146112135760405162461bcd60e51b8152600401610c17906123e3565b60005b8151811015610e0d5760016009600084848151811061123757611237612431565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806112738161245d565b915050611216565b6000546001600160a01b031633146112a55760405162461bcd60e51b8152600401610c17906123e3565b43600d556018805460ff60b01b1916600160b01b179055565b6000546001600160a01b031633146112e85760405162461bcd60e51b8152600401610c17906123e3565b601b55565b6000546001600160a01b031633146113175760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03811661137c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c17565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146114015760405162461bcd60e51b8152600401610c17906123e3565b610e0d8282611bae565b6000546001600160a01b031633146114355760405162461bcd60e51b8152600401610c17906123e3565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461148a5760405162461bcd60e51b8152600401610c17906123e3565b601880546001600160a01b0319166001600160a01b0392909216919091179055565b6000610be683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c8d565b600081848411156115125760405162461bcd60e51b8152600401610c179190612103565b50600061151f8486612476565b95945050505050565b600080546001600160a01b0385811691161480159061155557506000546001600160a01b03848116911614155b156115b357601854600160b01b900460ff166115b35760405162461bcd60e51b815260206004820152601760248201527f686f6c6420757220686f7273657320626967206775792e0000000000000000006044820152606401610c17565b6001600160a01b03841660009081526009602052604090205460ff161580156115f557506001600160a01b03831660009081526009602052604090205460ff16155b6115fe57600080fd5b601854600160a01b900460ff16156116225761161b848484611cbb565b9050610be6565b601b548211158061164b57506001600160a01b0384166000908152600b602052604090205460ff165b61167c5760405162461bcd60e51b81526020600482015260026024820152610e8f60f31b6044820152606401610c17565b6001600160a01b0383166000908152600b602052604090205460ff161580156116ae5750600854600160a01b900460ff165b1561171057601c546001600160a01b0384166000908152600360205260409020546116d99084611da1565b11156117105760405162461bcd60e51b81526020600482015260066024820152651dd85b1b195d60d21b6044820152606401610c17565b6016546001600160a01b031633148015906117355750601854600160a01b900460ff16155b801561174a5750601854600160a81b900460ff165b80156117675750601d543060009081526003602052604090205410155b1561177457611774611a20565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600390915291909120546117c69184906114ee565b6001600160a01b038516600090815260036020908152604080832093909355600a90529081205460ff1615801561181657506001600160a01b0384166000908152600a602052604090205460ff16155b611820578261182b565b61182b858585611e00565b6001600160a01b0385166000908152600360205260409020549091506118519082611da1565b6001600160a01b038086166000908152600360209081526040808320949094559188168152600c909152205460ff166118f5576019546001600160a01b0386811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b1580156118e257600080fd5b505af19250505080156118f3575060015b505b6001600160a01b0384166000908152600c602052604090205460ff16611986576019546001600160a01b0385811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561197357600080fd5b505af1925050508015611984575060015b505b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119cb91815260200190565b60405180910390a3506001949350505050565b6000610be683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114ee565b6018805460ff60a01b1916600160a01b17905530600090815260036020526040812054601254909190611a6690600290611a609060649082908790611ec3565b906114ac565b90506000611a7483836119de565b9050611a7f81611f45565b60004790506000611aa06064611a6060115485611ec390919063ffffffff16565b90506000611abe6064611a6060135486611ec390919063ffffffff16565b90506000611ae16002611a606064611a6060125489611ec390919063ffffffff16565b90508315611b25576018546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611b23573d6000803e3d6000fd5b505b601960009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0846040518263ffffffff1660e01b81526004016000604051808303818588803b158015611b7557600080fd5b505af193505050508015611b87575060015b508515611b9857611b98868261206e565b50506018805460ff60a01b191690555050505050565b6001600160a01b0382163014801590611bd557506016546001600160a01b03838116911614155b611bde57600080fd5b6001600160a01b0382166000908152600c60205260409020805460ff19168215801591909117909155611c4457601954604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca9690604401610cf1565b6019546001600160a01b0383811660008181526003602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401610cf1565b60008183611cae5760405162461bcd60e51b8152600401610c179190612103565b50600061151f848661248d565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054611d0c9184906114ee565b6001600160a01b038086166000908152600360205260408082209390935590851681522054611d3b9083611da1565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611d8f9086815260200190565b60405180910390a35060019392505050565b600080611dae83856124af565b905083811015610be65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610c17565b60165460009081906001600160a01b03858116911614611e2257600f54611e26565b6010545b90506000611e396064611a608685611ec3565b30600090815260036020526040902054909150611e569082611da1565b30600081815260036020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611ea79085815260200190565b60405180910390a3611eb984826119de565b9695505050505050565b600082600003611ed557506000610b25565b6000611ee183856124c7565b905082611eee858361248d565b14610be65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610c17565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f7a57611f7a612431565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611fd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ff791906124e6565b8160018151811061200a5761200a612431565b60200260200101906001600160a01b031690816001600160a01b0316815250506120343083610abe565b5060155460405163791ac94760e01b81526001600160a01b039091169063791ac94790610cf1908590600090869030904290600401612503565b601554600e5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156120de573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111129190612574565b600060208083528351808285015260005b8181101561213057858101830151858201604001528201612114565b81811115612142576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461118457600080fd5b803561217881612158565b919050565b6000806040838503121561219057600080fd5b823561219b81612158565b946020939093013593505050565b6000806000606084860312156121be57600080fd5b83356121c981612158565b925060208401356121d981612158565b929592945050506040919091013590565b6000602082840312156121fc57600080fd5b8135610be681612158565b6000806040838503121561221a57600080fd5b50508035926020909101359150565b60008060006060848603121561223e57600080fd5b505081359360208301359350604090920135919050565b8035801515811461217857600080fd5b6000806040838503121561227857600080fd5b61219b83612255565b60006020828403121561229357600080fd5b5035919050565b600080604083850312156122ad57600080fd5b82356122b881612158565b91506122c660208401612255565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156122f857600080fd5b823567ffffffffffffffff8082111561231057600080fd5b818501915085601f83011261232457600080fd5b813581811115612336576123366122cf565b8060051b604051601f19603f8301168101818110858211171561235b5761235b6122cf565b60405291825284820192508381018501918883111561237957600080fd5b938501935b8285101561239e5761238f8561216d565b8452938501939285019261237e565b98975050505050505050565b600080604083850312156123bd57600080fd5b82356123c881612158565b915060208301356123d881612158565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561242a57600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161246f5761246f612447565b5060010190565b60008282101561248857612488612447565b500390565b6000826124aa57634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156124c2576124c2612447565b500190565b60008160001904831182151516156124e1576124e1612447565b500290565b6000602082840312156124f857600080fd5b8151610be681612158565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125535784516001600160a01b03168352938301939183019160010161252e565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561258957600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205f751a4dcbd239a184493cb64e977b8e07bc8869757324e87cdf72a25eabb51664736f6c634300080d0033
Deployed Bytecode Sourcemap
11147:11709:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13001:52;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;13001:52:0;;;;;;;;17066:80;;;;;;;;;;-1:-1:-1;17138:5:0;;;;;;;;;;;;-1:-1:-1;;;17138:5:0;;;;17066:80;;;;;;;:::i;17408:216::-;;;;;;;;;;-1:-1:-1;17408:216:0;;;;;:::i;:::-;;:::i;:::-;;;1558:14:1;;1551:22;1533:41;;1521:2;1506:18;17408:216:0;1393:187:1;16796:88:0;;;;;;;;;;-1:-1:-1;16869:12:0;;16796:88;;17922:366;;;;;;;;;;-1:-1:-1;17922:366:0;;;;;:::i;:::-;;:::i;15959:90::-;;;;;;;;;;-1:-1:-1;15959:90:0;;;;;:::i;:::-;;:::i;:::-;;16646:142;;;;;;;;;;;;;:::i;12226:27::-;;;;;;;;;;;;;;;;12743;;;;;;;;;;;;;;;;15758:193;;;;;;;;;;-1:-1:-1;15758:193:0;;;;;:::i;:::-;;:::i;14568:233::-;;;;;;;;;;-1:-1:-1;14568:233:0;;;;;:::i;:::-;;:::i;14311:244::-;;;;;;;;;;-1:-1:-1;14311:244:0;;;;;:::i;:::-;;:::i;16890:80::-;;;;;;;;;;-1:-1:-1;16890:80:0;;11455:2;3014:36:1;;3002:2;2987:18;16890:80:0;2872:184:1;15551:199:0;;;;;;;;;;-1:-1:-1;15551:199:0;;;;;:::i;:::-;;:::i;11957:44::-;;;;;;;;;;-1:-1:-1;11957:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12063:49;;;;;;;;;;-1:-1:-1;12063:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12379:34;;;;;;;;;;;;;;;;15437:102;;;;;;;;;;-1:-1:-1;15437:102:0;;;;;:::i;:::-;;:::i;12193:26::-;;;;;;;;;;;;;;;;12624:40;;;;;;;;;;-1:-1:-1;12624:40:0;;;;-1:-1:-1;;;12624:40:0;;;;;;17632:122;;;;;;;;;;-1:-1:-1;17632:122:0;;;;;:::i;:::-;;:::i;12508:79::-;;;;;;;;;;-1:-1:-1;12508:79:0;;;;-1:-1:-1;;;;;12508:79:0;;;;;;-1:-1:-1;;;;;3643:32:1;;;3625:51;;3613:2;3598:18;12508:79:0;3479:203:1;12715:21:0;;;;;;;;;;-1:-1:-1;12715:21:0;;;;-1:-1:-1;;;;;12715:21:0;;;22191:74;;;;;;;;;;;;;:::i;22788:65::-;;;;;;;;;;;;;:::i;17152:105::-;;;;;;;;;;-1:-1:-1;17152:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;17236:18:0;17218:7;17236:18;;;:9;:18;;;;;;;17152:105;2375:148;;;;;;;;;;;;;:::i;12897:43::-;;;;;;;;;;;;;;;;12339:31;;;;;;;;;;;;;;;;22631:149;;;;;;;;;;-1:-1:-1;22631:149:0;;;;;:::i;:::-;;:::i;14912:104::-;;;;;;;;;;-1:-1:-1;14912:104:0;;;;;:::i;:::-;;:::i;11876:26::-;;;;;;;;;;-1:-1:-1;11876:26:0;;;;-1:-1:-1;;;11876:26:0;;;;;;16532:95;;;;;;;;;;-1:-1:-1;16532:95:0;;;;;:::i;:::-;;:::i;22515:108::-;;;;;;;;;;-1:-1:-1;22515:108:0;;;;;:::i;:::-;;:::i;22273:234::-;;;;;;;;;;;;;:::i;12008:48::-;;;;;;;;;;-1:-1:-1;12008:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2161:79;;;;;;;;;;-1:-1:-1;2199:7:0;2226:6;-1:-1:-1;;;;;2226:6:0;2161:79;;16976:84;;;;;;;;;;-1:-1:-1;17050:7:0;;;;;;;;;;;;-1:-1:-1;;;17050:7:0;;;;16976:84;;11223:64;;;;;;;;;;-1:-1:-1;11223:64:0;;;;-1:-1:-1;;;;;11223:64:0;;;15028:122;;;;;;;;;;-1:-1:-1;15028:122:0;;;;;:::i;:::-;;:::i;12453:19::-;;;;;;;;;;-1:-1:-1;12453:19:0;;;;-1:-1:-1;;;;;12453:19:0;;;17762:152;;;;;;;;;;-1:-1:-1;17762:152:0;;;;;:::i;:::-;;:::i;13964:166::-;;;;;;;;;;-1:-1:-1;13964:166:0;;;;;:::i;:::-;;:::i;12121:25::-;;;;;;;;;;;;;;;;12479:22;;;;;;;;;;-1:-1:-1;12479:22:0;;;;-1:-1:-1;;;;;12479:22:0;;;12302:30;;;;;;;;;;;;;;;;14182:115;;;;;;;;;;;;;:::i;12262:33::-;;;;;;;;;;;;;;;;14809:95;;;;;;;;;;-1:-1:-1;14809:95:0;;;;;:::i;:::-;;:::i;17263:133::-;;;;;;;;;;-1:-1:-1;17263:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;17365:19:0;;;17347:7;17365:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;17263:133;2531:244;;;;;;;;;;-1:-1:-1;2531:244:0;;;;;:::i;:::-;;:::i;16392:132::-;;;;;;;;;;-1:-1:-1;16392:132:0;;;;;:::i;:::-;;:::i;12422:24::-;;;;;;;;;;-1:-1:-1;12422:24:0;;;;-1:-1:-1;;;;;12422:24:0;;;12947:47;;;;;;;;;;;;;;;;15158:136;;;;;;;;;;-1:-1:-1;15158:136:0;;;;;:::i;:::-;;:::i;15302:127::-;;;;;;;;;;-1:-1:-1;15302:127:0;;;;;:::i;:::-;;:::i;12671:31::-;;;;;;;;;;-1:-1:-1;12671:31:0;;;;-1:-1:-1;;;12671:31:0;;;;;;17408:216;17512:10;17483:4;17500:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;17500:32:0;;;;;;;;;;:41;;;17557:37;17483:4;;17500:32;;17557:37;;;;17535:6;160:25:1;;148:2;133:18;;14:177;17557:37:0;;;;;;;;-1:-1:-1;17612:4:0;17408:216;;;;;:::o;17922:366::-;-1:-1:-1;;;;;18042:19:0;;18022:4;18042:19;;;:11;:19;;;;;;;;18062:10;18042:31;;;;;;;;-1:-1:-1;;18042:52:0;18039:186;;18144:69;;;;;;;;;;;-1:-1:-1;;;18144:69:0;;;;;;;;-1:-1:-1;;;;;18144:19:0;;-1:-1:-1;18144:19:0;;;:11;:19;;;;;18164:10;18144:31;;;;;;;;;;:69;;18180:6;;18144:35;:69::i;:::-;-1:-1:-1;;;;;18110:19:0;;;;;;:11;:19;;;;;;;;18130:10;18110:31;;;;;;;:103;18039:186;18244:36;18254:6;18262:9;18273:6;18244:9;:36::i;:::-;18237:43;;17922:366;;;;;;:::o;15959:90::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;16021:12:0::1;16036:5;16021:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;16021:20:0::1;::::0;;15959:90::o;16646:142::-;16774:4;;-1:-1:-1;;;;;16774:4:0;16699:7;17236:18;;;:9;:18;;;;;;16726:54;;16753:4;;-1:-1:-1;;;;;16753:4:0;17218:7;17236:18;;;:9;:18;;;;;;16726:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;16719:61;;16646:142;:::o;15758:193::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;15871:6:::1;::::0;:64:::1;::::0;-1:-1:-1;;;15871:64:0;;::::1;::::0;::::1;7096:25:1::0;;;7137:18;;;7130:34;;;-1:-1:-1;;;;;15871:6:0;;::::1;::::0;:30:::1;::::0;7069:18:1;;15871:64:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15758:193:::0;;:::o;14568:233::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14692:13:::1;:28:::0;;;;14731:11:::1;:22:::0;14764:11:::1;:29:::0;14568:233::o;14311:244::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14407:6:::1;:18:::0;;;14436:7:::1;:20:::0;;;14487:2:::1;14477:12:::0;::::1;;14469:33;;;::::0;-1:-1:-1;;;14469:33:0;;7377:2:1;14469:33:0::1;::::0;::::1;7359:21:1::0;7416:1;7396:18;;;7389:29;-1:-1:-1;;;7434:18:1;;;7427:38;7482:18;;14469:33:0::1;7175:331:1::0;14469:33:0::1;14532:2;14521:7;;:13;;14513:34;;;::::0;-1:-1:-1;;;14513:34:0;;7377:2:1;14513:34:0::1;::::0;::::1;7359:21:1::0;7416:1;7396:18;;;7389:29;-1:-1:-1;;;7434:18:1;;;7427:38;7482:18;;14513:34:0::1;7175:331:1::0;14513:34:0::1;14311:244:::0;;:::o;15551:199::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;15660:21:::1;:39:::0;;;::::1;;-1:-1:-1::0;;;15660:39:0::1;-1:-1:-1::0;;;;15660:39:0;;::::1;::::0;;;::::1;::::0;;;15710:13:::1;:32:::0;15551:199::o;15437:102::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;15509:8:::1;:22:::0;;-1:-1:-1;;;;;;15509:22:0::1;-1:-1:-1::0;;;;;15509:22:0;;;::::1;::::0;;;::::1;::::0;;15437:102::o;17632:122::-;17687:4;17711:35;17719:7;-1:-1:-1;;17711:7:0;:35::i;22191:74::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;22247:10:::1;:8;:10::i;:::-;22191:74::o:0;22788:65::-;22823:6;;:22;;-1:-1:-1;;;22823:22:0;;22834:10;22823:22;;;3625:51:1;-1:-1:-1;;;;;22823:6:0;;;;:10;;3598:18:1;;22823:22:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22788:65::o;2375:148::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;2482:1:::1;2466:6:::0;;2445:40:::1;::::0;-1:-1:-1;;;;;2466:6:0;;::::1;::::0;2445:40:::1;::::0;2482:1;;2445:40:::1;2513:1;2496:19:::0;;-1:-1:-1;;;;;;2496:19:0::1;::::0;;2375:148::o;22631:149::-;22735:6;;:37;;-1:-1:-1;;;22735:37:0;;-1:-1:-1;;;;;3643:32:1;;;22735:37:0;;;3625:51:1;22708:7:0;;22735:6;;:24;;3598:18:1;;22735:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14912:104::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14987:9:::1;:21:::0;14912:104::o;16532:95::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;16602:8:::1;:17:::0;16532:95::o;22515:108::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;22590:6:::1;::::0;:25:::1;::::0;-1:-1:-1;;;;;;22590:25:0;;::::1;::::0;::::1;160::1::0;;;-1:-1:-1;;;;;22590:6:0;;::::1;::::0;:14:::1;::::0;133:18:1;;22590:25:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;22515:108:::0;:::o;22273:234::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;22357:21:::1;22392:22:::0;;22389:111:::1;;22448:10;::::0;22440:48:::1;::::0;-1:-1:-1;;;;;22448:10:0;;::::1;::::0;22440:48;::::1;;;::::0;22469:18;;22448:10:::1;22440:48:::0;22448:10;22440:48;22469:18;22448:10;22440:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;22389:111;22317:190;22273:234::o:0;15028:122::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15114:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;15114:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15028:122::o;17762:152::-;17842:4;17866:40;17876:10;17888:9;17899:6;17866:9;:40::i;13964:166::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14040:6:::1;14035:88;14056:5;:12;14052:1;:16;14035:88;;;14107:4;14090;:14;14095:5;14101:1;14095:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;14090:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;14090:14:0;:21;;-1:-1:-1;;14090:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14070:3;::::1;::::0;::::1;:::i;:::-;;;;14035:88;;14182:115:::0;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14248:12:::1;14235:10;:25:::0;14271:11:::1;:18:::0;;-1:-1:-1;;;;14271:18:0::1;-1:-1:-1::0;;;14271:18:0::1;::::0;;14182:115::o;14809:95::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;14880:5:::1;:16:::0;14809:95::o;2531:244::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2620:22:0;::::1;2612:73;;;::::0;-1:-1:-1;;;2612:73:0;;8306:2:1;2612:73:0::1;::::0;::::1;8288:21:1::0;8345:2;8325:18;;;8318:30;8384:34;8364:18;;;8357:62;-1:-1:-1;;;8435:18:1;;;8428:36;8481:19;;2612:73:0::1;8104:402:1::0;2612:73:0::1;2722:6;::::0;;2701:38:::1;::::0;-1:-1:-1;;;;;2701:38:0;;::::1;::::0;2722:6;::::1;::::0;2701:38:::1;::::0;::::1;2750:6;:17:::0;;-1:-1:-1;;;;;;2750:17:0::1;-1:-1:-1::0;;;;;2750:17:0;;;::::1;::::0;;;::::1;::::0;;2531:244::o;16392:132::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;16480:36:::1;16501:6;16509;16480:20;:36::i;15158:136::-:0;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15254:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;15254:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15158:136::o;15302:127::-;2288:6;;-1:-1:-1;;;;;2288:6:0;1706:10;2288:22;2280:67;;;;-1:-1:-1;;;2280:67:0;;;;;;;:::i;:::-;15386:10:::1;:35:::0;;-1:-1:-1;;;;;;15386:35:0::1;-1:-1:-1::0;;;;;15386:35:0;;;::::1;::::0;;;::::1;::::0;;15302:127::o;1101:132::-;1159:7;1186:39;1190:1;1193;1186:39;;;;;;;;;;;;;;;;;:3;:39::i;647:192::-;733:7;769:12;761:6;;;;753:29;;;;-1:-1:-1;;;753:29:0;;;;;;;;:::i;:::-;-1:-1:-1;793:9:0;805:5;809:1;805;:5;:::i;:::-;793:17;647:192;-1:-1:-1;;;;;647:192:0:o;18296:1414::-;18384:4;2226:6;;-1:-1:-1;;;;;18405:16:0;;;2226:6;;18405:16;;;;:39;;-1:-1:-1;2199:7:0;2226:6;-1:-1:-1;;;;;18425:19:0;;;2226:6;;18425:19;;18405:39;18401:92;;;18454:11;;-1:-1:-1;;;18454:11:0;;;;18446:47;;;;-1:-1:-1;;;18446:47:0;;8843:2:1;18446:47:0;;;8825:21:1;8882:2;8862:18;;;8855:30;8921:25;8901:18;;;8894:53;8964:18;;18446:47:0;8641:347:1;18446:47:0;-1:-1:-1;;;;;18555:12:0;;;;;;:4;:12;;;;;;;;18554:13;:33;;;;-1:-1:-1;;;;;;18572:15:0;;;;;;:4;:15;;;;;;;;18571:16;18554:33;18546:42;;;;;;18604:16;;-1:-1:-1;;;18604:16:0;;;;18601:73;;;18630:41;18645:6;18653:9;18664:6;18630:14;:41::i;:::-;18623:48;;;;18601:73;18704:5;;18694:6;:15;;:42;;;-1:-1:-1;;;;;;18713:23:0;;;;;;:15;:23;;;;;;;;18694:42;18686:57;;;;-1:-1:-1;;;18686:57:0;;9195:2:1;18686:57:0;;;9177:21:1;9234:1;9214:18;;;9207:29;-1:-1:-1;;;9252:18:1;;;9245:32;9294:18;;18686:57:0;8993:325:1;18686:57:0;-1:-1:-1;;;;;18760:26:0;;;;;;:15;:26;;;;;;;;18759:27;:38;;;;-1:-1:-1;18790:7:0;;-1:-1:-1;;;18790:7:0;;;;18759:38;18756:143;;;18867:9;;-1:-1:-1;;;;;18831:20:0;;;;;;:9;:20;;;;;;:32;;18856:6;18831:24;:32::i;:::-;:45;;18823:64;;;;-1:-1:-1;;;18823:64:0;;9525:2:1;18823:64:0;;;9507:21:1;9564:1;9544:18;;;9537:29;-1:-1:-1;;;9582:18:1;;;9575:36;9628:18;;18823:64:0;9323:329:1;18823:64:0;18928:4;;-1:-1:-1;;;;;18928:4:0;18914:10;:18;;;;:39;;-1:-1:-1;18937:16:0;;-1:-1:-1;;;18937:16:0;;;;18936:17;18914:39;:64;;;;-1:-1:-1;18957:21:0;;-1:-1:-1;;;18957:21:0;;;;18914:64;:109;;;;-1:-1:-1;19010:13:0;;19000:4;18982:24;;;;:9;:24;;;;;;:41;;18914:109;18911:128;;;19026:10;:8;:10::i;:::-;19071:53;;;;;;;;;;;-1:-1:-1;;;19071:53:0;;;;;;;;-1:-1:-1;;;;;19071:17:0;;-1:-1:-1;19071:17:0;;;:9;:17;;;;;;;;:53;;19093:6;;19071:21;:53::i;:::-;-1:-1:-1;;;;;19051:17:0;;;;;;:9;:17;;;;;;;;:73;;;;19168:11;:19;;;;;;;;19167:20;:47;;;;-1:-1:-1;;;;;;19192:22:0;;;;;;:11;:22;;;;;;;;19191:23;19167:47;:93;;19254:6;19167:93;;;19217:34;19225:6;19233:9;19244:6;19217:7;:34::i;:::-;-1:-1:-1;;;;;19294:20:0;;;;;;:9;:20;;;;;;19145:115;;-1:-1:-1;19294:37:0;;19145:115;19294:24;:37::i;:::-;-1:-1:-1;;;;;19271:20:0;;;;;;;:9;:20;;;;;;;;:60;;;;19377:24;;;;;:16;:24;;;;;;;19373:114;;19422:6;;-1:-1:-1;;;;;19446:17:0;;;19422:6;19446:17;;;:9;:17;;;;;;;;19422:42;;-1:-1:-1;;;19422:42:0;;;;;9831:51:1;;;;9898:18;;;9891:34;19422:6:0;;;:15;;9804:18:1;;19422:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19418:58;;-1:-1:-1;;;;;19503:27:0;;;;;;:16;:27;;;;;;;;19499:124;;19551:6;;-1:-1:-1;;;;;19578:20:0;;;19551:6;19578:20;;;:9;:20;;;;;;;;19551:48;;-1:-1:-1;;;19551:48:0;;;;;9831:51:1;;;;9898:18;;;9891:34;19551:6:0;;;:15;;9804:18:1;;19551:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19547:64;;19657:9;-1:-1:-1;;;;;19640:40:0;19649:6;-1:-1:-1;;;;;19640:40:0;;19668:11;19640:40;;;;160:25:1;;148:2;133:18;;14:177;19640:40:0;;;;;;;;-1:-1:-1;19698:4:0;;18296:1414;-1:-1:-1;;;;18296:1414:0:o;505:136::-;563:7;590:43;594:1;597;590:43;;;;;;;;;;;;;;;;;:3;:43::i;21260:923::-;12811:16;:23;;-1:-1:-1;;;;12811:23:0;-1:-1:-1;;;12811:23:0;;;21359:4:::1;12811:23:::0;21341:24;;;:9:::1;:24;::::0;;;;;21423:11:::1;::::0;21341:24;;12811:23;21406:45:::1;::::0;21449:1:::1;::::0;21406:38:::1;::::0;21440:3:::1;::::0;21406:38;;21341:24;;21406:16:::1;:29::i;:::-;:33:::0;::::1;:38::i;:45::-;21377:74:::0;-1:-1:-1;21467:20:0::1;21490:36;:12:::0;21377:74;21490:16:::1;:36::i;:::-;21467:59;;21539:30;21556:12;21539:16;:30::i;:::-;21582:23;21608:21;21582:47;;21640:17;21660:43;21699:3;21660:34;21680:13;;21660:15;:19;;:34;;;;:::i;:43::-;21640:63;;21714:24;21741:41;21778:3;21741:32;21761:11;;21741:15;:19;;:32;;;;:::i;:41::-;21714:68;;21793:23;21819:48;21865:1;21819:41;21856:3;21819:32;21839:11;;21819:15;:19;;:32;;;;:::i;:48::-;21793:74:::0;-1:-1:-1;21890:19:0;;21886:97:::1;;21933:10;::::0;21925:46:::1;::::0;-1:-1:-1;;;;;21933:10:0;;::::1;::::0;21925:46;::::1;;;::::0;21954:16;;21933:10:::1;21925:46:::0;21933:10;21925:46;21954:16;21933:10;21925:46;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;21886:97;22007:6;;;;;;;;;-1:-1:-1::0;;;;;22007:6:0::1;-1:-1:-1::0;;;;;22007:14:0::1;;22029:9;22007:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;22003:50:::0;22077:22;;22073:103:::1;;22115:49;22128:18;22148:15;22115:12;:49::i;:::-;-1:-1:-1::0;;12857:16:0;:24;;-1:-1:-1;;;;12857:24:0;;;-1:-1:-1;;;;;21260:923:0:o;16057:327::-;-1:-1:-1;;;;;16144:23:0;;16162:4;16144:23;;;;:41;;-1:-1:-1;16181:4:0;;-1:-1:-1;;;;;16171:14:0;;;16181:4;;16171:14;;16144:41;16136:50;;;;;;-1:-1:-1;;;;;16197:24:0;;;;;;:16;:24;;;;;:33;;-1:-1:-1;;16197:33:0;;;;;;;;;;;;16241:136;;16266:6;;:26;;-1:-1:-1;;;16266:26:0;;-1:-1:-1;;;;;9849:32:1;;;16266:26:0;;;9831:51:1;16266:6:0;9898:18:1;;;9891:34;16266:6:0;;;;:15;;9804:18:1;;16266:26:0;9657:274:1;16241:136:0;16323:6;;-1:-1:-1;;;;;16347:17:0;;;16323:6;16347:17;;;:9;:17;;;;;;;;16323:42;;-1:-1:-1;;;16323:42:0;;;;;9831:51:1;;;;9898:18;;;9891:34;16323:6:0;;;:15;;9804:18:1;;16323:42:0;9657:274:1;1239:345:0;1325:7;1427:12;1420:5;1412:28;;;;-1:-1:-1;;;1412:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1451:9:0;1463:5;1467:1;1463;:5;:::i;19722:330::-;19852:53;;;;;;;;;;;-1:-1:-1;;;19852:53:0;;;;;;;;-1:-1:-1;;;;;19852:17:0;;19815:4;19852:17;;;:9;:17;;;;;;;:53;;19874:6;;19852:21;:53::i;:::-;-1:-1:-1;;;;;19832:17:0;;;;;;;:9;:17;;;;;;:73;;;;19939:20;;;;;;;:32;;19964:6;19939:24;:32::i;:::-;-1:-1:-1;;;;;19916:20:0;;;;;;;:9;:20;;;;;;;:55;;;;19987:35;;;;;;;;;;20015:6;160:25:1;;148:2;133:18;;14:177;19987:35:0;;;;;;;;-1:-1:-1;20040:4:0;19722:330;;;;;:::o;318:181::-;376:7;;408:5;412:1;408;:5;:::i;:::-;396:17;;437:1;432;:6;;424:46;;;;-1:-1:-1;;;424:46:0;;10780:2:1;424:46:0;;;10762:21:1;10819:2;10799:18;;;10792:30;10858:29;10838:18;;;10831:57;10905:18;;424:46:0;10578:351:1;20066:427:0;20206:4;;20152:7;;;;-1:-1:-1;;;;;20206:17:0;;;:4;;:17;:36;;20236:6;;20206:36;;;20226:7;;20206:36;20182:60;-1:-1:-1;20253:17:0;20273:34;20303:3;20273:25;:6;20182:60;20273:10;:25::i;:34::-;20365:4;20347:24;;;;:9;:24;;;;;;20253:54;;-1:-1:-1;20347:39:0;;20253:54;20347:28;:39::i;:::-;20338:4;20320:24;;;;:9;:24;;;;;;;:66;;;;20402:42;;-1:-1:-1;;;;;20402:42:0;;;;;;;20434:9;160:25:1;;148:2;133:18;;14:177;20402:42:0;;;;;;;;20464:21;:6;20475:9;20464:10;:21::i;:::-;20457:28;20066:427;-1:-1:-1;;;;;;20066:427:0:o;845:250::-;903:7;927:1;932;927:6;923:47;;-1:-1:-1;957:1:0;950:8;;923:47;982:9;994:5;998:1;994;:5;:::i;:::-;982:17;-1:-1:-1;1027:1:0;1018:5;1022:1;982:17;1018:5;:::i;:::-;:10;1010:56;;;;-1:-1:-1;;;1010:56:0;;11309:2:1;1010:56:0;;;11291:21:1;11348:2;11328:18;;;11321:30;11387:34;11367:18;;;11360:62;-1:-1:-1;;;11438:18:1;;;11431:31;11479:19;;1010:56:0;11107:397:1;20505:460:0;20597:16;;;20611:1;20597:16;;;;;;;;20573:21;;20597:16;;;;;;;;;;-1:-1:-1;20597:16:0;20573:40;;20642:4;20624;20629:1;20624:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20624:23:0;;;:7;;;;;;;;;;:23;;;;20668:6;;:13;;;-1:-1:-1;;;20668:13:0;;;;:6;;;;;:11;;:13;;;;;20624:7;;20668:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20658:4;20663:1;20658:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;20658:23:0;;;-1:-1:-1;;;;;20658:23:0;;;;;20694:35;20710:4;20717:11;20694:7;:35::i;:::-;-1:-1:-1;20742:6:0;;:215;;-1:-1:-1;;;20742:215:0;;-1:-1:-1;;;;;20742:6:0;;;;:57;;:215;;20814:11;;20742:6;;20884:4;;20911;;20931:15;;20742:215;;;:::i;20973:279::-;21054:6;;21195:8;;21054:190;;-1:-1:-1;;;21054:190:0;;21117:4;21054:190;;;13091:34:1;13141:18;;;13134:34;;;21054:6:0;13184:18:1;;;13177:34;;;13227:18;;;13220:34;-1:-1:-1;;;;;21195:8:0;;;13270:19:1;;;13263:44;21218:15:0;13323:19:1;;;13316:35;21054:6:0;;;:22;;21084:9;;13025:19:1;;21054:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:131::-;-1:-1:-1;;;;;873:31:1;;863:42;;853:70;;919:1;916;909:12;934:134;1002:20;;1031:31;1002:20;1031:31;:::i;:::-;934:134;;;:::o;1073:315::-;1141:6;1149;1202:2;1190:9;1181:7;1177:23;1173:32;1170:52;;;1218:1;1215;1208:12;1170:52;1257:9;1244:23;1276:31;1301:5;1276:31;:::i;:::-;1326:5;1378:2;1363:18;;;;1350:32;;-1:-1:-1;;;1073:315:1:o;1585:456::-;1662:6;1670;1678;1731:2;1719:9;1710:7;1706:23;1702:32;1699:52;;;1747:1;1744;1737:12;1699:52;1786:9;1773:23;1805:31;1830:5;1805:31;:::i;:::-;1855:5;-1:-1:-1;1912:2:1;1897:18;;1884:32;1925:33;1884:32;1925:33;:::i;:::-;1585:456;;1977:7;;-1:-1:-1;;;2031:2:1;2016:18;;;;2003:32;;1585:456::o;2046:247::-;2105:6;2158:2;2146:9;2137:7;2133:23;2129:32;2126:52;;;2174:1;2171;2164:12;2126:52;2213:9;2200:23;2232:31;2257:5;2232:31;:::i;2298:248::-;2366:6;2374;2427:2;2415:9;2406:7;2402:23;2398:32;2395:52;;;2443:1;2440;2433:12;2395:52;-1:-1:-1;;2466:23:1;;;2536:2;2521:18;;;2508:32;;-1:-1:-1;2298:248:1:o;2551:316::-;2628:6;2636;2644;2697:2;2685:9;2676:7;2672:23;2668:32;2665:52;;;2713:1;2710;2703:12;2665:52;-1:-1:-1;;2736:23:1;;;2806:2;2791:18;;2778:32;;-1:-1:-1;2857:2:1;2842:18;;;2829:32;;2551:316;-1:-1:-1;2551:316:1:o;3061:160::-;3126:20;;3182:13;;3175:21;3165:32;;3155:60;;3211:1;3208;3201:12;3226:248;3291:6;3299;3352:2;3340:9;3331:7;3327:23;3323:32;3320:52;;;3368:1;3365;3358:12;3320:52;3391:26;3407:9;3391:26;:::i;3919:180::-;3978:6;4031:2;4019:9;4010:7;4006:23;4002:32;3999:52;;;4047:1;4044;4037:12;3999:52;-1:-1:-1;4070:23:1;;3919:180;-1:-1:-1;3919:180:1:o;4104:315::-;4169:6;4177;4230:2;4218:9;4209:7;4205:23;4201:32;4198:52;;;4246:1;4243;4236:12;4198:52;4285:9;4272:23;4304:31;4329:5;4304:31;:::i;:::-;4354:5;-1:-1:-1;4378:35:1;4409:2;4394:18;;4378:35;:::i;:::-;4368:45;;4104:315;;;;;:::o;4424:127::-;4485:10;4480:3;4476:20;4473:1;4466:31;4516:4;4513:1;4506:15;4540:4;4537:1;4530:15;4556:1121;4640:6;4671:2;4714;4702:9;4693:7;4689:23;4685:32;4682:52;;;4730:1;4727;4720:12;4682:52;4770:9;4757:23;4799:18;4840:2;4832:6;4829:14;4826:34;;;4856:1;4853;4846:12;4826:34;4894:6;4883:9;4879:22;4869:32;;4939:7;4932:4;4928:2;4924:13;4920:27;4910:55;;4961:1;4958;4951:12;4910:55;4997:2;4984:16;5019:2;5015;5012:10;5009:36;;;5025:18;;:::i;:::-;5071:2;5068:1;5064:10;5103:2;5097:9;5166:2;5162:7;5157:2;5153;5149:11;5145:25;5137:6;5133:38;5221:6;5209:10;5206:22;5201:2;5189:10;5186:18;5183:46;5180:72;;;5232:18;;:::i;:::-;5268:2;5261:22;5318:18;;;5352:15;;;;-1:-1:-1;5394:11:1;;;5390:20;;;5422:19;;;5419:39;;;5454:1;5451;5444:12;5419:39;5478:11;;;;5498:148;5514:6;5509:3;5506:15;5498:148;;;5580:23;5599:3;5580:23;:::i;:::-;5568:36;;5531:12;;;;5624;;;;5498:148;;;5665:6;4556:1121;-1:-1:-1;;;;;;;;4556:1121:1:o;5682:388::-;5750:6;5758;5811:2;5799:9;5790:7;5786:23;5782:32;5779:52;;;5827:1;5824;5817:12;5779:52;5866:9;5853:23;5885:31;5910:5;5885:31;:::i;:::-;5935:5;-1:-1:-1;5992:2:1;5977:18;;5964:32;6005:33;5964:32;6005:33;:::i;:::-;6057:7;6047:17;;;5682:388;;;;;:::o;6561:356::-;6763:2;6745:21;;;6782:18;;;6775:30;6841:34;6836:2;6821:18;;6814:62;6908:2;6893:18;;6561:356::o;7511:184::-;7581:6;7634:2;7622:9;7613:7;7609:23;7605:32;7602:52;;;7650:1;7647;7640:12;7602:52;-1:-1:-1;7673:16:1;;7511:184;-1:-1:-1;7511:184:1:o;7700:127::-;7761:10;7756:3;7752:20;7749:1;7742:31;7792:4;7789:1;7782:15;7816:4;7813:1;7806:15;7832:127;7893:10;7888:3;7884:20;7881:1;7874:31;7924:4;7921:1;7914:15;7948:4;7945:1;7938:15;7964:135;8003:3;8024:17;;;8021:43;;8044:18;;:::i;:::-;-1:-1:-1;8091:1:1;8080:13;;7964:135::o;8511:125::-;8551:4;8579:1;8576;8573:8;8570:34;;;8584:18;;:::i;:::-;-1:-1:-1;8621:9:1;;8511:125::o;10223:217::-;10263:1;10289;10279:132;;10333:10;10328:3;10324:20;10321:1;10314:31;10368:4;10365:1;10358:15;10396:4;10393:1;10386:15;10279:132;-1:-1:-1;10425:9:1;;10223:217::o;10445:128::-;10485:3;10516:1;10512:6;10509:1;10506:13;10503:39;;;10522:18;;:::i;:::-;-1:-1:-1;10558:9:1;;10445:128::o;10934:168::-;10974:7;11040:1;11036;11032:6;11028:14;11025:1;11022:21;11017:1;11010:9;11003:17;10999:45;10996:71;;;11047:18;;:::i;:::-;-1:-1:-1;11087:9:1;;10934:168::o;11509:251::-;11579:6;11632:2;11620:9;11611:7;11607:23;11603:32;11600:52;;;11648:1;11645;11638:12;11600:52;11680:9;11674:16;11699:31;11724:5;11699:31;:::i;11765:980::-;12027:4;12075:3;12064:9;12060:19;12106:6;12095:9;12088:25;12132:2;12170:6;12165:2;12154:9;12150:18;12143:34;12213:3;12208:2;12197:9;12193:18;12186:31;12237:6;12272;12266:13;12303:6;12295;12288:22;12341:3;12330:9;12326:19;12319:26;;12380:2;12372:6;12368:15;12354:29;;12401:1;12411:195;12425:6;12422:1;12419:13;12411:195;;;12490:13;;-1:-1:-1;;;;;12486:39:1;12474:52;;12581:15;;;;12546:12;;;;12522:1;12440:9;12411:195;;;-1:-1:-1;;;;;;;12662:32:1;;;;12657:2;12642:18;;12635:60;-1:-1:-1;;;12726:3:1;12711:19;12704:35;12623:3;11765:980;-1:-1:-1;;;11765:980:1:o;13362:306::-;13450:6;13458;13466;13519:2;13507:9;13498:7;13494:23;13490:32;13487:52;;;13535:1;13532;13525:12;13487:52;13564:9;13558:16;13548:26;;13614:2;13603:9;13599:18;13593:25;13583:35;;13658:2;13647:9;13643:18;13637:25;13627:35;;13362:306;;;;;:::o
Swarm Source
ipfs://80519c5eb75489547d948477bfd20634da20c17398bd855e1020921cbdfb2047
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.