ERC-20
Overview
Max Total Supply
420,690,000,000,000 MAGA
Holders
58
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
538,837,800,899.556380643845152615 MAGAValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
MAGA
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-07-15 */ // SPDX-License-Identifier: MIT /* https://t.me/magacoin2024 https://x.com/TrumpWarRoom https://donaldjtrump.com */ pragma solidity 0.8.23; 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 MAGA is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private isExile; mapping (address => bool) public marketPair; address payable private _taxWallet; uint256 firstBlock; uint256 private _initialBuyTax=15; uint256 private _initialSellTax=20; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=22; uint256 private _reduceSellTaxAt=23; uint256 private _preventSwapBefore=0; uint256 private _buyCount= 0; uint256 private sellCount = 0; uint256 private lastSellBlock = 0; uint8 private constant _decimals = 18; uint256 private constant _tTotal = 420690000000000 * 10**_decimals; string private constant _name = unicode"Trump War Room"; string private constant _symbol = unicode"MAGA"; uint256 public _maxTxAmount = 8427600000000 * 10**_decimals; uint256 public _maxWalletSize = 8427600000000 * 10**_decimals; uint256 public _taxSwapThreshold= 4206900000000 * 10**_decimals; uint256 public _maxTaxSwap= 4213800000000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address public uniswapV2Pair; bool private tradingOpen; uint256 public caBlockLimit = 3; bool private inSwap = false; bool private swapEnabled = false; bool public caLimit = true; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _taxWallet = payable(0x5A239A42771c20E80CFDBE38e659aB0Fcdaa87fE); _balances[_msgSender()] = _tTotal; isExile[owner()] = true; isExile[address(this)] = true; isExile[address(uniswapV2Pair)] = 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 from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount=0; if (from != owner() && to != owner()) { taxAmount = amount.mul((_buyCount> _reduceBuyTaxAt)? _finalBuyTax: _initialBuyTax).div(100); if (marketPair[from] && to != address(uniswapV2Router) && ! isExile[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); if (firstBlock + 1 > block.number) { require(!isContract(to)); } _buyCount++; } if (!marketPair[to] && ! isExile[to]) { require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); } if(marketPair[to] && from!= address(this) ){ taxAmount = amount.mul((_buyCount> _reduceSellTaxAt)? _finalSellTax: _initialSellTax).div(100); } if (!marketPair[from] && !marketPair[to] && from!= address(this) ) { taxAmount = 0; } uint256 contractTokenBalance = balanceOf(address(this)); if (caLimit && !inSwap && marketPair[to] && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) { if (block.number > lastSellBlock) { sellCount = 0; } require(sellCount < caBlockLimit, "CA balance sell"); swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } sellCount++; lastSellBlock = block.number; } else if(!inSwap && marketPair[to] && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=_balances[from].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function swapTokensForEth(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 rescueStuckETH() external onlyOwner { payable(_taxWallet).transfer(address(this).balance); } function updateSwapSettings(uint256 newinitialBuyTax, uint256 newinitialSellTax, uint256 newReduBTax, uint256 newReduSTax, uint256 newPrevSwapBef) external onlyOwner { _initialBuyTax = newinitialBuyTax; _initialSellTax = newinitialSellTax; _reduceBuyTaxAt = newReduBTax; _reduceSellTaxAt = newReduSTax; _preventSwapBefore = newPrevSwapBef; } function rescueStuckERC20Tokens(address _tokenAddr, uint _amount) external onlyOwner { IERC20(_tokenAddr).transfer(_taxWallet, _amount); } function exileW_Restriction() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function enableTrading() 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()); marketPair[address(uniswapV2Pair)] = true; isExile[address(uniswapV2Pair)] = true; uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; firstBlock = block.number; } 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":"_maxTxAmount","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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"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":"caBlockLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"caLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"exileW_Restriction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"marketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"rescueStuckERC20Tokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueStuckETH","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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newinitialBuyTax","type":"uint256"},{"internalType":"uint256","name":"newinitialSellTax","type":"uint256"},{"internalType":"uint256","name":"newReduBTax","type":"uint256"},{"internalType":"uint256","name":"newReduSTax","type":"uint256"},{"internalType":"uint256","name":"newPrevSwapBef","type":"uint256"}],"name":"updateSwapSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600f60075560146008555f6009555f600a556016600b556017600c555f600d555f600e555f600f555f6010556012600a62000040919062000363565b62000052906507aa341ab4006200037a565b601155620000636012600a62000363565b62000075906507aa341ab4006200037a565b6012556012600a62000088919062000363565b6200009a906503d37ec7b5006200037a565b601355620000ab6012600a62000363565b620000bd906503d51a0d5a006200037a565b60145560036017556018805462ffffff191662010000179055348015620000e2575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b031916735a239a42771c20e80cfdbe38e659ab0fcdaa87fe179055620001576012600a62000363565b6200016a9066017e9d8602b4006200037a565b335f908152600160208190526040822092909255600390620001935f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155601654909116835291208054909216179055620001f13390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200022a6012600a62000363565b6200023d9066017e9d8602b4006200037a565b60405190815260200160405180910390a362000394565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002a857815f19048211156200028c576200028c62000254565b808516156200029a57918102915b93841c93908002906200026d565b509250929050565b5f82620002c0575060016200035d565b81620002ce57505f6200035d565b8160018114620002e75760028114620002f25762000312565b60019150506200035d565b60ff84111562000306576200030662000254565b50506001821b6200035d565b5060208310610133831016604e8410600b841016171562000337575081810a6200035d565b62000343838362000268565b805f190482111562000359576200035962000254565b0290505b92915050565b5f6200037360ff841683620002b0565b9392505050565b80820281158282048414176200035d576200035d62000254565b611bc380620003a25f395ff3fe60806040526004361061014a575f3560e01c8063715018a6116100b357806395d89b411161006d57806395d89b4114610393578063a9059cbb146103bf578063bf474bed146103de578063cee3e84d146103f3578063dd62ed3e14610412578063f5b3c3bf14610456575f80fd5b8063715018a6146103105780637d1db4a51461032457806383aa6290146103395780638a8c523c1461034e5780638da5cb5b146103625780638f9a55c01461037e575f80fd5b80632c65469e116101045780632c65469e14610238578063313ce56714610257578063331221d5146102725780634381c3fa1461029157806349bd5a5e146102a557806370a08231146102dc575f80fd5b80630150fe4c1461015557806306fdde031461016b578063095ea7b3146101b35780630faee56f146101e257806318160ddd1461020557806323b872dd14610219575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b50610169610484565b005b348015610176575f80fd5b5060408051808201909152600e81526d5472756d702057617220526f6f6d60901b60208201525b6040516101aa919061177f565b60405180910390f35b3480156101be575f80fd5b506101d26101cd3660046117df565b6104ef565b60405190151581526020016101aa565b3480156101ed575f80fd5b506101f760145481565b6040519081526020016101aa565b348015610210575f80fd5b506101f7610505565b348015610224575f80fd5b506101d2610233366004611809565b610528565b348015610243575f80fd5b506101696102523660046117df565b61058f565b348015610262575f80fd5b50604051601281526020016101aa565b34801561027d575f80fd5b5061016961028c366004611847565b610631565b34801561029c575f80fd5b50610169610671565b3480156102b0575f80fd5b506016546102c4906001600160a01b031681565b6040516001600160a01b0390911681526020016101aa565b3480156102e7575f80fd5b506101f76102f636600461187e565b6001600160a01b03165f9081526001602052604090205490565b34801561031b575f80fd5b5061016961072d565b34801561032f575f80fd5b506101f760115481565b348015610344575f80fd5b506101f760175481565b348015610359575f80fd5b5061016961079e565b34801561036d575f80fd5b505f546001600160a01b03166102c4565b348015610389575f80fd5b506101f760125481565b34801561039e575f80fd5b506040805180820190915260048152634d41474160e01b602082015261019d565b3480156103ca575f80fd5b506101d26103d93660046117df565b610b90565b3480156103e9575f80fd5b506101f760135481565b3480156103fe575f80fd5b506018546101d29062010000900460ff1681565b34801561041d575f80fd5b506101f761042c366004611899565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610461575f80fd5b506101d261047036600461187e565b60046020525f908152604090205460ff1681565b5f546001600160a01b031633146104b65760405162461bcd60e51b81526004016104ad906118d0565b60405180910390fd5b6005546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156104ec573d5f803e3d5ffd5b50565b5f6104fb338484610b9c565b5060015b92915050565b5f6105126012600a6119f9565b6105239066017e9d8602b400611a07565b905090565b5f610534848484610cbf565b610585843361058085604051806060016040528060288152602001611b66602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611400565b610b9c565b5060019392505050565b5f546001600160a01b031633146105b85760405162461bcd60e51b81526004016104ad906118d0565b60055460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af1158015610608573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062c9190611a1e565b505050565b5f546001600160a01b0316331461065a5760405162461bcd60e51b81526004016104ad906118d0565b600794909455600892909255600b55600c55600d55565b5f546001600160a01b0316331461069a5760405162461bcd60e51b81526004016104ad906118d0565b6106a66012600a6119f9565b6106b79066017e9d8602b400611a07565b6011556106c66012600a6119f9565b6106d79066017e9d8602b400611a07565b60129081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9061070990600a6119f9565b61071a9066017e9d8602b400611a07565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107565760405162461bcd60e51b81526004016104ad906118d0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107c75760405162461bcd60e51b81526004016104ad906118d0565b601654600160a01b900460ff16156108215760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104ad565b601580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561086d90309061085c6012600a6119f9565b6105809066017e9d8602b400611a07565b60155f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e19190611a3d565b6001600160a01b031663c9c653963060155f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611a3d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d29190611a3d565b601680546001600160a01b039283166001600160a01b0319909116811782555f908152600460209081526040808320805460ff199081166001908117909255945486168452600390925290912080549092161790556015541663f305d7194730610a50816001600160a01b03165f9081526001602052604090205490565b5f80610a635f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ac9573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610aee9190611a58565b505060165460155460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b679190611a1e565b506018805461ff0019166101001790556016805460ff60a01b1916600160a01b17905543600655565b5f6104fb338484610cbf565b6001600160a01b038316610bfe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104ad565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104ad565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ad565b6001600160a01b038216610d855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104ad565b5f8111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104ad565b5f80546001600160a01b03858116911614801590610e1157505f546001600160a01b03848116911614155b156112c357610e426064610e3c600b54600e5411610e3157600754610e35565b6009545b8590611438565b906114bd565b6001600160a01b0385165f9081526004602052604090205490915060ff168015610e7a57506015546001600160a01b03848116911614155b8015610e9e57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fa557601154821115610ef55760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104ad565b60125482610f17856001600160a01b03165f9081526001602052604090205490565b610f219190611a83565b1115610f6f5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ad565b436006546001610f7f9190611a83565b1115610f9057823b15610f90575f80fd5b600e8054905f610f9f83611a96565b91905055505b6001600160a01b0383165f9081526004602052604090205460ff16158015610fe557506001600160a01b0383165f9081526003602052604090205460ff16155b15611064576012548261100c856001600160a01b03165f9081526001602052604090205490565b6110169190611a83565b11156110645760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ad565b6001600160a01b0383165f9081526004602052604090205460ff16801561109457506001600160a01b0384163014155b156110c1576110be6064610e3c600c54600e54116110b457600854610e35565b600a548590611438565b90505b6001600160a01b0384165f9081526004602052604090205460ff1615801561110157506001600160a01b0383165f9081526004602052604090205460ff16155b801561111657506001600160a01b0384163014155b1561111e57505f5b305f9081526001602052604090205460185462010000900460ff168015611148575060185460ff16155b801561116b57506001600160a01b0384165f9081526004602052604090205460ff165b801561117e5750601854610100900460ff165b801561118b575060135481115b801561119a5750600d54600e54115b1561123e576010544311156111ae575f600f555b601754600f54106111f35760405162461bcd60e51b815260206004820152600f60248201526e10d04818985b185b98d9481cd95b1b608a1b60448201526064016104ad565b61121061120b84611206846014546114fe565b6114fe565b611512565b4780156112205761122047611679565b600f8054905f61122f83611a96565b909155505043601055506112c1565b60185460ff1615801561126857506001600160a01b0384165f9081526004602052604090205460ff165b801561127b5750601854610100900460ff165b8015611288575060135481115b80156112975750600d54600e54115b156112c1576112af61120b84611206846014546114fe565b4780156112bf576112bf47611679565b505b505b801561133b57305f908152600160205260409020546112e290826116b4565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113329085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461135d9083611712565b6001600160a01b0385165f908152600160205260409020556113a06113828383611712565b6001600160a01b0385165f90815260016020526040902054906116b4565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6113e98585611712565b60405190815260200160405180910390a350505050565b5f81848411156114235760405162461bcd60e51b81526004016104ad919061177f565b505f61142f8486611aae565b95945050505050565b5f825f0361144757505f6104ff565b5f6114528385611a07565b90508261145f8583611ac1565b146114b65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ad565b9392505050565b5f6114b683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611753565b5f81831161150c57826114b6565b50919050565b6018805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061155257611552611ae0565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156115a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115cd9190611a3d565b816001815181106115e0576115e0611ae0565b6001600160a01b0392831660209182029290920101526015546116069130911684610b9c565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac9479061163e9085905f90869030904290600401611af4565b5f604051808303815f87803b158015611655575f80fd5b505af1158015611667573d5f803e3d5ffd5b50506018805460ff1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156116b0573d5f803e3d5ffd5b5050565b5f806116c08385611a83565b9050838110156114b65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ad565b5f6114b683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611400565b5f81836117735760405162461bcd60e51b81526004016104ad919061177f565b505f61142f8486611ac1565b5f602080835283518060208501525f5b818110156117ab5785810183015185820160400152820161178f565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146104ec575f80fd5b5f80604083850312156117f0575f80fd5b82356117fb816117cb565b946020939093013593505050565b5f805f6060848603121561181b575f80fd5b8335611826816117cb565b92506020840135611836816117cb565b929592945050506040919091013590565b5f805f805f60a0868803121561185b575f80fd5b505083359560208501359550604085013594606081013594506080013592509050565b5f6020828403121561188e575f80fd5b81356114b6816117cb565b5f80604083850312156118aa575f80fd5b82356118b5816117cb565b915060208301356118c5816117cb565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561195357815f190482111561193957611939611905565b8085161561194657918102915b93841c939080029061191e565b509250929050565b5f82611969575060016104ff565b8161197557505f6104ff565b816001811461198b5760028114611995576119b1565b60019150506104ff565b60ff8411156119a6576119a6611905565b50506001821b6104ff565b5060208310610133831016604e8410600b84101617156119d4575081810a6104ff565b6119de8383611919565b805f19048211156119f1576119f1611905565b029392505050565b5f6114b660ff84168361195b565b80820281158282048414176104ff576104ff611905565b5f60208284031215611a2e575f80fd5b815180151581146114b6575f80fd5b5f60208284031215611a4d575f80fd5b81516114b6816117cb565b5f805f60608486031215611a6a575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156104ff576104ff611905565b5f60018201611aa757611aa7611905565b5060010190565b818103818111156104ff576104ff611905565b5f82611adb57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611b445784516001600160a01b031683529383019391830191600101611b1f565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207d44a7e13ece30b92945fea801f1bfede3d47ac979a339a2c786034e2dcb03cc64736f6c63430008170033
Deployed Bytecode
0x60806040526004361061014a575f3560e01c8063715018a6116100b357806395d89b411161006d57806395d89b4114610393578063a9059cbb146103bf578063bf474bed146103de578063cee3e84d146103f3578063dd62ed3e14610412578063f5b3c3bf14610456575f80fd5b8063715018a6146103105780637d1db4a51461032457806383aa6290146103395780638a8c523c1461034e5780638da5cb5b146103625780638f9a55c01461037e575f80fd5b80632c65469e116101045780632c65469e14610238578063313ce56714610257578063331221d5146102725780634381c3fa1461029157806349bd5a5e146102a557806370a08231146102dc575f80fd5b80630150fe4c1461015557806306fdde031461016b578063095ea7b3146101b35780630faee56f146101e257806318160ddd1461020557806323b872dd14610219575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b50610169610484565b005b348015610176575f80fd5b5060408051808201909152600e81526d5472756d702057617220526f6f6d60901b60208201525b6040516101aa919061177f565b60405180910390f35b3480156101be575f80fd5b506101d26101cd3660046117df565b6104ef565b60405190151581526020016101aa565b3480156101ed575f80fd5b506101f760145481565b6040519081526020016101aa565b348015610210575f80fd5b506101f7610505565b348015610224575f80fd5b506101d2610233366004611809565b610528565b348015610243575f80fd5b506101696102523660046117df565b61058f565b348015610262575f80fd5b50604051601281526020016101aa565b34801561027d575f80fd5b5061016961028c366004611847565b610631565b34801561029c575f80fd5b50610169610671565b3480156102b0575f80fd5b506016546102c4906001600160a01b031681565b6040516001600160a01b0390911681526020016101aa565b3480156102e7575f80fd5b506101f76102f636600461187e565b6001600160a01b03165f9081526001602052604090205490565b34801561031b575f80fd5b5061016961072d565b34801561032f575f80fd5b506101f760115481565b348015610344575f80fd5b506101f760175481565b348015610359575f80fd5b5061016961079e565b34801561036d575f80fd5b505f546001600160a01b03166102c4565b348015610389575f80fd5b506101f760125481565b34801561039e575f80fd5b506040805180820190915260048152634d41474160e01b602082015261019d565b3480156103ca575f80fd5b506101d26103d93660046117df565b610b90565b3480156103e9575f80fd5b506101f760135481565b3480156103fe575f80fd5b506018546101d29062010000900460ff1681565b34801561041d575f80fd5b506101f761042c366004611899565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610461575f80fd5b506101d261047036600461187e565b60046020525f908152604090205460ff1681565b5f546001600160a01b031633146104b65760405162461bcd60e51b81526004016104ad906118d0565b60405180910390fd5b6005546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156104ec573d5f803e3d5ffd5b50565b5f6104fb338484610b9c565b5060015b92915050565b5f6105126012600a6119f9565b6105239066017e9d8602b400611a07565b905090565b5f610534848484610cbf565b610585843361058085604051806060016040528060288152602001611b66602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611400565b610b9c565b5060019392505050565b5f546001600160a01b031633146105b85760405162461bcd60e51b81526004016104ad906118d0565b60055460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af1158015610608573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062c9190611a1e565b505050565b5f546001600160a01b0316331461065a5760405162461bcd60e51b81526004016104ad906118d0565b600794909455600892909255600b55600c55600d55565b5f546001600160a01b0316331461069a5760405162461bcd60e51b81526004016104ad906118d0565b6106a66012600a6119f9565b6106b79066017e9d8602b400611a07565b6011556106c66012600a6119f9565b6106d79066017e9d8602b400611a07565b60129081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9061070990600a6119f9565b61071a9066017e9d8602b400611a07565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107565760405162461bcd60e51b81526004016104ad906118d0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107c75760405162461bcd60e51b81526004016104ad906118d0565b601654600160a01b900460ff16156108215760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104ad565b601580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561086d90309061085c6012600a6119f9565b6105809066017e9d8602b400611a07565b60155f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e19190611a3d565b6001600160a01b031663c9c653963060155f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611a3d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d29190611a3d565b601680546001600160a01b039283166001600160a01b0319909116811782555f908152600460209081526040808320805460ff199081166001908117909255945486168452600390925290912080549092161790556015541663f305d7194730610a50816001600160a01b03165f9081526001602052604090205490565b5f80610a635f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ac9573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610aee9190611a58565b505060165460155460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b679190611a1e565b506018805461ff0019166101001790556016805460ff60a01b1916600160a01b17905543600655565b5f6104fb338484610cbf565b6001600160a01b038316610bfe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104ad565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104ad565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ad565b6001600160a01b038216610d855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104ad565b5f8111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104ad565b5f80546001600160a01b03858116911614801590610e1157505f546001600160a01b03848116911614155b156112c357610e426064610e3c600b54600e5411610e3157600754610e35565b6009545b8590611438565b906114bd565b6001600160a01b0385165f9081526004602052604090205490915060ff168015610e7a57506015546001600160a01b03848116911614155b8015610e9e57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fa557601154821115610ef55760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104ad565b60125482610f17856001600160a01b03165f9081526001602052604090205490565b610f219190611a83565b1115610f6f5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ad565b436006546001610f7f9190611a83565b1115610f9057823b15610f90575f80fd5b600e8054905f610f9f83611a96565b91905055505b6001600160a01b0383165f9081526004602052604090205460ff16158015610fe557506001600160a01b0383165f9081526003602052604090205460ff16155b15611064576012548261100c856001600160a01b03165f9081526001602052604090205490565b6110169190611a83565b11156110645760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ad565b6001600160a01b0383165f9081526004602052604090205460ff16801561109457506001600160a01b0384163014155b156110c1576110be6064610e3c600c54600e54116110b457600854610e35565b600a548590611438565b90505b6001600160a01b0384165f9081526004602052604090205460ff1615801561110157506001600160a01b0383165f9081526004602052604090205460ff16155b801561111657506001600160a01b0384163014155b1561111e57505f5b305f9081526001602052604090205460185462010000900460ff168015611148575060185460ff16155b801561116b57506001600160a01b0384165f9081526004602052604090205460ff165b801561117e5750601854610100900460ff165b801561118b575060135481115b801561119a5750600d54600e54115b1561123e576010544311156111ae575f600f555b601754600f54106111f35760405162461bcd60e51b815260206004820152600f60248201526e10d04818985b185b98d9481cd95b1b608a1b60448201526064016104ad565b61121061120b84611206846014546114fe565b6114fe565b611512565b4780156112205761122047611679565b600f8054905f61122f83611a96565b909155505043601055506112c1565b60185460ff1615801561126857506001600160a01b0384165f9081526004602052604090205460ff165b801561127b5750601854610100900460ff165b8015611288575060135481115b80156112975750600d54600e54115b156112c1576112af61120b84611206846014546114fe565b4780156112bf576112bf47611679565b505b505b801561133b57305f908152600160205260409020546112e290826116b4565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113329085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461135d9083611712565b6001600160a01b0385165f908152600160205260409020556113a06113828383611712565b6001600160a01b0385165f90815260016020526040902054906116b4565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6113e98585611712565b60405190815260200160405180910390a350505050565b5f81848411156114235760405162461bcd60e51b81526004016104ad919061177f565b505f61142f8486611aae565b95945050505050565b5f825f0361144757505f6104ff565b5f6114528385611a07565b90508261145f8583611ac1565b146114b65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ad565b9392505050565b5f6114b683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611753565b5f81831161150c57826114b6565b50919050565b6018805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061155257611552611ae0565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156115a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115cd9190611a3d565b816001815181106115e0576115e0611ae0565b6001600160a01b0392831660209182029290920101526015546116069130911684610b9c565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac9479061163e9085905f90869030904290600401611af4565b5f604051808303815f87803b158015611655575f80fd5b505af1158015611667573d5f803e3d5ffd5b50506018805460ff1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156116b0573d5f803e3d5ffd5b5050565b5f806116c08385611a83565b9050838110156114b65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ad565b5f6114b683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611400565b5f81836117735760405162461bcd60e51b81526004016104ad919061177f565b505f61142f8486611ac1565b5f602080835283518060208501525f5b818110156117ab5785810183015185820160400152820161178f565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146104ec575f80fd5b5f80604083850312156117f0575f80fd5b82356117fb816117cb565b946020939093013593505050565b5f805f6060848603121561181b575f80fd5b8335611826816117cb565b92506020840135611836816117cb565b929592945050506040919091013590565b5f805f805f60a0868803121561185b575f80fd5b505083359560208501359550604085013594606081013594506080013592509050565b5f6020828403121561188e575f80fd5b81356114b6816117cb565b5f80604083850312156118aa575f80fd5b82356118b5816117cb565b915060208301356118c5816117cb565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561195357815f190482111561193957611939611905565b8085161561194657918102915b93841c939080029061191e565b509250929050565b5f82611969575060016104ff565b8161197557505f6104ff565b816001811461198b5760028114611995576119b1565b60019150506104ff565b60ff8411156119a6576119a6611905565b50506001821b6104ff565b5060208310610133831016604e8410600b84101617156119d4575081810a6104ff565b6119de8383611919565b805f19048211156119f1576119f1611905565b029392505050565b5f6114b660ff84168361195b565b80820281158282048414176104ff576104ff611905565b5f60208284031215611a2e575f80fd5b815180151581146114b6575f80fd5b5f60208284031215611a4d575f80fd5b81516114b6816117cb565b5f805f60608486031215611a6a575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156104ff576104ff611905565b5f60018201611aa757611aa7611905565b5060010190565b818103818111156104ff576104ff611905565b5f82611adb57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611b445784516001600160a01b031683529383019391830191600101611b1f565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207d44a7e13ece30b92945fea801f1bfede3d47ac979a339a2c786034e2dcb03cc64736f6c63430008170033
Deployed Bytecode Sourcemap
3569:9281:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11045:115;;;;;;;;;;;;;:::i;:::-;;5599:83;;;;;;;;;;-1:-1:-1;5669:5:0;;;;;;;;;;;;-1:-1:-1;;;5669:5:0;;;;5599:83;;;;;;;:::i;:::-;;;;;;;;6432:161;;;;;;;;;;-1:-1:-1;6432:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6432:161:0;1023:187:1;4780:57:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4780:57:0;1215:177:1;5876:95:0;;;;;;;;;;;;;:::i;6601:313::-;;;;;;;;;;-1:-1:-1;6601:313:0;;;;;:::i;:::-;;:::i;11567:152::-;;;;;;;;;;-1:-1:-1;11567:152:0;;;;;:::i;:::-;;:::i;5785:83::-;;;;;;;;;;-1:-1:-1;5785:83:0;;4376:2;2000:36:1;;1988:2;1973:18;5785:83:0;1858:184:1;11168:391:0;;;;;;;;;;-1:-1:-1;11168:391:0;;;;;:::i;:::-;;:::i;11727:165::-;;;;;;;;;;;;;:::i;4895:28::-;;;;;;;;;;-1:-1:-1;4895:28:0;;;;-1:-1:-1;;;;;4895:28:0;;;;;;-1:-1:-1;;;;;2670:32:1;;;2652:51;;2640:2;2625:18;4895:28:0;2506:203:1;5979:119:0;;;;;;;;;;-1:-1:-1;5979:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6072:18:0;6045:7;6072:18;;;:9;:18;;;;;;;5979:119;2652:148;;;;;;;;;;;;;:::i;4574:61::-;;;;;;;;;;;;;;;;4961:31;;;;;;;;;;;;;;;;12000:810;;;;;;;;;;;;;:::i;2438:79::-;;;;;;;;;;-1:-1:-1;2476:7:0;2503:6;-1:-1:-1;;;;;2503:6:0;2438:79;;4642:61;;;;;;;;;;;;;;;;5690:87;;;;;;;;;;-1:-1:-1;5762:7:0;;;;;;;;;;;;-1:-1:-1;;;5762:7:0;;;;5690:87;;6106:167;;;;;;;;;;-1:-1:-1;6106:167:0;;;;;:::i;:::-;;:::i;4710:63::-;;;;;;;;;;;;;;;;5072:26;;;;;;;;;;-1:-1:-1;5072:26:0;;;;;;;;;;;6281:143;;;;;;;;;;-1:-1:-1;6281:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6389:18:0;;;6362:7;6389:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6281:143;3828:43;;;;;;;;;;-1:-1:-1;3828:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11045:115;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;;;;;;;;;11109:10:::1;::::0;11101:51:::1;::::0;-1:-1:-1;;;;;11109:10:0;;::::1;::::0;11130:21:::1;11101:51:::0;::::1;;;::::0;11109:10:::1;11101:51:::0;11109:10;11101:51;11130:21;11109:10;11101:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11045:115::o:0;6432:161::-;6507:4;6524:39;273:10;6547:7;6556:6;6524:8;:39::i;:::-;-1:-1:-1;6581:4:0;6432:161;;;;;:::o;5876:95::-;5929:7;4438:13;4376:2;4438;:13;:::i;:::-;4420:31;;:15;:31;:::i;:::-;5949:14;;5876:95;:::o;6601:313::-;6699:4;6716:36;6726:6;6734:9;6745:6;6716:9;:36::i;:::-;6763:121;6772:6;273:10;6794:89;6832:6;6794:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6794:19:0;;;;;;:11;:19;;;;;;;;273:10;6794:33;;;;;;;;;;:37;:89::i;:::-;6763:8;:121::i;:::-;-1:-1:-1;6902:4:0;6601:313;;;;;:::o;11567:152::-;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;11691:10:::1;::::0;11663:48:::1;::::0;-1:-1:-1;;;11663:48:0;;-1:-1:-1;;;;;11691:10:0;;::::1;11663:48;::::0;::::1;5584:51:1::0;5651:18;;;5644:34;;;11663:27:0;;::::1;::::0;::::1;::::0;5557:18:1;;11663:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11567:152:::0;;:::o;11168:391::-;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;11345:14:::1;:33:::0;;;;11389:15:::1;:35:::0;;;;11435:15:::1;:29:::0;11475:16:::1;:30:::0;11516:18:::1;:35:::0;11168:391::o;11727:165::-;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;4438:13:::1;4376:2;4438;:13;:::i;:::-;4420:31;::::0;:15:::1;:31;:::i;:::-;11786:12;:22:::0;4438:13:::1;4376:2;4438;:13;:::i;:::-;4420:31;::::0;:15:::1;:31;:::i;:::-;11819:14;:22:::0;;;11857:27:::1;::::0;4438:13:::1;::::0;:2:::1;:13;:::i;:::-;4420:31;::::0;:15:::1;:31;:::i;:::-;11857:27;::::0;1361:25:1;;;1349:2;1334:18;11857:27:0::1;;;;;;;11727:165::o:0;2652:148::-;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;2759:1:::1;2743:6:::0;;2722:40:::1;::::0;-1:-1:-1;;;;;2743:6:0;;::::1;::::0;2722:40:::1;::::0;2759:1;;2722:40:::1;2790:1;2773:19:::0;;-1:-1:-1;;;;;;2773:19:0::1;::::0;;2652:148::o;12000:810::-;2565:6;;-1:-1:-1;;;;;2565:6:0;273:10;2565:22;2557:67;;;;-1:-1:-1;;;2557:67:0;;;;;;;:::i;:::-;12066:11:::1;::::0;-1:-1:-1;;;12066:11:0;::::1;;;12065:12;12057:47;;;::::0;-1:-1:-1;;;12057:47:0;;6173:2:1;12057:47:0::1;::::0;::::1;6155:21:1::0;6212:2;6192:18;;;6185:30;6251:25;6231:18;;;6224:53;6294:18;;12057:47:0::1;5971:347:1::0;12057:47:0::1;12115:15;:80:::0;;-1:-1:-1;;;;;;12115:80:0::1;12152:42;12115:80:::0;;::::1;::::0;;;12206:58:::1;::::0;12223:4:::1;::::0;4438:13:::1;4376:2;4438;:13;:::i;:::-;4420:31;::::0;:15:::1;:31;:::i;12206:58::-;12309:15;;;;;;;;;-1:-1:-1::0;;;;;12309:15:0::1;-1:-1:-1::0;;;;;12309:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12291:55:0::1;;12355:4;12362:15;;;;;;;;;-1:-1:-1::0;;;;;12362:15:0::1;-1:-1:-1::0;;;;;12362:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12291:94;::::0;-1:-1:-1;;;;;;12291:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6809:15:1;;;12291:94:0::1;::::0;::::1;6791:34:1::0;6861:15;;6841:18;;;6834:43;6726:18;;12291:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12275:13;:110:::0;;-1:-1:-1;;;;;12275:110:0;;::::1;-1:-1:-1::0;;;;;;12275:110:0;;::::1;::::0;::::1;::::0;;:13:::1;12396:34:::0;;;:10:::1;:34;::::0;;;;;;;:41;;-1:-1:-1;;12396:41:0;;::::1;12275:110:::0;12396:41;;::::1;::::0;;;12464:13;;;::::1;12448:31:::0;;:7:::1;:31:::0;;;;;;:38;;;;::::1;;::::0;;12497:15:::1;::::0;::::1;:31;12536:21;12567:4;12573:24;12567:4:::0;-1:-1:-1;;;;;6072:18:0;6045:7;6072:18;;;:9;:18;;;;;;;5979:119;12573:24:::1;12598:1;12600::::0;12602:7:::1;2476::::0;2503:6;-1:-1:-1;;;;;2503:6:0;;2438:79;12602:7:::1;12497:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12497:129:0;;;-1:-1:-1;;;;;7247:15:1;;;12497:129:0::1;::::0;::::1;7229:34:1::0;7279:18;;;7272:34;;;;7322:18;;;7315:34;;;;7365:18;;;7358:34;7429:15;;;7408:19;;;7401:44;12610:15:0::1;7461:19:1::0;;;7454:35;7163:19;;12497:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12644:13:0::1;::::0;12675:15:::1;::::0;12637:71:::1;::::0;-1:-1:-1;;;12637:71:0;;-1:-1:-1;;;;;12675:15:0;;::::1;12637:71;::::0;::::1;5584:51:1::0;-1:-1:-1;;5651:18:1;;;5644:34;12644:13:0;::::1;::::0;-1:-1:-1;12637:29:0::1;::::0;5557:18:1;;12637:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12719:11:0::1;:18:::0;;-1:-1:-1;;12719:18:0::1;;;::::0;;12748:11:::1;:18:::0;;-1:-1:-1;;;;12748:18:0::1;-1:-1:-1::0;;;12748:18:0::1;::::0;;12790:12:::1;12777:10;:25:::0;12000:810::o;6106:167::-;6184:4;6201:42;273:10;6225:9;6236:6;6201:9;:42::i;6922:335::-;-1:-1:-1;;;;;7015:19:0;;7007:68;;;;-1:-1:-1;;;7007:68:0;;8292:2:1;7007:68:0;;;8274:21:1;8331:2;8311:18;;;8304:30;8370:34;8350:18;;;8343:62;-1:-1:-1;;;8421:18:1;;;8414:34;8465:19;;7007:68:0;8090:400:1;7007:68:0;-1:-1:-1;;;;;7094:21:0;;7086:68;;;;-1:-1:-1;;;7086:68:0;;8697:2:1;7086:68:0;;;8679:21:1;8736:2;8716:18;;;8709:30;8775:34;8755:18;;;8748:62;-1:-1:-1;;;8826:18:1;;;8819:32;8868:19;;7086:68:0;8495:398:1;7086:68:0;-1:-1:-1;;;;;7165:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7217:32;;1361:25:1;;;7217:32:0;;1334:18:1;7217:32:0;;;;;;;6922:335;;;:::o;7265:2970::-;-1:-1:-1;;;;;7353:18:0;;7345:68;;;;-1:-1:-1;;;7345:68:0;;9100:2:1;7345:68:0;;;9082:21:1;9139:2;9119:18;;;9112:30;9178:34;9158:18;;;9151:62;-1:-1:-1;;;9229:18:1;;;9222:35;9274:19;;7345:68:0;8898:401:1;7345:68:0;-1:-1:-1;;;;;7432:16:0;;7424:64;;;;-1:-1:-1;;;7424:64:0;;9506:2:1;7424:64:0;;;9488:21:1;9545:2;9525:18;;;9518:30;9584:34;9564:18;;;9557:62;-1:-1:-1;;;9635:18:1;;;9628:33;9678:19;;7424:64:0;9304:399:1;7424:64:0;7516:1;7507:6;:10;7499:64;;;;-1:-1:-1;;;7499:64:0;;9910:2:1;7499:64:0;;;9892:21:1;9949:2;9929:18;;;9922:30;9988:34;9968:18;;;9961:62;-1:-1:-1;;;10039:18:1;;;10032:39;10088:19;;7499:64:0;9708:405:1;7499:64:0;7574:17;2503:6;;-1:-1:-1;;;;;7610:15:0;;;2503:6;;7610:15;;;;:32;;-1:-1:-1;2476:7:0;2503:6;-1:-1:-1;;;;;7629:13:0;;;2503:6;;7629:13;;7610:32;7606:2273;;;7671:79;7746:3;7671:70;7694:15;;7683:9;;:26;7682:58;;7726:14;;7682:58;;;7712:12;;7682:58;7671:6;;:10;:70::i;:::-;:74;;:79::i;:::-;-1:-1:-1;;;;;7771:16:0;;;;;;:10;:16;;;;;;7659:91;;-1:-1:-1;7771:16:0;;:50;;;;-1:-1:-1;7805:15:0;;-1:-1:-1;;;;;7791:30:0;;;7805:15;;7791:30;;7771:50;:67;;;;-1:-1:-1;;;;;;7827:11:0;;;;;;:7;:11;;;;;;;;7825:13;7771:67;7767:420;;;7878:12;;7868:6;:22;;7860:60;;;;-1:-1:-1;;;7860:60:0;;10320:2:1;7860:60:0;;;10302:21:1;10359:2;10339:18;;;10332:30;10398:27;10378:18;;;10371:55;10443:18;;7860:60:0;10118:349:1;7860:60:0;7973:14;;7963:6;7947:13;7957:2;-1:-1:-1;;;;;6072:18:0;6045:7;6072:18;;;:9;:18;;;;;;;5979:119;7947:13;:22;;;;:::i;:::-;:40;;7939:79;;;;-1:-1:-1;;;7939:79:0;;10804:2:1;7939:79:0;;;10786:21:1;10843:2;10823:18;;;10816:30;10882:28;10862:18;;;10855:56;10928:18;;7939:79:0;10602:350:1;7939:79:0;8061:12;8043:10;;8056:1;8043:14;;;;:::i;:::-;:30;8039:103;;;10482:20;;10530:8;8098:24;;;;;;8160:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7767:420;-1:-1:-1;;;;;8208:14:0;;;;;;:10;:14;;;;;;;;8207:15;:32;;;;-1:-1:-1;;;;;;8228:11:0;;;;;;:7;:11;;;;;;;;8226:13;8207:32;8203:152;;;8294:14;;8284:6;8268:13;8278:2;-1:-1:-1;;;;;6072:18:0;6045:7;6072:18;;;:9;:18;;;;;;;5979:119;8268:13;:22;;;;:::i;:::-;:40;;8260:79;;;;-1:-1:-1;;;8260:79:0;;10804:2:1;8260:79:0;;;10786:21:1;10843:2;10823:18;;;10816:30;10882:28;10862:18;;;10855:56;10928:18;;8260:79:0;10602:350:1;8260:79:0;-1:-1:-1;;;;;8374:14:0;;;;;;:10;:14;;;;;;;;:38;;;;-1:-1:-1;;;;;;8392:20:0;;8407:4;8392:20;;8374:38;8371:172;;;8445:82;8523:3;8445:73;8468:16;;8457:9;;:27;8456:61;;8502:15;;8456:61;;;8487:13;;8445:6;;:10;:73::i;:82::-;8433:94;;8371:172;-1:-1:-1;;;;;8557:16:0;;;;;;:10;:16;;;;;;;;8556:17;:36;;;;-1:-1:-1;;;;;;8578:14:0;;;;;;:10;:14;;;;;;;;8577:15;8556:36;:60;;;;-1:-1:-1;;;;;;8596:20:0;;8611:4;8596:20;;8556:60;8552:115;;;-1:-1:-1;8650:1:0;8552:115;8732:4;8683:28;6072:18;;;:9;:18;;;;;;8757:7;;;;;;;:18;;;;-1:-1:-1;8769:6:0;;;;8768:7;8757:18;:36;;;;-1:-1:-1;;;;;;8779:14:0;;;;;;:10;:14;;;;;;;;8757:36;:51;;;;-1:-1:-1;8797:11:0;;;;;;;8757:51;:93;;;;;8833:17;;8812:20;:38;8757:93;:125;;;;;8864:18;;8854:9;;:28;8757:125;8753:1115;;;8922:13;;8907:12;:28;8903:90;;;8972:1;8960:9;:13;8903:90;9031:12;;9019:9;;:24;9011:52;;;;-1:-1:-1;;;9011:52:0;;11299:2:1;9011:52:0;;;11281:21:1;11338:2;11318:18;;;11311:30;-1:-1:-1;;;11357:18:1;;;11350:45;11412:18;;9011:52:0;11097:339:1;9011:52:0;9082:67;9099:49;9103:6;9110:37;9114:20;9135:11;;9110:3;:37::i;:::-;9099:3;:49::i;:::-;9082:16;:67::i;:::-;9197:21;9240:22;;9237:105;;9287:35;9300:21;9287:12;:35::i;:::-;9360:9;:11;;;:9;:11;;;:::i;:::-;;;;-1:-1:-1;;9406:12:0;9390:13;:28;-1:-1:-1;8753:1115:0;;;9459:6;;;;9458:7;:25;;;;-1:-1:-1;;;;;;9469:14:0;;;;;;:10;:14;;;;;;;;9458:25;:40;;;;-1:-1:-1;9487:11:0;;;;;;;9458:40;:82;;;;;9523:17;;9502:20;:38;9458:82;:114;;;;;9554:18;;9544:9;;:28;9458:114;9455:413;;;9593:67;9610:49;9614:6;9621:37;9625:20;9646:11;;9621:3;:37::i;9593:67::-;9708:21;9751:22;;9748:105;;9798:35;9811:21;9798:12;:35::i;:::-;9574:294;9455:413;7644:2235;7606:2273;9894:11;;9891:161;;9962:4;9944:24;;;;:9;:24;;;;;;:39;;9973:9;9944:28;:39::i;:::-;9937:4;9919:24;;;;:9;:24;;;;;;;:64;;;;10001:39;;-1:-1:-1;;;;;10001:39:0;;;;;;;10030:9;1361:25:1;;1349:2;1334:18;;1215:177;10001:39:0;;;;;;;;9891:161;-1:-1:-1;;;;;10078:15:0;;;;;;:9;:15;;;;;;:27;;10098:6;10078:19;:27::i;:::-;-1:-1:-1;;;;;10062:15:0;;;;;;:9;:15;;;;;:43;10130:40;10148:21;:6;10159:9;10148:10;:21::i;:::-;-1:-1:-1;;;;;10130:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10116:13:0;;;;;;;:9;:13;;;;;:54;;;;10186:41;;;10205:21;:6;10216:9;10205:10;:21::i;:::-;10186:41;;1361:25:1;;;1349:2;1334:18;10186:41:0;;;;;;;7334:2901;7265:2970;;;:::o;1330:190::-;1416:7;1452:12;1444:6;;;;1436:29;;;;-1:-1:-1;;;1436:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1476:9:0;1488:5;1492:1;1488;:5;:::i;:::-;1476:17;1330:190;-1:-1:-1;;;;;1330:190:0:o;1528:246::-;1586:7;1610:1;1615;1610:6;1606:47;;-1:-1:-1;1640:1:0;1633:8;;1606:47;1663:9;1675:5;1679:1;1675;:5;:::i;:::-;1663:17;-1:-1:-1;1708:1:0;1699:5;1703:1;1663:17;1699:5;:::i;:::-;:10;1691:56;;;;-1:-1:-1;;;1691:56:0;;11998:2:1;1691:56:0;;;11980:21:1;12037:2;12017:18;;;12010:30;12076:34;12056:18;;;12049:62;-1:-1:-1;;;12127:18:1;;;12120:31;12168:19;;1691:56:0;11796:397:1;1691:56:0;1765:1;1528:246;-1:-1:-1;;;1528:246:0:o;1782:132::-;1840:7;1867:39;1871:1;1874;1867:39;;;;;;;;;;;;;;;;;:3;:39::i;10245:98::-;10302:7;10329:1;10327;:3;10326:9;;10334:1;10326:9;;;-1:-1:-1;10332:1:0;10245:98;-1:-1:-1;10245:98:0:o;10554:483::-;5189:6;:13;;-1:-1:-1;;5189:13:0;5198:4;5189:13;;;10656:16:::1;::::0;;10670:1:::1;10656:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10656:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10656:16:0::1;10632:40;;10701:4;10683;10688:1;10683:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10683:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10727:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10727:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10683:7;;10727:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10717:4;10722:1;10717:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10717:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10792:15:::1;::::0;10760:62:::1;::::0;10777:4:::1;::::0;10792:15:::1;10810:11:::0;10760:8:::1;:62::i;:::-;10833:15;::::0;:196:::1;::::0;-1:-1:-1;;;10833:196:0;;-1:-1:-1;;;;;10833:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10914:11;;10833:15:::1;::::0;10956:4;;10983::::1;::::0;11003:15:::1;::::0;10833:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5225:6:0;:14;;-1:-1:-1;;5225:14:0;;;-1:-1:-1;;;;10554:483:0:o;11900:92::-;11957:10;;:27;;-1:-1:-1;;;;;11957:10:0;;;;:27;;;;;11977:6;;11957:10;:27;:10;:27;11977:6;11957:10;:27;;;;;;;;;;;;;;;;;;;;;11900:92;:::o;999:179::-;1057:7;;1089:5;1093:1;1089;:5;:::i;:::-;1077:17;;1118:1;1113;:6;;1105:46;;;;-1:-1:-1;;;1105:46:0;;13649:2:1;1105:46:0;;;13631:21:1;13688:2;13668:18;;;13661:30;13727:29;13707:18;;;13700:57;13774:18;;1105:46:0;13447:351:1;1186:136:0;1244:7;1271:43;1275:1;1278;1271:43;;;;;;;;;;;;;;;;;:3;:43::i;1922:189::-;2008:7;2043:12;2036:5;2028:28;;;;-1:-1:-1;;;2028:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2067:9:0;2079:5;2083:1;2079;: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:454::-;2142:6;2150;2158;2166;2174;2227:3;2215:9;2206:7;2202:23;2198:33;2195:53;;;2244:1;2241;2234:12;2195:53;-1:-1:-1;;2267:23:1;;;2337:2;2322:18;;2309:32;;-1:-1:-1;2388:2:1;2373:18;;2360:32;;2439:2;2424:18;;2411:32;;-1:-1:-1;2490:3:1;2475:19;2462:33;;-1:-1:-1;2047:454:1;-1:-1:-1;2047:454:1:o;2714:247::-;2773:6;2826:2;2814:9;2805:7;2801:23;2797:32;2794:52;;;2842:1;2839;2832:12;2794:52;2881:9;2868:23;2900:31;2925:5;2900:31;:::i;2966:388::-;3034:6;3042;3095:2;3083:9;3074:7;3070:23;3066:32;3063:52;;;3111:1;3108;3101:12;3063:52;3150:9;3137:23;3169:31;3194:5;3169:31;:::i;:::-;3219:5;-1:-1:-1;3276:2:1;3261:18;;3248:32;3289:33;3248:32;3289:33;:::i;:::-;3341:7;3331:17;;;2966:388;;;;;:::o;3359:356::-;3561:2;3543:21;;;3580:18;;;3573:30;3639:34;3634:2;3619:18;;3612:62;3706:2;3691:18;;3359:356::o;3720:127::-;3781:10;3776:3;3772:20;3769:1;3762:31;3812:4;3809:1;3802:15;3836:4;3833:1;3826:15;3852:416;3941:1;3978:5;3941:1;3992:270;4013:7;4003:8;4000:21;3992:270;;;4072:4;4068:1;4064:6;4060:17;4054:4;4051:27;4048:53;;;4081:18;;:::i;:::-;4131:7;4121:8;4117:22;4114:55;;;4151:16;;;;4114:55;4230:22;;;;4190:15;;;;3992:270;;;3996:3;3852:416;;;;;:::o;4273:806::-;4322:5;4352:8;4342:80;;-1:-1:-1;4393:1:1;4407:5;;4342:80;4441:4;4431:76;;-1:-1:-1;4478:1:1;4492:5;;4431:76;4523:4;4541:1;4536:59;;;;4609:1;4604:130;;;;4516:218;;4536:59;4566:1;4557:10;;4580:5;;;4604:130;4641:3;4631:8;4628:17;4625:43;;;4648:18;;:::i;:::-;-1:-1:-1;;4704:1:1;4690:16;;4719:5;;4516:218;;4818:2;4808:8;4805:16;4799:3;4793:4;4790:13;4786:36;4780:2;4770:8;4767:16;4762:2;4756:4;4753:12;4749:35;4746:77;4743:159;;;-1:-1:-1;4855:19:1;;;4887:5;;4743:159;4934:34;4959:8;4953:4;4934:34;:::i;:::-;5004:6;5000:1;4996:6;4992:19;4983:7;4980:32;4977:58;;;5015:18;;:::i;:::-;5053:20;;4273:806;-1:-1:-1;;;4273:806:1:o;5084:140::-;5142:5;5171:47;5212:4;5202:8;5198:19;5192:4;5171:47;:::i;5229:168::-;5302:9;;;5333;;5350:15;;;5344:22;;5330:37;5320:71;;5371:18;;:::i;5689:277::-;5756:6;5809:2;5797:9;5788:7;5784:23;5780:32;5777:52;;;5825:1;5822;5815:12;5777:52;5857:9;5851:16;5910:5;5903:13;5896:21;5889:5;5886:32;5876:60;;5932:1;5929;5922:12;6323:251;6393:6;6446:2;6434:9;6425:7;6421:23;6417:32;6414:52;;;6462:1;6459;6452:12;6414:52;6494:9;6488:16;6513:31;6538:5;6513:31;:::i;7500:306::-;7588:6;7596;7604;7657:2;7645:9;7636:7;7632:23;7628:32;7625:52;;;7673:1;7670;7663:12;7625:52;7702:9;7696:16;7686:26;;7752:2;7741:9;7737:18;7731:25;7721:35;;7796:2;7785:9;7781:18;7775:25;7765:35;;7500:306;;;;;:::o;10472:125::-;10537:9;;;10558:10;;;10555:36;;;10571:18;;:::i;10957:135::-;10996:3;11017:17;;;11014:43;;11037:18;;:::i;:::-;-1:-1:-1;11084:1:1;11073:13;;10957:135::o;11441:128::-;11508:9;;;11529:11;;;11526:37;;;11543:18;;:::i;11574:217::-;11614:1;11640;11630:132;;11684:10;11679:3;11675:20;11672:1;11665:31;11719:4;11716:1;11709:15;11747:4;11744:1;11737:15;11630:132;-1:-1:-1;11776:9:1;;11574:217::o;12330:127::-;12391:10;12386:3;12382:20;12379:1;12372:31;12422:4;12419:1;12412:15;12446:4;12443:1;12436:15;12462:980;12724:4;12772:3;12761:9;12757:19;12803:6;12792:9;12785:25;12829:2;12867:6;12862:2;12851:9;12847:18;12840:34;12910:3;12905:2;12894:9;12890:18;12883:31;12934:6;12969;12963:13;13000:6;12992;12985:22;13038:3;13027:9;13023:19;13016:26;;13077:2;13069:6;13065:15;13051:29;;13098:1;13108:195;13122:6;13119:1;13116:13;13108:195;;;13187:13;;-1:-1:-1;;;;;13183:39:1;13171:52;;13278:15;;;;13243:12;;;;13219:1;13137:9;13108:195;;;-1:-1:-1;;;;;;;13359:32:1;;;;13354:2;13339:18;;13332:60;-1:-1:-1;;;13423:3:1;13408:19;13401:35;13320:3;12462:980;-1:-1:-1;;;12462:980:1:o
Swarm Source
ipfs://7d44a7e13ece30b92945fea801f1bfede3d47ac979a339a2c786034e2dcb03cc
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.