ETH Price: $3,296.08 (-3.10%)
 

Overview

Max Total Supply

1,000,000,000 NURD

Holders

56

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,209,256.249665644 NURD

Value
$0.00
0x313230093ecD3ba17cB92DF22139D70437033987
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
NURD

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-12
*/

// SPDX-License-Identifier: MIT

/*
Introducing NURD, the latest meme token that's set to electrify the world of decentralized finance.

Website: https://nurd.live
Telegram: https://t.me/nurd_erc20
Twitter: https://twitter.com/nurd_erc20
*/

pragma solidity 0.8.19;

abstract contract Ownable {
    address internal owner;
    constructor(address _owner) {owner = _owner;}
    modifier onlyOwner() {require(isOwner(msg.sender), "!OWNER"); _;}
    function isOwner(address account) public view returns (bool) {return account == owner;}
    function renounceOwnership() public onlyOwner {owner = address(0); emit OwnershipTransferred(address(0));}
    function transferOwnership(address payable adr) public onlyOwner {owner = adr; emit OwnershipTransferred(adr);}
    event OwnershipTransferred(address owner);
}
interface IDexFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IERC20 {
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}
library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}
interface IUniswapRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline) external;
}

contract NURD is IERC20, Ownable {
    using SafeMath for uint256;
    string private constant _name = unicode"Nurd";
    string private constant _symbol = unicode"NURD";
    uint8 private constant _decimals = 9;
    address internal constant deadAddress = 0x000000000000000000000000000000000000dEaD;
    uint256 private _supplyTotal = 1000000000 * (10 ** _decimals);
    uint256 private swapCounts;
    bool private swapping;
    uint256 swapcycle;
    IUniswapRouter router;
    address public pair;
    bool private tradeActive = false;
    bool private swapEnabled = true;
    uint256 private feeSwapThreshold = ( _supplyTotal * 1000 ) / 100000;
    uint256 private taxSwapAt = ( _supplyTotal * 10 ) / 100000;
    modifier lockTheSwap {swapping = true; _; swapping = false;}
    uint256 private lpFee = 0;
    uint256 private marketingFees = 0;
    uint256 private devFee = 100;
    uint256 private burnFee = 0;
    uint256 private buyFee = 1300;
    uint256 private sellFee = 2400;
    uint256 private transferFee = 1300;
    uint256 private denominator = 10000;
    address internal developmentAddress = 0x546EA07004B9841C2b4B6F80e4dEc0022ede54A0; 
    address internal marketingAddress = 0x546EA07004B9841C2b4B6F80e4dEc0022ede54A0;
    address internal lpAddFeeAddress = 0x546EA07004B9841C2b4B6F80e4dEc0022ede54A0;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isSpecial;
    uint256 public mTxAmounts = ( _supplyTotal * 250 ) / 10000;
    uint256 public maxSellAmount = ( _supplyTotal * 250 ) / 10000;
    uint256 public maxWalletAmount = ( _supplyTotal * 250 ) / 10000;

    constructor() Ownable(msg.sender) {
        IUniswapRouter _router = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IDexFactory(_router.factory()).createPair(address(this), _router.WETH());
        router = _router; pair = _pair;
        _isSpecial[lpAddFeeAddress] = true;
        _isSpecial[marketingAddress] = true;
        _isSpecial[developmentAddress] = true;
        _isSpecial[msg.sender] = true;
        _balances[msg.sender] = _supplyTotal;
        emit Transfer(address(0), msg.sender, _supplyTotal);
    }

    receive() external payable {}
    function name() public pure returns (string memory) {return _name;}
    function symbol() public pure returns (string memory) {return _symbol;}
    function balanceOf(address account) public view override returns (uint256) {return _balances[account];}
    function transfer(address recipient, uint256 amount) public override returns (bool) {_transfer(msg.sender, recipient, amount);return true;}
    function getOwner() external view override returns (address) { return owner; }
    function swapTax(uint256 tokens) private lockTheSwap {
        uint256 _denominator = (lpFee.add(1).add(marketingFees).add(devFee)).mul(2);
        uint256 tokensToAddLiquidityWith = tokens.mul(lpFee).div(_denominator);
        uint256 toSwap = tokens.sub(tokensToAddLiquidityWith);
        uint256 initialBalance = address(this).balance;
        swapTokensForEth(toSwap);
        uint256 deltaBalance = address(this).balance.sub(initialBalance);
        uint256 unitBalance= deltaBalance.div(_denominator.sub(lpFee));
        uint256 ETHToAddLiquidityWith = unitBalance.mul(lpFee);
        if(ETHToAddLiquidityWith > uint256(0)){addLiquidity(tokensToAddLiquidityWith, ETHToAddLiquidityWith); }
        uint256 marketingAmt = unitBalance.mul(2).mul(marketingFees);
        if(marketingAmt > 0){payable(marketingAddress).transfer(marketingAmt);}
        uint256 contractBalance = address(this).balance;
        if(contractBalance > uint256(0)){payable(developmentAddress).transfer(contractBalance);}
    }
    function setTransactionRequirements(uint256 _liquidity, uint256 _marketing, uint256 _burn, uint256 _devAddresselopment, uint256 _total, uint256 _sell, uint256 _trans) external onlyOwner {
        lpFee = _liquidity; marketingFees = _marketing; burnFee = _burn; devFee = _devAddresselopment; buyFee = _total; sellFee = _sell; transferFee = _trans;
        require(buyFee <= denominator.div(1) && sellFee <= denominator.div(1) && transferFee <= denominator.div(1), "buyFee and sellFee cannot be more than 20%");
    }
    function _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount <= balanceOf(sender),"You are trying to transfer more than your balance");
        if(!_isSpecial[sender] && !_isSpecial[recipient]){require(tradeActive, "tradeActive");}
        if(!_isSpecial[sender] && !_isSpecial[recipient] && recipient != address(pair) && recipient != address(deadAddress)){
        require((_balances[recipient].add(amount)) <= maxWalletAmount, "Exceeds maximum wallet amount.");}
        if(sender != pair){require(amount <= maxSellAmount || _isSpecial[sender] || _isSpecial[recipient], "TX Limit Exceeded");}
        require(amount <= mTxAmounts || _isSpecial[sender] || _isSpecial[recipient], "TX Limit Exceeded"); 
        if(recipient == pair && !_isSpecial[sender]){swapCounts += uint256(1);}
        if(canSwap(sender, recipient, amount)){swapTax(feeSwapThreshold); swapCounts = uint256(0);}
        _balances[sender] = _balances[sender].sub(amount);
        uint256 amountReceived = !_isSpecial[sender] ? getAmounts(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);
        emit Transfer(sender, recipient, amountReceived);
    }
    function startTrading() external onlyOwner {tradeActive = true;}
    function setTransactionLimits(uint256 _buy, uint256 _sell, uint256 _wallet) external onlyOwner {
        uint256 newTx = _supplyTotal.mul(_buy).div(10000); uint256 newTransfer = _supplyTotal.mul(_sell).div(10000); uint256 newWallet = _supplyTotal.mul(_wallet).div(10000);
        mTxAmounts = newTx; maxSellAmount = newTransfer; maxWalletAmount = newWallet;
        uint256 limit = totalSupply().mul(5).div(1000);
        require(newTx >= limit && newTransfer >= limit && newWallet >= limit, "Max TXs and Max Wallet cannot be less than .5%");
    }
    function getAmounts(address sender, address recipient, uint256 amount) internal returns (uint256) {
        if (_isSpecial[recipient]) {return mTxAmounts;}
        if(getTax(sender, recipient) > 0){
        uint256 feeAmount = amount.div(denominator).mul(getTax(sender, recipient));
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        if(burnFee > uint256(0) && getTax(sender, recipient) > burnFee){_transfer(address(this), address(deadAddress), amount.div(denominator).mul(burnFee));}
        return amount.sub(feeAmount);} return amount;
    }
    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private {
        _approve(address(this), address(router), tokenAmount);
        router.addLiquidityETH{value: ETHAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            lpAddFeeAddress,
            block.timestamp);
    }
    function getTax(address sender, address recipient) internal view returns (uint256) {
        if(recipient == pair){return sellFee;}
        if(sender == pair){return buyFee;}
        return transferFee;
    }
    function canSwap(address sender, address recipient, uint256 amount) internal view returns (bool) {
        bool aboveMin = amount >= taxSwapAt;
        bool aboveThreshold = balanceOf(address(this)) >= feeSwapThreshold;
        return !swapping && swapEnabled && tradeActive && aboveMin && !_isSpecial[sender] && recipient == pair && swapCounts >= swapcycle && aboveThreshold;
    }
    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();
        _approve(address(this), address(router), tokenAmount);
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp);
    }
    function approve(address spender, uint256 amount) public override returns (bool) {_approve(msg.sender, spender, amount);return true;}
    function totalSupply() public view override returns (uint256) {return _supplyTotal.sub(balanceOf(deadAddress)).sub(balanceOf(address(0)));}
    function decimals() public pure returns (uint8) {return _decimals;}    
    function allowance(address owner, address spender) public view override returns (uint256) {return _allowances[owner][spender];}
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mTxAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSellAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_wallet","type":"uint256"}],"name":"setTransactionLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidity","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_burn","type":"uint256"},{"internalType":"uint256","name":"_devAddresselopment","type":"uint256"},{"internalType":"uint256","name":"_total","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setTransactionRequirements","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a620004bf565b6200002290633b9aca00620004d7565b60018190556006805461ffff60a01b1916600160a81b179055620186a0906200004e906103e8620004d7565b6200005a9190620004f1565b600755620186a0600154600a620000729190620004d7565b6200007e9190620004f1565b60085560006009819055600a8190556064600b55600c55610514600d819055610960600e55600f5561271060108190556011805473546ea07004b9841c2b4b6f80e4dec0022ede54a06001600160a01b0319918216811790925560128054821683179055601380549091169091179055600154620000fe9060fa620004d7565b6200010a9190620004f1565b60175561271060015460fa620001219190620004d7565b6200012d9190620004f1565b60185561271060015460fa620001449190620004d7565b620001509190620004f1565b6019553480156200016057600080fd5b50600080546001600160a01b031916331781556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9291839163c45a0155916004808201926020929091908290030181865afa158015620001c8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ee919062000514565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200023c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000262919062000514565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d6919062000514565b600580546001600160a01b038581166001600160a01b03199283161790925560068054848416921691909117905560135481166000908152601660209081526040808320805460ff19908116600190811790925560125486168552828520805482168317905560115490951684528184208054861682179055338085528285208054909616821790955554601483528184208190559051908152939450919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350506200053f565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000401578160001904821115620003e557620003e5620003aa565b80851615620003f357918102915b93841c9390800290620003c5565b509250929050565b6000826200041a57506001620004b9565b816200042957506000620004b9565b81600181146200044257600281146200044d576200046d565b6001915050620004b9565b60ff841115620004615762000461620003aa565b50506001821b620004b9565b5060208310610133831016604e8410600b841016171562000492575081810a620004b9565b6200049e8383620003c0565b8060001904821115620004b557620004b5620003aa565b0290505b92915050565b6000620004d060ff84168362000409565b9392505050565b8082028115828204841417620004b957620004b9620003aa565b6000826200050f57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200052757600080fd5b81516001600160a01b0381168114620004d057600080fd5b611874806200054f6000396000f3fe6080604052600436106101235760003560e01c8063893d20e8116100a0578063a9059cbb11610064578063a9059cbb14610359578063aa4bde2814610379578063cb7f97d71461038f578063dd62ed3e146103af578063f2fde38b146103f557600080fd5b8063893d20e8146102a457806394af9688146102d657806395d89b41146102ec5780639cc3535114610319578063a8aa1b311461033957600080fd5b80632f54bf6e116100e75780632f54bf6e146101f8578063313ce5671461022757806366d602ae1461024357806370a0823114610259578063715018a61461028f57600080fd5b806306fdde031461012f578063095ea7b31461016e57806318160ddd1461019e57806323b872dd146101c1578063293230b8146101e157600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526004815263139d5c9960e21b60208201525b604051610165919061150e565b60405180910390f35b34801561017a57600080fd5b5061018e610189366004611574565b610415565b6040519015158152602001610165565b3480156101aa57600080fd5b506101b361042c565b604051908152602001610165565b3480156101cd57600080fd5b5061018e6101dc3660046115a0565b61049d565b3480156101ed57600080fd5b506101f6610507565b005b34801561020457600080fd5b5061018e6102133660046115e1565b6000546001600160a01b0391821691161490565b34801561023357600080fd5b5060405160098152602001610165565b34801561024f57600080fd5b506101b360185481565b34801561026557600080fd5b506101b36102743660046115e1565b6001600160a01b031660009081526014602052604090205490565b34801561029b57600080fd5b506101f661054f565b3480156102b057600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610165565b3480156102e257600080fd5b506101b360175481565b3480156102f857600080fd5b506040805180820190915260048152631395549160e21b6020820152610158565b34801561032557600080fd5b506101f66103343660046115fe565b6105be565b34801561034557600080fd5b506006546102be906001600160a01b031681565b34801561036557600080fd5b5061018e610374366004611574565b6106ff565b34801561038557600080fd5b506101b360195481565b34801561039b57600080fd5b506101f66103aa36600461162a565b61070c565b3480156103bb57600080fd5b506101b36103ca366004611676565b6001600160a01b03918216600090815260156020908152604080832093909416825291909152205490565b34801561040157600080fd5b506101f66104103660046115e1565b610801565b600061042233848461087f565b5060015b92915050565b60146020527f4f26c3876aa9f4b92579780beea1161a61f87ebf1ec6ee865b299e447ecba99c5461dead60009081527f8b9e18c5e04efe171d1e4f682ad90d753958a5ffe56db5290b0236c8e0b6db0054600154919261049892909161049291906109a3565b906109a3565b905090565b60006104aa8484846109af565b6104fc84336104f785604051806060016040528060288152602001611817602891396001600160a01b038a1660009081526015602090815260408083203384529091529020549190610efe565b61087f565b5060015b9392505050565b6000546001600160a01b0316331461053a5760405162461bcd60e51b8152600401610531906116af565b60405180910390fd5b6006805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105795760405162461bcd60e51b8152600401610531906116af565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146105e85760405162461bcd60e51b8152600401610531906116af565b600061060b61271061060586600154610f2a90919063ffffffff16565b90610f36565b9050600061062a61271061060586600154610f2a90919063ffffffff16565b9050600061064961271061060586600154610f2a90919063ffffffff16565b601784905560188390556019819055905060006106756103e8610605600561066f61042c565b90610f2a565b90508084101580156106875750808310155b80156106935750808210155b6106f65760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b6064820152608401610531565b50505050505050565b60006104223384846109af565b6000546001600160a01b031633146107365760405162461bcd60e51b8152600401610531906116af565b6009879055600a869055600c859055600b849055600d839055600e829055600f819055601054610767906001610f36565b600d54111580156107875750601054610781906001610f36565b600e5411155b80156107a2575060105461079c906001610f36565b600f5411155b6106f65760405162461bcd60e51b815260206004820152602a60248201527f62757946656520616e642073656c6c4665652063616e6e6f74206265206d6f7260448201526965207468616e2032302560b01b6064820152608401610531565b6000546001600160a01b0316331461082b5760405162461bcd60e51b8152600401610531906116af565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6001600160a01b0383166108e15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610531565b6001600160a01b0382166109425760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610531565b6001600160a01b0383811660008181526015602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061050082846116e5565b6001600160a01b038316610a135760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610531565b6001600160a01b038216610a755760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610531565b6001600160a01b038316600090815260146020526040902054811115610af75760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b6064820152608401610531565b6001600160a01b03831660009081526016602052604090205460ff16158015610b3957506001600160a01b03821660009081526016602052604090205460ff16155b15610b8557600654600160a01b900460ff16610b855760405162461bcd60e51b815260206004820152600b60248201526a747261646541637469766560a81b6044820152606401610531565b6001600160a01b03831660009081526016602052604090205460ff16158015610bc757506001600160a01b03821660009081526016602052604090205460ff16155b8015610be157506006546001600160a01b03838116911614155b8015610bf857506001600160a01b03821661dead14155b15610c71576019546001600160a01b038316600090815260146020526040902054610c239083610f42565b1115610c715760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e00006044820152606401610531565b6006546001600160a01b03848116911614610d125760185481111580610caf57506001600160a01b03831660009081526016602052604090205460ff165b80610cd257506001600160a01b03821660009081526016602052604090205460ff165b610d125760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610531565b60175481111580610d3b57506001600160a01b03831660009081526016602052604090205460ff165b80610d5e57506001600160a01b03821660009081526016602052604090205460ff165b610d9e5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610531565b6006546001600160a01b038381169116148015610dd457506001600160a01b03831660009081526016602052604090205460ff16155b15610df257600160026000828254610dec91906116f8565b90915550505b610dfd838383610f4e565b15610e1357610e0d600754611008565b60006002555b6001600160a01b038316600090815260146020526040902054610e3690826109a3565b6001600160a01b038416600090815260146020908152604080832093909355601690529081205460ff1615610e6b5781610e76565b610e76848484611185565b6001600160a01b038416600090815260146020526040902054909150610e9c9082610f42565b6001600160a01b0380851660008181526014602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ef09085815260200190565b60405180910390a350505050565b60008184841115610f225760405162461bcd60e51b8152600401610531919061150e565b505050900390565b6000610500828461170b565b60006105008284611722565b600061050082846116f8565b6008546007543060009081526014602052604081205460035491938510159211159060ff16158015610f895750600654600160a81b900460ff165b8015610f9e5750600654600160a01b900460ff165b8015610fa75750815b8015610fcc57506001600160a01b03861660009081526016602052604090205460ff16155b8015610fe557506006546001600160a01b038681169116145b8015610ff5575060045460025410155b8015610ffe5750805b9695505050505050565b6003805460ff19166001908117909155600b54600a546009546000936110429360029361066f93919261103c928391610f42565b90610f42565b9050600061105f8261060560095486610f2a90919063ffffffff16565b9050600061106d84836109a3565b905047611079826112b5565b600061108547836109a3565b905060006110a86110a1600954886109a390919063ffffffff16565b8390610f36565b905060006110c160095483610f2a90919063ffffffff16565b905080156110d3576110d3868261140f565b600a546000906110e89061066f856002610f2a565b9050801561112c576012546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561112a573d6000803e3d6000fd5b505b47801561116f576011546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561116d573d6000803e3d6000fd5b505b50506003805460ff191690555050505050505050565b6001600160a01b03821660009081526016602052604081205460ff16156111af5750601754610500565b60006111bb85856114c3565b11156112ae5760006111de6111d086866114c3565b60105461066f908690610f36565b306000908152601460205260409020549091506111fb9082610f42565b30600081815260146020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061124c9085815260200190565b60405180910390a36000600c541180156112705750600c5461126e86866114c3565b115b1561129c5761129c3061dead611297600c5461066f60105489610f3690919063ffffffff16565b6109af565b6112a683826109a3565b915050610500565b5092915050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112ea576112ea611744565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611343573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611367919061175a565b8160018151811061137a5761137a611744565b6001600160a01b0392831660209182029290920101526005546113a0913091168461087f565b60055460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d9908590600090869030904290600401611777565b600060405180830381600087803b1580156113f357600080fd5b505af1158015611407573d6000803e3d6000fd5b505050505050565b6005546114279030906001600160a01b03168461087f565b60055460135460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611497573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906114bc91906117e8565b5050505050565b6006546000906001600160a01b03908116908316036114e55750600e54610426565b6006546001600160a01b03908116908416036115045750600d54610426565b50600f5492915050565b600060208083528351808285015260005b8181101561153b5785810183015185820160400152820161151f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461157157600080fd5b50565b6000806040838503121561158757600080fd5b82356115928161155c565b946020939093013593505050565b6000806000606084860312156115b557600080fd5b83356115c08161155c565b925060208401356115d08161155c565b929592945050506040919091013590565b6000602082840312156115f357600080fd5b81356105008161155c565b60008060006060848603121561161357600080fd5b505081359360208301359350604090920135919050565b600080600080600080600060e0888a03121561164557600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b6000806040838503121561168957600080fd5b82356116948161155c565b915060208301356116a48161155c565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610426576104266116cf565b80820180821115610426576104266116cf565b8082028115828204841417610426576104266116cf565b60008261173f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561176c57600080fd5b81516105008161155c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117c75784516001600160a01b0316835293830193918301916001016117a2565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156117fd57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201f2e37f3a5af6a4f7353411681187b0da35df04224c764fe29fbed09d0610be464736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101235760003560e01c8063893d20e8116100a0578063a9059cbb11610064578063a9059cbb14610359578063aa4bde2814610379578063cb7f97d71461038f578063dd62ed3e146103af578063f2fde38b146103f557600080fd5b8063893d20e8146102a457806394af9688146102d657806395d89b41146102ec5780639cc3535114610319578063a8aa1b311461033957600080fd5b80632f54bf6e116100e75780632f54bf6e146101f8578063313ce5671461022757806366d602ae1461024357806370a0823114610259578063715018a61461028f57600080fd5b806306fdde031461012f578063095ea7b31461016e57806318160ddd1461019e57806323b872dd146101c1578063293230b8146101e157600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082019091526004815263139d5c9960e21b60208201525b604051610165919061150e565b60405180910390f35b34801561017a57600080fd5b5061018e610189366004611574565b610415565b6040519015158152602001610165565b3480156101aa57600080fd5b506101b361042c565b604051908152602001610165565b3480156101cd57600080fd5b5061018e6101dc3660046115a0565b61049d565b3480156101ed57600080fd5b506101f6610507565b005b34801561020457600080fd5b5061018e6102133660046115e1565b6000546001600160a01b0391821691161490565b34801561023357600080fd5b5060405160098152602001610165565b34801561024f57600080fd5b506101b360185481565b34801561026557600080fd5b506101b36102743660046115e1565b6001600160a01b031660009081526014602052604090205490565b34801561029b57600080fd5b506101f661054f565b3480156102b057600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610165565b3480156102e257600080fd5b506101b360175481565b3480156102f857600080fd5b506040805180820190915260048152631395549160e21b6020820152610158565b34801561032557600080fd5b506101f66103343660046115fe565b6105be565b34801561034557600080fd5b506006546102be906001600160a01b031681565b34801561036557600080fd5b5061018e610374366004611574565b6106ff565b34801561038557600080fd5b506101b360195481565b34801561039b57600080fd5b506101f66103aa36600461162a565b61070c565b3480156103bb57600080fd5b506101b36103ca366004611676565b6001600160a01b03918216600090815260156020908152604080832093909416825291909152205490565b34801561040157600080fd5b506101f66104103660046115e1565b610801565b600061042233848461087f565b5060015b92915050565b60146020527f4f26c3876aa9f4b92579780beea1161a61f87ebf1ec6ee865b299e447ecba99c5461dead60009081527f8b9e18c5e04efe171d1e4f682ad90d753958a5ffe56db5290b0236c8e0b6db0054600154919261049892909161049291906109a3565b906109a3565b905090565b60006104aa8484846109af565b6104fc84336104f785604051806060016040528060288152602001611817602891396001600160a01b038a1660009081526015602090815260408083203384529091529020549190610efe565b61087f565b5060015b9392505050565b6000546001600160a01b0316331461053a5760405162461bcd60e51b8152600401610531906116af565b60405180910390fd5b6006805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105795760405162461bcd60e51b8152600401610531906116af565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146105e85760405162461bcd60e51b8152600401610531906116af565b600061060b61271061060586600154610f2a90919063ffffffff16565b90610f36565b9050600061062a61271061060586600154610f2a90919063ffffffff16565b9050600061064961271061060586600154610f2a90919063ffffffff16565b601784905560188390556019819055905060006106756103e8610605600561066f61042c565b90610f2a565b90508084101580156106875750808310155b80156106935750808210155b6106f65760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b6064820152608401610531565b50505050505050565b60006104223384846109af565b6000546001600160a01b031633146107365760405162461bcd60e51b8152600401610531906116af565b6009879055600a869055600c859055600b849055600d839055600e829055600f819055601054610767906001610f36565b600d54111580156107875750601054610781906001610f36565b600e5411155b80156107a2575060105461079c906001610f36565b600f5411155b6106f65760405162461bcd60e51b815260206004820152602a60248201527f62757946656520616e642073656c6c4665652063616e6e6f74206265206d6f7260448201526965207468616e2032302560b01b6064820152608401610531565b6000546001600160a01b0316331461082b5760405162461bcd60e51b8152600401610531906116af565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6001600160a01b0383166108e15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610531565b6001600160a01b0382166109425760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610531565b6001600160a01b0383811660008181526015602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061050082846116e5565b6001600160a01b038316610a135760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610531565b6001600160a01b038216610a755760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610531565b6001600160a01b038316600090815260146020526040902054811115610af75760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b6064820152608401610531565b6001600160a01b03831660009081526016602052604090205460ff16158015610b3957506001600160a01b03821660009081526016602052604090205460ff16155b15610b8557600654600160a01b900460ff16610b855760405162461bcd60e51b815260206004820152600b60248201526a747261646541637469766560a81b6044820152606401610531565b6001600160a01b03831660009081526016602052604090205460ff16158015610bc757506001600160a01b03821660009081526016602052604090205460ff16155b8015610be157506006546001600160a01b03838116911614155b8015610bf857506001600160a01b03821661dead14155b15610c71576019546001600160a01b038316600090815260146020526040902054610c239083610f42565b1115610c715760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e00006044820152606401610531565b6006546001600160a01b03848116911614610d125760185481111580610caf57506001600160a01b03831660009081526016602052604090205460ff165b80610cd257506001600160a01b03821660009081526016602052604090205460ff165b610d125760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610531565b60175481111580610d3b57506001600160a01b03831660009081526016602052604090205460ff165b80610d5e57506001600160a01b03821660009081526016602052604090205460ff165b610d9e5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610531565b6006546001600160a01b038381169116148015610dd457506001600160a01b03831660009081526016602052604090205460ff16155b15610df257600160026000828254610dec91906116f8565b90915550505b610dfd838383610f4e565b15610e1357610e0d600754611008565b60006002555b6001600160a01b038316600090815260146020526040902054610e3690826109a3565b6001600160a01b038416600090815260146020908152604080832093909355601690529081205460ff1615610e6b5781610e76565b610e76848484611185565b6001600160a01b038416600090815260146020526040902054909150610e9c9082610f42565b6001600160a01b0380851660008181526014602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ef09085815260200190565b60405180910390a350505050565b60008184841115610f225760405162461bcd60e51b8152600401610531919061150e565b505050900390565b6000610500828461170b565b60006105008284611722565b600061050082846116f8565b6008546007543060009081526014602052604081205460035491938510159211159060ff16158015610f895750600654600160a81b900460ff165b8015610f9e5750600654600160a01b900460ff165b8015610fa75750815b8015610fcc57506001600160a01b03861660009081526016602052604090205460ff16155b8015610fe557506006546001600160a01b038681169116145b8015610ff5575060045460025410155b8015610ffe5750805b9695505050505050565b6003805460ff19166001908117909155600b54600a546009546000936110429360029361066f93919261103c928391610f42565b90610f42565b9050600061105f8261060560095486610f2a90919063ffffffff16565b9050600061106d84836109a3565b905047611079826112b5565b600061108547836109a3565b905060006110a86110a1600954886109a390919063ffffffff16565b8390610f36565b905060006110c160095483610f2a90919063ffffffff16565b905080156110d3576110d3868261140f565b600a546000906110e89061066f856002610f2a565b9050801561112c576012546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561112a573d6000803e3d6000fd5b505b47801561116f576011546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561116d573d6000803e3d6000fd5b505b50506003805460ff191690555050505050505050565b6001600160a01b03821660009081526016602052604081205460ff16156111af5750601754610500565b60006111bb85856114c3565b11156112ae5760006111de6111d086866114c3565b60105461066f908690610f36565b306000908152601460205260409020549091506111fb9082610f42565b30600081815260146020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061124c9085815260200190565b60405180910390a36000600c541180156112705750600c5461126e86866114c3565b115b1561129c5761129c3061dead611297600c5461066f60105489610f3690919063ffffffff16565b6109af565b6112a683826109a3565b915050610500565b5092915050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112ea576112ea611744565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611343573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611367919061175a565b8160018151811061137a5761137a611744565b6001600160a01b0392831660209182029290920101526005546113a0913091168461087f565b60055460405163791ac94760e01b81526001600160a01b039091169063791ac947906113d9908590600090869030904290600401611777565b600060405180830381600087803b1580156113f357600080fd5b505af1158015611407573d6000803e3d6000fd5b505050505050565b6005546114279030906001600160a01b03168461087f565b60055460135460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611497573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906114bc91906117e8565b5050505050565b6006546000906001600160a01b03908116908316036114e55750600e54610426565b6006546001600160a01b03908116908416036115045750600d54610426565b50600f5492915050565b600060208083528351808285015260005b8181101561153b5785810183015185820160400152820161151f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461157157600080fd5b50565b6000806040838503121561158757600080fd5b82356115928161155c565b946020939093013593505050565b6000806000606084860312156115b557600080fd5b83356115c08161155c565b925060208401356115d08161155c565b929592945050506040919091013590565b6000602082840312156115f357600080fd5b81356105008161155c565b60008060006060848603121561161357600080fd5b505081359360208301359350604090920135919050565b600080600080600080600060e0888a03121561164557600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b6000806040838503121561168957600080fd5b82356116948161155c565b915060208301356116a48161155c565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610426576104266116cf565b80820180821115610426576104266116cf565b8082028115828204841417610426576104266116cf565b60008261173f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561176c57600080fd5b81516105008161155c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117c75784516001600160a01b0316835293830193918301916001016117a2565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156117fd57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201f2e37f3a5af6a4f7353411681187b0da35df04224c764fe29fbed09d0610be464736f6c63430008130033

Deployed Bytecode Sourcemap

3783:9599:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6121:67;;;;;;;;;;-1:-1:-1;6181:5:0;;;;;;;;;;;;-1:-1:-1;;;6181:5:0;;;;6121:67;;;;;;;:::i;:::-;;;;;;;;12550:133;;;;;;;;;;-1:-1:-1;12550:133:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;12550:133:0;1023:187:1;12689:139:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;12689:139:0;1215:177:1;10839:309:0;;;;;;;;;;-1:-1:-1;10839:309:0;;;;;:::i;:::-;;:::i;9562:64::-;;;;;;;;;;;;;:::i;:::-;;463:87;;;;;;;;;;-1:-1:-1;463:87:0;;;;;:::i;:::-;518:4;543:5;-1:-1:-1;;;;;532:16:0;;;543:5;;532:16;;463:87;12834:67;;;;;;;;;;-1:-1:-1;12834:67:0;;3997:1;2252:36:1;;2240:2;2225:18;12834:67:0;2110:184:1;5374:61:0;;;;;;;;;;;;;;;;6271:103;;;;;;;;;;-1:-1:-1;6271:103:0;;;;;:::i;:::-;-1:-1:-1;;;;;6354:18:0;6337:7;6354:18;;;:9;:18;;;;;;;6271:103;556:106;;;;;;;;;;;;;:::i;6525:78::-;;;;;;;;;;-1:-1:-1;6577:7:0;6595:5;-1:-1:-1;;;;;6595:5:0;6525:78;;;-1:-1:-1;;;;;2463:32:1;;;2445:51;;2433:2;2418:18;6525:78:0;2299:203:1;5309:58:0;;;;;;;;;;;;;;;;6194:71;;;;;;;;;;-1:-1:-1;6256:7:0;;;;;;;;;;;;-1:-1:-1;;;6256:7:0;;;;6194:71;;9632:553;;;;;;;;;;-1:-1:-1;9632:553:0;;;;;:::i;:::-;;:::i;4275:19::-;;;;;;;;;;-1:-1:-1;4275:19:0;;;;-1:-1:-1;;;;;4275:19:0;;;6380:139;;;;;;;;;;-1:-1:-1;6380:139:0;;;;;:::i;:::-;;:::i;5442:63::-;;;;;;;;;;;;;;;;7633:518;;;;;;;;;;-1:-1:-1;7633:518:0;;;;;:::i;:::-;;:::i;12911:127::-;;;;;;;;;;-1:-1:-1;12911:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;13009:18:0;;;12992:7;13009:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;12911:127;668:111;;;;;;;;;;-1:-1:-1;668:111:0;;;;;:::i;:::-;;:::i;12550:133::-;12625:4;12632:37;12641:10;12653:7;12662:6;12632:8;:37::i;:::-;-1:-1:-1;12677:4:0;12550:133;;;;;:::o;12689:139::-;6354:9;:18;;;;4045:42;12742:7;6354:18;;;;;12759:12;;12742:7;;12759:67;;6354:18;;12759:40;;:12;:16;:40::i;:::-;:44;;:67::i;:::-;12752:74;;12689:139;:::o;10839:309::-;10937:4;10954:36;10964:6;10972:9;10983:6;10954:9;:36::i;:::-;11001:117;11010:6;11018:10;11030:87;11066:6;11030:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11030:19:0;;;;;;:11;:19;;;;;;;;11050:10;11030:31;;;;;;;;;:87;:35;:87::i;:::-;11001:8;:117::i;:::-;-1:-1:-1;11136:4:0;10839:309;;;;;;:::o;9562:64::-;518:4;543:5;-1:-1:-1;;;;;543:5:0;430:10;532:16;414:38;;;;-1:-1:-1;;;414:38:0;;;;;;;:::i;:::-;;;;;;;;;9606:11:::1;:18:::0;;-1:-1:-1;;;;9606:18:0::1;-1:-1:-1::0;;;9606:18:0::1;::::0;;9562:64::o;556:106::-;518:4;543:5;-1:-1:-1;;;;;543:5:0;430:10;532:16;414:38;;;;-1:-1:-1;;;414:38:0;;;;;;;:::i;:::-;619:1:::1;603:18:::0;;-1:-1:-1;;;;;;603:18:0::1;::::0;;628:32:::1;::::0;2445:51:1;;;628:32:0::1;::::0;2433:2:1;2418:18;628:32:0::1;;;;;;;556:106::o:0;9632:553::-;518:4;543:5;-1:-1:-1;;;;;543:5:0;430:10;532:16;414:38;;;;-1:-1:-1;;;414:38:0;;;;;;;:::i;:::-;9738:13:::1;9754:33;9781:5;9754:22;9771:4;9754:12;;:16;;:22;;;;:::i;:::-;:26:::0;::::1;:33::i;:::-;9738:49;;9789:19;9811:34;9839:5;9811:23;9828:5;9811:12;;:16;;:23;;;;:::i;:34::-;9789:56;;9847:17;9867:36;9897:5;9867:25;9884:7;9867:12;;:16;;:25;;;;:::i;:36::-;9914:10;:18:::0;;;9934:13:::1;:27:::0;;;9963:15:::1;:27:::0;;;9847:56;-1:-1:-1;;10017:30:0::1;10042:4;10017:20;10035:1;10017:13;:11;:13::i;:::-;:17:::0;::::1;:20::i;:30::-;10001:46;;10075:5;10066;:14;;:38;;;;;10099:5;10084:11;:20;;10066:38;:60;;;;;10121:5;10108:9;:18;;10066:60;10058:119;;;::::0;-1:-1:-1;;;10058:119:0;;4614:2:1;10058:119:0::1;::::0;::::1;4596:21:1::0;4653:2;4633:18;;;4626:30;4692:34;4672:18;;;4665:62;-1:-1:-1;;;4743:18:1;;;4736:44;4797:19;;10058:119:0::1;4412:410:1::0;10058:119:0::1;9727:458;;;;9632:553:::0;;;:::o;6380:139::-;6458:4;6465:40;6475:10;6487:9;6498:6;6465:9;:40::i;7633:518::-;518:4;543:5;-1:-1:-1;;;;;543:5:0;430:10;532:16;414:38;;;;-1:-1:-1;;;414:38:0;;;;;;;:::i;:::-;7830:5:::1;:18:::0;;;7850:13:::1;:26:::0;;;7878:7:::1;:15:::0;;;7895:6:::1;:28:::0;;;7925:6:::1;:15:::0;;;7942:7:::1;:15:::0;;;7959:11:::1;:20:::0;;;8008:11:::1;::::0;:18:::1;::::0;-1:-1:-1;8008:15:0::1;:18::i;:::-;7998:6;;:28;;:61;;;;-1:-1:-1::0;8041:11:0::1;::::0;:18:::1;::::0;8057:1:::1;8041:15;:18::i;:::-;8030:7;;:29;;7998:61;:98;;;;-1:-1:-1::0;8078:11:0::1;::::0;:18:::1;::::0;8094:1:::1;8078:15;:18::i;:::-;8063:11;;:33;;7998:98;7990:153;;;::::0;-1:-1:-1;;;7990:153:0;;5029:2:1;7990:153:0::1;::::0;::::1;5011:21:1::0;5068:2;5048:18;;;5041:30;5107:34;5087:18;;;5080:62;-1:-1:-1;;;5158:18:1;;;5151:40;5208:19;;7990:153:0::1;4827:406:1::0;668:111:0;518:4;543:5;-1:-1:-1;;;;;543:5:0;430:10;532:16;414:38;;;;-1:-1:-1;;;414:38:0;;;;;;;:::i;:::-;734:5:::1;:11:::0;;-1:-1:-1;;;;;;734:11:0::1;-1:-1:-1::0;;;;;734:11:0;::::1;::::0;;::::1;::::0;;;752:25:::1;::::0;2445:51:1;;;752:25:0::1;::::0;2433:2:1;2418:18;752:25:0::1;;;;;;;668:111:::0;:::o;13044:335::-;-1:-1:-1;;;;;13137:19:0;;13129:68;;;;-1:-1:-1;;;13129:68:0;;5656:2:1;13129:68:0;;;5638:21:1;5695:2;5675:18;;;5668:30;5734:34;5714:18;;;5707:62;-1:-1:-1;;;5785:18:1;;;5778:34;5829:19;;13129:68:0;5454:400:1;13129:68:0;-1:-1:-1;;;;;13216:21:0;;13208:68;;;;-1:-1:-1;;;13208:68:0;;6061:2:1;13208:68:0;;;6043:21:1;6100:2;6080:18;;;6073:30;6139:34;6119:18;;;6112:62;-1:-1:-1;;;6190:18:1;;;6183:32;6232:19;;13208:68:0;5859:398:1;13208:68:0;-1:-1:-1;;;;;13287:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13339:32;;1361:25:1;;;13339:32:0;;1334:18:1;13339:32:0;;;;;;;13044:335;;;:::o;1992:98::-;2050:7;2077:5;2081:1;2077;:5;:::i;8157:1399::-;-1:-1:-1;;;;;8254:20:0;;8246:70;;;;-1:-1:-1;;;8246:70:0;;6729:2:1;8246:70:0;;;6711:21:1;6768:2;6748:18;;;6741:30;6807:34;6787:18;;;6780:62;-1:-1:-1;;;6858:18:1;;;6851:35;6903:19;;8246:70:0;6527:401:1;8246:70:0;-1:-1:-1;;;;;8335:23:0;;8327:71;;;;-1:-1:-1;;;8327:71:0;;7135:2:1;8327:71:0;;;7117:21:1;7174:2;7154:18;;;7147:30;7213:34;7193:18;;;7186:62;-1:-1:-1;;;7264:18:1;;;7257:33;7307:19;;8327:71:0;6933:399:1;8327:71:0;-1:-1:-1;;;;;6354:18:0;;6337:7;6354:18;;;:9;:18;;;;;;8417:6;:27;;8409:88;;;;-1:-1:-1;;;8409:88:0;;7539:2:1;8409:88:0;;;7521:21:1;7578:2;7558:18;;;7551:30;7617:34;7597:18;;;7590:62;-1:-1:-1;;;7668:18:1;;;7661:47;7725:19;;8409:88:0;7337:413:1;8409:88:0;-1:-1:-1;;;;;8512:18:0;;;;;;:10;:18;;;;;;;;8511:19;:45;;;;-1:-1:-1;;;;;;8535:21:0;;;;;;:10;:21;;;;;;;;8534:22;8511:45;8508:87;;;8566:11;;-1:-1:-1;;;8566:11:0;;;;8558:35;;;;-1:-1:-1;;;8558:35:0;;7957:2:1;8558:35:0;;;7939:21:1;7996:2;7976:18;;;7969:30;-1:-1:-1;;;8015:18:1;;;8008:41;8066:18;;8558:35:0;7755:335:1;8558:35:0;-1:-1:-1;;;;;8609:18:0;;;;;;:10;:18;;;;;;;;8608:19;:45;;;;-1:-1:-1;;;;;;8632:21:0;;;;;;:10;:21;;;;;;;;8631:22;8608:45;:75;;;;-1:-1:-1;8678:4:0;;-1:-1:-1;;;;;8657:26:0;;;8678:4;;8657:26;;8608:75;:112;;;;-1:-1:-1;;;;;;8687:33:0;;4045:42;8687:33;;8608:112;8605:225;;;8778:15;;-1:-1:-1;;;;;8741:20:0;;;;;;:9;:20;;;;;;:32;;8766:6;8741:24;:32::i;:::-;8740:53;;8732:96;;;;-1:-1:-1;;;8732:96:0;;8297:2:1;8732:96:0;;;8279:21:1;8336:2;8316:18;;;8309:30;8375:32;8355:18;;;8348:60;8425:18;;8732:96:0;8095:354:1;8732:96:0;8853:4;;-1:-1:-1;;;;;8843:14:0;;;8853:4;;8843:14;8840:121;;8877:13;;8867:6;:23;;:45;;;-1:-1:-1;;;;;;8894:18:0;;;;;;:10;:18;;;;;;;;8867:45;:70;;;-1:-1:-1;;;;;;8916:21:0;;;;;;:10;:21;;;;;;;;8867:70;8859:100;;;;-1:-1:-1;;;8859:100:0;;8656:2:1;8859:100:0;;;8638:21:1;8695:2;8675:18;;;8668:30;-1:-1:-1;;;8714:18:1;;;8707:47;8771:18;;8859:100:0;8454:341:1;8859:100:0;8989:10;;8979:6;:20;;:42;;;-1:-1:-1;;;;;;9003:18:0;;;;;;:10;:18;;;;;;;;8979:42;:67;;;-1:-1:-1;;;;;;9025:21:0;;;;;;:10;:21;;;;;;;;8979:67;8971:97;;;;-1:-1:-1;;;8971:97:0;;8656:2:1;8971:97:0;;;8638:21:1;8695:2;8675:18;;;8668:30;-1:-1:-1;;;8714:18:1;;;8707:47;8771:18;;8971:97:0;8454:341:1;8971:97:0;9096:4;;-1:-1:-1;;;;;9083:17:0;;;9096:4;;9083:17;:40;;;;-1:-1:-1;;;;;;9105:18:0;;;;;;:10;:18;;;;;;;;9104:19;9083:40;9080:71;;;9147:1;9125:10;;:24;;;;;;;:::i;:::-;;;;-1:-1:-1;;9080:71:0;9164:34;9172:6;9180:9;9191:6;9164:7;:34::i;:::-;9161:91;;;9200:25;9208:16;;9200:7;:25::i;:::-;9248:1;9227:10;:23;9161:91;-1:-1:-1;;;;;9282:17:0;;;;;;:9;:17;;;;;;:29;;9304:6;9282:21;:29::i;:::-;-1:-1:-1;;;;;9262:17:0;;;;;;:9;:17;;;;;;;;:49;;;;9348:10;:18;;;;;;;;9347:19;:68;;9409:6;9347:68;;;9369:37;9380:6;9388:9;9399:6;9369:10;:37::i;:::-;-1:-1:-1;;;;;9449:20:0;;;;;;:9;:20;;;;;;9322:93;;-1:-1:-1;9449:40:0;;9322:93;9449:24;:40::i;:::-;-1:-1:-1;;;;;9426:20:0;;;;;;;:9;:20;;;;;;;:63;;;;9505:43;;;;;;;;;;9533:14;1361:25:1;;1349:2;1334:18;;1215:177;9505:43:0;;;;;;;;8235:1321;8157:1399;;;:::o;2416:240::-;2536:7;2597:12;2589:6;;;;2581:29;;;;-1:-1:-1;;;2581:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2632:5:0;;;2416:240::o;2098:98::-;2156:7;2183:5;2187:1;2183;:5;:::i;2204:98::-;2262:7;2289:5;2293:1;2289;:5;:::i;1886:98::-;1944:7;1971:5;1975:1;1971;:5;:::i;11718:386::-;11852:9;;11922:16;;11912:4;11809;6354:18;;;:9;:18;;;;;;11957:8;;11809:4;;11842:19;;;;-1:-1:-1;11894:44:0;;11957:8;;11956:9;:24;;;;-1:-1:-1;11969:11:0;;-1:-1:-1;;;11969:11:0;;;;11956:24;:39;;;;-1:-1:-1;11984:11:0;;-1:-1:-1;;;11984:11:0;;;;11956:39;:51;;;;;11999:8;11956:51;:74;;;;-1:-1:-1;;;;;;12012:18:0;;;;;;:10;:18;;;;;;;;12011:19;11956:74;:95;;;;-1:-1:-1;12047:4:0;;-1:-1:-1;;;;;12034:17:0;;;12047:4;;12034:17;11956:95;:122;;;;;12069:9;;12055:10;;:23;;11956:122;:140;;;;;12082:14;11956:140;11949:147;11718:386;-1:-1:-1;;;;;;11718:386:0:o;6609:1018::-;4539:8;:15;;-1:-1:-1;;4539:15:0;4550:4;4539:15;;;;;;6733:6:::1;::::0;6714:13:::1;::::0;6697:5:::1;::::0;4539:8;;6696:52:::1;::::0;6746:1:::1;::::0;6697:43:::1;::::0;6733:6;;6697:31:::1;::::0;;;:9:::1;:12::i;:::-;:16:::0;::::1;:31::i;6696:52::-;6673:75;;6759:32;6794:35;6816:12;6794:17;6805:5;;6794:6;:10;;:17;;;;:::i;:35::-;6759:70:::0;-1:-1:-1;6840:14:0::1;6857:36;:6:::0;6759:70;6857:10:::1;:36::i;:::-;6840:53:::0;-1:-1:-1;6929:21:0::1;6961:24;6840:53:::0;6961:16:::1;:24::i;:::-;6996:20;7019:41;:21;7045:14:::0;7019:25:::1;:41::i;:::-;6996:64;;7071:19;7092:41;7109:23;7126:5;;7109:12;:16;;:23;;;;:::i;:::-;7092:12:::0;;:16:::1;:41::i;:::-;7071:62;;7144:29;7176:22;7192:5;;7176:11;:15;;:22;;;;:::i;:::-;7144:54:::0;-1:-1:-1;7212:34:0;;7209:103:::1;;7248:61;7261:24;7287:21;7248:12;:61::i;:::-;7368:13;::::0;7322:20:::1;::::0;7345:37:::1;::::0;:18:::1;:11:::0;7361:1:::1;7345:15;:18::i;:37::-;7322:60:::0;-1:-1:-1;7396:16:0;;7393:71:::1;;7422:16;::::0;7414:48:::1;::::0;-1:-1:-1;;;;;7422:16:0;;::::1;::::0;7414:48;::::1;;;::::0;7449:12;;7422:16:::1;7414:48:::0;7422:16;7414:48;7449:12;7422:16;7414:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;7393:71;7500:21;7535:28:::0;;7532:88:::1;;7573:18;::::0;7565:53:::1;::::0;-1:-1:-1;;;;;7573:18:0;;::::1;::::0;7565:53;::::1;;;::::0;7602:15;;7573:18:::1;7565:53:::0;7573:18;7565:53;7602:15;7573:18;7565:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;7532:88;-1:-1:-1::0;;4559:8:0;:16;;-1:-1:-1;;4559:16:0;;;-1:-1:-1;;;;;;;;6609:1018:0:o;10191:642::-;-1:-1:-1;;;;;10304:21:0;;10280:7;10304:21;;;:10;:21;;;;;;;;10300:47;;;-1:-1:-1;10335:10:0;;10328:17;;10300:47;10388:1;10360:25;10367:6;10375:9;10360:6;:25::i;:::-;:29;10357:454;;;10401:17;10421:54;10449:25;10456:6;10464:9;10449:6;:25::i;:::-;10432:11;;10421:23;;:6;;:10;:23::i;:54::-;10531:4;10513:24;;;;:9;:24;;;;;;10401:74;;-1:-1:-1;10513:39:0;;10401:74;10513:28;:39::i;:::-;10504:4;10486:24;;;;:9;:24;;;;;;;:66;;;;10568:42;;-1:-1:-1;;;;;10568:42:0;;;;;;;10600:9;1361:25:1;;1349:2;1334:18;;1215:177;10568:42:0;;;;;;;;10642:1;10624:7;;:20;:59;;;;;10676:7;;10648:25;10655:6;10663:9;10648:6;:25::i;:::-;:35;10624:59;10621:150;;;10685:84;10703:4;4045:42;10732:36;10760:7;;10732:23;10743:11;;10732:6;:10;;:23;;;;:::i;:36::-;10685:9;:84::i;:::-;10788:21;:6;10799:9;10788:10;:21::i;:::-;10781:28;;;;;10357:454;-1:-1:-1;10819:6:0;10191:642;-1:-1:-1;;10191:642:0:o;12110:434::-;12200:16;;;12214:1;12200:16;;;;;;;;12176:21;;12200:16;;;;;;;;;;-1:-1:-1;12200:16:0;12176:40;;12245:4;12227;12232:1;12227:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12227:23:0;;;:7;;;;;;;;;;:23;;;;12271:6;;:13;;;-1:-1:-1;;;12271:13:0;;;;:6;;;;;:11;;:13;;;;;12227:7;;12271:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12261:4;12266:1;12261:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12261:23:0;;;:7;;;;;;;;;:23;12327:6;;12295:53;;12312:4;;12327:6;12336:11;12295:8;:53::i;:::-;12359:6;;:177;;-1:-1:-1;;;12359:177:0;;-1:-1:-1;;;;;12359:6:0;;;;:57;;:177;;12431:11;;12359:6;;12473:4;;12500;;12520:15;;12359:177;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12165:379;12110:434;:::o;11154:340::-;11267:6;;11235:53;;11252:4;;-1:-1:-1;;;;;11267:6:0;11276:11;11235:8;:53::i;:::-;11299:6;;11440:15;;11299:187;;-1:-1:-1;;;11299:187:0;;11362:4;11299:187;;;11171:34:1;11221:18;;;11214:34;;;11299:6:0;11264:18:1;;;11257:34;;;11307:18;;;11300:34;-1:-1:-1;;;;;11440:15:0;;;11350:19:1;;;11343:44;11470:15:0;11403:19:1;;;11396:35;11299:6:0;;;:22;;11329:9;;11105:19:1;;11299:187:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11154:340;;:::o;11500:212::-;11610:4;;11574:7;;-1:-1:-1;;;;;11610:4:0;;;11597:17;;;;11594:38;;-1:-1:-1;11623:7:0;;11616:14;;11594:38;11655:4;;-1:-1:-1;;;;;11655:4:0;;;11645:14;;;;11642:34;;-1:-1:-1;11668:6:0;;11661:13;;11642:34;-1:-1:-1;11693:11:0;;11500:212;;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;1858:247::-;1917:6;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;2025:9;2012:23;2044:31;2069:5;2044:31;:::i;2507:316::-;2584:6;2592;2600;2653:2;2641:9;2632:7;2628:23;2624:32;2621:52;;;2669:1;2666;2659:12;2621:52;-1:-1:-1;;2692:23:1;;;2762:2;2747:18;;2734:32;;-1:-1:-1;2813:2:1;2798:18;;;2785:32;;2507:316;-1:-1:-1;2507:316:1:o;2828:592::-;2941:6;2949;2957;2965;2973;2981;2989;3042:3;3030:9;3021:7;3017:23;3013:33;3010:53;;;3059:1;3056;3049:12;3010:53;-1:-1:-1;;3082:23:1;;;3152:2;3137:18;;3124:32;;-1:-1:-1;3203:2:1;3188:18;;3175:32;;3254:2;3239:18;;3226:32;;-1:-1:-1;3305:3:1;3290:19;;3277:33;;-1:-1:-1;3357:3:1;3342:19;;3329:33;;-1:-1:-1;3409:3:1;3394:19;3381:33;;-1:-1:-1;2828:592:1;-1:-1:-1;2828:592:1:o;3425:388::-;3493:6;3501;3554:2;3542:9;3533:7;3529:23;3525:32;3522:52;;;3570:1;3567;3560:12;3522:52;3609:9;3596:23;3628:31;3653:5;3628:31;:::i;:::-;3678:5;-1:-1:-1;3735:2:1;3720:18;;3707:32;3748:33;3707:32;3748:33;:::i;:::-;3800:7;3790:17;;;3425:388;;;;;:::o;4078:329::-;4280:2;4262:21;;;4319:1;4299:18;;;4292:29;-1:-1:-1;;;4352:2:1;4337:18;;4330:36;4398:2;4383:18;;4078:329::o;6262:127::-;6323:10;6318:3;6314:20;6311:1;6304:31;6354:4;6351:1;6344:15;6378:4;6375:1;6368:15;6394:128;6461:9;;;6482:11;;;6479:37;;;6496:18;;:::i;8800:125::-;8865:9;;;8886:10;;;8883:36;;;8899:18;;:::i;8930:168::-;9003:9;;;9034;;9051:15;;;9045:22;;9031:37;9021:71;;9072:18;;:::i;9103:217::-;9143:1;9169;9159:132;;9213:10;9208:3;9204:20;9201:1;9194:31;9248:4;9245:1;9238:15;9276:4;9273:1;9266:15;9159:132;-1:-1:-1;9305:9:1;;9103:217::o;9457:127::-;9518:10;9513:3;9509:20;9506:1;9499:31;9549:4;9546:1;9539:15;9573:4;9570:1;9563:15;9589:251;9659:6;9712:2;9700:9;9691:7;9687:23;9683:32;9680:52;;;9728:1;9725;9718:12;9680:52;9760:9;9754:16;9779:31;9804:5;9779:31;:::i;9845:980::-;10107:4;10155:3;10144:9;10140:19;10186:6;10175:9;10168:25;10212:2;10250:6;10245:2;10234:9;10230:18;10223:34;10293:3;10288:2;10277:9;10273:18;10266:31;10317:6;10352;10346:13;10383:6;10375;10368:22;10421:3;10410:9;10406:19;10399:26;;10460:2;10452:6;10448:15;10434:29;;10481:1;10491:195;10505:6;10502:1;10499:13;10491:195;;;10570:13;;-1:-1:-1;;;;;10566:39:1;10554:52;;10661:15;;;;10626:12;;;;10602:1;10520:9;10491:195;;;-1:-1:-1;;;;;;;10742:32:1;;;;10737:2;10722:18;;10715:60;-1:-1:-1;;;10806:3:1;10791:19;10784:35;10703:3;9845:980;-1:-1:-1;;;9845:980:1:o;11442:306::-;11530:6;11538;11546;11599:2;11587:9;11578:7;11574:23;11570:32;11567:52;;;11615:1;11612;11605:12;11567:52;11644:9;11638:16;11628:26;;11694:2;11683:9;11679:18;11673:25;11663:35;;11738:2;11727:9;11723:18;11717:25;11707:35;;11442:306;;;;;:::o

Swarm Source

ipfs://1f2e37f3a5af6a4f7353411681187b0da35df04224c764fe29fbed09d0610be4
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.