Token migration announcement. Proof of Anontoken contract has migrated to a new address.
ERC-20
Overview
Max Total Supply
7,201,096.090515424474791401 0xProof
Holders
362
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
914.917707752719344078 0xProofValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ProofOfAnon
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-06-12 */ // SPDX-License-Identifier: Unlicensed /** Proof of Anon: A toolkit that enhances anonymity and reimagines the boundaries of degens' digital interactions in DeFi. The contract has a unique dynamic burn tax that changes based on volume. It starts at 3/3 and increases by 0.5% if volume is higher. The maximum tax is 5/5, with 3% for marketing and 2% for burn. If volume is lower, tax decreases by 0.5% and can go as low as 3/3 after four consecutive hours. Socials: https://twitter.com/proofofanon https://t.me/proofofanon https://0xproof.io/ https://medium.com/@theproofproject0 **/ pragma solidity ^0.8.18; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); } contract ProofOfAnon is Context, IERC20 { IUniswapV2Router02 immutable uniswapV2Router; address immutable uniswapV2Pair; address immutable WETH; address payable immutable marketingWallet; address public _owner = msg.sender; uint8 private launch; uint8 private inSwapAndLiquify; uint256 private _totalSupply = 10_000_000e18; uint256 public maxTxAmount = 200_000e18; uint256 private constant onePercent = 100_000e18; uint256 private constant minSwap = 50_000e18; uint256 public buyTax; uint256 public sellTax; uint256 public burnRate = 100; uint256 private launchBlock; uint256 public _transactionVolumeCurrent; uint256 public _transactionVolumePrevious; uint256 public _lastBucketTime = block.timestamp; uint256 private constant _bucketDuration = 60 minutes; mapping(address => uint256) private _balance; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFeeWallet; function onlyOwner() internal view { require(_owner == msg.sender); } constructor() { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); WETH = uniswapV2Router.WETH(); buyTax = 300; sellTax = 300; uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), WETH ); marketingWallet = payable(0xc8a32b4D0602e8e624Fcf128B58F75e307898cf6); _balance[msg.sender] = _totalSupply; _isExcludedFromFeeWallet[marketingWallet] = true; _isExcludedFromFeeWallet[msg.sender] = true; _isExcludedFromFeeWallet[address(this)] = true; _allowances[address(this)][address(uniswapV2Router)] = type(uint256) .max; _allowances[msg.sender][address(uniswapV2Router)] = type(uint256).max; _allowances[marketingWallet][address(uniswapV2Router)] = type(uint256) .max; emit Transfer(address(0), _msgSender(), _totalSupply); } function name() public pure returns (string memory) { return "Proof of Anon"; } function symbol() public pure returns (string memory) { return "0xProof"; } function decimals() public pure returns (uint8) { return 18; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balance[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()] - amount ); return true; } function _approve( address owner, address spender, uint256 amount ) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function openTrading() external { onlyOwner(); launch = 1; launchBlock = block.number; } function addExcludedWallet(address wallet) external { onlyOwner(); _isExcludedFromFeeWallet[wallet] = true; } function removeLimits() external { onlyOwner(); maxTxAmount = _totalSupply; } function changeTax(uint256 newBuyTax, uint256 newSellTax, uint256 newBurnRate) external { onlyOwner(); require(newBuyTax + newSellTax + newBurnRate <= 20, "Taxes more than 20%"); buyTax = newBuyTax * 100; sellTax = newSellTax * 100; burnRate = newBurnRate * 100; } function burn(uint256 amount) external { _burn(msg.sender, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); uint256 accountBalance = _balance[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balance[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); } function _transfer( address from, address to, uint256 amount ) private { require(from != address(0), "ERC20: transfer from the zero address"); require(amount > 1e9, "Min transfer amt"); //Update current _burnRate unchecked { _transactionVolumeCurrent += amount; if (block.timestamp >= _lastBucketTime + _bucketDuration) { //If current > previous if (_transactionVolumeCurrent > _transactionVolumePrevious) { if (burnRate + 50 <= 200) { //Add 0.25% to _burnRate burnRate += 50; } //else remain at 0 until volume decreases } else { //If previous > current or previous == current if (burnRate >= 50) { //Remove 0.5% from _burnRate burnRate -= 50; } } _transactionVolumePrevious = _transactionVolumeCurrent; _transactionVolumeCurrent = 0; _lastBucketTime = block.timestamp; } } uint256 _tax; if (_isExcludedFromFeeWallet[from] || _isExcludedFromFeeWallet[to]) { _tax = 0; } else { require( launch != 0 && amount <= maxTxAmount, "Launch / Max TxAmount 1% at launch" ); if (inSwapAndLiquify == 1) { //No tax transfer _balance[from] -= amount; _balance[to] += amount; emit Transfer(from, to, amount); return; } if (from == uniswapV2Pair) { _tax = buyTax; } else if (to == uniswapV2Pair) { uint256 tokensToSwap = _balance[address(this)]; if (tokensToSwap > minSwap && inSwapAndLiquify == 0) { if (tokensToSwap > onePercent) { tokensToSwap = onePercent; } inSwapAndLiquify = 1; address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; uniswapV2Router .swapExactTokensForETHSupportingFeeOnTransferTokens( tokensToSwap, 0, path, marketingWallet, block.timestamp ); inSwapAndLiquify = 0; } _tax = sellTax; } else { _tax = 0; } } if (_tax != 0) { uint256 burnTokens = amount * burnRate / 10000; uint256 taxTokens = amount * _tax / 10000; uint256 transferAmount = amount - (burnTokens + taxTokens); _balance[from] -= amount; _balance[to] += transferAmount; _balance[address(this)] += taxTokens; _totalSupply -= burnTokens; emit Transfer(from, address(0), burnTokens); emit Transfer(from, address(this), taxTokens); emit Transfer(from, to, transferAmount); } else { //No tax transfer _balance[from] -= amount; _balance[to] += amount; emit Transfer(from, to, amount); } } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_lastBucketTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_transactionVolumeCurrent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_transactionVolumePrevious","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"addExcludedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"},{"internalType":"uint256","name":"newBurnRate","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
610100604052600080546001600160a01b031916331790556a084595161401484a000000600155692a5a058fc295ed0000006002556064600555426009553480156200004a57600080fd5b50737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c7919062000317565b6001600160a01b031660c0816001600160a01b03168152505061012c60038190555061012c6004819055506080516001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000133573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000159919062000317565b60c0516040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303816000875af1158015620001ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d1919062000317565b6001600160a01b0390811660a05273c8a32b4d0602e8e624fcf128b58f75e307898cf660e05260018054336000818152600a6020908152604080832094909455600c81527f10d996c5f832cbe9f63ac3dafc357677e8d9b85ffdc73ec2e0a3df1866c48608805460ff19908116871790915584832080548216871790553083528483208054909116909517909455600b8085528382206080519096168083529585528382206000199081905592825284528281209481529383528184208190557f4df242e2ffdbd276a09e09a5677bd79f322f93bcbd2e9142ea811abfcefcca0890925290912055620002c13390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6001546040516200030991815260200190565b60405180910390a362000349565b6000602082840312156200032a57600080fd5b81516001600160a01b03811681146200034257600080fd5b9392505050565b60805160a05160c05160e0516116df6200038a6000396000610ec301526000610e10015260008181610c4a0152610ca601526000610e8d01526116df6000f3fe6080604052600436106101795760003560e01c80638c0b5e22116100cb578063b2bdfa7b1161007f578063cc1776d311610059578063cc1776d314610453578063dba9d42014610469578063dd62ed3e1461048957600080fd5b8063b2bdfa7b146103d6578063bed9985014610428578063c9567bf91461043e57600080fd5b8063964f6d4f116100b0578063964f6d4f14610380578063974ea01e14610396578063a9059cbb146103b657600080fd5b80638c0b5e221461032457806395d89b411461033a57600080fd5b806342966c681161012d57806370a082311161010757806370a08231146102b6578063751039fc146102f957806386a711321461030e57600080fd5b806342966c68146102685780634f7041a51461028a57806365c0d0eb146102a057600080fd5b806318160ddd1161015e57806318160ddd1461020d57806323b872dd1461022c578063313ce5671461024c57600080fd5b806306fdde0314610185578063095ea7b3146101dd57600080fd5b3661018057005b600080fd5b34801561019157600080fd5b5060408051808201909152600d81527f50726f6f66206f6620416e6f6e0000000000000000000000000000000000000060208201525b6040516101d491906113b3565b60405180910390f35b3480156101e957600080fd5b506101fd6101f8366004611448565b6104dc565b60405190151581526020016101d4565b34801561021957600080fd5b506001545b6040519081526020016101d4565b34801561023857600080fd5b506101fd610247366004611472565b6104f3565b34801561025857600080fd5b50604051601281526020016101d4565b34801561027457600080fd5b506102886102833660046114ae565b610552565b005b34801561029657600080fd5b5061021e60035481565b3480156102ac57600080fd5b5061021e60075481565b3480156102c257600080fd5b5061021e6102d13660046114c7565b73ffffffffffffffffffffffffffffffffffffffff166000908152600a602052604090205490565b34801561030557600080fd5b5061028861055f565b34801561031a57600080fd5b5061021e60085481565b34801561033057600080fd5b5061021e60025481565b34801561034657600080fd5b5060408051808201909152600781527f307850726f6f660000000000000000000000000000000000000000000000000060208201526101c7565b34801561038c57600080fd5b5061021e60095481565b3480156103a257600080fd5b506102886103b13660046114e9565b61056f565b3480156103c257600080fd5b506101fd6103d1366004611448565b61062a565b3480156103e257600080fd5b506000546104039073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d4565b34801561043457600080fd5b5061021e60055481565b34801561044a57600080fd5b50610288610637565b34801561045f57600080fd5b5061021e60045481565b34801561047557600080fd5b506102886104843660046114c7565b610684565b34801561049557600080fd5b5061021e6104a4366004611515565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600b6020908152604080832093909416825291909152205490565b60006104e93384846106db565b5060015b92915050565b600061050084848461088f565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600b6020908152604080832033808552925290912054610548918691610543908690611577565b6106db565b5060019392505050565b61055c33826111a8565b50565b61056761138d565b600154600255565b61057761138d565b601481610584848661158a565b61058e919061158a565b11156105fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f5461786573206d6f7265207468616e203230250000000000000000000000000060448201526064015b60405180910390fd5b61060683606461159d565b60035561061482606461159d565b60045561062281606461159d565b600555505050565b60006104e933848461088f565b61063f61138d565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017905543600655565b61068c61138d565b73ffffffffffffffffffffffffffffffffffffffff166000908152600c6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b73ffffffffffffffffffffffffffffffffffffffff831661077d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff8216610820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff8381166000818152600b602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610932576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105f2565b633b9aca00811161099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4d696e207472616e7366657220616d740000000000000000000000000000000060448201526064016105f2565b6007805482019055600954610e10014210610a1f5760085460075411156109dc5760c8600554603201116109d7576005805460320190555b610a0f565b603260055410610a0f57600580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce0190555b6007805460085560009055426009555b73ffffffffffffffffffffffffffffffffffffffff83166000908152600c602052604081205460ff1680610a78575073ffffffffffffffffffffffffffffffffffffffff83166000908152600c602052604090205460ff165b15610a8557506000610f57565b60005474010000000000000000000000000000000000000000900460ff1615801590610ab357506002548211155b610b3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e60448201527f636800000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b6000547501000000000000000000000000000000000000000000900460ff16600103610c485773ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604081208054849290610b9a908490611577565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152600a602052604081208054849290610bd490849061158a565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610c3a91815260200190565b60405180910390a350505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610ca45750600354610f57565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f5357306000908152600a6020526040902054690a968163f0a57b40000081118015610d3c57506000547501000000000000000000000000000000000000000000900460ff16155b15610f495769152d02c7e14af6800000811115610d60575069152d02c7e14af68000005b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000017815560408051600280825260608201835290916020830190803683370190505090503081600081518110610dd457610dd46115b4565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610e4257610e426115b4565b73ffffffffffffffffffffffffffffffffffffffff92831660209182029290920101526040517f791ac9470000000000000000000000000000000000000000000000000000000081527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac94790610eed90859060009086907f00000000000000000000000000000000000000000000000000000000000000009042906004016115e3565b600060405180830381600087803b158015610f0757600080fd5b505af1158015610f1b573d6000803e3d6000fd5b5050600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1690555050505b5050600454610f57565b5060005b801561116d57600061271060055484610f70919061159d565b610f7a919061166e565b90506000612710610f8b848661159d565b610f95919061166e565b90506000610fa3828461158a565b610fad9086611577565b73ffffffffffffffffffffffffffffffffffffffff88166000908152600a6020526040812080549293508792909190610fe7908490611577565b909155505073ffffffffffffffffffffffffffffffffffffffff86166000908152600a60205260408120805483929061102190849061158a565b9091555050306000908152600a60205260408120805484929061104590849061158a565b92505081905550826001600082825461105e9190611577565b909155505060405183815260009073ffffffffffffffffffffffffffffffffffffffff8916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3604051828152309073ffffffffffffffffffffffffffffffffffffffff8916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a38573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161115d91815260200190565b60405180910390a35050506111a2565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604081208054849290610b9a908490611577565b50505050565b73ffffffffffffffffffffffffffffffffffffffff821661124b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a602052604090205481811015611301576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600a6020526040812083830390556001805484929061133d908490611577565b909155505060405182815260009073ffffffffffffffffffffffffffffffffffffffff8516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610882565b60005473ffffffffffffffffffffffffffffffffffffffff1633146113b157600080fd5b565b600060208083528351808285015260005b818110156113e0578581018301518582016040015282016113c4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461144357600080fd5b919050565b6000806040838503121561145b57600080fd5b6114648361141f565b946020939093013593505050565b60008060006060848603121561148757600080fd5b6114908461141f565b925061149e6020850161141f565b9150604084013590509250925092565b6000602082840312156114c057600080fd5b5035919050565b6000602082840312156114d957600080fd5b6114e28261141f565b9392505050565b6000806000606084860312156114fe57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561152857600080fd5b6115318361141f565b915061153f6020840161141f565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156104ed576104ed611548565b808201808211156104ed576104ed611548565b80820281158282048414176104ed576104ed611548565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561164057845173ffffffffffffffffffffffffffffffffffffffff168352938301939183019160010161160e565b505073ffffffffffffffffffffffffffffffffffffffff969096166060850152505050608001529392505050565b6000826116a4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea26469706673582212209ebeca8f486db9c2e0e8645ebcaccb9dd3cba7825fc25e48c7f2135a66aa07ad64736f6c63430008120033
Deployed Bytecode
0x6080604052600436106101795760003560e01c80638c0b5e22116100cb578063b2bdfa7b1161007f578063cc1776d311610059578063cc1776d314610453578063dba9d42014610469578063dd62ed3e1461048957600080fd5b8063b2bdfa7b146103d6578063bed9985014610428578063c9567bf91461043e57600080fd5b8063964f6d4f116100b0578063964f6d4f14610380578063974ea01e14610396578063a9059cbb146103b657600080fd5b80638c0b5e221461032457806395d89b411461033a57600080fd5b806342966c681161012d57806370a082311161010757806370a08231146102b6578063751039fc146102f957806386a711321461030e57600080fd5b806342966c68146102685780634f7041a51461028a57806365c0d0eb146102a057600080fd5b806318160ddd1161015e57806318160ddd1461020d57806323b872dd1461022c578063313ce5671461024c57600080fd5b806306fdde0314610185578063095ea7b3146101dd57600080fd5b3661018057005b600080fd5b34801561019157600080fd5b5060408051808201909152600d81527f50726f6f66206f6620416e6f6e0000000000000000000000000000000000000060208201525b6040516101d491906113b3565b60405180910390f35b3480156101e957600080fd5b506101fd6101f8366004611448565b6104dc565b60405190151581526020016101d4565b34801561021957600080fd5b506001545b6040519081526020016101d4565b34801561023857600080fd5b506101fd610247366004611472565b6104f3565b34801561025857600080fd5b50604051601281526020016101d4565b34801561027457600080fd5b506102886102833660046114ae565b610552565b005b34801561029657600080fd5b5061021e60035481565b3480156102ac57600080fd5b5061021e60075481565b3480156102c257600080fd5b5061021e6102d13660046114c7565b73ffffffffffffffffffffffffffffffffffffffff166000908152600a602052604090205490565b34801561030557600080fd5b5061028861055f565b34801561031a57600080fd5b5061021e60085481565b34801561033057600080fd5b5061021e60025481565b34801561034657600080fd5b5060408051808201909152600781527f307850726f6f660000000000000000000000000000000000000000000000000060208201526101c7565b34801561038c57600080fd5b5061021e60095481565b3480156103a257600080fd5b506102886103b13660046114e9565b61056f565b3480156103c257600080fd5b506101fd6103d1366004611448565b61062a565b3480156103e257600080fd5b506000546104039073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d4565b34801561043457600080fd5b5061021e60055481565b34801561044a57600080fd5b50610288610637565b34801561045f57600080fd5b5061021e60045481565b34801561047557600080fd5b506102886104843660046114c7565b610684565b34801561049557600080fd5b5061021e6104a4366004611515565b73ffffffffffffffffffffffffffffffffffffffff9182166000908152600b6020908152604080832093909416825291909152205490565b60006104e93384846106db565b5060015b92915050565b600061050084848461088f565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600b6020908152604080832033808552925290912054610548918691610543908690611577565b6106db565b5060019392505050565b61055c33826111a8565b50565b61056761138d565b600154600255565b61057761138d565b601481610584848661158a565b61058e919061158a565b11156105fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f5461786573206d6f7265207468616e203230250000000000000000000000000060448201526064015b60405180910390fd5b61060683606461159d565b60035561061482606461159d565b60045561062281606461159d565b600555505050565b60006104e933848461088f565b61063f61138d565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017905543600655565b61068c61138d565b73ffffffffffffffffffffffffffffffffffffffff166000908152600c6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b73ffffffffffffffffffffffffffffffffffffffff831661077d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff8216610820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff8381166000818152600b602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610932576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105f2565b633b9aca00811161099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4d696e207472616e7366657220616d740000000000000000000000000000000060448201526064016105f2565b6007805482019055600954610e10014210610a1f5760085460075411156109dc5760c8600554603201116109d7576005805460320190555b610a0f565b603260055410610a0f57600580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce0190555b6007805460085560009055426009555b73ffffffffffffffffffffffffffffffffffffffff83166000908152600c602052604081205460ff1680610a78575073ffffffffffffffffffffffffffffffffffffffff83166000908152600c602052604090205460ff165b15610a8557506000610f57565b60005474010000000000000000000000000000000000000000900460ff1615801590610ab357506002548211155b610b3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e60448201527f636800000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b6000547501000000000000000000000000000000000000000000900460ff16600103610c485773ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604081208054849290610b9a908490611577565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152600a602052604081208054849290610bd490849061158a565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610c3a91815260200190565b60405180910390a350505050565b7f0000000000000000000000007bbdd2d776112c302644c9715b9babb81a8ad27473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610ca45750600354610f57565b7f0000000000000000000000007bbdd2d776112c302644c9715b9babb81a8ad27473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f5357306000908152600a6020526040902054690a968163f0a57b40000081118015610d3c57506000547501000000000000000000000000000000000000000000900460ff16155b15610f495769152d02c7e14af6800000811115610d60575069152d02c7e14af68000005b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000017815560408051600280825260608201835290916020830190803683370190505090503081600081518110610dd457610dd46115b4565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610e4257610e426115b4565b73ffffffffffffffffffffffffffffffffffffffff92831660209182029290920101526040517f791ac9470000000000000000000000000000000000000000000000000000000081527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac94790610eed90859060009086907f000000000000000000000000c8a32b4d0602e8e624fcf128b58f75e307898cf69042906004016115e3565b600060405180830381600087803b158015610f0757600080fd5b505af1158015610f1b573d6000803e3d6000fd5b5050600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1690555050505b5050600454610f57565b5060005b801561116d57600061271060055484610f70919061159d565b610f7a919061166e565b90506000612710610f8b848661159d565b610f95919061166e565b90506000610fa3828461158a565b610fad9086611577565b73ffffffffffffffffffffffffffffffffffffffff88166000908152600a6020526040812080549293508792909190610fe7908490611577565b909155505073ffffffffffffffffffffffffffffffffffffffff86166000908152600a60205260408120805483929061102190849061158a565b9091555050306000908152600a60205260408120805484929061104590849061158a565b92505081905550826001600082825461105e9190611577565b909155505060405183815260009073ffffffffffffffffffffffffffffffffffffffff8916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3604051828152309073ffffffffffffffffffffffffffffffffffffffff8916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a38573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161115d91815260200190565b60405180910390a35050506111a2565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600a602052604081208054849290610b9a908490611577565b50505050565b73ffffffffffffffffffffffffffffffffffffffff821661124b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600a602052604090205481811015611301576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105f2565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600a6020526040812083830390556001805484929061133d908490611577565b909155505060405182815260009073ffffffffffffffffffffffffffffffffffffffff8516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610882565b60005473ffffffffffffffffffffffffffffffffffffffff1633146113b157600080fd5b565b600060208083528351808285015260005b818110156113e0578581018301518582016040015282016113c4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461144357600080fd5b919050565b6000806040838503121561145b57600080fd5b6114648361141f565b946020939093013593505050565b60008060006060848603121561148757600080fd5b6114908461141f565b925061149e6020850161141f565b9150604084013590509250925092565b6000602082840312156114c057600080fd5b5035919050565b6000602082840312156114d957600080fd5b6114e28261141f565b9392505050565b6000806000606084860312156114fe57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561152857600080fd5b6115318361141f565b915061153f6020840161141f565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156104ed576104ed611548565b808201808211156104ed576104ed611548565b80820281158282048414176104ed576104ed611548565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561164057845173ffffffffffffffffffffffffffffffffffffffff168352938301939183019160010161160e565b505073ffffffffffffffffffffffffffffffffffffffff969096166060850152505050608001529392505050565b6000826116a4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea26469706673582212209ebeca8f486db9c2e0e8645ebcaccb9dd3cba7825fc25e48c7f2135a66aa07ad64736f6c63430008120033
Deployed Bytecode Sourcemap
2144:8988:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4330:93;;;;;;;;;;-1:-1:-1;4393:22:0;;;;;;;;;;;;;;;;;4330:93;;;;;;;:::i;:::-;;;;;;;;5245:193;;;;;;;;;;-1:-1:-1;5245:193:0;;;;;:::i;:::-;;:::i;:::-;;;1251:14:1;;1244:22;1226:41;;1214:2;1199:18;5245:193:0;1086:187:1;4612:100:0;;;;;;;;;;-1:-1:-1;4692:12:0;;4612:100;;;1424:25:1;;;1412:2;1397:18;4612:100:0;1278:177:1;5446:350:0;;;;;;;;;;-1:-1:-1;5446:350:0;;;;;:::i;:::-;;:::i;4528:76::-;;;;;;;;;;-1:-1:-1;4528:76:0;;4594:2;1935:36:1;;1923:2;1908:18;4528:76:0;1793:184:1;6905:83:0;;;;;;;;;;-1:-1:-1;6905:83:0;;;;;:::i;:::-;;:::i;:::-;;2687:21;;;;;;;;;;;;;;;;2820:40;;;;;;;;;;;;;;;;4720:118;;;;;;;;;;-1:-1:-1;4720:118:0;;;;;:::i;:::-;4813:17;;4786:7;4813:17;;;:8;:17;;;;;;;4720:118;6450:101;;;;;;;;;;;;;:::i;2867:41::-;;;;;;;;;;;;;;;;2524:39;;;;;;;;;;;;;;;;4431:89;;;;;;;;;;-1:-1:-1;4496:16:0;;;;;;;;;;;;;;;;;4431:89;;2915:48;;;;;;;;;;;;;;;;6559:338;;;;;;;;;;-1:-1:-1;6559:338:0;;;;;:::i;:::-;;:::i;4846:199::-;;;;;;;;;;-1:-1:-1;4846:199:0;;;;;:::i;:::-;;:::i;2359:34::-;;;;;;;;;;-1:-1:-1;2359:34:0;;;;;;;;;;;2855:42:1;2843:55;;;2825:74;;2813:2;2798:18;2359:34:0;2679:226:1;2744:29:0;;;;;;;;;;;;;;;;6181:121;;;;;;;;;;;;;:::i;2715:22::-;;;;;;;;;;;;;;;;6310:132;;;;;;;;;;-1:-1:-1;6310:132:0;;;;;:::i;:::-;;:::i;5053:184::-;;;;;;;;;;-1:-1:-1;5053:184:0;;;;;:::i;:::-;5202:18;;;;5170:7;5202:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5053:184;5245:193;5347:4;5369:39;799:10;5392:7;5401:6;5369:8;:39::i;:::-;-1:-1:-1;5426:4:0;5245:193;;;;;:::o;5446:350::-;5578:4;5595:36;5605:6;5613:9;5624:6;5595:9;:36::i;:::-;5713:19;;;;;;;:11;:19;;;;;;;;799:10;5713:33;;;;;;;;;5642:124;;5665:6;;5713:42;;5749:6;;5713:42;:::i;:::-;5642:8;:124::i;:::-;-1:-1:-1;5784:4:0;5446:350;;;;;:::o;6905:83::-;6955:25;6961:10;6973:6;6955:5;:25::i;:::-;6905:83;:::o;6450:101::-;6495:11;:9;:11::i;:::-;6531:12;;6517:11;:26;6450:101::o;6559:338::-;6682:11;:9;:11::i;:::-;6752:2;6737:11;6712:22;6724:10;6712:9;:22;:::i;:::-;:36;;;;:::i;:::-;:42;;6704:74;;;;;;;3829:2:1;6704:74:0;;;3811:21:1;3868:2;3848:18;;;3841:30;3907:21;3887:18;;;3880:49;3946:18;;6704:74:0;;;;;;;;;6798:15;:9;6810:3;6798:15;:::i;:::-;6789:6;:24;6834:16;:10;6847:3;6834:16;:::i;:::-;6824:7;:26;6872:17;:11;6886:3;6872:17;:::i;:::-;6861:8;:28;-1:-1:-1;;;6559:338:0:o;4846:199::-;4951:4;4973:42;799:10;4997:9;5008:6;4973:9;:42::i;6181:121::-;6225:11;:9;:11::i;:::-;6247:6;:10;;;;;;;;6282:12;6268:11;:26;6181:121::o;6310:132::-;6373:11;:9;:11::i;:::-;6395:32;;;;;;:24;:32;;;;;:39;;;;6430:4;6395:39;;;6310:132::o;5804:369::-;5931:19;;;5923:68;;;;;;;4350:2:1;5923:68:0;;;4332:21:1;4389:2;4369:18;;;4362:30;4428:34;4408:18;;;4401:62;4499:6;4479:18;;;4472:34;4523:19;;5923:68:0;4148:400:1;5923:68:0;6010:21;;;6002:68;;;;;;;4755:2:1;6002:68:0;;;4737:21:1;4794:2;4774:18;;;4767:30;4833:34;4813:18;;;4806:62;4904:4;4884:18;;;4877:32;4926:19;;6002:68:0;4553:398:1;6002:68:0;6081:18;;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6133:32;;1424:25:1;;;6133:32:0;;1397:18:1;6133:32:0;;;;;;;;5804:369;;;:::o;7470:3622::-;7592:18;;;7584:68;;;;;;;5158:2:1;7584:68:0;;;5140:21:1;5197:2;5177:18;;;5170:30;5236:34;5216:18;;;5209:62;5307:7;5287:18;;;5280:35;5332:19;;7584:68:0;4956:401:1;7584:68:0;7680:3;7671:6;:12;7663:41;;;;;;;5564:2:1;7663:41:0;;;5546:21:1;5603:2;5583:18;;;5576:30;5642:18;5622;;;5615:46;5678:18;;7663:41:0;5362:340:1;7663:41:0;7771:25;:35;;;;;;7844:15;;3013:10;7844:33;7825:15;:52;7821:861;;7971:26;;7943:25;;:54;7939:555;;;8043:3;8026:8;;8037:2;8026:13;:20;8022:141;;8125:8;:14;;8137:2;8125:14;;;8022:141;7939:555;;;8330:2;8318:8;;:14;8314:139;;8415:8;:14;;;;;;8314:139;8541:25;;;8512:26;:54;-1:-1:-1;8585:29:0;;8651:15;8633;:33;7821:861;8733:30;;;8706:12;8733:30;;;:24;:30;;;;;;;;;:62;;-1:-1:-1;8767:28:0;;;;;;;:24;:28;;;;;;;;8733:62;8729:1602;;;-1:-1:-1;8819:1:0;8729:1602;;;8879:6;;;;;;;:11;;;;:36;;;8904:11;;8894:6;:21;;8879:36;8853:132;;;;;;;5909:2:1;8853:132:0;;;5891:21:1;5948:2;5928:18;;;5921:30;5987:34;5967:18;;;5960:62;6058:4;6038:18;;;6031:32;6080:19;;8853:132:0;5707:398:1;8853:132:0;9006:16;;;;;;;9026:1;9006:21;9002:237;;9083:14;;;;;;;:8;:14;;;;;:24;;9101:6;;9083:14;:24;;9101:6;;9083:24;:::i;:::-;;;;-1:-1:-1;;9126:12:0;;;;;;;:8;:12;;;;;:22;;9142:6;;9126:12;:22;;9142:6;;9126:22;:::i;:::-;;;;;;;;9187:2;9172:26;;9181:4;9172:26;;;9191:6;9172:26;;;;1424:25:1;;1412:2;1397:18;;1278:177;9172:26:0;;;;;;;;9217:7;7470:3622;;;:::o;9002:237::-;9267:13;9259:21;;:4;:21;;;9255:1065;;-1:-1:-1;9308:6:0;;9255:1065;;;9346:13;9340:19;;:2;:19;;;9336:984;;9420:4;9380:20;9403:23;;;:8;:23;;;;;;2669:9;9449:22;;:47;;;;-1:-1:-1;9475:16:0;;;;;;;:21;9449:47;9445:778;;;2610:10;9525:12;:25;9521:107;;;-1:-1:-1;2610:10:0;9521:107;9650:16;:20;;;;;;;;9717:16;;;9731:1;9717:16;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9717:16:0;9693:40;;9774:4;9756;9761:1;9756:7;;;;;;;;:::i;:::-;;;;;;:23;;;;;;;;;;;9812:4;9802;9807:1;9802:7;;;;;;;;:::i;:::-;:14;;;;:7;;;;;;;;;:14;9839:321;;;;;:15;:92;;;;;;:321;;9962:12;;10005:1;;10037:4;;10072:15;;10118;;9839:321;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10202:1:0;10183:20;;;;;;-1:-1:-1;;;9445:778:0;-1:-1:-1;;10248:7:0;;9336:984;;;-1:-1:-1;10303:1:0;9336:984;10349:9;;10345:740;;10375:18;10416:5;10405:8;;10396:6;:17;;;;:::i;:::-;:25;;;;:::i;:::-;10375:46;-1:-1:-1;10436:17:0;10472:5;10456:13;10465:4;10456:6;:13;:::i;:::-;:21;;;;:::i;:::-;10436:41;-1:-1:-1;10492:22:0;10527;10436:41;10527:10;:22;:::i;:::-;10517:33;;:6;:33;:::i;:::-;10567:14;;;;;;;:8;:14;;;;;:24;;10492:58;;-1:-1:-1;10585:6:0;;10567:14;;;:24;;10585:6;;10567:24;:::i;:::-;;;;-1:-1:-1;;10606:12:0;;;;;;;:8;:12;;;;;:30;;10622:14;;10606:12;:30;;10622:14;;10606:30;:::i;:::-;;;;-1:-1:-1;;10668:4:0;10651:23;;;;:8;:23;;;;;:36;;10678:9;;10651:23;:36;;10678:9;;10651:36;:::i;:::-;;;;;;;;10718:10;10702:12;;:26;;;;;;;:::i;:::-;;;;-1:-1:-1;;10748:38:0;;1424:25:1;;;10771:1:0;;10748:38;;;;;;1412:2:1;1397:18;10748:38:0;;;;;;;10806:40;;1424:25:1;;;10829:4:0;;10806:40;;;;;;1412:2:1;1397:18;10806:40:0;;;;;;;10881:2;10866:34;;10875:4;10866:34;;;10885:14;10866:34;;;;1424:25:1;;1412:2;1397:18;;1278:177;10866:34:0;;;;;;;;10360:552;;;10345:740;;;10964:14;;;;;;;:8;:14;;;;;:24;;10982:6;;10964:14;:24;;10982:6;;10964:24;:::i;10345:740::-;7573:3519;7470:3622;;;:::o;6996:466::-;7080:21;;;7072:67;;;;;;;8008:2:1;7072:67:0;;;7990:21:1;8047:2;8027:18;;;8020:30;8086:34;8066:18;;;8059:62;8157:3;8137:18;;;8130:31;8178:19;;7072:67:0;7806:397:1;7072:67:0;7177:17;;;7152:22;7177:17;;;:8;:17;;;;;;7213:24;;;;7205:71;;;;;;;8410:2:1;7205:71:0;;;8392:21:1;8449:2;8429:18;;;8422:30;8488:34;8468:18;;;8461:62;8559:4;8539:18;;;8532:32;8581:19;;7205:71:0;8208:398:1;7205:71:0;7312:17;;;;;;;:8;:17;;;;;7332:23;;;7312:43;;7377:12;:22;;7349:6;;7312:17;7377:22;;7349:6;;7377:22;:::i;:::-;;;;-1:-1:-1;;7417:37:0;;1424:25:1;;;7443:1:0;;7417:37;;;;;;1412:2:1;1397:18;7417:37:0;1278:177:1;3223:83:0;3277:6;;:20;:6;3287:10;3277:20;3269:29;;;;;;3223:83::o;14:607:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;612:2;542:66;537:2;529:6;525:15;521:88;510:9;506:104;502:113;494:121;;;;14:607;;;;:::o;626:196::-;694:20;;754:42;743:54;;733:65;;723:93;;812:1;809;802:12;723:93;626:196;;;:::o;827:254::-;895:6;903;956:2;944:9;935:7;931:23;927:32;924:52;;;972:1;969;962:12;924:52;995:29;1014:9;995:29;:::i;:::-;985:39;1071:2;1056:18;;;;1043:32;;-1:-1:-1;;;827:254:1:o;1460:328::-;1537:6;1545;1553;1606:2;1594:9;1585:7;1581:23;1577:32;1574:52;;;1622:1;1619;1612:12;1574:52;1645:29;1664:9;1645:29;:::i;:::-;1635:39;;1693:38;1727:2;1716:9;1712:18;1693:38;:::i;:::-;1683:48;;1778:2;1767:9;1763:18;1750:32;1740:42;;1460:328;;;;;:::o;1982:180::-;2041:6;2094:2;2082:9;2073:7;2069:23;2065:32;2062:52;;;2110:1;2107;2100:12;2062:52;-1:-1:-1;2133:23:1;;1982:180;-1:-1:-1;1982:180:1:o;2167:186::-;2226:6;2279:2;2267:9;2258:7;2254:23;2250:32;2247:52;;;2295:1;2292;2285:12;2247:52;2318:29;2337:9;2318:29;:::i;:::-;2308:39;2167:186;-1:-1:-1;;;2167:186:1:o;2358:316::-;2435:6;2443;2451;2504:2;2492:9;2483:7;2479:23;2475:32;2472:52;;;2520:1;2517;2510:12;2472:52;-1:-1:-1;;2543:23:1;;;2613:2;2598:18;;2585:32;;-1:-1:-1;2664:2:1;2649:18;;;2636:32;;2358:316;-1:-1:-1;2358:316:1:o;2910:260::-;2978:6;2986;3039:2;3027:9;3018:7;3014:23;3010:32;3007:52;;;3055:1;3052;3045:12;3007:52;3078:29;3097:9;3078:29;:::i;:::-;3068:39;;3126:38;3160:2;3149:9;3145:18;3126:38;:::i;:::-;3116:48;;2910:260;;;;;:::o;3175:184::-;3227:77;3224:1;3217:88;3324:4;3321:1;3314:15;3348:4;3345:1;3338:15;3364:128;3431:9;;;3452:11;;;3449:37;;;3466:18;;:::i;3497:125::-;3562:9;;;3583:10;;;3580:36;;;3596:18;;:::i;3975:168::-;4048:9;;;4079;;4096:15;;;4090:22;;4076:37;4066:71;;4117:18;;:::i;6299:184::-;6351:77;6348:1;6341:88;6448:4;6445:1;6438:15;6472:4;6469:1;6462:15;6488:1034;6758:4;6806:3;6795:9;6791:19;6837:6;6826:9;6819:25;6863:2;6901:6;6896:2;6885:9;6881:18;6874:34;6944:3;6939:2;6928:9;6924:18;6917:31;6968:6;7003;6997:13;7034:6;7026;7019:22;7072:3;7061:9;7057:19;7050:26;;7111:2;7103:6;7099:15;7085:29;;7132:1;7142:218;7156:6;7153:1;7150:13;7142:218;;;7221:13;;7236:42;7217:62;7205:75;;7335:15;;;;7300:12;;;;7178:1;7171:9;7142:218;;;-1:-1:-1;;7428:42:1;7416:55;;;;7411:2;7396:18;;7389:83;-1:-1:-1;;;7503:3:1;7488:19;7481:35;7377:3;6488:1034;-1:-1:-1;;;6488:1034:1:o;7527:274::-;7567:1;7593;7583:189;;7628:77;7625:1;7618:88;7729:4;7726:1;7719:15;7757:4;7754:1;7747:15;7583:189;-1:-1:-1;7786:9:1;;7527:274::o
Swarm Source
ipfs://9ebeca8f486db9c2e0e8645ebcaccb9dd3cba7825fc25e48c7f2135a66aa07ad
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.