ERC-20
Security
Overview
Max Total Supply
100,000,000 LSS
Holders
7,965 ( 0.013%)
Market
Price
$0.07 @ 0.000020 ETH (+23.91%)
Onchain Market Cap
$6,827,711.47
Circulating Supply Market Cap
$3,794,341.70
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
LERC20
Compiler Version
v0.8.0+commit.c7dfd78e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-05-26 */ //SPDX-License-Identifier: Unlicense pragma solidity ^0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface ILosslessController { function beforeTransfer(address sender, address recipient, uint256 amount) external; function beforeTransferFrom(address msgSender, address sender, address recipient, uint256 amount) external; function beforeApprove(address sender, address spender, uint256 amount) external; function beforeIncreaseAllowance(address msgSender, address spender, uint256 addedValue) external; function beforeDecreaseAllowance(address msgSender, address spender, uint256 subtractedValue) external; function afterApprove(address sender, address spender, uint256 amount) external; function afterTransfer(address sender, address recipient, uint256 amount) external; function afterTransferFrom(address msgSender, address sender, address recipient, uint256 amount) external; function afterIncreaseAllowance(address sender, address spender, uint256 addedValue) external; function afterDecreaseAllowance(address sender, address spender, uint256 subtractedValue) external; } contract LERC20 is Context, IERC20 { mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; address public recoveryAdmin; address private recoveryAdminCanditate; bytes32 private recoveryAdminKeyHash; address public admin; uint256 public timelockPeriod; uint256 public losslessTurnOffTimestamp; bool public isLosslessTurnOffProposed; bool public isLosslessOn = true; ILosslessController private lossless; event AdminChanged(address indexed previousAdmin, address indexed newAdmin); event RecoveryAdminChangeProposed(address indexed candidate); event RecoveryAdminChanged(address indexed previousAdmin, address indexed newAdmin); event LosslessTurnOffProposed(uint256 turnOffDate); event LosslessTurnedOff(); event LosslessTurnedOn(); constructor(uint256 totalSupply_, string memory name_, string memory symbol_, address admin_, address recoveryAdmin_, uint256 timelockPeriod_, address lossless_) { _mint(_msgSender(), totalSupply_); _name = name_; _symbol = symbol_; admin = admin_; recoveryAdmin = recoveryAdmin_; timelockPeriod = timelockPeriod_; lossless = ILosslessController(lossless_); } // --- LOSSLESS modifiers --- modifier lssAprove(address spender, uint256 amount) { if (isLosslessOn) { lossless.beforeApprove(_msgSender(), spender, amount); _; lossless.afterApprove(_msgSender(), spender, amount); } else { _; } } modifier lssTransfer(address recipient, uint256 amount) { if (isLosslessOn) { lossless.beforeTransfer(_msgSender(), recipient, amount); _; lossless.afterTransfer(_msgSender(), recipient, amount); } else { _; } } modifier lssTransferFrom(address sender, address recipient, uint256 amount) { if (isLosslessOn) { lossless.beforeTransferFrom(_msgSender(),sender, recipient, amount); _; lossless.afterTransferFrom(_msgSender(), sender, recipient, amount); } else { _; } } modifier lssIncreaseAllowance(address spender, uint256 addedValue) { if (isLosslessOn) { lossless.beforeIncreaseAllowance(_msgSender(), spender, addedValue); _; lossless.afterIncreaseAllowance(_msgSender(), spender, addedValue); } else { _; } } modifier lssDecreaseAllowance(address spender, uint256 subtractedValue) { if (isLosslessOn) { lossless.beforeDecreaseAllowance(_msgSender(), spender, subtractedValue); _; lossless.afterDecreaseAllowance(_msgSender(), spender, subtractedValue); } else { _; } } modifier onlyRecoveryAdmin() { require(_msgSender() == recoveryAdmin, "LERC20: Must be recovery admin"); _; } // --- LOSSLESS management --- function getAdmin() external view returns (address) { return admin; } function transferOutBlacklistedFunds(address[] calldata from) external { require(_msgSender() == address(lossless), "LERC20: Only lossless contract"); for (uint i = 0; i < from.length; i++) { _transfer(from[i], address(lossless), balanceOf(from[i])); } } function setLosslessAdmin(address newAdmin) public onlyRecoveryAdmin { emit AdminChanged(admin, newAdmin); admin = newAdmin; } function transferRecoveryAdminOwnership(address candidate, bytes32 keyHash) public onlyRecoveryAdmin { recoveryAdminCanditate = candidate; recoveryAdminKeyHash = keyHash; emit RecoveryAdminChangeProposed(candidate); } function acceptRecoveryAdminOwnership(bytes memory key) external { require(_msgSender() == recoveryAdminCanditate, "LERC20: Must be canditate"); require(keccak256(key) == recoveryAdminKeyHash, "LERC20: Invalid key"); emit RecoveryAdminChanged(recoveryAdmin, recoveryAdminCanditate); recoveryAdmin = recoveryAdminCanditate; } function proposeLosslessTurnOff() public onlyRecoveryAdmin { losslessTurnOffTimestamp = block.timestamp + timelockPeriod; isLosslessTurnOffProposed = true; emit LosslessTurnOffProposed(losslessTurnOffTimestamp); } function executeLosslessTurnOff() public onlyRecoveryAdmin { require(isLosslessTurnOffProposed, "LERC20: TurnOff not proposed"); require(losslessTurnOffTimestamp <= block.timestamp, "LERC20: Time lock in progress"); isLosslessOn = false; isLosslessTurnOffProposed = false; emit LosslessTurnedOff(); } function executeLosslessTurnOn() public onlyRecoveryAdmin { isLosslessTurnOffProposed = false; isLosslessOn = true; emit LosslessTurnedOn(); } // --- ERC20 methods --- function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return 18; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override lssTransfer(recipient, amount) returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override lssAprove(spender, amount) returns (bool) { require((amount == 0) || (_allowances[_msgSender()][spender] == 0), "LERC20: Cannot change non zero allowance"); _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual override lssTransferFrom(sender, recipient, amount) returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "LERC20: transfer amount exceeds allowance"); _approve(sender, _msgSender(), currentAllowance - amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual lssIncreaseAllowance(spender, addedValue) returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual lssDecreaseAllowance(spender, subtractedValue) returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "LERC20: decreased allowance below zero"); _approve(_msgSender(), spender, currentAllowance - subtractedValue); return true; } function _transfer(address sender, address recipient, uint256 amount) internal virtual { require(sender != address(0), "LERC20: transfer from the zero address"); require(recipient != address(0), "LERC20: transfer to the zero address"); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "LERC20: transfer amount exceeds balance"); _balances[sender] = senderBalance - amount; _balances[recipient] += amount; emit Transfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "LERC20: mint to the zero address"); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "LERC20: approve from the zero address"); require(spender != address(0), "LERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"recoveryAdmin_","type":"address"},{"internalType":"uint256","name":"timelockPeriod_","type":"uint256"},{"internalType":"address","name":"lossless_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"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":false,"internalType":"uint256","name":"turnOffDate","type":"uint256"}],"name":"LosslessTurnOffProposed","type":"event"},{"anonymous":false,"inputs":[],"name":"LosslessTurnedOff","type":"event"},{"anonymous":false,"inputs":[],"name":"LosslessTurnedOn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"candidate","type":"address"}],"name":"RecoveryAdminChangeProposed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"}],"name":"RecoveryAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"bytes","name":"key","type":"bytes"}],"name":"acceptRecoveryAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"executeLosslessTurnOff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"executeLosslessTurnOn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"isLosslessOn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isLosslessTurnOffProposed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"losslessTurnOffTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proposeLosslessTurnOff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recoveryAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setLosslessAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timelockPeriod","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"from","type":"address[]"}],"name":"transferOutBlacklistedFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"candidate","type":"address"},{"internalType":"bytes32","name":"keyHash","type":"bytes32"}],"name":"transferRecoveryAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526001600b60016101000a81548160ff0219169083151502179055503480156200002c57600080fd5b506040516200388938038062003889833981810160405281019062000052919062000425565b62000073620000666200017c60201b60201c565b886200018460201b60201c565b85600390805190602001906200008b929190620002d5565b508460049080519060200190620000a4929190620002d5565b5083600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160098190555080600b60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050505050620007d6565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001f7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001ee9062000557565b60405180910390fd5b80600260008282546200020b91906200060e565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200026291906200060e565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002c9919062000579565b60405180910390a35050565b828054620002e390620006df565b90600052602060002090601f01602090048101928262000307576000855562000353565b82601f106200032257805160ff191683800117855562000353565b8280016001018555821562000353579182015b828111156200035257825182559160200191906001019062000335565b5b50905062000362919062000366565b5090565b5b808211156200038157600081600090555060010162000367565b5090565b60006200039c6200039684620005ca565b62000596565b905082815260208101848484011115620003b557600080fd5b620003c2848285620006a9565b509392505050565b600081519050620003db81620007a2565b92915050565b600082601f830112620003f357600080fd5b81516200040584826020860162000385565b91505092915050565b6000815190506200041f81620007bc565b92915050565b600080600080600080600060e0888a0312156200044157600080fd5b6000620004518a828b016200040e565b975050602088015167ffffffffffffffff8111156200046f57600080fd5b6200047d8a828b01620003e1565b965050604088015167ffffffffffffffff8111156200049b57600080fd5b620004a98a828b01620003e1565b9550506060620004bc8a828b01620003ca565b9450506080620004cf8a828b01620003ca565b93505060a0620004e28a828b016200040e565b92505060c0620004f58a828b01620003ca565b91505092959891949750929550565b600062000513602083620005fd565b91507f4c45524332303a206d696e7420746f20746865207a65726f20616464726573736000830152602082019050919050565b62000551816200069f565b82525050565b60006020820190508181036000830152620005728162000504565b9050919050565b600060208201905062000590600083018462000546565b92915050565b6000604051905081810181811067ffffffffffffffff82111715620005c057620005bf62000773565b5b8060405250919050565b600067ffffffffffffffff821115620005e857620005e762000773565b5b601f19601f8301169050602081019050919050565b600082825260208201905092915050565b60006200061b826200069f565b915062000628836200069f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000660576200065f62000715565b5b828201905092915050565b600062000678826200067f565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015620006c9578082015181840152602081019050620006ac565b83811115620006d9576000848401525b50505050565b60006002820490506001821680620006f857607f821691505b602082108114156200070f576200070e62000744565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620007ad816200066b565b8114620007b957600080fd5b50565b620007c7816200069f565b8114620007d357600080fd5b50565b6130a380620007e66000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c806370a08231116100de578063b38fe95711610097578063d6e242b811610071578063d6e242b81461042a578063dd62ed3e14610434578063efab831c14610464578063f851a4401461048257610173565b8063b38fe957146103e6578063b5c22877146103f0578063ccfa214f1461040c57610173565b806370a082311461030057806393310ffe14610330578063936af9111461034c57806395d89b4114610368578063a457c2d714610386578063a9059cbb146103b657610173565b8063313ce56711610130578063313ce5671461024e578063395093511461026c5780635b8a194a1461029c5780635f6529a3146102a657806361086b00146102c45780636e9960c3146102e257610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c657806323b872dd146101e45780632baa3c9e146102145780632ecaf67514610230575b600080fd5b6101806104a0565b60405161018d9190612b4f565b60405180910390f35b6101b060048036038101906101ab91906124b6565b610532565b6040516101bd9190612b34565b60405180910390f35b6101ce610857565b6040516101db9190612d31565b60405180910390f35b6101fe60048036038101906101f9919061242b565b610861565b60405161020b9190612b34565b60405180910390f35b61022e600480360381019061022991906123c6565b610baf565b005b610238610d06565b6040516102459190612d31565b60405180910390f35b610256610d0c565b6040516102639190612d4c565b60405180910390f35b610286600480360381019061028191906124b6565b610d15565b6040516102939190612b34565b60405180910390f35b6102a4610fb4565b005b6102ae6110af565b6040516102bb9190612a9d565b60405180910390f35b6102cc6110d5565b6040516102d99190612d31565b60405180910390f35b6102ea6110db565b6040516102f79190612a9d565b60405180910390f35b61031a600480360381019061031591906123c6565b611105565b6040516103279190612d31565b60405180910390f35b61034a6004803603810190610345919061247a565b61114d565b005b610366600480360381019061036191906124f2565b611273565b005b6103706113ff565b60405161037d9190612b4f565b60405180910390f35b6103a0600480360381019061039b91906124b6565b611491565b6040516103ad9190612b34565b60405180910390f35b6103d060048036038101906103cb91906124b6565b6117c2565b6040516103dd9190612b34565b60405180910390f35b6103ee611945565b005b61040a60048036038101906104059190612537565b611ad4565b005b610414611cba565b6040516104219190612b34565b60405180910390f35b610432611ccd565b005b61044e600480360381019061044991906123ef565b611dce565b60405161045b9190612d31565b60405180910390f35b61046c611e55565b6040516104799190612b34565b60405180910390f35b61048a611e68565b6040516104979190612a9d565b60405180910390f35b6060600380546104af90612f0f565b80601f01602080910402602001604051908101604052809291908181526020018280546104db90612f0f565b80156105285780601f106104fd57610100808354040283529160200191610528565b820191906000526020600020905b81548152906001019060200180831161050b57829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff161561076757600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166347abf3be610591611e8e565b84846040518463ffffffff1660e01b81526004016105b193929190612afd565b600060405180830381600087803b1580156105cb57600080fd5b505af11580156105df573d6000803e3d6000fd5b50505050600084148061067557506000600160006105fb611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b6106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90612cb1565b60405180910390fd5b6106c66106bf611e8e565b8686611e96565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663900f66ef610710611e8e565b84846040518463ffffffff1660e01b815260040161073093929190612afd565b600060405180830381600087803b15801561074a57600080fd5b505af115801561075e573d6000803e3d6000fd5b5050505061084f565b60008414806107f9575060006001600061077f611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b610838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082f90612cb1565b60405180910390fd5b61084a610843611e8e565b8686611e96565b600192505b505092915050565b6000600254905090565b6000838383600b60019054906101000a900460ff1615610aac57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663379f5c696108c1611e8e565b8585856040518563ffffffff1660e01b81526004016108e39493929190612ab8565b600060405180830381600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b50505050610920878787612061565b6000600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061096b611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050858110156109eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e290612bd1565b60405180910390fd5b610a08886109f7611e8e565b8884610a039190612e3a565b611e96565b6001945050600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a56e8adf610a53611e8e565b8585856040518563ffffffff1660e01b8152600401610a759493929190612ab8565b600060405180830381600087803b158015610a8f57600080fd5b505af1158015610aa3573d6000803e3d6000fd5b50505050610ba5565b610ab7878787612061565b6000600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b02611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905085811015610b82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7990612bd1565b60405180910390fd5b610b9f88610b8e611e8e565b8884610b9a9190612e3a565b611e96565b60019450505b5050509392505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bf0611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614610c46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3d90612c71565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60095481565b60006012905090565b60008282600b60019054906101000a900460ff1615610f0757600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cf5961bb610d74611e8e565b84846040518463ffffffff1660e01b8152600401610d9493929190612afd565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610e66610dd1611e8e565b868660016000610ddf611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e619190612de4565b611e96565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166334d01aa8610eb0611e8e565b84846040518463ffffffff1660e01b8152600401610ed093929190612afd565b600060405180830381600087803b158015610eea57600080fd5b505af1158015610efe573d6000803e3d6000fd5b50505050610fac565b610fa7610f12611e8e565b868660016000610f20611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa29190612de4565b611e96565b600192505b505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ff5611e8e565b73ffffffffffffffffffffffffffffffffffffffff161461104b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104290612c71565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001600b60016101000a81548160ff0219169083151502179055507fa4a40bdd0a809720a61b44f1b3497ce7dad87741a0ba3b961c2e65e645060e7060405160405180910390a1565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661118e611e8e565b73ffffffffffffffffffffffffffffffffffffffff16146111e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111db90612c71565b60405180910390fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806007819055508173ffffffffffffffffffffffffffffffffffffffff167fc5666bfdfb79a4b0b4abdbc565d6e9937a263233b2b378c55132d34dc5784a3660405160405180910390a25050565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112b4611e8e565b73ffffffffffffffffffffffffffffffffffffffff161461130a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130190612c91565b60405180910390fd5b60005b828290508110156113fa576113e7838383818110611354577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061136991906123c6565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113e28686868181106113c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906113dd91906123c6565b611105565b612061565b80806113f290612f41565b91505061130d565b505050565b60606004805461140e90612f0f565b80601f016020809104026020016040519081016040528092919081815260200182805461143a90612f0f565b80156114875780601f1061145c57610100808354040283529160200191611487565b820191906000526020600020905b81548152906001019060200180831161146a57829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff16156116cc57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663568c75a96114f0611e8e565b84846040518463ffffffff1660e01b815260040161151093929190612afd565b600060405180830381600087803b15801561152a57600080fd5b505af115801561153e573d6000803e3d6000fd5b50505050600060016000611550611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508481101561160d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160490612cf1565b60405180910390fd5b61162a611618611e8e565b8787846116259190612e3a565b611e96565b6001935050600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ded1f4d0611675611e8e565b84846040518463ffffffff1660e01b815260040161169593929190612afd565b600060405180830381600087803b1580156116af57600080fd5b505af11580156116c3573d6000803e3d6000fd5b505050506117ba565b6000600160006116da611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084811015611797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178e90612cf1565b60405180910390fd5b6117b46117a2611e8e565b8787846117af9190612e3a565b611e96565b60019350505b505092915050565b60008282600b60019054906101000a900460ff161561192657600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ffb811f611821611e8e565b84846040518463ffffffff1660e01b815260040161184193929190612afd565b600060405180830381600087803b15801561185b57600080fd5b505af115801561186f573d6000803e3d6000fd5b5050505061188561187e611e8e565b8686612061565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f49062ca6118cf611e8e565b84846040518463ffffffff1660e01b81526004016118ef93929190612afd565b600060405180830381600087803b15801561190957600080fd5b505af115801561191d573d6000803e3d6000fd5b5050505061193d565b611938611931611e8e565b8686612061565b600192505b505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611986611e8e565b73ffffffffffffffffffffffffffffffffffffffff16146119dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d390612c71565b60405180910390fd5b600b60009054906101000a900460ff16611a2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2290612c11565b60405180910390fd5b42600a541115611a70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6790612b91565b60405180910390fd5b6000600b60016101000a81548160ff0219169083151502179055506000600b60006101000a81548160ff0219169083151502179055507f5b534e2716e5ad68b9f67521378f8199a7ceb9d3f6f354275dad33fe42cf710a60405160405180910390a1565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611b15611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614611b6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6290612c51565b60405180910390fd5b600754818051906020012014611bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bad90612bf1565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1c7f382531621f02aefb4212478bba8871ffad078202bdbba87f3e21d639aebb60405160405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600b60019054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611d0e611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614611d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5b90612c71565b60405180910390fd5b60095442611d729190612de4565b600a819055506001600b60006101000a81548160ff0219169083151502179055507f88e0be0448355c71674462d3cb36342f0d085f7b43a1deab03052c95eb158709600a54604051611dc49190612d31565b60405180910390a1565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900460ff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efd90612cd1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6d90612d11565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120549190612d31565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156120d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c890612c31565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612141576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213890612b71565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156121c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121be90612bb1565b60405180910390fd5b81816121d39190612e3a565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122639190612de4565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122c79190612d31565b60405180910390a350505050565b60006122e86122e384612d98565b612d67565b90508281526020810184848401111561230057600080fd5b61230b848285612ecd565b509392505050565b60008135905061232281613028565b92915050565b60008083601f84011261233a57600080fd5b8235905067ffffffffffffffff81111561235357600080fd5b60208301915083602082028301111561236b57600080fd5b9250929050565b6000813590506123818161303f565b92915050565b600082601f83011261239857600080fd5b81356123a88482602086016122d5565b91505092915050565b6000813590506123c081613056565b92915050565b6000602082840312156123d857600080fd5b60006123e684828501612313565b91505092915050565b6000806040838503121561240257600080fd5b600061241085828601612313565b925050602061242185828601612313565b9150509250929050565b60008060006060848603121561244057600080fd5b600061244e86828701612313565b935050602061245f86828701612313565b9250506040612470868287016123b1565b9150509250925092565b6000806040838503121561248d57600080fd5b600061249b85828601612313565b92505060206124ac85828601612372565b9150509250929050565b600080604083850312156124c957600080fd5b60006124d785828601612313565b92505060206124e8858286016123b1565b9150509250929050565b6000806020838503121561250557600080fd5b600083013567ffffffffffffffff81111561251f57600080fd5b61252b85828601612328565b92509250509250929050565b60006020828403121561254957600080fd5b600082013567ffffffffffffffff81111561256357600080fd5b61256f84828501612387565b91505092915050565b61258181612e6e565b82525050565b61259081612e80565b82525050565b60006125a182612dc8565b6125ab8185612dd3565b93506125bb818560208601612edc565b6125c481613017565b840191505092915050565b60006125dc602483612dd3565b91507f4c45524332303a207472616e7366657220746f20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612642601d83612dd3565b91507f4c45524332303a2054696d65206c6f636b20696e2070726f67726573730000006000830152602082019050919050565b6000612682602783612dd3565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f62616c616e6365000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126e8602983612dd3565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f616c6c6f77616e636500000000000000000000000000000000000000000000006020830152604082019050919050565b600061274e601383612dd3565b91507f4c45524332303a20496e76616c6964206b6579000000000000000000000000006000830152602082019050919050565b600061278e601c83612dd3565b91507f4c45524332303a205475726e4f6666206e6f742070726f706f736564000000006000830152602082019050919050565b60006127ce602683612dd3565b91507f4c45524332303a207472616e736665722066726f6d20746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612834601983612dd3565b91507f4c45524332303a204d7573742062652063616e646974617465000000000000006000830152602082019050919050565b6000612874601e83612dd3565b91507f4c45524332303a204d757374206265207265636f766572792061646d696e00006000830152602082019050919050565b60006128b4601e83612dd3565b91507f4c45524332303a204f6e6c79206c6f73736c65737320636f6e747261637400006000830152602082019050919050565b60006128f4602883612dd3565b91507f4c45524332303a2043616e6e6f74206368616e6765206e6f6e207a65726f206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b600061295a602583612dd3565b91507f4c45524332303a20617070726f76652066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006129c0602683612dd3565b91507f4c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f60008301527f77207a65726f00000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612a26602383612dd3565b91507f4c45524332303a20617070726f766520746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b612a8881612eb6565b82525050565b612a9781612ec0565b82525050565b6000602082019050612ab26000830184612578565b92915050565b6000608082019050612acd6000830187612578565b612ada6020830186612578565b612ae76040830185612578565b612af46060830184612a7f565b95945050505050565b6000606082019050612b126000830186612578565b612b1f6020830185612578565b612b2c6040830184612a7f565b949350505050565b6000602082019050612b496000830184612587565b92915050565b60006020820190508181036000830152612b698184612596565b905092915050565b60006020820190508181036000830152612b8a816125cf565b9050919050565b60006020820190508181036000830152612baa81612635565b9050919050565b60006020820190508181036000830152612bca81612675565b9050919050565b60006020820190508181036000830152612bea816126db565b9050919050565b60006020820190508181036000830152612c0a81612741565b9050919050565b60006020820190508181036000830152612c2a81612781565b9050919050565b60006020820190508181036000830152612c4a816127c1565b9050919050565b60006020820190508181036000830152612c6a81612827565b9050919050565b60006020820190508181036000830152612c8a81612867565b9050919050565b60006020820190508181036000830152612caa816128a7565b9050919050565b60006020820190508181036000830152612cca816128e7565b9050919050565b60006020820190508181036000830152612cea8161294d565b9050919050565b60006020820190508181036000830152612d0a816129b3565b9050919050565b60006020820190508181036000830152612d2a81612a19565b9050919050565b6000602082019050612d466000830184612a7f565b92915050565b6000602082019050612d616000830184612a8e565b92915050565b6000604051905081810181811067ffffffffffffffff82111715612d8e57612d8d612fe8565b5b8060405250919050565b600067ffffffffffffffff821115612db357612db2612fe8565b5b601f19601f8301169050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000612def82612eb6565b9150612dfa83612eb6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612e2f57612e2e612f8a565b5b828201905092915050565b6000612e4582612eb6565b9150612e5083612eb6565b925082821015612e6357612e62612f8a565b5b828203905092915050565b6000612e7982612e96565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612efa578082015181840152602081019050612edf565b83811115612f09576000848401525b50505050565b60006002820490506001821680612f2757607f821691505b60208210811415612f3b57612f3a612fb9565b5b50919050565b6000612f4c82612eb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612f7f57612f7e612f8a565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b61303181612e6e565b811461303c57600080fd5b50565b61304881612e8c565b811461305357600080fd5b50565b61305f81612eb6565b811461306a57600080fd5b5056fea2646970667358221220f40d59829383d04ca99d86651747e27245f558eb5c75f9e40d0b8c33d1e63aad64736f6c6343000800003300000000000000000000000000000000000000000052b7d2dcc80cd2e400000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001200000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f650000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f650000000000000000000000000000000000000000000000000000000000015180000000000000000000000000e91d7cebce484070fc70777cb04f7e2efae31db4000000000000000000000000000000000000000000000000000000000000000e4c6f73736c65737320546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034c53530000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101735760003560e01c806370a08231116100de578063b38fe95711610097578063d6e242b811610071578063d6e242b81461042a578063dd62ed3e14610434578063efab831c14610464578063f851a4401461048257610173565b8063b38fe957146103e6578063b5c22877146103f0578063ccfa214f1461040c57610173565b806370a082311461030057806393310ffe14610330578063936af9111461034c57806395d89b4114610368578063a457c2d714610386578063a9059cbb146103b657610173565b8063313ce56711610130578063313ce5671461024e578063395093511461026c5780635b8a194a1461029c5780635f6529a3146102a657806361086b00146102c45780636e9960c3146102e257610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c657806323b872dd146101e45780632baa3c9e146102145780632ecaf67514610230575b600080fd5b6101806104a0565b60405161018d9190612b4f565b60405180910390f35b6101b060048036038101906101ab91906124b6565b610532565b6040516101bd9190612b34565b60405180910390f35b6101ce610857565b6040516101db9190612d31565b60405180910390f35b6101fe60048036038101906101f9919061242b565b610861565b60405161020b9190612b34565b60405180910390f35b61022e600480360381019061022991906123c6565b610baf565b005b610238610d06565b6040516102459190612d31565b60405180910390f35b610256610d0c565b6040516102639190612d4c565b60405180910390f35b610286600480360381019061028191906124b6565b610d15565b6040516102939190612b34565b60405180910390f35b6102a4610fb4565b005b6102ae6110af565b6040516102bb9190612a9d565b60405180910390f35b6102cc6110d5565b6040516102d99190612d31565b60405180910390f35b6102ea6110db565b6040516102f79190612a9d565b60405180910390f35b61031a600480360381019061031591906123c6565b611105565b6040516103279190612d31565b60405180910390f35b61034a6004803603810190610345919061247a565b61114d565b005b610366600480360381019061036191906124f2565b611273565b005b6103706113ff565b60405161037d9190612b4f565b60405180910390f35b6103a0600480360381019061039b91906124b6565b611491565b6040516103ad9190612b34565b60405180910390f35b6103d060048036038101906103cb91906124b6565b6117c2565b6040516103dd9190612b34565b60405180910390f35b6103ee611945565b005b61040a60048036038101906104059190612537565b611ad4565b005b610414611cba565b6040516104219190612b34565b60405180910390f35b610432611ccd565b005b61044e600480360381019061044991906123ef565b611dce565b60405161045b9190612d31565b60405180910390f35b61046c611e55565b6040516104799190612b34565b60405180910390f35b61048a611e68565b6040516104979190612a9d565b60405180910390f35b6060600380546104af90612f0f565b80601f01602080910402602001604051908101604052809291908181526020018280546104db90612f0f565b80156105285780601f106104fd57610100808354040283529160200191610528565b820191906000526020600020905b81548152906001019060200180831161050b57829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff161561076757600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166347abf3be610591611e8e565b84846040518463ffffffff1660e01b81526004016105b193929190612afd565b600060405180830381600087803b1580156105cb57600080fd5b505af11580156105df573d6000803e3d6000fd5b50505050600084148061067557506000600160006105fb611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b6106b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ab90612cb1565b60405180910390fd5b6106c66106bf611e8e565b8686611e96565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663900f66ef610710611e8e565b84846040518463ffffffff1660e01b815260040161073093929190612afd565b600060405180830381600087803b15801561074a57600080fd5b505af115801561075e573d6000803e3d6000fd5b5050505061084f565b60008414806107f9575060006001600061077f611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b610838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082f90612cb1565b60405180910390fd5b61084a610843611e8e565b8686611e96565b600192505b505092915050565b6000600254905090565b6000838383600b60019054906101000a900460ff1615610aac57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663379f5c696108c1611e8e565b8585856040518563ffffffff1660e01b81526004016108e39493929190612ab8565b600060405180830381600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b50505050610920878787612061565b6000600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061096b611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050858110156109eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e290612bd1565b60405180910390fd5b610a08886109f7611e8e565b8884610a039190612e3a565b611e96565b6001945050600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a56e8adf610a53611e8e565b8585856040518563ffffffff1660e01b8152600401610a759493929190612ab8565b600060405180830381600087803b158015610a8f57600080fd5b505af1158015610aa3573d6000803e3d6000fd5b50505050610ba5565b610ab7878787612061565b6000600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b02611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905085811015610b82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7990612bd1565b60405180910390fd5b610b9f88610b8e611e8e565b8884610b9a9190612e3a565b611e96565b60019450505b5050509392505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bf0611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614610c46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3d90612c71565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60095481565b60006012905090565b60008282600b60019054906101000a900460ff1615610f0757600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cf5961bb610d74611e8e565b84846040518463ffffffff1660e01b8152600401610d9493929190612afd565b600060405180830381600087803b158015610dae57600080fd5b505af1158015610dc2573d6000803e3d6000fd5b50505050610e66610dd1611e8e565b868660016000610ddf611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e619190612de4565b611e96565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166334d01aa8610eb0611e8e565b84846040518463ffffffff1660e01b8152600401610ed093929190612afd565b600060405180830381600087803b158015610eea57600080fd5b505af1158015610efe573d6000803e3d6000fd5b50505050610fac565b610fa7610f12611e8e565b868660016000610f20611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa29190612de4565b611e96565b600192505b505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ff5611e8e565b73ffffffffffffffffffffffffffffffffffffffff161461104b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104290612c71565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001600b60016101000a81548160ff0219169083151502179055507fa4a40bdd0a809720a61b44f1b3497ce7dad87741a0ba3b961c2e65e645060e7060405160405180910390a1565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661118e611e8e565b73ffffffffffffffffffffffffffffffffffffffff16146111e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111db90612c71565b60405180910390fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806007819055508173ffffffffffffffffffffffffffffffffffffffff167fc5666bfdfb79a4b0b4abdbc565d6e9937a263233b2b378c55132d34dc5784a3660405160405180910390a25050565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112b4611e8e565b73ffffffffffffffffffffffffffffffffffffffff161461130a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130190612c91565b60405180910390fd5b60005b828290508110156113fa576113e7838383818110611354577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061136991906123c6565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113e28686868181106113c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906113dd91906123c6565b611105565b612061565b80806113f290612f41565b91505061130d565b505050565b60606004805461140e90612f0f565b80601f016020809104026020016040519081016040528092919081815260200182805461143a90612f0f565b80156114875780601f1061145c57610100808354040283529160200191611487565b820191906000526020600020905b81548152906001019060200180831161146a57829003601f168201915b5050505050905090565b60008282600b60019054906101000a900460ff16156116cc57600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663568c75a96114f0611e8e565b84846040518463ffffffff1660e01b815260040161151093929190612afd565b600060405180830381600087803b15801561152a57600080fd5b505af115801561153e573d6000803e3d6000fd5b50505050600060016000611550611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508481101561160d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160490612cf1565b60405180910390fd5b61162a611618611e8e565b8787846116259190612e3a565b611e96565b6001935050600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ded1f4d0611675611e8e565b84846040518463ffffffff1660e01b815260040161169593929190612afd565b600060405180830381600087803b1580156116af57600080fd5b505af11580156116c3573d6000803e3d6000fd5b505050506117ba565b6000600160006116da611e8e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084811015611797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178e90612cf1565b60405180910390fd5b6117b46117a2611e8e565b8787846117af9190612e3a565b611e96565b60019350505b505092915050565b60008282600b60019054906101000a900460ff161561192657600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ffb811f611821611e8e565b84846040518463ffffffff1660e01b815260040161184193929190612afd565b600060405180830381600087803b15801561185b57600080fd5b505af115801561186f573d6000803e3d6000fd5b5050505061188561187e611e8e565b8686612061565b60019250600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f49062ca6118cf611e8e565b84846040518463ffffffff1660e01b81526004016118ef93929190612afd565b600060405180830381600087803b15801561190957600080fd5b505af115801561191d573d6000803e3d6000fd5b5050505061193d565b611938611931611e8e565b8686612061565b600192505b505092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611986611e8e565b73ffffffffffffffffffffffffffffffffffffffff16146119dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d390612c71565b60405180910390fd5b600b60009054906101000a900460ff16611a2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2290612c11565b60405180910390fd5b42600a541115611a70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6790612b91565b60405180910390fd5b6000600b60016101000a81548160ff0219169083151502179055506000600b60006101000a81548160ff0219169083151502179055507f5b534e2716e5ad68b9f67521378f8199a7ceb9d3f6f354275dad33fe42cf710a60405160405180910390a1565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611b15611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614611b6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6290612c51565b60405180910390fd5b600754818051906020012014611bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bad90612bf1565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1c7f382531621f02aefb4212478bba8871ffad078202bdbba87f3e21d639aebb60405160405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600b60019054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611d0e611e8e565b73ffffffffffffffffffffffffffffffffffffffff1614611d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5b90612c71565b60405180910390fd5b60095442611d729190612de4565b600a819055506001600b60006101000a81548160ff0219169083151502179055507f88e0be0448355c71674462d3cb36342f0d085f7b43a1deab03052c95eb158709600a54604051611dc49190612d31565b60405180910390a1565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900460ff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efd90612cd1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6d90612d11565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120549190612d31565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156120d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c890612c31565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612141576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213890612b71565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156121c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121be90612bb1565b60405180910390fd5b81816121d39190612e3a565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122639190612de4565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122c79190612d31565b60405180910390a350505050565b60006122e86122e384612d98565b612d67565b90508281526020810184848401111561230057600080fd5b61230b848285612ecd565b509392505050565b60008135905061232281613028565b92915050565b60008083601f84011261233a57600080fd5b8235905067ffffffffffffffff81111561235357600080fd5b60208301915083602082028301111561236b57600080fd5b9250929050565b6000813590506123818161303f565b92915050565b600082601f83011261239857600080fd5b81356123a88482602086016122d5565b91505092915050565b6000813590506123c081613056565b92915050565b6000602082840312156123d857600080fd5b60006123e684828501612313565b91505092915050565b6000806040838503121561240257600080fd5b600061241085828601612313565b925050602061242185828601612313565b9150509250929050565b60008060006060848603121561244057600080fd5b600061244e86828701612313565b935050602061245f86828701612313565b9250506040612470868287016123b1565b9150509250925092565b6000806040838503121561248d57600080fd5b600061249b85828601612313565b92505060206124ac85828601612372565b9150509250929050565b600080604083850312156124c957600080fd5b60006124d785828601612313565b92505060206124e8858286016123b1565b9150509250929050565b6000806020838503121561250557600080fd5b600083013567ffffffffffffffff81111561251f57600080fd5b61252b85828601612328565b92509250509250929050565b60006020828403121561254957600080fd5b600082013567ffffffffffffffff81111561256357600080fd5b61256f84828501612387565b91505092915050565b61258181612e6e565b82525050565b61259081612e80565b82525050565b60006125a182612dc8565b6125ab8185612dd3565b93506125bb818560208601612edc565b6125c481613017565b840191505092915050565b60006125dc602483612dd3565b91507f4c45524332303a207472616e7366657220746f20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612642601d83612dd3565b91507f4c45524332303a2054696d65206c6f636b20696e2070726f67726573730000006000830152602082019050919050565b6000612682602783612dd3565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f62616c616e6365000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126e8602983612dd3565b91507f4c45524332303a207472616e7366657220616d6f756e7420657863656564732060008301527f616c6c6f77616e636500000000000000000000000000000000000000000000006020830152604082019050919050565b600061274e601383612dd3565b91507f4c45524332303a20496e76616c6964206b6579000000000000000000000000006000830152602082019050919050565b600061278e601c83612dd3565b91507f4c45524332303a205475726e4f6666206e6f742070726f706f736564000000006000830152602082019050919050565b60006127ce602683612dd3565b91507f4c45524332303a207472616e736665722066726f6d20746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612834601983612dd3565b91507f4c45524332303a204d7573742062652063616e646974617465000000000000006000830152602082019050919050565b6000612874601e83612dd3565b91507f4c45524332303a204d757374206265207265636f766572792061646d696e00006000830152602082019050919050565b60006128b4601e83612dd3565b91507f4c45524332303a204f6e6c79206c6f73736c65737320636f6e747261637400006000830152602082019050919050565b60006128f4602883612dd3565b91507f4c45524332303a2043616e6e6f74206368616e6765206e6f6e207a65726f206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b600061295a602583612dd3565b91507f4c45524332303a20617070726f76652066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006129c0602683612dd3565b91507f4c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f60008301527f77207a65726f00000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612a26602383612dd3565b91507f4c45524332303a20617070726f766520746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b612a8881612eb6565b82525050565b612a9781612ec0565b82525050565b6000602082019050612ab26000830184612578565b92915050565b6000608082019050612acd6000830187612578565b612ada6020830186612578565b612ae76040830185612578565b612af46060830184612a7f565b95945050505050565b6000606082019050612b126000830186612578565b612b1f6020830185612578565b612b2c6040830184612a7f565b949350505050565b6000602082019050612b496000830184612587565b92915050565b60006020820190508181036000830152612b698184612596565b905092915050565b60006020820190508181036000830152612b8a816125cf565b9050919050565b60006020820190508181036000830152612baa81612635565b9050919050565b60006020820190508181036000830152612bca81612675565b9050919050565b60006020820190508181036000830152612bea816126db565b9050919050565b60006020820190508181036000830152612c0a81612741565b9050919050565b60006020820190508181036000830152612c2a81612781565b9050919050565b60006020820190508181036000830152612c4a816127c1565b9050919050565b60006020820190508181036000830152612c6a81612827565b9050919050565b60006020820190508181036000830152612c8a81612867565b9050919050565b60006020820190508181036000830152612caa816128a7565b9050919050565b60006020820190508181036000830152612cca816128e7565b9050919050565b60006020820190508181036000830152612cea8161294d565b9050919050565b60006020820190508181036000830152612d0a816129b3565b9050919050565b60006020820190508181036000830152612d2a81612a19565b9050919050565b6000602082019050612d466000830184612a7f565b92915050565b6000602082019050612d616000830184612a8e565b92915050565b6000604051905081810181811067ffffffffffffffff82111715612d8e57612d8d612fe8565b5b8060405250919050565b600067ffffffffffffffff821115612db357612db2612fe8565b5b601f19601f8301169050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000612def82612eb6565b9150612dfa83612eb6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612e2f57612e2e612f8a565b5b828201905092915050565b6000612e4582612eb6565b9150612e5083612eb6565b925082821015612e6357612e62612f8a565b5b828203905092915050565b6000612e7982612e96565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612efa578082015181840152602081019050612edf565b83811115612f09576000848401525b50505050565b60006002820490506001821680612f2757607f821691505b60208210811415612f3b57612f3a612fb9565b5b50919050565b6000612f4c82612eb6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612f7f57612f7e612f8a565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b61303181612e6e565b811461303c57600080fd5b50565b61304881612e8c565b811461305357600080fd5b50565b61305f81612eb6565b811461306a57600080fd5b5056fea2646970667358221220f40d59829383d04ca99d86651747e27245f558eb5c75f9e40d0b8c33d1e63aad64736f6c63430008000033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000052b7d2dcc80cd2e400000000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001200000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f650000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f650000000000000000000000000000000000000000000000000000000000015180000000000000000000000000e91d7cebce484070fc70777cb04f7e2efae31db4000000000000000000000000000000000000000000000000000000000000000e4c6f73736c65737320546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034c53530000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : totalSupply_ (uint256): 100000000000000000000000000
Arg [1] : name_ (string): Lossless Token
Arg [2] : symbol_ (string): LSS
Arg [3] : admin_ (address): 0x5d27D8d3489DA562d540ffE26BDB41635dB62f65
Arg [4] : recoveryAdmin_ (address): 0x5d27D8d3489DA562d540ffE26BDB41635dB62f65
Arg [5] : timelockPeriod_ (uint256): 86400
Arg [6] : lossless_ (address): 0xe91D7cEBcE484070fc70777cB04F7e2EfAe31DB4
-----Encoded View---------------
11 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [3] : 0000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f65
Arg [4] : 0000000000000000000000005d27d8d3489da562d540ffe26bdb41635db62f65
Arg [5] : 0000000000000000000000000000000000000000000000000000000000015180
Arg [6] : 000000000000000000000000e91d7cebce484070fc70777cb04f7e2efae31db4
Arg [7] : 000000000000000000000000000000000000000000000000000000000000000e
Arg [8] : 4c6f73736c65737320546f6b656e000000000000000000000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [10] : 4c53530000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
2188:8880:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7461:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8379:318;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7755:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8705:466;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5849:149;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2602:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7663:84;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9179:257;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7247:174;;;:::i;:::-;;2452:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2638:39;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5451:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7871:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6006:249;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5542:299;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7560:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9444:425;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8006:206;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6889:350;;;:::i;:::-;;6263:365;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2728:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6636:245;;;:::i;:::-;;8220:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2684:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2575:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7461:91;7506:13;7539:5;7532:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7461:91;:::o;8379:318::-;8489:4;8463:7;8472:6;3711:12;;;;;;;;;;;3707:215;;;3740:8;;;;;;;;;;;:22;;;3763:12;:10;:12::i;:::-;3777:7;3786:6;3740:53;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8525:1:::1;8515:6;:11;8514:58;;;;8570:1;8532:11;:25;8544:12;:10;:12::i;:::-;8532:25;;;;;;;;;;;;;;;:34;8558:7;8532:34;;;;;;;;;;;;;;;;:39;8514:58;8506:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;8628:39;8637:12;:10;:12::i;:::-;8651:7;8660:6;8628:8;:39::i;:::-;8685:4;8678:11;;3824:8:::0;;;;;;;;;;;:21;;;3846:12;:10;:12::i;:::-;3860:7;3869:6;3824:52;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3707:215;;;8525:1:::1;8515:6;:11;8514:58;;;;8570:1;8532:11;:25;8544:12;:10;:12::i;:::-;8532:25;;;;;;;;;;;;;;;:34;8558:7;8532:34;;;;;;;;;;;;;;;;:39;8514:58;8506:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;8628:39;8637:12;:10;:12::i;:::-;8651:7;8660:6;8628:8;:39::i;:::-;8685:4;8678:11;;3707:215:::0;8379:318;;;;;;:::o;7755:108::-;7816:7;7843:12;;7836:19;;7755:108;:::o;8705:466::-;8854:4;8818:6;8826:9;8837:6;4331:12;;;;;;;;;;;4327:244;;;4360:8;;;;;;;;;;;:27;;;4388:12;:10;:12::i;:::-;4401:6;4409:9;4420:6;4360:67;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8871:36:::1;8881:6;8889:9;8900:6;8871:9;:36::i;:::-;8920:24;8947:11;:19;8959:6;8947:19;;;;;;;;;;;;;;;:33;8967:12;:10;:12::i;:::-;8947:33;;;;;;;;;;;;;;;;8920:60;;9019:6;8999:16;:26;;8991:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;9082:57;9091:6;9099:12;:10;:12::i;:::-;9132:6;9113:16;:25;;;;:::i;:::-;9082:8;:57::i;:::-;9159:4;9152:11;;;4458:8:::0;;;;;;;;;;;:26;;;4485:12;:10;:12::i;:::-;4499:6;4507:9;4518:6;4458:67;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4327:244;;;8871:36:::1;8881:6;8889:9;8900:6;8871:9;:36::i;:::-;8920:24;8947:11;:19;8959:6;8947:19;;;;;;;;;;;;;;;:33;8967:12;:10;:12::i;:::-;8947:33;;;;;;;;;;;;;;;;8920:60;;9019:6;8999:16;:26;;8991:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;9082:57;9091:6;9099:12;:10;:12::i;:::-;9132:6;9113:16;:25;;;;:::i;:::-;9082:8;:57::i;:::-;9159:4;9152:11;;;4327:244:::0;8705:466;;;;;;;;:::o;5849:149::-;5337:13;;;;;;;;;;;5321:29;;:12;:10;:12::i;:::-;:29;;;5313:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;5954:8:::1;5934:29;;5947:5;;;;;;;;;;;5934:29;;;;;;;;;;;;5982:8;5974:5;;:16;;;;;;;;;;;;;;;;;;5849:149:::0;:::o;2602:29::-;;;;:::o;7663:84::-;7712:5;7737:2;7730:9;;7663:84;:::o;9179:257::-;9309:4;9279:7;9288:10;4668:12;;;;;;;;;;;4664:243;;;4697:8;;;;;;;;;;;:32;;;4730:12;:10;:12::i;:::-;4744:7;4753:10;4697:67;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9326:80:::1;9335:12;:10;:12::i;:::-;9349:7;9395:10;9358:11;:25;9370:12;:10;:12::i;:::-;9358:25;;;;;;;;;;;;;;;:34;9384:7;9358:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;9326:8;:80::i;:::-;9424:4;9417:11;;4795:8:::0;;;;;;;;;;;:31;;;4827:12;:10;:12::i;:::-;4841:7;4850:10;4795:66;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4664:243;;;9326:80:::1;9335:12;:10;:12::i;:::-;9349:7;9395:10;9358:11;:25;9370:12;:10;:12::i;:::-;9358:25;;;;;;;;;;;;;;;:34;9384:7;9358:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;9326:8;:80::i;:::-;9424:4;9417:11;;4664:243:::0;9179:257;;;;;;:::o;7247:174::-;5337:13;;;;;;;;;;;5321:29;;:12;:10;:12::i;:::-;:29;;;5313:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;7344:5:::1;7316:25;;:33;;;;;;;;;;;;;;;;;;7375:4;7360:12;;:19;;;;;;;;;;;;;;;;;;7395:18;;;;;;;;;;7247:174::o:0;2452:28::-;;;;;;;;;;;;;:::o;2638:39::-;;;;:::o;5451:83::-;5494:7;5521:5;;;;;;;;;;;5514:12;;5451:83;:::o;7871:127::-;7945:7;7972:9;:18;7982:7;7972:18;;;;;;;;;;;;;;;;7965:25;;7871:127;;;:::o;6006:249::-;5337:13;;;;;;;;;;;5321:29;;:12;:10;:12::i;:::-;:29;;;5313:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;6143:9:::1;6118:22;;:34;;;;;;;;;;;;;;;;;;6186:7;6163:20;:30;;;;6237:9;6209:38;;;;;;;;;;;;6006:249:::0;;:::o;5542:299::-;5656:8;;;;;;;;;;;5632:33;;:12;:10;:12::i;:::-;:33;;;5624:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;5716:6;5711:123;5732:4;;:11;;5728:1;:15;5711:123;;;5765:57;5775:4;;5780:1;5775:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5792:8;;;;;;;;;;;5803:18;5813:4;;5818:1;5813:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5803:9;:18::i;:::-;5765:9;:57::i;:::-;5745:3;;;;;:::i;:::-;;;;5711:123;;;;5542:299;;:::o;7560:95::-;7607:13;7640:7;7633:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7560:95;:::o;9444:425::-;9584:4;9549:7;9558:15;5009:12;;;;;;;;;;;5005:253;;;5038:8;;;;;;;;;;;:32;;;5071:12;:10;:12::i;:::-;5085:7;5094:15;5038:72;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9601:24:::1;9628:11;:25;9640:12;:10;:12::i;:::-;9628:25;;;;;;;;;;;;;;;:34;9654:7;9628:34;;;;;;;;;;;;;;;;9601:61;;9701:15;9681:16;:35;;9673:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;9770:67;9779:12;:10;:12::i;:::-;9793:7;9821:15;9802:16;:34;;;;:::i;:::-;9770:8;:67::i;:::-;9857:4;9850:11;;;5141:8:::0;;;;;;;;;;;:31;;;5173:12;:10;:12::i;:::-;5187:7;5196:15;5141:71;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5005:253;;;9601:24:::1;9628:11;:25;9640:12;:10;:12::i;:::-;9628:25;;;;;;;;;;;;;;;:34;9654:7;9628:34;;;;;;;;;;;;;;;;9601:61;;9701:15;9681:16;:35;;9673:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;9770:67;9779:12;:10;:12::i;:::-;9793:7;9821:15;9802:16;:34;;;;:::i;:::-;9770:8;:67::i;:::-;9857:4;9850:11;;;5005:253:::0;9444:425;;;;;;:::o;8006:206::-;8123:4;8095:9;8106:6;4008:12;;;;;;;;;;;4004:221;;;4037:8;;;;;;;;;;;:23;;;4061:12;:10;:12::i;:::-;4075:9;4086:6;4037:56;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8140:42:::1;8150:12;:10;:12::i;:::-;8164:9;8175:6;8140:9;:42::i;:::-;8200:4;8193:11;;4124:8:::0;;;;;;;;;;;:22;;;4147:12;:10;:12::i;:::-;4161:9;4172:6;4124:55;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4004:221;;;8140:42:::1;8150:12;:10;:12::i;:::-;8164:9;8175:6;8140:9;:42::i;:::-;8200:4;8193:11;;4004:221:::0;8006:206;;;;;;:::o;6889:350::-;5337:13;;;;;;;;;;;5321:29;;:12;:10;:12::i;:::-;:29;;;5313:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;6967:25:::1;;;;;;;;;;;6959:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;7072:15;7044:24;;:43;;7036:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;7147:5;7132:12;;:20;;;;;;;;;;;;;;;;;;7191:5;7163:25;;:33;;;;;;;;;;;;;;;;;;7212:19;;;;;;;;;;6889:350::o:0;6263:365::-;6363:22;;;;;;;;;;;6347:38;;:12;:10;:12::i;:::-;:38;;;6339:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;6452:20;;6444:3;6434:14;;;;;;:38;6426:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6548:22;;;;;;;;;;;6512:59;;6533:13;;;;;;;;;;;6512:59;;;;;;;;;;;;6598:22;;;;;;;;;;;6582:13;;:38;;;;;;;;;;;;;;;;;;6263:365;:::o;2728:31::-;;;;;;;;;;;;;:::o;6636:245::-;5337:13;;;;;;;;;;;5321:29;;:12;:10;:12::i;:::-;:29;;;5313:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;6751:14:::1;;6733:15;:32;;;;:::i;:::-;6706:24;:59;;;;6804:4;6776:25;;:32;;;;;;;;;;;;;;;;;;6824:49;6848:24;;6824:49;;;;;;:::i;:::-;;;;;;;;6636:245::o:0;8220:151::-;8309:7;8336:11;:18;8348:5;8336:18;;;;;;;;;;;;;;;:27;8355:7;8336:27;;;;;;;;;;;;;;;;8329:34;;8220:151;;;;:::o;2684:37::-;;;;;;;;;;;;;:::o;2575:20::-;;;;;;;;;;;;;:::o;98:98::-;151:7;178:10;171:17;;98:98;:::o;10717:348::-;10836:1;10819:19;;:5;:19;;;;10811:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;10918:1;10899:21;;:7;:21;;;;10891:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;11003:6;10973:11;:18;10985:5;10973:18;;;;;;;;;;;;;;;:27;10992:7;10973:27;;;;;;;;;;;;;;;:36;;;;11041:7;11025:32;;11034:5;11025:32;;;11050:6;11025:32;;;;;;:::i;:::-;;;;;;;;10717:348;;;:::o;9877:547::-;10001:1;9983:20;;:6;:20;;;;9975:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;10086:1;10065:23;;:9;:23;;;;10057:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;10142:21;10166:9;:17;10176:6;10166:17;;;;;;;;;;;;;;;;10142:41;;10219:6;10202:13;:23;;10194:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;10316:6;10300:13;:22;;;;:::i;:::-;10280:9;:17;10290:6;10280:17;;;;;;;;;;;;;;;:42;;;;10357:6;10333:9;:20;10343:9;10333:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;10398:9;10381:35;;10390:6;10381:35;;;10409:6;10381:35;;;;;;:::i;:::-;;;;;;;;9877:547;;;;:::o;7:342:1:-;;109:64;124:48;165:6;124:48;:::i;:::-;109:64;:::i;:::-;100:73;;196:6;189:5;182:21;234:4;227:5;223:16;272:3;263:6;258:3;254:16;251:25;248:2;;;289:1;286;279:12;248:2;302:41;336:6;331:3;326;302:41;:::i;:::-;90:259;;;;;;:::o;355:139::-;;439:6;426:20;417:29;;455:33;482:5;455:33;:::i;:::-;407:87;;;;:::o;517:367::-;;;650:3;643:4;635:6;631:17;627:27;617:2;;668:1;665;658:12;617:2;704:6;691:20;681:30;;734:18;726:6;723:30;720:2;;;766:1;763;756:12;720:2;803:4;795:6;791:17;779:29;;857:3;849:4;841:6;837:17;827:8;823:32;820:41;817:2;;;874:1;871;864:12;817:2;607:277;;;;;:::o;890:139::-;;974:6;961:20;952:29;;990:33;1017:5;990:33;:::i;:::-;942:87;;;;:::o;1048:271::-;;1152:3;1145:4;1137:6;1133:17;1129:27;1119:2;;1170:1;1167;1160:12;1119:2;1210:6;1197:20;1235:78;1309:3;1301:6;1294:4;1286:6;1282:17;1235:78;:::i;:::-;1226:87;;1109:210;;;;;:::o;1325:139::-;;1409:6;1396:20;1387:29;;1425:33;1452:5;1425:33;:::i;:::-;1377:87;;;;:::o;1470:262::-;;1578:2;1566:9;1557:7;1553:23;1549:32;1546:2;;;1594:1;1591;1584:12;1546:2;1637:1;1662:53;1707:7;1698:6;1687:9;1683:22;1662:53;:::i;:::-;1652:63;;1608:117;1536:196;;;;:::o;1738:407::-;;;1863:2;1851:9;1842:7;1838:23;1834:32;1831:2;;;1879:1;1876;1869:12;1831:2;1922:1;1947:53;1992:7;1983:6;1972:9;1968:22;1947:53;:::i;:::-;1937:63;;1893:117;2049:2;2075:53;2120:7;2111:6;2100:9;2096:22;2075:53;:::i;:::-;2065:63;;2020:118;1821:324;;;;;:::o;2151:552::-;;;;2293:2;2281:9;2272:7;2268:23;2264:32;2261:2;;;2309:1;2306;2299:12;2261:2;2352:1;2377:53;2422:7;2413:6;2402:9;2398:22;2377:53;:::i;:::-;2367:63;;2323:117;2479:2;2505:53;2550:7;2541:6;2530:9;2526:22;2505:53;:::i;:::-;2495:63;;2450:118;2607:2;2633:53;2678:7;2669:6;2658:9;2654:22;2633:53;:::i;:::-;2623:63;;2578:118;2251:452;;;;;:::o;2709:407::-;;;2834:2;2822:9;2813:7;2809:23;2805:32;2802:2;;;2850:1;2847;2840:12;2802:2;2893:1;2918:53;2963:7;2954:6;2943:9;2939:22;2918:53;:::i;:::-;2908:63;;2864:117;3020:2;3046:53;3091:7;3082:6;3071:9;3067:22;3046:53;:::i;:::-;3036:63;;2991:118;2792:324;;;;;:::o;3122:407::-;;;3247:2;3235:9;3226:7;3222:23;3218:32;3215:2;;;3263:1;3260;3253:12;3215:2;3306:1;3331:53;3376:7;3367:6;3356:9;3352:22;3331:53;:::i;:::-;3321:63;;3277:117;3433:2;3459:53;3504:7;3495:6;3484:9;3480:22;3459:53;:::i;:::-;3449:63;;3404:118;3205:324;;;;;:::o;3535:425::-;;;3678:2;3666:9;3657:7;3653:23;3649:32;3646:2;;;3694:1;3691;3684:12;3646:2;3765:1;3754:9;3750:17;3737:31;3795:18;3787:6;3784:30;3781:2;;;3827:1;3824;3817:12;3781:2;3863:80;3935:7;3926:6;3915:9;3911:22;3863:80;:::i;:::-;3845:98;;;;3708:245;3636:324;;;;;:::o;3966:373::-;;4083:2;4071:9;4062:7;4058:23;4054:32;4051:2;;;4099:1;4096;4089:12;4051:2;4170:1;4159:9;4155:17;4142:31;4200:18;4192:6;4189:30;4186:2;;;4232:1;4229;4222:12;4186:2;4260:62;4314:7;4305:6;4294:9;4290:22;4260:62;:::i;:::-;4250:72;;4113:219;4041:298;;;;:::o;4345:118::-;4432:24;4450:5;4432:24;:::i;:::-;4427:3;4420:37;4410:53;;:::o;4469:109::-;4550:21;4565:5;4550:21;:::i;:::-;4545:3;4538:34;4528:50;;:::o;4584:364::-;;4700:39;4733:5;4700:39;:::i;:::-;4755:71;4819:6;4814:3;4755:71;:::i;:::-;4748:78;;4835:52;4880:6;4875:3;4868:4;4861:5;4857:16;4835:52;:::i;:::-;4912:29;4934:6;4912:29;:::i;:::-;4907:3;4903:39;4896:46;;4676:272;;;;;:::o;4954:368::-;;5117:67;5181:2;5176:3;5117:67;:::i;:::-;5110:74;;5214:34;5210:1;5205:3;5201:11;5194:55;5280:6;5275:2;5270:3;5266:12;5259:28;5313:2;5308:3;5304:12;5297:19;;5100:222;;;:::o;5328:327::-;;5491:67;5555:2;5550:3;5491:67;:::i;:::-;5484:74;;5588:31;5584:1;5579:3;5575:11;5568:52;5646:2;5641:3;5637:12;5630:19;;5474:181;;;:::o;5661:371::-;;5824:67;5888:2;5883:3;5824:67;:::i;:::-;5817:74;;5921:34;5917:1;5912:3;5908:11;5901:55;5987:9;5982:2;5977:3;5973:12;5966:31;6023:2;6018:3;6014:12;6007:19;;5807:225;;;:::o;6038:373::-;;6201:67;6265:2;6260:3;6201:67;:::i;:::-;6194:74;;6298:34;6294:1;6289:3;6285:11;6278:55;6364:11;6359:2;6354:3;6350:12;6343:33;6402:2;6397:3;6393:12;6386:19;;6184:227;;;:::o;6417:317::-;;6580:67;6644:2;6639:3;6580:67;:::i;:::-;6573:74;;6677:21;6673:1;6668:3;6664:11;6657:42;6725:2;6720:3;6716:12;6709:19;;6563:171;;;:::o;6740:326::-;;6903:67;6967:2;6962:3;6903:67;:::i;:::-;6896:74;;7000:30;6996:1;6991:3;6987:11;6980:51;7057:2;7052:3;7048:12;7041:19;;6886:180;;;:::o;7072:370::-;;7235:67;7299:2;7294:3;7235:67;:::i;:::-;7228:74;;7332:34;7328:1;7323:3;7319:11;7312:55;7398:8;7393:2;7388:3;7384:12;7377:30;7433:2;7428:3;7424:12;7417:19;;7218:224;;;:::o;7448:323::-;;7611:67;7675:2;7670:3;7611:67;:::i;:::-;7604:74;;7708:27;7704:1;7699:3;7695:11;7688:48;7762:2;7757:3;7753:12;7746:19;;7594:177;;;:::o;7777:328::-;;7940:67;8004:2;7999:3;7940:67;:::i;:::-;7933:74;;8037:32;8033:1;8028:3;8024:11;8017:53;8096:2;8091:3;8087:12;8080:19;;7923:182;;;:::o;8111:328::-;;8274:67;8338:2;8333:3;8274:67;:::i;:::-;8267:74;;8371:32;8367:1;8362:3;8358:11;8351:53;8430:2;8425:3;8421:12;8414:19;;8257:182;;;:::o;8445:372::-;;8608:67;8672:2;8667:3;8608:67;:::i;:::-;8601:74;;8705:34;8701:1;8696:3;8692:11;8685:55;8771:10;8766:2;8761:3;8757:12;8750:32;8808:2;8803:3;8799:12;8792:19;;8591:226;;;:::o;8823:369::-;;8986:67;9050:2;9045:3;8986:67;:::i;:::-;8979:74;;9083:34;9079:1;9074:3;9070:11;9063:55;9149:7;9144:2;9139:3;9135:12;9128:29;9183:2;9178:3;9174:12;9167:19;;8969:223;;;:::o;9198:370::-;;9361:67;9425:2;9420:3;9361:67;:::i;:::-;9354:74;;9458:34;9454:1;9449:3;9445:11;9438:55;9524:8;9519:2;9514:3;9510:12;9503:30;9559:2;9554:3;9550:12;9543:19;;9344:224;;;:::o;9574:367::-;;9737:67;9801:2;9796:3;9737:67;:::i;:::-;9730:74;;9834:34;9830:1;9825:3;9821:11;9814:55;9900:5;9895:2;9890:3;9886:12;9879:27;9932:2;9927:3;9923:12;9916:19;;9720:221;;;:::o;9947:118::-;10034:24;10052:5;10034:24;:::i;:::-;10029:3;10022:37;10012:53;;:::o;10071:112::-;10154:22;10170:5;10154:22;:::i;:::-;10149:3;10142:35;10132:51;;:::o;10189:222::-;;10320:2;10309:9;10305:18;10297:26;;10333:71;10401:1;10390:9;10386:17;10377:6;10333:71;:::i;:::-;10287:124;;;;:::o;10417:553::-;;10632:3;10621:9;10617:19;10609:27;;10646:71;10714:1;10703:9;10699:17;10690:6;10646:71;:::i;:::-;10727:72;10795:2;10784:9;10780:18;10771:6;10727:72;:::i;:::-;10809;10877:2;10866:9;10862:18;10853:6;10809:72;:::i;:::-;10891;10959:2;10948:9;10944:18;10935:6;10891:72;:::i;:::-;10599:371;;;;;;;:::o;10976:442::-;;11163:2;11152:9;11148:18;11140:26;;11176:71;11244:1;11233:9;11229:17;11220:6;11176:71;:::i;:::-;11257:72;11325:2;11314:9;11310:18;11301:6;11257:72;:::i;:::-;11339;11407:2;11396:9;11392:18;11383:6;11339:72;:::i;:::-;11130:288;;;;;;:::o;11424:210::-;;11549:2;11538:9;11534:18;11526:26;;11562:65;11624:1;11613:9;11609:17;11600:6;11562:65;:::i;:::-;11516:118;;;;:::o;11640:313::-;;11791:2;11780:9;11776:18;11768:26;;11840:9;11834:4;11830:20;11826:1;11815:9;11811:17;11804:47;11868:78;11941:4;11932:6;11868:78;:::i;:::-;11860:86;;11758:195;;;;:::o;11959:419::-;;12163:2;12152:9;12148:18;12140:26;;12212:9;12206:4;12202:20;12198:1;12187:9;12183:17;12176:47;12240:131;12366:4;12240:131;:::i;:::-;12232:139;;12130:248;;;:::o;12384:419::-;;12588:2;12577:9;12573:18;12565:26;;12637:9;12631:4;12627:20;12623:1;12612:9;12608:17;12601:47;12665:131;12791:4;12665:131;:::i;:::-;12657:139;;12555:248;;;:::o;12809:419::-;;13013:2;13002:9;12998:18;12990:26;;13062:9;13056:4;13052:20;13048:1;13037:9;13033:17;13026:47;13090:131;13216:4;13090:131;:::i;:::-;13082:139;;12980:248;;;:::o;13234:419::-;;13438:2;13427:9;13423:18;13415:26;;13487:9;13481:4;13477:20;13473:1;13462:9;13458:17;13451:47;13515:131;13641:4;13515:131;:::i;:::-;13507:139;;13405:248;;;:::o;13659:419::-;;13863:2;13852:9;13848:18;13840:26;;13912:9;13906:4;13902:20;13898:1;13887:9;13883:17;13876:47;13940:131;14066:4;13940:131;:::i;:::-;13932:139;;13830:248;;;:::o;14084:419::-;;14288:2;14277:9;14273:18;14265:26;;14337:9;14331:4;14327:20;14323:1;14312:9;14308:17;14301:47;14365:131;14491:4;14365:131;:::i;:::-;14357:139;;14255:248;;;:::o;14509:419::-;;14713:2;14702:9;14698:18;14690:26;;14762:9;14756:4;14752:20;14748:1;14737:9;14733:17;14726:47;14790:131;14916:4;14790:131;:::i;:::-;14782:139;;14680:248;;;:::o;14934:419::-;;15138:2;15127:9;15123:18;15115:26;;15187:9;15181:4;15177:20;15173:1;15162:9;15158:17;15151:47;15215:131;15341:4;15215:131;:::i;:::-;15207:139;;15105:248;;;:::o;15359:419::-;;15563:2;15552:9;15548:18;15540:26;;15612:9;15606:4;15602:20;15598:1;15587:9;15583:17;15576:47;15640:131;15766:4;15640:131;:::i;:::-;15632:139;;15530:248;;;:::o;15784:419::-;;15988:2;15977:9;15973:18;15965:26;;16037:9;16031:4;16027:20;16023:1;16012:9;16008:17;16001:47;16065:131;16191:4;16065:131;:::i;:::-;16057:139;;15955:248;;;:::o;16209:419::-;;16413:2;16402:9;16398:18;16390:26;;16462:9;16456:4;16452:20;16448:1;16437:9;16433:17;16426:47;16490:131;16616:4;16490:131;:::i;:::-;16482:139;;16380:248;;;:::o;16634:419::-;;16838:2;16827:9;16823:18;16815:26;;16887:9;16881:4;16877:20;16873:1;16862:9;16858:17;16851:47;16915:131;17041:4;16915:131;:::i;:::-;16907:139;;16805:248;;;:::o;17059:419::-;;17263:2;17252:9;17248:18;17240:26;;17312:9;17306:4;17302:20;17298:1;17287:9;17283:17;17276:47;17340:131;17466:4;17340:131;:::i;:::-;17332:139;;17230:248;;;:::o;17484:419::-;;17688:2;17677:9;17673:18;17665:26;;17737:9;17731:4;17727:20;17723:1;17712:9;17708:17;17701:47;17765:131;17891:4;17765:131;:::i;:::-;17757:139;;17655:248;;;:::o;17909:222::-;;18040:2;18029:9;18025:18;18017:26;;18053:71;18121:1;18110:9;18106:17;18097:6;18053:71;:::i;:::-;18007:124;;;;:::o;18137:214::-;;18264:2;18253:9;18249:18;18241:26;;18277:67;18341:1;18330:9;18326:17;18317:6;18277:67;:::i;:::-;18231:120;;;;:::o;18357:283::-;;18423:2;18417:9;18407:19;;18465:4;18457:6;18453:17;18572:6;18560:10;18557:22;18536:18;18524:10;18521:34;18518:62;18515:2;;;18583:18;;:::i;:::-;18515:2;18623:10;18619:2;18612:22;18397:243;;;;:::o;18646:331::-;;18797:18;18789:6;18786:30;18783:2;;;18819:18;;:::i;:::-;18783:2;18904:4;18900:9;18893:4;18885:6;18881:17;18877:33;18869:41;;18965:4;18959;18955:15;18947:23;;18712:265;;;:::o;18983:99::-;;19069:5;19063:12;19053:22;;19042:40;;;:::o;19088:169::-;;19206:6;19201:3;19194:19;19246:4;19241:3;19237:14;19222:29;;19184:73;;;;:::o;19263:305::-;;19322:20;19340:1;19322:20;:::i;:::-;19317:25;;19356:20;19374:1;19356:20;:::i;:::-;19351:25;;19510:1;19442:66;19438:74;19435:1;19432:81;19429:2;;;19516:18;;:::i;:::-;19429:2;19560:1;19557;19553:9;19546:16;;19307:261;;;;:::o;19574:191::-;;19634:20;19652:1;19634:20;:::i;:::-;19629:25;;19668:20;19686:1;19668:20;:::i;:::-;19663:25;;19707:1;19704;19701:8;19698:2;;;19712:18;;:::i;:::-;19698:2;19757:1;19754;19750:9;19742:17;;19619:146;;;;:::o;19771:96::-;;19837:24;19855:5;19837:24;:::i;:::-;19826:35;;19816:51;;;:::o;19873:90::-;;19950:5;19943:13;19936:21;19925:32;;19915:48;;;:::o;19969:77::-;;20035:5;20024:16;;20014:32;;;:::o;20052:126::-;;20129:42;20122:5;20118:54;20107:65;;20097:81;;;:::o;20184:77::-;;20250:5;20239:16;;20229:32;;;:::o;20267:86::-;;20342:4;20335:5;20331:16;20320:27;;20310:43;;;:::o;20359:154::-;20443:6;20438:3;20433;20420:30;20505:1;20496:6;20491:3;20487:16;20480:27;20410:103;;;:::o;20519:307::-;20587:1;20597:113;20611:6;20608:1;20605:13;20597:113;;;20696:1;20691:3;20687:11;20681:18;20677:1;20672:3;20668:11;20661:39;20633:2;20630:1;20626:10;20621:15;;20597:113;;;20728:6;20725:1;20722:13;20719:2;;;20808:1;20799:6;20794:3;20790:16;20783:27;20719:2;20568:258;;;;:::o;20832:320::-;;20913:1;20907:4;20903:12;20893:22;;20960:1;20954:4;20950:12;20981:18;20971:2;;21037:4;21029:6;21025:17;21015:27;;20971:2;21099;21091:6;21088:14;21068:18;21065:38;21062:2;;;21118:18;;:::i;:::-;21062:2;20883:269;;;;:::o;21158:233::-;;21220:24;21238:5;21220:24;:::i;:::-;21211:33;;21266:66;21259:5;21256:77;21253:2;;;21336:18;;:::i;:::-;21253:2;21383:1;21376:5;21372:13;21365:20;;21201:190;;;:::o;21397:180::-;21445:77;21442:1;21435:88;21542:4;21539:1;21532:15;21566:4;21563:1;21556:15;21583:180;21631:77;21628:1;21621:88;21728:4;21725:1;21718:15;21752:4;21749:1;21742:15;21769:180;21817:77;21814:1;21807:88;21914:4;21911:1;21904:15;21938:4;21935:1;21928:15;21955:102;;22047:2;22043:7;22038:2;22031:5;22027:14;22023:28;22013:38;;22003:54;;;:::o;22063:122::-;22136:24;22154:5;22136:24;:::i;:::-;22129:5;22126:35;22116:2;;22175:1;22172;22165:12;22116:2;22106:79;:::o;22191:122::-;22264:24;22282:5;22264:24;:::i;:::-;22257:5;22254:35;22244:2;;22303:1;22300;22293:12;22244:2;22234:79;:::o;22319:122::-;22392:24;22410:5;22392:24;:::i;:::-;22385:5;22382:35;22372:2;;22431:1;22428;22421:12;22372:2;22362:79;:::o
Swarm Source
ipfs://f40d59829383d04ca99d86651747e27245f558eb5c75f9e40d0b8c33d1e63aad
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.