BEP-20
Source Code
Overview
Max Total Supply
10,000,000,000ERC20 ***
Holders
8,369
Market
Price
$0.00 @ 0.000000 BNB
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
1,625.411954 ERC20 ***Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
Sun
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/**
*Submitted for verification at BscScan.com on 2024-07-12
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
interface IERC20 {
function decimals() external view returns (uint256);
function symbol() external view returns (string memory);
function name() external view returns (string memory);
function totalSupply() external view returns (uint256);
function balanceOf(address who) 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 _value) external;
function transferFrom(
address _from,
address _to,
uint256 _value
) external;
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}
interface ISwapRouter {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
function addLiquidity(
address tokenA,
address tokenB,
uint256 amountADesired,
uint256 amountBDesired,
uint256 amountAMin,
uint256 amountBMin,
address to,
uint256 deadline
)
external
returns (
uint256 amountA,
uint256 amountB,
uint256 liquidity
);
function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
)
external
payable
returns (
uint256 amountToken,
uint256 amountETH,
uint256 liquidity
);
}
interface ISwapFactory {
function createPair(address tokenA, address tokenB)
external
returns (address pair);
function getPair(address tokenA, address tokenB)
external
view
returns (address pair);
}
abstract contract Ownable {
address internal _owner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);
constructor() {
address msgSender = msg.sender;
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == msg.sender, "!owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "new is 0");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
interface ISwapPair {
function getReserves()
external
view
returns (
uint112 reserve0,
uint112 reserve1,
uint32 blockTimestampLast
);
function token0() external view returns (address);
function balanceOf(address account) external view returns (uint256);
function totalSupply() external view returns (uint256);
}
contract Sun is IERC20, Ownable {
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
address public fundAddress;
address public fundAddress2;
string private _name;
string private _symbol;
uint256 private _decimals;
mapping(address => bool) public _feeWhiteList;
uint256 private _tTotal;
ISwapRouter public _swapRouter;
address public currency;
mapping(address => bool) public _swapPairList;
bool private inSwap;
uint256 private constant MAX = ~uint256(0);
uint256 public fundFee = 200;
uint256 public burnFee = 100;
address public _mainPair;
modifier lockTheSwap() {
inSwap = true;
_;
inSwap = false;
}
address[] public rewardPath;
constructor() {
_name = "BNB SUN";
_symbol = "Sun";
_decimals = 18;
_tTotal = 10_000_000_000 * 10**_decimals;
fundAddress = address(0xa63F4407EcC202Ec1fDE9bC815C53fBebb48BFE8);
fundAddress2 = address(0x17A86FF8004aF704196eE7fA3602d85beB4fC2f0);
_swapRouter = ISwapRouter(
address(0x10ED43C718714eb63d5aA57B78B54704E256024E)
);
address ReceiveAddress = address(0x845D7D61925D2EB48DC92A438372DD8d315cfF25);
_owner = ReceiveAddress;
currency = address(0x55d398326f99059fF775485246999027B3197955);
rewardPath = [address(this), currency];
IERC20(currency).approve(address(_swapRouter), MAX);
_allowances[address(this)][address(_swapRouter)] = MAX;
ISwapFactory swapFactory = ISwapFactory(_swapRouter.factory());
_mainPair = swapFactory.createPair(address(this), currency);
_swapPairList[_mainPair] = true;
_balances[ReceiveAddress] = _tTotal;
emit Transfer(address(0), ReceiveAddress, _tTotal);
_feeWhiteList[fundAddress] = true;
_feeWhiteList[fundAddress2] = true;
_feeWhiteList[ReceiveAddress] = true;
_feeWhiteList[address(this)] = true;
_feeWhiteList[address(_swapRouter)] = true;
_feeWhiteList[msg.sender] = true;
}
function symbol() external view override returns (string memory) {
return _symbol;
}
function name() external view override returns (string memory) {
return _name;
}
function decimals() external view override returns (uint256) {
return _decimals;
}
function totalSupply() public view override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount)
public
override
returns (bool)
{
_transfer(msg.sender, recipient, amount);
return true;
}
function allowance(address owner, address spender)
public
view
override
returns (uint256)
{
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public override {
_approve(msg.sender, spender, amount);
}
function transferFrom(
address sender,
address recipient,
uint256 amount
) public override {
_transfer(sender, recipient, amount);
if (_allowances[sender][msg.sender] != MAX) {
_allowances[sender][msg.sender] =
_allowances[sender][msg.sender] -
amount;
}
}
function _approve(
address owner,
address spender,
uint256 amount
) private {
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _isAddLiquidity() internal view returns (bool isAdd) {
ISwapPair mainPair = ISwapPair(_mainPair);
(uint256 r0, uint256 r1, ) = mainPair.getReserves();
address tokenOther = currency;
uint256 r;
if (tokenOther < address(this)) {
r = r0;
} else {
r = r1;
}
uint256 bal = IERC20(tokenOther).balanceOf(address(mainPair));
isAdd = bal > r;
}
function _isRemoveLiquidity() internal view returns (bool isRemove) {
ISwapPair mainPair = ISwapPair(_mainPair);
(uint256 r0, uint256 r1, ) = mainPair.getReserves();
address tokenOther = currency;
uint256 r;
if (tokenOther < address(this)) {
r = r0;
} else {
r = r1;
}
uint256 bal = IERC20(tokenOther).balanceOf(address(mainPair));
isRemove = r >= bal;
}
function _transfer(
address from,
address to,
uint256 amount
) private {
// uint256 balance = balanceOf(from);
require(balanceOf(from) >= amount, "balanceNotEnough");
bool takeFee;
bool isRemove;
bool isAdd;
if (_swapPairList[to]) {
isAdd = _isAddLiquidity();
} else if (_swapPairList[from]) {
isRemove = _isRemoveLiquidity();
}
if (_swapPairList[from] || _swapPairList[to]) {
if (!_feeWhiteList[from] && !_feeWhiteList[to]) {
if (_swapPairList[to]) {
if (!inSwap && !isAdd) {
uint256 contractTokenBalance = balanceOf(address(this));
if (contractTokenBalance > 0) {
uint256 swapFee = fundFee * 2;
uint256 numTokensSellToFund = amount / 10;
if (numTokensSellToFund > contractTokenBalance) {
numTokensSellToFund = contractTokenBalance;
}
swapTokenForFund(numTokensSellToFund, swapFee);
}
}
}
if (!isAdd && !isRemove) takeFee = true; // just swap fee
}
}
_tokenTransfer(from, to, amount, takeFee);
}
function _tokenTransfer(
address sender,
address recipient,
uint256 tAmount,
bool takeFee
) private {
_balances[sender] = _balances[sender] - tAmount;
uint256 feeAmount;
if (takeFee) {
uint256 fundAmount = (tAmount * fundFee) / 10000;
uint256 burnAmount = (tAmount * burnFee) / 10000;
if (fundAmount > 0) {
feeAmount += fundAmount;
_takeTransfer(sender, address(this), fundAmount);
}
if (burnAmount > 0) {
feeAmount += burnAmount;
_takeTransfer(sender, address(0xdead), burnAmount);
}
}
_takeTransfer(sender, recipient, tAmount - feeAmount);
}
event Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint256 value
);
function swapTokenForFund(uint256 tokenAmount, uint256 swapFee)
private
lockTheSwap
{
if (swapFee == 0) {
return;
}
uint256 Fund1Amount = (tokenAmount * fundFee) / swapFee;
try
_swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(
Fund1Amount,
0,
rewardPath,
fundAddress,
block.timestamp
)
{} catch {
emit Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens(
1
);
}
uint256 Fund2Amount = tokenAmount - Fund1Amount;
try
_swapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(
Fund2Amount,
0,
rewardPath,
fundAddress2,
block.timestamp
)
{} catch {
emit Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens(
2
);
}
}
function _takeTransfer(
address sender,
address to,
uint256 tAmount
) private {
_balances[to] = _balances[to] + tAmount;
emit Transfer(sender, to, tAmount);
}
receive() external payable {}
}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":"value","type":"uint256"}],"name":"Failed_swapExactTokensForTokensSupportingFeeOnTransferTokens","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":"","type":"address"}],"name":"_feeWhiteList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_mainPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_swapPairList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapRouter","outputs":[{"internalType":"contract ISwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"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":[],"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":"burnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currency","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundAddress2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"rewardPath","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
608060405260c8600e556064600f553480156200001b57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506040805180820190915260078152662127211029aaa760c91b60208201526005906200008a908262000549565b5060408051808201909152600381526229bab760e91b6020820152600690620000b4908262000549565b5060126007819055620000c990600a6200072a565b620000da906402540be4006200073f565b6009556003805473a63f4407ecc202ec1fde9bc815c53fbebb48bfe86001600160a01b031991821617909155600480547317a86ff8004af704196ee7fa3602d85beb4fc2f0908316179055600a80547310ed43c718714eb63d5aa57b78b54704e256024e9083161790556000805473845d7d61925d2eb48dc92a438372dd8d315cff259083168117909155600b80547355d398326f99059ff775485246999027b319795593168317905560408051808201909152308152602081019290925290620001aa90601190600262000423565b50600b54600a5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401600060405180830381600087803b158015620001fd57600080fd5b505af115801562000212573d6000803e3d6000fd5b5050306000908152600260209081526040808320600a80546001600160a01b039081168652918452828520600019905554825163c45a015560e01b8152925194965016935063c45a015592600480830193928290030181865afa1580156200027e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a4919062000759565b600b546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291925082169063c9c65396906044016020604051808303816000875af1158015620002f9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031f919062000759565b601080546001600160a01b0319166001600160a01b039283169081179091556000908152600c60209081526040808320805460ff191660019081179091556009549487168085529083528184208590559051938452927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506003546001600160a01b039081166000908152600860205260408082208054600160ff199182168117909255600454851684528284208054821683179055948416835281832080548616821790553083528183208054861682179055600a54909316825280822080548516841790553382529020805490921617905562000784565b8280548282559060005260206000209081019282156200047b579160200282015b828111156200047b57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062000444565b50620004899291506200048d565b5090565b5b808211156200048957600081556001016200048e565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620004cf57607f821691505b602082108103620004f057634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200054457600081815260208120601f850160051c810160208610156200051f5750805b601f850160051c820191505b8181101562000540578281556001016200052b565b5050505b505050565b81516001600160401b03811115620005655762000565620004a4565b6200057d81620005768454620004ba565b84620004f6565b602080601f831160018114620005b557600084156200059c5750858301515b600019600386901b1c1916600185901b17855562000540565b600085815260208120601f198616915b82811015620005e657888601518255948401946001909101908401620005c5565b5085821015620006055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200066c57816000190482111562000650576200065062000615565b808516156200065e57918102915b93841c939080029062000630565b509250929050565b600082620006855750600162000724565b81620006945750600062000724565b8160018114620006ad5760028114620006b857620006d8565b600191505062000724565b60ff841115620006cc57620006cc62000615565b50506001821b62000724565b5060208310610133831016604e8410600b8410161715620006fd575081810a62000724565b6200070983836200062b565b806000190482111562000720576200072062000615565b0290505b92915050565b600062000738838362000674565b9392505050565b808202811582820484141762000724576200072462000615565b6000602082840312156200076c57600080fd5b81516001600160a01b03811681146200073857600080fd5b6111f680620007946000396000f3fe6080604052600436106101395760003560e01c8063715018a6116100ab578063a9059cbb1161006f578063a9059cbb1461037e578063dd62ed3e1461039e578063e5a6b10f146103e4578063e82bef2914610404578063f2fde38b14610424578063fce589d81461044457600080fd5b8063715018a6146102f65780638da5cb5b1461030b57806395d89b41146103295780639cc0e3c71461033e578063a1cea43d1461035e57600080fd5b806323b872dd116100fd57806323b872dd14610225578063313ce5671461024557806333abd0281461025a5780633c11100d146102705780634188bf5a146102a057806370a08231146102c057600080fd5b806301986fad1461014557806306fdde031461018a578063095ea7b3146101ac57806318160ddd146101ce578063206c17bb146101ed57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50610175610160366004610ef9565b60086020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561019657600080fd5b5061019f61045a565b6040516101819190610f1b565b3480156101b857600080fd5b506101cc6101c7366004610f69565b6104ec565b005b3480156101da57600080fd5b506009545b604051908152602001610181565b3480156101f957600080fd5b50600a5461020d906001600160a01b031681565b6040516001600160a01b039091168152602001610181565b34801561023157600080fd5b506101cc610240366004610f93565b6104fb565b34801561025157600080fd5b506007546101df565b34801561026657600080fd5b506101df600e5481565b34801561027c57600080fd5b5061017561028b366004610ef9565b600c6020526000908152604090205460ff1681565b3480156102ac57600080fd5b5060105461020d906001600160a01b031681565b3480156102cc57600080fd5b506101df6102db366004610ef9565b6001600160a01b031660009081526001602052604090205490565b34801561030257600080fd5b506101cc61058b565b34801561031757600080fd5b506000546001600160a01b031661020d565b34801561033557600080fd5b5061019f61061d565b34801561034a57600080fd5b5061020d610359366004610fcf565b61062c565b34801561036a57600080fd5b5060045461020d906001600160a01b031681565b34801561038a57600080fd5b50610175610399366004610f69565b610656565b3480156103aa57600080fd5b506101df6103b9366004610fe8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103f057600080fd5b50600b5461020d906001600160a01b031681565b34801561041057600080fd5b5060035461020d906001600160a01b031681565b34801561043057600080fd5b506101cc61043f366004610ef9565b61066d565b34801561045057600080fd5b506101df600f5481565b6060600580546104699061101b565b80601f01602080910402602001604051908101604052809291908181526020018280546104959061101b565b80156104e25780601f106104b7576101008083540402835291602001916104e2565b820191906000526020600020905b8154815290600101906020018083116104c557829003601f168201915b5050505050905090565b6104f733838361074c565b5050565b6105068383836107ae565b6001600160a01b038316600090815260026020908152604080832033845290915290205460001914610586576001600160a01b038316600090815260026020908152604080832033845290915290205461056190829061106b565b6001600160a01b03841660009081526002602090815260408083203384529091529020555b505050565b6000546001600160a01b031633146105d35760405162461bcd60e51b815260206004820152600660248201526510b7bbb732b960d11b60448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600680546104699061101b565b6011818154811061063c57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006106633384846107ae565b5060015b92915050565b6000546001600160a01b031633146106b05760405162461bcd60e51b815260206004820152600660248201526510b7bbb732b960d11b60448201526064016105ca565b6001600160a01b0381166106f15760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016105ca565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b806107ce846001600160a01b031660009081526001602052604090205490565b101561080f5760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016105ca565b6001600160a01b0382166000908152600c60205260408120548190819060ff16156108435761083c6109ad565b905061086f565b6001600160a01b0386166000908152600c602052604090205460ff161561086f5761086c610ad0565b91505b6001600160a01b0386166000908152600c602052604090205460ff16806108ae57506001600160a01b0385166000908152600c602052604090205460ff165b15610999576001600160a01b03861660009081526008602052604090205460ff161580156108f557506001600160a01b03851660009081526008602052604090205460ff16155b15610999576001600160a01b0385166000908152600c602052604090205460ff161561098357600d5460ff1615801561092c575080155b1561098357306000908152600160205260409020548015610981576000600e546002610958919061107e565b90506000610967600a88611095565b9050828111156109745750815b61097e8183610bf3565b50505b505b8015801561098f575081155b1561099957600192505b6109a586868686610d87565b505050505050565b60105460408051630240bc6b60e21b815290516000926001600160a01b031691839182918491630902f1ac916004808201926060929091908290030181865afa1580156109fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2291906110ce565b50600b546001600160701b039283169450911691506001600160a01b0316600030821015610a51575082610a54565b50815b6040516370a0823160e01b81526001600160a01b038681166004830152600091908416906370a0823190602401602060405180830381865afa158015610a9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac2919061111e565b919091119695505050505050565b60105460408051630240bc6b60e21b815290516000926001600160a01b031691839182918491630902f1ac916004808201926060929091908290030181865afa158015610b21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4591906110ce565b50600b546001600160701b039283169450911691506001600160a01b0316600030821015610b74575082610b77565b50815b6040516370a0823160e01b81526001600160a01b038681166004830152600091908416906370a0823190602401602060405180830381865afa158015610bc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be5919061111e565b909110159695505050505050565b600d805460ff191660011790558015610d7957600081600e5484610c17919061107e565b610c219190611095565b600a54600354604051635c11d79560e01b81529293506001600160a01b0391821692635c11d79592610c6192869260009260119216904290600401611137565b600060405180830381600087803b158015610c7b57600080fd5b505af1925050508015610c8c575060015b610cc557604051600181527f6c37756e80daba6f4df0d5bfa6cddadfe23601acc1a27dc8d4aa427de91467889060200160405180910390a15b6000610cd1828561106b565b600a5460048054604051635c11d79560e01b81529394506001600160a01b0392831693635c11d79593610d1293879360009360119390911691429101611137565b600060405180830381600087803b158015610d2c57600080fd5b505af1925050508015610d3d575060015b610d7657604051600281527f6c37756e80daba6f4df0d5bfa6cddadfe23601acc1a27dc8d4aa427de91467889060200160405180910390a15b50505b5050600d805460ff19169055565b6001600160a01b038416600090815260016020526040902054610dab90839061106b565b6001600160a01b0385166000908152600160205260408120919091558115610e4a576000612710600e5485610de0919061107e565b610dea9190611095565b90506000612710600f5486610dff919061107e565b610e099190611095565b90508115610e2857610e1b82846111ad565b9250610e28873084610e65565b8015610e4757610e3881846111ad565b9250610e478761dead83610e65565b50505b610e5e8585610e59848761106b565b610e65565b5050505050565b6001600160a01b038216600090815260016020526040902054610e899082906111ad565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107a19085815260200190565b80356001600160a01b0381168114610ef457600080fd5b919050565b600060208284031215610f0b57600080fd5b610f1482610edd565b9392505050565b600060208083528351808285015260005b81811015610f4857858101830151858201604001528201610f2c565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215610f7c57600080fd5b610f8583610edd565b946020939093013593505050565b600080600060608486031215610fa857600080fd5b610fb184610edd565b9250610fbf60208501610edd565b9150604084013590509250925092565b600060208284031215610fe157600080fd5b5035919050565b60008060408385031215610ffb57600080fd5b61100483610edd565b915061101260208401610edd565b90509250929050565b600181811c9082168061102f57607f821691505b60208210810361104f57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561066757610667611055565b808202811582820484141761066757610667611055565b6000826110b257634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160701b0381168114610ef457600080fd5b6000806000606084860312156110e357600080fd5b6110ec846110b7565b92506110fa602085016110b7565b9150604084015163ffffffff8116811461111357600080fd5b809150509250925092565b60006020828403121561113057600080fd5b5051919050565b600060a082018783526020878185015260a0604085015281875480845260c0860191508860005282600020935060005b8181101561118c5784546001600160a01b031683526001948501949284019201611167565b50506001600160a01b03969096166060850152505050608001529392505050565b808201808211156106675761066761105556fea2646970667358221220b1246a91144a202f8a024b3d5c34e61366547db9a3a76b0dbf091adcd4bc266664736f6c63430008120033
Deployed Bytecode
0x6080604052600436106101395760003560e01c8063715018a6116100ab578063a9059cbb1161006f578063a9059cbb1461037e578063dd62ed3e1461039e578063e5a6b10f146103e4578063e82bef2914610404578063f2fde38b14610424578063fce589d81461044457600080fd5b8063715018a6146102f65780638da5cb5b1461030b57806395d89b41146103295780639cc0e3c71461033e578063a1cea43d1461035e57600080fd5b806323b872dd116100fd57806323b872dd14610225578063313ce5671461024557806333abd0281461025a5780633c11100d146102705780634188bf5a146102a057806370a08231146102c057600080fd5b806301986fad1461014557806306fdde031461018a578063095ea7b3146101ac57806318160ddd146101ce578063206c17bb146101ed57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50610175610160366004610ef9565b60086020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561019657600080fd5b5061019f61045a565b6040516101819190610f1b565b3480156101b857600080fd5b506101cc6101c7366004610f69565b6104ec565b005b3480156101da57600080fd5b506009545b604051908152602001610181565b3480156101f957600080fd5b50600a5461020d906001600160a01b031681565b6040516001600160a01b039091168152602001610181565b34801561023157600080fd5b506101cc610240366004610f93565b6104fb565b34801561025157600080fd5b506007546101df565b34801561026657600080fd5b506101df600e5481565b34801561027c57600080fd5b5061017561028b366004610ef9565b600c6020526000908152604090205460ff1681565b3480156102ac57600080fd5b5060105461020d906001600160a01b031681565b3480156102cc57600080fd5b506101df6102db366004610ef9565b6001600160a01b031660009081526001602052604090205490565b34801561030257600080fd5b506101cc61058b565b34801561031757600080fd5b506000546001600160a01b031661020d565b34801561033557600080fd5b5061019f61061d565b34801561034a57600080fd5b5061020d610359366004610fcf565b61062c565b34801561036a57600080fd5b5060045461020d906001600160a01b031681565b34801561038a57600080fd5b50610175610399366004610f69565b610656565b3480156103aa57600080fd5b506101df6103b9366004610fe8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103f057600080fd5b50600b5461020d906001600160a01b031681565b34801561041057600080fd5b5060035461020d906001600160a01b031681565b34801561043057600080fd5b506101cc61043f366004610ef9565b61066d565b34801561045057600080fd5b506101df600f5481565b6060600580546104699061101b565b80601f01602080910402602001604051908101604052809291908181526020018280546104959061101b565b80156104e25780601f106104b7576101008083540402835291602001916104e2565b820191906000526020600020905b8154815290600101906020018083116104c557829003601f168201915b5050505050905090565b6104f733838361074c565b5050565b6105068383836107ae565b6001600160a01b038316600090815260026020908152604080832033845290915290205460001914610586576001600160a01b038316600090815260026020908152604080832033845290915290205461056190829061106b565b6001600160a01b03841660009081526002602090815260408083203384529091529020555b505050565b6000546001600160a01b031633146105d35760405162461bcd60e51b815260206004820152600660248201526510b7bbb732b960d11b60448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600680546104699061101b565b6011818154811061063c57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006106633384846107ae565b5060015b92915050565b6000546001600160a01b031633146106b05760405162461bcd60e51b815260206004820152600660248201526510b7bbb732b960d11b60448201526064016105ca565b6001600160a01b0381166106f15760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016105ca565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b806107ce846001600160a01b031660009081526001602052604090205490565b101561080f5760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016105ca565b6001600160a01b0382166000908152600c60205260408120548190819060ff16156108435761083c6109ad565b905061086f565b6001600160a01b0386166000908152600c602052604090205460ff161561086f5761086c610ad0565b91505b6001600160a01b0386166000908152600c602052604090205460ff16806108ae57506001600160a01b0385166000908152600c602052604090205460ff165b15610999576001600160a01b03861660009081526008602052604090205460ff161580156108f557506001600160a01b03851660009081526008602052604090205460ff16155b15610999576001600160a01b0385166000908152600c602052604090205460ff161561098357600d5460ff1615801561092c575080155b1561098357306000908152600160205260409020548015610981576000600e546002610958919061107e565b90506000610967600a88611095565b9050828111156109745750815b61097e8183610bf3565b50505b505b8015801561098f575081155b1561099957600192505b6109a586868686610d87565b505050505050565b60105460408051630240bc6b60e21b815290516000926001600160a01b031691839182918491630902f1ac916004808201926060929091908290030181865afa1580156109fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2291906110ce565b50600b546001600160701b039283169450911691506001600160a01b0316600030821015610a51575082610a54565b50815b6040516370a0823160e01b81526001600160a01b038681166004830152600091908416906370a0823190602401602060405180830381865afa158015610a9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac2919061111e565b919091119695505050505050565b60105460408051630240bc6b60e21b815290516000926001600160a01b031691839182918491630902f1ac916004808201926060929091908290030181865afa158015610b21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4591906110ce565b50600b546001600160701b039283169450911691506001600160a01b0316600030821015610b74575082610b77565b50815b6040516370a0823160e01b81526001600160a01b038681166004830152600091908416906370a0823190602401602060405180830381865afa158015610bc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be5919061111e565b909110159695505050505050565b600d805460ff191660011790558015610d7957600081600e5484610c17919061107e565b610c219190611095565b600a54600354604051635c11d79560e01b81529293506001600160a01b0391821692635c11d79592610c6192869260009260119216904290600401611137565b600060405180830381600087803b158015610c7b57600080fd5b505af1925050508015610c8c575060015b610cc557604051600181527f6c37756e80daba6f4df0d5bfa6cddadfe23601acc1a27dc8d4aa427de91467889060200160405180910390a15b6000610cd1828561106b565b600a5460048054604051635c11d79560e01b81529394506001600160a01b0392831693635c11d79593610d1293879360009360119390911691429101611137565b600060405180830381600087803b158015610d2c57600080fd5b505af1925050508015610d3d575060015b610d7657604051600281527f6c37756e80daba6f4df0d5bfa6cddadfe23601acc1a27dc8d4aa427de91467889060200160405180910390a15b50505b5050600d805460ff19169055565b6001600160a01b038416600090815260016020526040902054610dab90839061106b565b6001600160a01b0385166000908152600160205260408120919091558115610e4a576000612710600e5485610de0919061107e565b610dea9190611095565b90506000612710600f5486610dff919061107e565b610e099190611095565b90508115610e2857610e1b82846111ad565b9250610e28873084610e65565b8015610e4757610e3881846111ad565b9250610e478761dead83610e65565b50505b610e5e8585610e59848761106b565b610e65565b5050505050565b6001600160a01b038216600090815260016020526040902054610e899082906111ad565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107a19085815260200190565b80356001600160a01b0381168114610ef457600080fd5b919050565b600060208284031215610f0b57600080fd5b610f1482610edd565b9392505050565b600060208083528351808285015260005b81811015610f4857858101830151858201604001528201610f2c565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215610f7c57600080fd5b610f8583610edd565b946020939093013593505050565b600080600060608486031215610fa857600080fd5b610fb184610edd565b9250610fbf60208501610edd565b9150604084013590509250925092565b600060208284031215610fe157600080fd5b5035919050565b60008060408385031215610ffb57600080fd5b61100483610edd565b915061101260208401610edd565b90509250929050565b600181811c9082168061102f57607f821691505b60208210810361104f57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561066757610667611055565b808202811582820484141761066757610667611055565b6000826110b257634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160701b0381168114610ef457600080fd5b6000806000606084860312156110e357600080fd5b6110ec846110b7565b92506110fa602085016110b7565b9150604084015163ffffffff8116811461111357600080fd5b809150509250925092565b60006020828403121561113057600080fd5b5051919050565b600060a082018783526020878185015260a0604085015281875480845260c0860191508860005282600020935060005b8181101561118c5784546001600160a01b031683526001948501949284019201611167565b50506001600160a01b03969096166060850152505050608001529392505050565b808201808211156106675761066761105556fea2646970667358221220b1246a91144a202f8a024b3d5c34e61366547db9a3a76b0dbf091adcd4bc266664736f6c63430008120033
Deployed Bytecode Sourcemap
3957:8546:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4281:45;;;;;;;;;;-1:-1:-1;4281:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;548:14:1;;541:22;523:41;;511:2;496:18;4281:45:0;;;;;;;;6296:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;7129:122::-;;;;;;;;;;-1:-1:-1;7129:122:0;;;;;:::i;:::-;;:::i;:::-;;6502:95;;;;;;;;;;-1:-1:-1;6582:7:0;;6502:95;;;1533:25:1;;;1521:2;1506:18;6502:95:0;1387:177:1;4367:30:0;;;;;;;;;;-1:-1:-1;4367:30:0;;;;-1:-1:-1;;;;;4367:30:0;;;;;;-1:-1:-1;;;;;1752:32:1;;;1734:51;;1722:2;1707:18;4367:30:0;1569:222:1;7259:367:0;;;;;;;;;;-1:-1:-1;7259:367:0;;;;;:::i;:::-;;:::i;6398:96::-;;;;;;;;;;-1:-1:-1;6477:9:0;;6398:96;;4567:28;;;;;;;;;;;;;;;;4434:45;;;;;;;;;;-1:-1:-1;4434:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4639:24;;;;;;;;;;-1:-1:-1;4639:24:0;;;;-1:-1:-1;;;;;4639:24:0;;;6605:119;;;;;;;;;;-1:-1:-1;6605:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6698:18:0;6671:7;6698:18;;;:9;:18;;;;;;;6605:119;3163:148;;;;;;;;;;;;;:::i;2977:79::-;;;;;;;;;;-1:-1:-1;3015:7:0;3042:6;-1:-1:-1;;;;;3042:6:0;2977:79;;6190:98;;;;;;;;;;;;;:::i;4772:27::-;;;;;;;;;;-1:-1:-1;4772:27:0;;;;;:::i;:::-;;:::i;4157:::-;;;;;;;;;;-1:-1:-1;4157:27:0;;;;-1:-1:-1;;;;;4157:27:0;;;6732:197;;;;;;;;;;-1:-1:-1;6732:197:0;;;;;:::i;:::-;;:::i;6937:184::-;;;;;;;;;;-1:-1:-1;6937:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7086:18:0;;;7054:7;7086:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6937:184;4404:23;;;;;;;;;;-1:-1:-1;4404:23:0;;;;-1:-1:-1;;;;;4404:23:0;;;4124:26;;;;;;;;;;-1:-1:-1;4124:26:0;;;;-1:-1:-1;;;;;4124:26:0;;;3319:214;;;;;;;;;;-1:-1:-1;3319:214:0;;;;;:::i;:::-;;:::i;4602:28::-;;;;;;;;;;;;;;;;6296:94;6344:13;6377:5;6370:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6296:94;:::o;7129:122::-;7206:37;7215:10;7227:7;7236:6;7206:8;:37::i;:::-;7129:122;;:::o;7259:367::-;7393:36;7403:6;7411:9;7422:6;7393:9;:36::i;:::-;-1:-1:-1;;;;;7444:19:0;;4556:1;7444:19;;;:11;:19;;;;;;;;7464:10;7444:31;;;;;;;;-1:-1:-1;;7444:38:0;7440:179;;-1:-1:-1;;;;;7550:19:0;;;;;;:11;:19;;;;;;;;7570:10;7550:31;;;;;;;;:57;;7601:6;;7550:57;:::i;:::-;-1:-1:-1;;;;;7499:19:0;;;;;;:11;:19;;;;;;;;7519:10;7499:31;;;;;;;:108;7440:179;7259:367;;;:::o;3163:148::-;3104:6;;-1:-1:-1;;;;;3104:6:0;3114:10;3104:20;3096:39;;;;-1:-1:-1;;;3096:39:0;;3639:2:1;3096:39:0;;;3621:21:1;3678:1;3658:18;;;3651:29;-1:-1:-1;;;3696:18:1;;;3689:36;3742:18;;3096:39:0;;;;;;;;;3270:1:::1;3254:6:::0;;3233:40:::1;::::0;-1:-1:-1;;;;;3254:6:0;;::::1;::::0;3233:40:::1;::::0;3270:1;;3233:40:::1;3301:1;3284:19:::0;;-1:-1:-1;;;;;;3284:19:0::1;::::0;;3163:148::o;6190:98::-;6240:13;6273:7;6266:14;;;;;:::i;4772:27::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4772:27:0;;-1:-1:-1;4772:27:0;:::o;6732:197::-;6837:4;6859:40;6869:10;6881:9;6892:6;6859:9;:40::i;:::-;-1:-1:-1;6917:4:0;6732:197;;;;;:::o;3319:214::-;3104:6;;-1:-1:-1;;;;;3104:6:0;3114:10;3104:20;3096:39;;;;-1:-1:-1;;;3096:39:0;;3639:2:1;3096:39:0;;;3621:21:1;3678:1;3658:18;;;3651:29;-1:-1:-1;;;3696:18:1;;;3689:36;3742:18;;3096:39:0;3437:329:1;3096:39:0;-1:-1:-1;;;;;3408:22:0;::::1;3400:43;;;::::0;-1:-1:-1;;;3400:43:0;;3973:2:1;3400:43:0::1;::::0;::::1;3955:21:1::0;4012:1;3992:18;;;3985:29;-1:-1:-1;;;4030:18:1;;;4023:38;4078:18;;3400:43:0::1;3771:331:1::0;3400:43:0::1;3480:6;::::0;;3459:38:::1;::::0;-1:-1:-1;;;;;3459:38:0;;::::1;::::0;3480:6;::::1;::::0;3459:38:::1;::::0;::::1;3508:6;:17:::0;;-1:-1:-1;;;;;;3508:17:0::1;-1:-1:-1::0;;;;;3508:17:0;;;::::1;::::0;;;::::1;::::0;;3319:214::o;7634:211::-;-1:-1:-1;;;;;7753:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7805:32;;1533:25:1;;;7805:32:0;;1506:18:1;7805:32:0;;;;;;;;7634:211;;;:::o;8799:1438::-;8987:6;8968:15;8978:4;-1:-1:-1;;;;;6698:18:0;6671:7;6698:18;;;:9;:18;;;;;;;6605:119;8968:15;:25;;8960:54;;;;-1:-1:-1;;;8960:54:0;;4309:2:1;8960:54:0;;;4291:21:1;4348:2;4328:18;;;4321:30;-1:-1:-1;;;4367:18:1;;;4360:46;4423:18;;8960:54:0;4107:340:1;8960:54:0;-1:-1:-1;;;;;9101:17:0;;9027:12;9101:17;;;:13;:17;;;;;;9027:12;;;;9101:17;;9097:164;;;9143:17;:15;:17::i;:::-;9135:25;;9097:164;;;-1:-1:-1;;;;;9182:19:0;;;;;;:13;:19;;;;;;;;9178:83;;;9229:20;:18;:20::i;:::-;9218:31;;9178:83;-1:-1:-1;;;;;9277:19:0;;;;;;:13;:19;;;;;;;;;:40;;-1:-1:-1;;;;;;9300:17:0;;;;;;:13;:17;;;;;;;;9277:40;9273:903;;;-1:-1:-1;;;;;9339:19:0;;;;;;:13;:19;;;;;;;;9338:20;:42;;;;-1:-1:-1;;;;;;9363:17:0;;;;;;:13;:17;;;;;;;;9362:18;9338:42;9334:831;;;-1:-1:-1;;;;;9405:17:0;;;;;;:13;:17;;;;;;;;9401:674;;;9452:6;;;;9451:7;:17;;;;;9463:5;9462:6;9451:17;9447:609;;;9546:4;9497:28;6698:18;;;:9;:18;;;;;;9583:24;;9579:454;;9640:15;9658:7;;9668:1;9658:11;;;;:::i;:::-;9640:29;-1:-1:-1;9700:27:0;9730:11;9739:2;9730:6;:11;:::i;:::-;9700:41;;9798:20;9776:19;:42;9772:157;;;-1:-1:-1;9877:20:0;9772:157;9959:46;9976:19;9997:7;9959:16;:46::i;:::-;9609:424;;9579:454;9470:586;9447:609;10098:5;10097:6;:19;;;;;10108:8;10107:9;10097:19;10093:39;;;10128:4;10118:14;;10093:39;10188:41;10203:4;10209:2;10213:6;10221:7;10188:14;:41::i;:::-;8902:1335;;;8799:1438;;;:::o;7853:460::-;7957:9;;8007:22;;;-1:-1:-1;;;8007:22:0;;;;7903:10;;-1:-1:-1;;;;;7957:9:0;;7903:10;;;;7957:9;;8007:20;;:22;;;;;;;;;;;;;;;7957:9;8007:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8063:8:0;;-1:-1:-1;;;;;7978:51:0;;;;-1:-1:-1;7978:51:0;;;-1:-1:-1;;;;;;8063:8:0;8042:18;8127:4;8106:26;;8102:104;;;-1:-1:-1;8153:2:0;8102:104;;;-1:-1:-1;8192:2:0;8102:104;8232:47;;-1:-1:-1;;;8232:47:0;;-1:-1:-1;;;;;1752:32:1;;;8232:47:0;;;1734:51:1;8218:11:0;;8232:28;;;;;;1707:18:1;;8232:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8298:7;;;;;7853:460;-1:-1:-1;;;;;;7853:460:0:o;8321:470::-;8431:9;;8481:22;;;-1:-1:-1;;;8481:22:0;;;;8374:13;;-1:-1:-1;;;;;8431:9:0;;8374:13;;;;8431:9;;8481:20;;:22;;;;;;;;;;;;;;;8431:9;8481:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8537:8:0;;-1:-1:-1;;;;;8452:51:0;;;;-1:-1:-1;8452:51:0;;;-1:-1:-1;;;;;;8537:8:0;8516:18;8601:4;8580:26;;8576:104;;;-1:-1:-1;8627:2:0;8576:104;;;-1:-1:-1;8666:2:0;8576:104;8706:47;;-1:-1:-1;;;8706:47:0;;-1:-1:-1;;;;;1752:32:1;;;8706:47:0;;;1734:51:1;8692:11:0;;8706:28;;;;;;1707:18:1;;8706:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8775:8;;;;;8321:470;-1:-1:-1;;;;;;8321:470:0:o;11145:1097::-;4706:6;:13;;-1:-1:-1;;4706:13:0;4715:4;4706:13;;;11263:51;;11296:7:::1;11263:51;11326:19;11374:7;11363;;11349:11;:21;;;;:::i;:::-;11348:33;;;;:::i;:::-;11411:11;::::0;11574::::1;::::0;11411:223:::1;::::0;-1:-1:-1;;;11411:223:0;;11326:55;;-1:-1:-1;;;;;;11411:11:0;;::::1;::::0;:65:::1;::::0;:223:::1;::::0;11326:55;;11411:11:::1;::::0;11545:10:::1;::::0;11574:11:::1;::::0;11604:15:::1;::::0;11411:223:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;11394:386;;11673:95;::::0;11752:1:::1;1533:25:1::0;;11673:95:0::1;::::0;1521:2:1;1506:18;11673:95:0::1;;;;;;;11394:386;11790:19;11812:25;11826:11:::0;11812;:25:::1;:::i;:::-;11865:11;::::0;12028:12:::1;::::0;;11865:224:::1;::::0;-1:-1:-1;;;11865:224:0;;11790:47;;-1:-1:-1;;;;;;11865:11:0;;::::1;::::0;:65:::1;::::0;:224:::1;::::0;11790:47;;11865:11:::1;::::0;11999:10:::1;::::0;12028:12;;::::1;::::0;12059:15:::1;::::0;11865:224:::1;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;11848:387;;12128:95;::::0;12207:1:::1;1533:25:1::0;;12128:95:0::1;::::0;1521:2:1;1506:18;12128:95:0::1;;;;;;;11848:387;11252:990;;4730:1;-1:-1:-1::0;;4742:6:0;:14;;-1:-1:-1;;4742:14:0;;;11145:1097::o;10245:786::-;-1:-1:-1;;;;;10417:17:0;;;;;;:9;:17;;;;;;:27;;10437:7;;10417:27;:::i;:::-;-1:-1:-1;;;;;10397:17:0;;;;;;:9;:17;;;;;:47;;;;10485:473;;;;10513:18;10556:5;10545:7;;10535;:17;;;;:::i;:::-;10534:27;;;;:::i;:::-;10513:48;;10576:18;10619:5;10608:7;;10598;:17;;;;:::i;:::-;10597:27;;;;:::i;:::-;10576:48;-1:-1:-1;10645:14:0;;10641:145;;10680:23;10693:10;10680:23;;:::i;:::-;;;10722:48;10736:6;10752:4;10759:10;10722:13;:48::i;:::-;10804:14;;10800:147;;10839:23;10852:10;10839:23;;:::i;:::-;;;10881:50;10895:6;10911;10920:10;10881:13;:50::i;:::-;10498:460;;10485:473;10970:53;10984:6;10992:9;11003:19;11013:9;11003:7;:19;:::i;:::-;10970:13;:53::i;:::-;10386:645;10245:786;;;;:::o;12250:213::-;-1:-1:-1;;;;;12387:13:0;;;;;;:9;:13;;;;;;:23;;12403:7;;12387:23;:::i;:::-;-1:-1:-1;;;;;12371:13:0;;;;;;;:9;:13;;;;;;;:39;;;;12426:29;;;;;;;;;;12447:7;1533:25:1;;1521:2;1506:18;;1387:177;14:173;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:1:o;575:548::-;687:4;716:2;745;734:9;727:21;777:6;771:13;820:6;815:2;804:9;800:18;793:34;845:1;855:140;869:6;866:1;863:13;855:140;;;964:14;;;960:23;;954:30;930:17;;;949:2;926:26;919:66;884:10;;855:140;;;859:3;1044:1;1039:2;1030:6;1019:9;1015:22;1011:31;1004:42;1114:2;1107;1103:7;1098:2;1090:6;1086:15;1082:29;1071:9;1067:45;1063:54;1055:62;;;;575:548;;;;:::o;1128:254::-;1196:6;1204;1257:2;1245:9;1236:7;1232:23;1228:32;1225:52;;;1273:1;1270;1263:12;1225:52;1296:29;1315:9;1296:29;:::i;:::-;1286:39;1372:2;1357:18;;;;1344:32;;-1:-1:-1;;;1128:254:1:o;1796:328::-;1873:6;1881;1889;1942:2;1930:9;1921:7;1917:23;1913:32;1910:52;;;1958:1;1955;1948:12;1910:52;1981:29;2000:9;1981:29;:::i;:::-;1971:39;;2029:38;2063:2;2052:9;2048:18;2029:38;:::i;:::-;2019:48;;2114:2;2103:9;2099:18;2086:32;2076:42;;1796:328;;;;;:::o;2337:180::-;2396:6;2449:2;2437:9;2428:7;2424:23;2420:32;2417:52;;;2465:1;2462;2455:12;2417:52;-1:-1:-1;2488:23:1;;2337:180;-1:-1:-1;2337:180:1:o;2522:260::-;2590:6;2598;2651:2;2639:9;2630:7;2626:23;2622:32;2619:52;;;2667:1;2664;2657:12;2619:52;2690:29;2709:9;2690:29;:::i;:::-;2680:39;;2738:38;2772:2;2761:9;2757:18;2738:38;:::i;:::-;2728:48;;2522:260;;;;;:::o;2787:380::-;2866:1;2862:12;;;;2909;;;2930:61;;2984:4;2976:6;2972:17;2962:27;;2930:61;3037:2;3029:6;3026:14;3006:18;3003:38;3000:161;;3083:10;3078:3;3074:20;3071:1;3064:31;3118:4;3115:1;3108:15;3146:4;3143:1;3136:15;3000:161;;2787:380;;;:::o;3172:127::-;3233:10;3228:3;3224:20;3221:1;3214:31;3264:4;3261:1;3254:15;3288:4;3285:1;3278:15;3304:128;3371:9;;;3392:11;;;3389:37;;;3406:18;;:::i;4452:168::-;4525:9;;;4556;;4573:15;;;4567:22;;4553:37;4543:71;;4594:18;;:::i;4625:217::-;4665:1;4691;4681:132;;4735:10;4730:3;4726:20;4723:1;4716:31;4770:4;4767:1;4760:15;4798:4;4795:1;4788:15;4681:132;-1:-1:-1;4827:9:1;;4625:217::o;4847:188::-;4926:13;;-1:-1:-1;;;;;4968:42:1;;4958:53;;4948:81;;5025:1;5022;5015:12;5040:450;5127:6;5135;5143;5196:2;5184:9;5175:7;5171:23;5167:32;5164:52;;;5212:1;5209;5202:12;5164:52;5235:40;5265:9;5235:40;:::i;:::-;5225:50;;5294:49;5339:2;5328:9;5324:18;5294:49;:::i;:::-;5284:59;;5386:2;5375:9;5371:18;5365:25;5430:10;5423:5;5419:22;5412:5;5409:33;5399:61;;5456:1;5453;5446:12;5399:61;5479:5;5469:15;;;5040:450;;;;;:::o;5495:184::-;5565:6;5618:2;5606:9;5597:7;5593:23;5589:32;5586:52;;;5634:1;5631;5624:12;5586:52;-1:-1:-1;5657:16:1;;5495:184;-1:-1:-1;5495:184:1:o;5684:1003::-;5943:4;5991:3;5980:9;5976:19;6022:6;6011:9;6004:25;6048:2;6086:6;6081:2;6070:9;6066:18;6059:34;6129:3;6124:2;6113:9;6109:18;6102:31;6153:6;6188;6182:13;6219:6;6211;6204:22;6257:3;6246:9;6242:19;6235:26;;6280:6;6277:1;6270:17;6323:2;6320:1;6310:16;6296:30;;6344:1;6354:194;6368:6;6365:1;6362:13;6354:194;;;6433:13;;-1:-1:-1;;;;;6429:39:1;6417:52;;6465:1;6524:14;;;;6489:12;;;;6383:9;6354:194;;;-1:-1:-1;;;;;;;6604:32:1;;;;6599:2;6584:18;;6577:60;-1:-1:-1;;;6668:3:1;6653:19;6646:35;6565:3;5684:1003;-1:-1:-1;;;5684:1003:1:o;7072:125::-;7137:9;;;7158:10;;;7155:36;;;7171:18;;:::i
Swarm Source
ipfs://b1246a91144a202f8a024b3d5c34e61366547db9a3a76b0dbf091adcd4bc2666
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)