ETH Price: $2,508.22 (+0.35%)
Gas: 0.47 Gwei
 

Overview

ETH Balance

0.185653459274211328 ETH

Eth Value

$465.66 (@ $2,508.22/ETH)

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve226596152025-06-08 11:37:231 hr ago1749382643IN
0x44010973...871Bb1a19
0 ETH0.000167583.54972922
Approve226596072025-06-08 11:35:471 hr ago1749382547IN
0x44010973...871Bb1a19
0 ETH0.000165193.49905662
Approve226596062025-06-08 11:35:351 hr ago1749382535IN
0x44010973...871Bb1a19
0 ETH0.000165063.49631152
Approve226547172025-06-07 19:12:1117 hrs ago1749323531IN
0x44010973...871Bb1a19
0 ETH0.000119822.54143008
Approve226544082025-06-07 18:09:5918 hrs ago1749319799IN
0x44010973...871Bb1a19
0 ETH0.000032111.29232718
Approve226523902025-06-07 11:23:5925 hrs ago1749295439IN
0x44010973...871Bb1a19
0 ETH0.000067981.44012275
Approve226452792025-06-06 11:33:472 days ago1749209627IN
0x44010973...871Bb1a19
0 ETH0.000074711.58496682
Approve226449472025-06-06 10:25:352 days ago1749205535IN
0x44010973...871Bb1a19
0 ETH0.000099642.11340211
Approve226436872025-06-06 6:11:592 days ago1749190319IN
0x44010973...871Bb1a19
0 ETH0.000034641.39333304
Approve226436682025-06-06 6:07:592 days ago1749190079IN
0x44010973...871Bb1a19
0 ETH0.00013982.96507149
Approve226370122025-06-05 7:45:473 days ago1749109547IN
0x44010973...871Bb1a19
0 ETH0.000091831.94613395
Transfer226369952025-06-05 7:42:233 days ago1749109343IN
0x44010973...871Bb1a19
0 ETH0.000272312.68145573
Transfer226311302025-06-04 11:58:594 days ago1749038339IN
0x44010973...871Bb1a19
0 ETH0.000202262.39499938
Transfer226311112025-06-04 11:55:114 days ago1749038111IN
0x44010973...871Bb1a19
0 ETH0.000221262.61953456
Transfer226310832025-06-04 11:49:354 days ago1749037775IN
0x44010973...871Bb1a19
0 ETH0.000198632.35203777
Approve226289282025-06-04 4:34:354 days ago1749011675IN
0x44010973...871Bb1a19
0 ETH0.000056851.20435903
Approve226220382025-06-03 5:26:355 days ago1748928395IN
0x44010973...871Bb1a19
0 ETH0.000025821.03596109
Approve226211442025-06-03 2:27:115 days ago1748917631IN
0x44010973...871Bb1a19
0 ETH0.00013562.87611467
Approve226210442025-06-03 2:06:475 days ago1748916407IN
0x44010973...871Bb1a19
0 ETH0.000054691.1603282
Approve226202562025-06-02 23:28:235 days ago1748906903IN
0x44010973...871Bb1a19
0 ETH0.000099172.10067911
Approve226202412025-06-02 23:25:235 days ago1748906723IN
0x44010973...871Bb1a19
0 ETH0.000108552.29949334
Approve226202392025-06-02 23:24:595 days ago1748906699IN
0x44010973...871Bb1a19
0 ETH0.000314746.66869362
Approve226202382025-06-02 23:24:475 days ago1748906687IN
0x44010973...871Bb1a19
0 ETH0.000322026.82280863
Approve226202342025-06-02 23:23:595 days ago1748906639IN
0x44010973...871Bb1a19
0 ETH0.000227054.80939273
Approve226202292025-06-02 23:22:595 days ago1748906579IN
0x44010973...871Bb1a19
0 ETH0.000231074.8945525
View all transactions

Latest 19 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer223260722025-04-22 17:34:3546 days ago1745343275
0x44010973...871Bb1a19
0.18565345 ETH
Transfer223260422025-04-22 17:28:3546 days ago1745342915
0x44010973...871Bb1a19
0.26649473 ETH
Transfer223260422025-04-22 17:28:3546 days ago1745342915
0x44010973...871Bb1a19
0.26649473 ETH
Transfer223260422025-04-22 17:28:3546 days ago1745342915
0x44010973...871Bb1a19
0.3175157 ETH
Transfer223260422025-04-22 17:28:3546 days ago1745342915
0x44010973...871Bb1a19
0.3175157 ETH
Transfer223260412025-04-22 17:28:2346 days ago1745342903
0x44010973...871Bb1a19
0.37093225 ETH
Transfer223260412025-04-22 17:28:2346 days ago1745342903
0x44010973...871Bb1a19
0.37093225 ETH
Transfer223260382025-04-22 17:27:4746 days ago1745342867
0x44010973...871Bb1a19
0.3588006 ETH
Transfer223260382025-04-22 17:27:4746 days ago1745342867
0x44010973...871Bb1a19
0.3588006 ETH
Transfer223260262025-04-22 17:25:2346 days ago1745342723
0x44010973...871Bb1a19
0.32442473 ETH
Transfer223260262025-04-22 17:25:2346 days ago1745342723
0x44010973...871Bb1a19
0.32442473 ETH
Transfer223260262025-04-22 17:25:2346 days ago1745342723
0x44010973...871Bb1a19
0.39434983 ETH
Transfer223260262025-04-22 17:25:2346 days ago1745342723
0x44010973...871Bb1a19
0.39434983 ETH
Transfer223260252025-04-22 17:25:1146 days ago1745342711
0x44010973...871Bb1a19
0.34821917 ETH
Transfer223260252025-04-22 17:25:1146 days ago1745342711
0x44010973...871Bb1a19
0.34821917 ETH
Transfer223260202025-04-22 17:24:1146 days ago1745342651
0x44010973...871Bb1a19
0.42623846 ETH
Transfer223260202025-04-22 17:24:1146 days ago1745342651
0x44010973...871Bb1a19
0.42623846 ETH
Transfer223259692025-04-22 17:13:5946 days ago1745342039
0x44010973...871Bb1a19
0.36241581 ETH
Transfer223259692025-04-22 17:13:5946 days ago1745342039
0x44010973...871Bb1a19
0.36241581 ETH

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Tio

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2025-04-22
*/

/*
Tio - YEE's Best Friend


WEB: https://Tiooneth op.vip

TG:  https://t.me/tiooneth

X:   https://x.com/tiooneth

*/

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.9;

abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}

interface IERC20 {
function totalSupply() external view returns (uint256);

function balanceOf(address account) external view returns (uint256);

function transfer(address recipient, uint256 amount) external returns (bool);

function allowance(address owner, address spender) external view returns (uint256);

function approve(address spender, uint256 amount) external returns (bool);

function transferFrom(
address sender,
address recipient,
uint256 amount
) external returns (bool);

event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}

contract Ownable is Context {
address private _owner;
address private _previousOwner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);

constructor() {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}

function owner() public view returns (address) {
return _owner;
}

modifier onlyOwner() {
require(_owner == _msgSender(), "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;
}

}

library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}

function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}

function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}

function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}

function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}

function div(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
}

interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB)
external
returns (address pair);
}

interface IUniswapV2Router02 {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;

function factory() external pure returns (address);

function WETH() external pure returns (address);

function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
)
external
payable
returns (
uint256 amountToken,
uint256 amountETH,
uint256 liquidity
);
}

contract Tio is Context, IERC20, Ownable {

using SafeMath for uint256;

string private constant _name = "Tio";
string private constant _symbol = "TIO";
uint8 private constant _decimals = 9;

mapping(address => uint256) private _rOwned;
mapping(address => uint256) private _tOwned;
mapping(address => mapping(address => uint256)) private _allowances;
mapping(address => bool) private _isExcludedFromFee;
uint256 private constant MAX = ~uint256(0);
uint256 private constant _tTotal = 420689899999994 * 10**9;
uint256 private _rTotal = (MAX - (MAX % _tTotal));
uint256 private _tFeeTotal;
uint256 private _redisFeeOnBuy = 0;
uint256 private _taxFeeOnBuy = 0;
uint256 private _redisFeeOnSell = 0;
uint256 private _taxFeeOnSell = 0;

//Original Fee
uint256 private _redisFee = _redisFeeOnSell;
uint256 private _taxFee = _taxFeeOnSell;

uint256 private _previousredisFee = _redisFee;
uint256 private _previoustaxFee = _taxFee;

mapping(address => bool) public bots; mapping (address => uint256) public _buyMap;
address payable private _developmentAddress = payable(0xDc3C5FE58dc2cF269dE6d1E11998dF6C3DF4c557);
address payable private _marketingAddress = payable(0xDc3C5FE58dc2cF269dE6d1E11998dF6C3DF4c557);

IUniswapV2Router02 public uniswapV2Router;
address public uniswapV2Pair;

bool private tradingOpen = true;
bool private inSwap = false;
bool private swapEnabled = true;

uint256 public _maxTxAmount = 8400000000000 * 10**9;
uint256 public _maxWalletSize = 8400000000000 * 10**9;
uint256 public _swapTokensAtAmount = 8400000000000 * 10**9;

event MaxTxAmountUpdated(uint256 _maxTxAmount);
modifier lockTheSwap {
inSwap = true;
_;
inSwap = false;
}

constructor() {

_rOwned[_msgSender()] = _rTotal;

IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);//
uniswapV2Router = _uniswapV2Router;
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
.createPair(address(this), _uniswapV2Router.WETH());

_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[_developmentAddress] = true;
_isExcludedFromFee[_marketingAddress] = true;

emit Transfer(address(0), _msgSender(), _tTotal);
}

function name() public pure returns (string memory) {
return _name;
}

function symbol() public pure returns (string memory) {
return _symbol;
}

function decimals() public pure returns (uint8) {
return _decimals;
}

function totalSupply() public pure override returns (uint256) {
return _tTotal;
}

function balanceOf(address account) public view override returns (uint256) {
return tokenFromReflection(_rOwned[account]);
}

function transfer(address recipient, uint256 amount)
public
override
returns (bool)
{
_transfer(_msgSender(), recipient, amount);
return true;
}

function allowance(address owner, address spender)
public
view
override
returns (uint256)
{
return _allowances[owner][spender];
}

function approve(address spender, uint256 amount)
public
override
returns (bool)
{
_approve(_msgSender(), spender, amount);
return true;
}

function transferFrom(
address sender,
address recipient,
uint256 amount
) public override returns (bool) {
_transfer(sender, recipient, amount);
_approve(
sender,
_msgSender(),
_allowances[sender][_msgSender()].sub(
amount,
"ERC20: transfer amount exceeds allowance"
)
);
return true;
}

function tokenFromReflection(uint256 rAmount)
private
view
returns (uint256)
{
require(
rAmount <= _rTotal,
"Amount must be less than total reflections"
);
uint256 currentRate = _getRate();
return rAmount.div(currentRate);
}

function removeAllFee() private {
if (_redisFee == 0 && _taxFee == 0) return;

_previousredisFee = _redisFee;
_previoustaxFee = _taxFee;

_redisFee = 0;
_taxFee = 0;
}

function restoreAllFee() private {
_redisFee = _previousredisFee;
_taxFee = _previoustaxFee;
}

function _approve(
address owner,
address spender,
uint256 amount
) private {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}

function _transfer(
address from,
address to,
uint256 amount
) private {
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");

if (from != owner() && to != owner()) {

//Trade start check
if (!tradingOpen) {
require(from == owner(), "TOKEN: This account cannot send tokens until trading is enabled");
}

require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
require(!bots[from] && !bots[to], "TOKEN: Your account is blacklisted!");

if(to != uniswapV2Pair) {
require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
}

uint256 contractTokenBalance = balanceOf(address(this));
bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

if(contractTokenBalance >= _maxTxAmount)
{
contractTokenBalance = _maxTxAmount;
}

if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
swapTokensForEth(contractTokenBalance);
uint256 contractETHBalance = address(this).balance;
if (contractETHBalance > 0) {
sendETHToFee(address(this).balance);
}
}
}

bool takeFee = true;

//Transfer Tokens
if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
takeFee = false;
} else {

//Set Fee for Buys
if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
_redisFee = _redisFeeOnBuy;
_taxFee = _taxFeeOnBuy;
}

//Set Fee for Sells
if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
_redisFee = _redisFeeOnSell;
_taxFee = _taxFeeOnSell;
}

}

_tokenTransfer(from, to, amount, takeFee);
}

function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = uniswapV2Router.WETH();
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
address(this),
block.timestamp
);
}

function sendETHToFee(uint256 amount) private {
_marketingAddress.transfer(amount);
}

function setTrading(bool _tradingOpen) public onlyOwner {
tradingOpen = _tradingOpen;
}

function manualswap() external {
require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
uint256 contractBalance = balanceOf(address(this));
swapTokensForEth(contractBalance);
}

function manualsend() external {
require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
uint256 contractETHBalance = address(this).balance;
sendETHToFee(contractETHBalance);
}

function _tokenTransfer(
address sender,
address recipient,
uint256 amount,
bool takeFee
) private {
if (!takeFee) removeAllFee();
_transferStandard(sender, recipient, amount);
if (!takeFee) restoreAllFee();
}

function _transferStandard(
address sender,
address recipient,
uint256 tAmount
) private {
(
uint256 rAmount,
uint256 rTransferAmount,
uint256 rFee,
uint256 tTransferAmount,
uint256 tFee,
uint256 tTeam
) = _getValues(tAmount);
_rOwned[sender] = _rOwned[sender].sub(rAmount);
_rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
_takeTeam(tTeam);
_reflectFee(rFee, tFee);
emit Transfer(sender, recipient, tTransferAmount);
}

function _takeTeam(uint256 tTeam) private {
uint256 currentRate = _getRate();
uint256 rTeam = tTeam.mul(currentRate);
_rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
}

function _reflectFee(uint256 rFee, uint256 tFee) private {
_rTotal = _rTotal.sub(rFee);
_tFeeTotal = _tFeeTotal.add(tFee);
}

receive() external payable {}

function _getValues(uint256 tAmount)
private
view
returns (
uint256,
uint256,
uint256,
uint256,
uint256,
uint256
)
{
(uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
_getTValues(tAmount, _redisFee, _taxFee);
uint256 currentRate = _getRate();
(uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tTeam, currentRate);
return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
}

function _getTValues(
uint256 tAmount,
uint256 redisFee,
uint256 taxFee
)
private
pure
returns (
uint256,
uint256,
uint256
)
{
uint256 tFee = tAmount.mul(redisFee).div(100);
uint256 tTeam = tAmount.mul(taxFee).div(100);
uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
return (tTransferAmount, tFee, tTeam);
}

function _getRValues(
uint256 tAmount,
uint256 tFee,
uint256 tTeam,
uint256 currentRate
)
private
pure
returns (
uint256,
uint256,
uint256
)
{
uint256 rAmount = tAmount.mul(currentRate);
uint256 rFee = tFee.mul(currentRate);
uint256 rTeam = tTeam.mul(currentRate);
uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
return (rAmount, rTransferAmount, rFee);
}

function _getRate() private view returns (uint256) {
(uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
return rSupply.div(tSupply);
}

function _getCurrentSupply() private view returns (uint256, uint256) {
uint256 rSupply = _rTotal;
uint256 tSupply = _tTotal;
if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
return (rSupply, tSupply);
}

function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
_redisFeeOnBuy = redisFeeOnBuy;
_redisFeeOnSell = redisFeeOnSell;
_taxFeeOnBuy = taxFeeOnBuy;
_taxFeeOnSell = taxFeeOnSell;
}

//Set minimum tokens required to swap.
function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) public onlyOwner {
_swapTokensAtAmount = swapTokensAtAmount;
}

//Set minimum tokens required to swap.
function toggleSwap(bool _swapEnabled) public onlyOwner {
swapEnabled = _swapEnabled;
}

//Set maximum transaction
function setMaxTxnAmount(uint256 maxTxAmount) public onlyOwner {
_maxTxAmount = maxTxAmount;
}

function setMaxWalletSize(uint256 maxWalletSize) public onlyOwner {
_maxWalletSize = maxWalletSize;
}

function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner {
for(uint256 i = 0; i < accounts.length; i++) {
_isExcludedFromFee[accounts[i]] = excluded;
}
}

}

Contract Security Audit

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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_buyMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052695915a52a4360a6dd44005f1961001b91906106ee565b5f19610027919061074b565b6006555f6008555f6009555f600a555f600b55600a54600c55600b54600d55600c54600e55600d54600f5573dc3c5fe58dc2cf269de6d1e11998df6c3df4c55760125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073dc3c5fe58dc2cf269de6d1e11998df6c3df4c55760135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601560146101000a81548160ff0219169083151502179055505f6015806101000a81548160ff0219169083151502179055506001601560166101000a81548160ff0219169083151502179055506901c75d6ae6e4814000006016556901c75d6ae6e4814000006017556901c75d6ae6e48140000060185534801561017e575f5ffd5b505f61018e61068a60201b60201c565b9050805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060065460025f61023e61068a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f737a250d5630b4cf539739df2c5dacb4c659f2488d90508060145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561031c573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061034091906107dc565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103a5573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c991906107dc565b6040518363ffffffff1660e01b81526004016103e6929190610816565b6020604051808303815f875af1158015610402573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061042691906107dc565b60155f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160055f61047861069160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061061661068a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef695915a52a4360a6dd440060405161067c919061084c565b60405180910390a350610865565b5f33905090565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6106f8826106b8565b9150610703836106b8565b925082610713576107126106c1565b5b828206905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610755826106b8565b9150610760836106b8565b92508282039050818111156107785761077761071e565b5b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6107ab82610782565b9050919050565b6107bb816107a1565b81146107c5575f5ffd5b50565b5f815190506107d6816107b2565b92915050565b5f602082840312156107f1576107f061077e565b5b5f6107fe848285016107c8565b91505092915050565b610810816107a1565b82525050565b5f6040820190506108295f830185610807565b6108366020830184610807565b9392505050565b610846816106b8565b82525050565b5f60208201905061085f5f83018461083d565b92915050565b6137f8806108725f395ff3fe6080604052600436106101ba575f3560e01c80637f2feddc116100eb578063a9059cbb11610089578063c492f04611610063578063c492f046146105db578063dd62ed3e14610603578063ea1644d51461063f578063f2fde38b14610667576101c1565b8063a9059cbb1461054d578063bfd7928414610589578063c3c8cd80146105c5576101c1565b80638f9a55c0116100c55780638f9a55c0146104a957806395d89b41146104d357806398a5c315146104fd578063a2a957bb14610525576101c1565b80637f2feddc1461041b5780638da5cb5b146104575780638f70ccf714610481576101c1565b806349bd5a5e1161015857806370a082311161013257806370a0823114610377578063715018a6146103b357806374010ece146103c95780637d1db4a5146103f1576101c1565b806349bd5a5e1461030f5780636d8aa8f8146103395780636fc3eaec14610361576101c1565b806318160ddd1161019457806318160ddd1461025557806323b872dd1461027f5780632fd689e3146102bb578063313ce567146102e5576101c1565b806306fdde03146101c5578063095ea7b3146101ef5780631694505e1461022b576101c1565b366101c157005b5f5ffd5b3480156101d0575f5ffd5b506101d961068f565b6040516101e691906128bd565b60405180910390f35b3480156101fa575f5ffd5b5061021560048036038101906102109190612972565b6106cc565b60405161022291906129ca565b60405180910390f35b348015610236575f5ffd5b5061023f6106e9565b60405161024c9190612a3e565b60405180910390f35b348015610260575f5ffd5b5061026961070e565b6040516102769190612a66565b60405180910390f35b34801561028a575f5ffd5b506102a560048036038101906102a09190612a7f565b61071f565b6040516102b291906129ca565b60405180910390f35b3480156102c6575f5ffd5b506102cf6107f3565b6040516102dc9190612a66565b60405180910390f35b3480156102f0575f5ffd5b506102f96107f9565b6040516103069190612aea565b60405180910390f35b34801561031a575f5ffd5b50610323610801565b6040516103309190612b12565b60405180910390f35b348015610344575f5ffd5b5061035f600480360381019061035a9190612b55565b610826565b005b34801561036c575f5ffd5b506103756108d8565b005b348015610382575f5ffd5b5061039d60048036038101906103989190612b80565b6109a5565b6040516103aa9190612a66565b60405180910390f35b3480156103be575f5ffd5b506103c76109f3565b005b3480156103d4575f5ffd5b506103ef60048036038101906103ea9190612bab565b610b43565b005b3480156103fc575f5ffd5b50610405610be2565b6040516104129190612a66565b60405180910390f35b348015610426575f5ffd5b50610441600480360381019061043c9190612b80565b610be8565b60405161044e9190612a66565b60405180910390f35b348015610462575f5ffd5b5061046b610bfd565b6040516104789190612b12565b60405180910390f35b34801561048c575f5ffd5b506104a760048036038101906104a29190612b55565b610c24565b005b3480156104b4575f5ffd5b506104bd610cd6565b6040516104ca9190612a66565b60405180910390f35b3480156104de575f5ffd5b506104e7610cdc565b6040516104f491906128bd565b60405180910390f35b348015610508575f5ffd5b50610523600480360381019061051e9190612bab565b610d19565b005b348015610530575f5ffd5b5061054b60048036038101906105469190612bd6565b610db8565b005b348015610558575f5ffd5b50610573600480360381019061056e9190612972565b610e6f565b60405161058091906129ca565b60405180910390f35b348015610594575f5ffd5b506105af60048036038101906105aa9190612b80565b610e8c565b6040516105bc91906129ca565b60405180910390f35b3480156105d0575f5ffd5b506105d9610ea9565b005b3480156105e6575f5ffd5b5061060160048036038101906105fc9190612c9b565b610f7e565b005b34801561060e575f5ffd5b5061062960048036038101906106249190612cf8565b6110b1565b6040516106369190612a66565b60405180910390f35b34801561064a575f5ffd5b5061066560048036038101906106609190612bab565b611133565b005b348015610672575f5ffd5b5061068d60048036038101906106889190612b80565b6111d2565b005b60606040518060400160405280600381526020017f54696f0000000000000000000000000000000000000000000000000000000000815250905090565b5f6106df6106d8611391565b8484611398565b6001905092915050565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f695915a52a4360a6dd4400905090565b5f61072b84848461155b565b6107e884610737611391565b6107e38560405180606001604052806028815260200161379b6028913960045f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61079a611391565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611dbb9092919063ffffffff16565b611398565b600190509392505050565b60185481565b5f6009905090565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61082e611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b290612d80565b60405180910390fd5b80601560166101000a81548160ff02191690831515021790555050565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610918611391565b73ffffffffffffffffffffffffffffffffffffffff16148061098d575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610975611391565b73ffffffffffffffffffffffffffffffffffffffff16145b610995575f5ffd5b5f4790506109a281611e1d565b50565b5f6109ec60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e85565b9050919050565b6109fb611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7f90612d80565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b4b611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bcf90612d80565b60405180910390fd5b8060168190555050565b60165481565b6011602052805f5260405f205f915090505481565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610c2c611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb090612d80565b60405180910390fd5b80601560146101000a81548160ff02191690831515021790555050565b60175481565b60606040518060400160405280600381526020017f54494f0000000000000000000000000000000000000000000000000000000000815250905090565b610d21611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590612d80565b60405180910390fd5b8060188190555050565b610dc0611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4490612d80565b60405180910390fd5b8360088190555082600a819055508160098190555080600b8190555050505050565b5f610e82610e7b611391565b848461155b565b6001905092915050565b6010602052805f5260405f205f915054906101000a900460ff1681565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ee9611391565b73ffffffffffffffffffffffffffffffffffffffff161480610f5e575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f46611391565b73ffffffffffffffffffffffffffffffffffffffff16145b610f66575f5ffd5b5f610f70306109a5565b9050610f7b81611ef1565b50565b610f86611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611013576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100a90612d80565b60405180910390fd5b5f5f90505b838390508110156110ab578160055f86868581811061103a57611039612d9e565b5b905060200201602081019061104f9190612b80565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050611018565b50505050565b5f60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61113b611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bf90612d80565b60405180910390fd5b8060178190555050565b6111da611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611267576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125e90612d80565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cc90612e3b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd90612ec9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611474576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146b90612f57565b60405180910390fd5b8060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161154e9190612a66565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c090612fe5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611637576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162e90613073565b60405180910390fd5b5f8111611679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167090613101565b60405180910390fd5b611681610bfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116ef57506116bf610bfd565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611ac857601560149054906101000a900460ff1661177e57611710610bfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461177d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117749061318f565b60405180910390fd5b5b6016548111156117c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ba906131f7565b60405180910390fd5b60105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611861575060105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b6118a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189790613285565b60405180910390fd5b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461194c5760175481611901846109a5565b61190b91906132d0565b1061194b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194290613373565b60405180910390fd5b5b5f611956306109a5565b90505f601854821015905060165482106119705760165491505b808015611988575060158054906101000a900460ff16155b80156119e1575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156119f95750601560169054906101000a900460ff165b8015611a4c575060055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611a9f575060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611ac557611aad82611ef1565b5f4790505f811115611ac357611ac247611e1d565b5b505b50505b5f6001905060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611b68575060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80611c19575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611c18575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611c26575f9050611da9565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611ccf575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ce757600854600c81905550600954600d819055505b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611d90575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611da857600a54600c81905550600b54600d819055505b5b611db58484848461215a565b50505050565b5f838311158290611e02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df991906128bd565b60405180910390fd5b505f8385611e109190613391565b9050809150509392505050565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611e81573d5f5f3e3d5ffd5b5050565b5f600654821115611ecb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec290613434565b60405180910390fd5b5f611ed4612187565b9050611ee981846121b090919063ffffffff16565b915050919050565b60016015806101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611f2757611f26613452565b5b604051908082528060200260200182016040528015611f555781602001602082028036833780820191505090505b50905030815f81518110611f6c57611f6b612d9e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612010573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120349190613493565b8160018151811061204857612047612d9e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120ae3060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611398565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121109594939291906135ae565b5f604051808303815f87803b158015612127575f5ffd5b505af1158015612139573d5f5f3e3d5ffd5b50505050505f6015806101000a81548160ff02191690831515021790555050565b80612168576121676121f9565b5b612173848484612232565b80612181576121806123f2565b5b50505050565b5f5f5f612192612406565b915091506121a981836121b090919063ffffffff16565b9250505090565b5f6121f183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612468565b905092915050565b5f600c5414801561220b57505f600d54145b61223057600c54600e81905550600d54600f819055505f600c819055505f600d819055505b565b5f5f5f5f5f5f612241876124c9565b95509550955095509550955061229d8660025f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461252990919063ffffffff16565b60025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061232e8560025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461257290919063ffffffff16565b60025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550612378816125cf565b6123828483612686565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516123df9190612a66565b60405180910390a3505050505050505050565b600e54600c81905550600f54600d81905550565b5f5f5f60065490505f695915a52a4360a6dd4400905061243b695915a52a4360a6dd44006006546121b090919063ffffffff16565b82101561245b57600654695915a52a4360a6dd4400935093505050612464565b81819350935050505b9091565b5f5f831182906124ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a591906128bd565b60405180910390fd5b505f83856124bc9190613633565b9050809150509392505050565b5f5f5f5f5f5f5f5f5f6124e18a600c54600d546126c0565b9250925092505f6124f0612187565b90505f5f5f6125018e878787612752565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b5f61256a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dbb565b905092915050565b5f5f828461258091906132d0565b9050838110156125c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bc906136ad565b60405180910390fd5b8091505092915050565b5f6125d8612187565b90505f6125ee82846127d690919063ffffffff16565b90506126408160025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461257290919063ffffffff16565b60025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b61269b8260065461252990919063ffffffff16565b6006819055506126b68160075461257290919063ffffffff16565b6007819055505050565b5f5f5f5f6126ea60646126dc888a6127d690919063ffffffff16565b6121b090919063ffffffff16565b90505f6127136064612705888b6127d690919063ffffffff16565b6121b090919063ffffffff16565b90505f61273b8261272d858c61252990919063ffffffff16565b61252990919063ffffffff16565b905080838395509550955050505093509350939050565b5f5f5f5f61276985896127d690919063ffffffff16565b90505f61277f86896127d690919063ffffffff16565b90505f61279587896127d690919063ffffffff16565b90505f6127bd826127af858761252990919063ffffffff16565b61252990919063ffffffff16565b9050838184965096509650505050509450945094915050565b5f5f83036127e6575f9050612847565b5f82846127f391906136cb565b90508284826128029190613633565b14612842576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128399061377c565b60405180910390fd5b809150505b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61288f8261284d565b6128998185612857565b93506128a9818560208601612867565b6128b281612875565b840191505092915050565b5f6020820190508181035f8301526128d58184612885565b905092915050565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61290e826128e5565b9050919050565b61291e81612904565b8114612928575f5ffd5b50565b5f8135905061293981612915565b92915050565b5f819050919050565b6129518161293f565b811461295b575f5ffd5b50565b5f8135905061296c81612948565b92915050565b5f5f60408385031215612988576129876128dd565b5b5f6129958582860161292b565b92505060206129a68582860161295e565b9150509250929050565b5f8115159050919050565b6129c4816129b0565b82525050565b5f6020820190506129dd5f8301846129bb565b92915050565b5f819050919050565b5f612a06612a016129fc846128e5565b6129e3565b6128e5565b9050919050565b5f612a17826129ec565b9050919050565b5f612a2882612a0d565b9050919050565b612a3881612a1e565b82525050565b5f602082019050612a515f830184612a2f565b92915050565b612a608161293f565b82525050565b5f602082019050612a795f830184612a57565b92915050565b5f5f5f60608486031215612a9657612a956128dd565b5b5f612aa38682870161292b565b9350506020612ab48682870161292b565b9250506040612ac58682870161295e565b9150509250925092565b5f60ff82169050919050565b612ae481612acf565b82525050565b5f602082019050612afd5f830184612adb565b92915050565b612b0c81612904565b82525050565b5f602082019050612b255f830184612b03565b92915050565b612b34816129b0565b8114612b3e575f5ffd5b50565b5f81359050612b4f81612b2b565b92915050565b5f60208284031215612b6a57612b696128dd565b5b5f612b7784828501612b41565b91505092915050565b5f60208284031215612b9557612b946128dd565b5b5f612ba28482850161292b565b91505092915050565b5f60208284031215612bc057612bbf6128dd565b5b5f612bcd8482850161295e565b91505092915050565b5f5f5f5f60808587031215612bee57612bed6128dd565b5b5f612bfb8782880161295e565b9450506020612c0c8782880161295e565b9350506040612c1d8782880161295e565b9250506060612c2e8782880161295e565b91505092959194509250565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f840112612c5b57612c5a612c3a565b5b8235905067ffffffffffffffff811115612c7857612c77612c3e565b5b602083019150836020820283011115612c9457612c93612c42565b5b9250929050565b5f5f5f60408486031215612cb257612cb16128dd565b5b5f84013567ffffffffffffffff811115612ccf57612cce6128e1565b5b612cdb86828701612c46565b93509350506020612cee86828701612b41565b9150509250925092565b5f5f60408385031215612d0e57612d0d6128dd565b5b5f612d1b8582860161292b565b9250506020612d2c8582860161292b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612d6a602083612857565b9150612d7582612d36565b602082019050919050565b5f6020820190508181035f830152612d9781612d5e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612e25602683612857565b9150612e3082612dcb565b604082019050919050565b5f6020820190508181035f830152612e5281612e19565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612eb3602483612857565b9150612ebe82612e59565b604082019050919050565b5f6020820190508181035f830152612ee081612ea7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f41602283612857565b9150612f4c82612ee7565b604082019050919050565b5f6020820190508181035f830152612f6e81612f35565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612fcf602583612857565b9150612fda82612f75565b604082019050919050565b5f6020820190508181035f830152612ffc81612fc3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61305d602383612857565b915061306882613003565b604082019050919050565b5f6020820190508181035f83015261308a81613051565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6130eb602983612857565b91506130f682613091565b604082019050919050565b5f6020820190508181035f830152613118816130df565b9050919050565b7f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e64205f8201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400602082015250565b5f613179603f83612857565b91506131848261311f565b604082019050919050565b5f6020820190508181035f8301526131a68161316d565b9050919050565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000005f82015250565b5f6131e1601c83612857565b91506131ec826131ad565b602082019050919050565b5f6020820190508181035f83015261320e816131d5565b9050919050565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c6973745f8201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b5f61326f602383612857565b915061327a82613215565b604082019050919050565b5f6020820190508181035f83015261329c81613263565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6132da8261293f565b91506132e58361293f565b92508282019050808211156132fd576132fc6132a3565b5b92915050565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073695f8201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b5f61335d602383612857565b915061336882613303565b604082019050919050565b5f6020820190508181035f83015261338a81613351565b9050919050565b5f61339b8261293f565b91506133a68361293f565b92508282039050818111156133be576133bd6132a3565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c20725f8201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b5f61341e602a83612857565b9150613429826133c4565b604082019050919050565b5f6020820190508181035f83015261344b81613412565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f8151905061348d81612915565b92915050565b5f602082840312156134a8576134a76128dd565b5b5f6134b58482850161347f565b91505092915050565b5f819050919050565b5f6134e16134dc6134d7846134be565b6129e3565b61293f565b9050919050565b6134f1816134c7565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61352981612904565b82525050565b5f61353a8383613520565b60208301905092915050565b5f602082019050919050565b5f61355c826134f7565b6135668185613501565b935061357183613511565b805f5b838110156135a1578151613588888261352f565b975061359383613546565b925050600181019050613574565b5085935050505092915050565b5f60a0820190506135c15f830188612a57565b6135ce60208301876134e8565b81810360408301526135e08186613552565b90506135ef6060830185612b03565b6135fc6080830184612a57565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61363d8261293f565b91506136488361293f565b92508261365857613657613606565b5b828204905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613697601b83612857565b91506136a282613663565b602082019050919050565b5f6020820190508181035f8301526136c48161368b565b9050919050565b5f6136d58261293f565b91506136e08361293f565b92508282026136ee8161293f565b91508282048414831517613705576137046132a3565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613766602183612857565b91506137718261370c565b604082019050919050565b5f6020820190508181035f8301526137938161375a565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203622ce4494f782251d5e65d260ad1b95fd8d32dd374d997284621476d0b5250f64736f6c634300081c0033

Deployed Bytecode

0x6080604052600436106101ba575f3560e01c80637f2feddc116100eb578063a9059cbb11610089578063c492f04611610063578063c492f046146105db578063dd62ed3e14610603578063ea1644d51461063f578063f2fde38b14610667576101c1565b8063a9059cbb1461054d578063bfd7928414610589578063c3c8cd80146105c5576101c1565b80638f9a55c0116100c55780638f9a55c0146104a957806395d89b41146104d357806398a5c315146104fd578063a2a957bb14610525576101c1565b80637f2feddc1461041b5780638da5cb5b146104575780638f70ccf714610481576101c1565b806349bd5a5e1161015857806370a082311161013257806370a0823114610377578063715018a6146103b357806374010ece146103c95780637d1db4a5146103f1576101c1565b806349bd5a5e1461030f5780636d8aa8f8146103395780636fc3eaec14610361576101c1565b806318160ddd1161019457806318160ddd1461025557806323b872dd1461027f5780632fd689e3146102bb578063313ce567146102e5576101c1565b806306fdde03146101c5578063095ea7b3146101ef5780631694505e1461022b576101c1565b366101c157005b5f5ffd5b3480156101d0575f5ffd5b506101d961068f565b6040516101e691906128bd565b60405180910390f35b3480156101fa575f5ffd5b5061021560048036038101906102109190612972565b6106cc565b60405161022291906129ca565b60405180910390f35b348015610236575f5ffd5b5061023f6106e9565b60405161024c9190612a3e565b60405180910390f35b348015610260575f5ffd5b5061026961070e565b6040516102769190612a66565b60405180910390f35b34801561028a575f5ffd5b506102a560048036038101906102a09190612a7f565b61071f565b6040516102b291906129ca565b60405180910390f35b3480156102c6575f5ffd5b506102cf6107f3565b6040516102dc9190612a66565b60405180910390f35b3480156102f0575f5ffd5b506102f96107f9565b6040516103069190612aea565b60405180910390f35b34801561031a575f5ffd5b50610323610801565b6040516103309190612b12565b60405180910390f35b348015610344575f5ffd5b5061035f600480360381019061035a9190612b55565b610826565b005b34801561036c575f5ffd5b506103756108d8565b005b348015610382575f5ffd5b5061039d60048036038101906103989190612b80565b6109a5565b6040516103aa9190612a66565b60405180910390f35b3480156103be575f5ffd5b506103c76109f3565b005b3480156103d4575f5ffd5b506103ef60048036038101906103ea9190612bab565b610b43565b005b3480156103fc575f5ffd5b50610405610be2565b6040516104129190612a66565b60405180910390f35b348015610426575f5ffd5b50610441600480360381019061043c9190612b80565b610be8565b60405161044e9190612a66565b60405180910390f35b348015610462575f5ffd5b5061046b610bfd565b6040516104789190612b12565b60405180910390f35b34801561048c575f5ffd5b506104a760048036038101906104a29190612b55565b610c24565b005b3480156104b4575f5ffd5b506104bd610cd6565b6040516104ca9190612a66565b60405180910390f35b3480156104de575f5ffd5b506104e7610cdc565b6040516104f491906128bd565b60405180910390f35b348015610508575f5ffd5b50610523600480360381019061051e9190612bab565b610d19565b005b348015610530575f5ffd5b5061054b60048036038101906105469190612bd6565b610db8565b005b348015610558575f5ffd5b50610573600480360381019061056e9190612972565b610e6f565b60405161058091906129ca565b60405180910390f35b348015610594575f5ffd5b506105af60048036038101906105aa9190612b80565b610e8c565b6040516105bc91906129ca565b60405180910390f35b3480156105d0575f5ffd5b506105d9610ea9565b005b3480156105e6575f5ffd5b5061060160048036038101906105fc9190612c9b565b610f7e565b005b34801561060e575f5ffd5b5061062960048036038101906106249190612cf8565b6110b1565b6040516106369190612a66565b60405180910390f35b34801561064a575f5ffd5b5061066560048036038101906106609190612bab565b611133565b005b348015610672575f5ffd5b5061068d60048036038101906106889190612b80565b6111d2565b005b60606040518060400160405280600381526020017f54696f0000000000000000000000000000000000000000000000000000000000815250905090565b5f6106df6106d8611391565b8484611398565b6001905092915050565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f695915a52a4360a6dd4400905090565b5f61072b84848461155b565b6107e884610737611391565b6107e38560405180606001604052806028815260200161379b6028913960045f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61079a611391565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611dbb9092919063ffffffff16565b611398565b600190509392505050565b60185481565b5f6009905090565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61082e611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b290612d80565b60405180910390fd5b80601560166101000a81548160ff02191690831515021790555050565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610918611391565b73ffffffffffffffffffffffffffffffffffffffff16148061098d575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610975611391565b73ffffffffffffffffffffffffffffffffffffffff16145b610995575f5ffd5b5f4790506109a281611e1d565b50565b5f6109ec60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e85565b9050919050565b6109fb611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7f90612d80565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b4b611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bcf90612d80565b60405180910390fd5b8060168190555050565b60165481565b6011602052805f5260405f205f915090505481565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610c2c611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb090612d80565b60405180910390fd5b80601560146101000a81548160ff02191690831515021790555050565b60175481565b60606040518060400160405280600381526020017f54494f0000000000000000000000000000000000000000000000000000000000815250905090565b610d21611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590612d80565b60405180910390fd5b8060188190555050565b610dc0611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4490612d80565b60405180910390fd5b8360088190555082600a819055508160098190555080600b8190555050505050565b5f610e82610e7b611391565b848461155b565b6001905092915050565b6010602052805f5260405f205f915054906101000a900460ff1681565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ee9611391565b73ffffffffffffffffffffffffffffffffffffffff161480610f5e575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f46611391565b73ffffffffffffffffffffffffffffffffffffffff16145b610f66575f5ffd5b5f610f70306109a5565b9050610f7b81611ef1565b50565b610f86611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611013576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100a90612d80565b60405180910390fd5b5f5f90505b838390508110156110ab578160055f86868581811061103a57611039612d9e565b5b905060200201602081019061104f9190612b80565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050611018565b50505050565b5f60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61113b611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bf90612d80565b60405180910390fd5b8060178190555050565b6111da611391565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611267576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125e90612d80565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cc90612e3b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd90612ec9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611474576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146b90612f57565b60405180910390fd5b8060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161154e9190612a66565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c090612fe5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611637576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162e90613073565b60405180910390fd5b5f8111611679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167090613101565b60405180910390fd5b611681610bfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116ef57506116bf610bfd565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611ac857601560149054906101000a900460ff1661177e57611710610bfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461177d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117749061318f565b60405180910390fd5b5b6016548111156117c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ba906131f7565b60405180910390fd5b60105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611861575060105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b6118a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189790613285565b60405180910390fd5b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461194c5760175481611901846109a5565b61190b91906132d0565b1061194b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194290613373565b60405180910390fd5b5b5f611956306109a5565b90505f601854821015905060165482106119705760165491505b808015611988575060158054906101000a900460ff16155b80156119e1575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156119f95750601560169054906101000a900460ff165b8015611a4c575060055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611a9f575060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611ac557611aad82611ef1565b5f4790505f811115611ac357611ac247611e1d565b5b505b50505b5f6001905060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611b68575060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80611c19575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611c18575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611c26575f9050611da9565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611ccf575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ce757600854600c81905550600954600d819055505b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611d90575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611da857600a54600c81905550600b54600d819055505b5b611db58484848461215a565b50505050565b5f838311158290611e02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df991906128bd565b60405180910390fd5b505f8385611e109190613391565b9050809150509392505050565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611e81573d5f5f3e3d5ffd5b5050565b5f600654821115611ecb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec290613434565b60405180910390fd5b5f611ed4612187565b9050611ee981846121b090919063ffffffff16565b915050919050565b60016015806101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611f2757611f26613452565b5b604051908082528060200260200182016040528015611f555781602001602082028036833780820191505090505b50905030815f81518110611f6c57611f6b612d9e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612010573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120349190613493565b8160018151811061204857612047612d9e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120ae3060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611398565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121109594939291906135ae565b5f604051808303815f87803b158015612127575f5ffd5b505af1158015612139573d5f5f3e3d5ffd5b50505050505f6015806101000a81548160ff02191690831515021790555050565b80612168576121676121f9565b5b612173848484612232565b80612181576121806123f2565b5b50505050565b5f5f5f612192612406565b915091506121a981836121b090919063ffffffff16565b9250505090565b5f6121f183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612468565b905092915050565b5f600c5414801561220b57505f600d54145b61223057600c54600e81905550600d54600f819055505f600c819055505f600d819055505b565b5f5f5f5f5f5f612241876124c9565b95509550955095509550955061229d8660025f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461252990919063ffffffff16565b60025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061232e8560025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461257290919063ffffffff16565b60025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550612378816125cf565b6123828483612686565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516123df9190612a66565b60405180910390a3505050505050505050565b600e54600c81905550600f54600d81905550565b5f5f5f60065490505f695915a52a4360a6dd4400905061243b695915a52a4360a6dd44006006546121b090919063ffffffff16565b82101561245b57600654695915a52a4360a6dd4400935093505050612464565b81819350935050505b9091565b5f5f831182906124ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a591906128bd565b60405180910390fd5b505f83856124bc9190613633565b9050809150509392505050565b5f5f5f5f5f5f5f5f5f6124e18a600c54600d546126c0565b9250925092505f6124f0612187565b90505f5f5f6125018e878787612752565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b5f61256a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dbb565b905092915050565b5f5f828461258091906132d0565b9050838110156125c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bc906136ad565b60405180910390fd5b8091505092915050565b5f6125d8612187565b90505f6125ee82846127d690919063ffffffff16565b90506126408160025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461257290919063ffffffff16565b60025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b61269b8260065461252990919063ffffffff16565b6006819055506126b68160075461257290919063ffffffff16565b6007819055505050565b5f5f5f5f6126ea60646126dc888a6127d690919063ffffffff16565b6121b090919063ffffffff16565b90505f6127136064612705888b6127d690919063ffffffff16565b6121b090919063ffffffff16565b90505f61273b8261272d858c61252990919063ffffffff16565b61252990919063ffffffff16565b905080838395509550955050505093509350939050565b5f5f5f5f61276985896127d690919063ffffffff16565b90505f61277f86896127d690919063ffffffff16565b90505f61279587896127d690919063ffffffff16565b90505f6127bd826127af858761252990919063ffffffff16565b61252990919063ffffffff16565b9050838184965096509650505050509450945094915050565b5f5f83036127e6575f9050612847565b5f82846127f391906136cb565b90508284826128029190613633565b14612842576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128399061377c565b60405180910390fd5b809150505b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61288f8261284d565b6128998185612857565b93506128a9818560208601612867565b6128b281612875565b840191505092915050565b5f6020820190508181035f8301526128d58184612885565b905092915050565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61290e826128e5565b9050919050565b61291e81612904565b8114612928575f5ffd5b50565b5f8135905061293981612915565b92915050565b5f819050919050565b6129518161293f565b811461295b575f5ffd5b50565b5f8135905061296c81612948565b92915050565b5f5f60408385031215612988576129876128dd565b5b5f6129958582860161292b565b92505060206129a68582860161295e565b9150509250929050565b5f8115159050919050565b6129c4816129b0565b82525050565b5f6020820190506129dd5f8301846129bb565b92915050565b5f819050919050565b5f612a06612a016129fc846128e5565b6129e3565b6128e5565b9050919050565b5f612a17826129ec565b9050919050565b5f612a2882612a0d565b9050919050565b612a3881612a1e565b82525050565b5f602082019050612a515f830184612a2f565b92915050565b612a608161293f565b82525050565b5f602082019050612a795f830184612a57565b92915050565b5f5f5f60608486031215612a9657612a956128dd565b5b5f612aa38682870161292b565b9350506020612ab48682870161292b565b9250506040612ac58682870161295e565b9150509250925092565b5f60ff82169050919050565b612ae481612acf565b82525050565b5f602082019050612afd5f830184612adb565b92915050565b612b0c81612904565b82525050565b5f602082019050612b255f830184612b03565b92915050565b612b34816129b0565b8114612b3e575f5ffd5b50565b5f81359050612b4f81612b2b565b92915050565b5f60208284031215612b6a57612b696128dd565b5b5f612b7784828501612b41565b91505092915050565b5f60208284031215612b9557612b946128dd565b5b5f612ba28482850161292b565b91505092915050565b5f60208284031215612bc057612bbf6128dd565b5b5f612bcd8482850161295e565b91505092915050565b5f5f5f5f60808587031215612bee57612bed6128dd565b5b5f612bfb8782880161295e565b9450506020612c0c8782880161295e565b9350506040612c1d8782880161295e565b9250506060612c2e8782880161295e565b91505092959194509250565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f840112612c5b57612c5a612c3a565b5b8235905067ffffffffffffffff811115612c7857612c77612c3e565b5b602083019150836020820283011115612c9457612c93612c42565b5b9250929050565b5f5f5f60408486031215612cb257612cb16128dd565b5b5f84013567ffffffffffffffff811115612ccf57612cce6128e1565b5b612cdb86828701612c46565b93509350506020612cee86828701612b41565b9150509250925092565b5f5f60408385031215612d0e57612d0d6128dd565b5b5f612d1b8582860161292b565b9250506020612d2c8582860161292b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612d6a602083612857565b9150612d7582612d36565b602082019050919050565b5f6020820190508181035f830152612d9781612d5e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612e25602683612857565b9150612e3082612dcb565b604082019050919050565b5f6020820190508181035f830152612e5281612e19565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612eb3602483612857565b9150612ebe82612e59565b604082019050919050565b5f6020820190508181035f830152612ee081612ea7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f41602283612857565b9150612f4c82612ee7565b604082019050919050565b5f6020820190508181035f830152612f6e81612f35565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612fcf602583612857565b9150612fda82612f75565b604082019050919050565b5f6020820190508181035f830152612ffc81612fc3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61305d602383612857565b915061306882613003565b604082019050919050565b5f6020820190508181035f83015261308a81613051565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6130eb602983612857565b91506130f682613091565b604082019050919050565b5f6020820190508181035f830152613118816130df565b9050919050565b7f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e64205f8201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400602082015250565b5f613179603f83612857565b91506131848261311f565b604082019050919050565b5f6020820190508181035f8301526131a68161316d565b9050919050565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000005f82015250565b5f6131e1601c83612857565b91506131ec826131ad565b602082019050919050565b5f6020820190508181035f83015261320e816131d5565b9050919050565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c6973745f8201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b5f61326f602383612857565b915061327a82613215565b604082019050919050565b5f6020820190508181035f83015261329c81613263565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6132da8261293f565b91506132e58361293f565b92508282019050808211156132fd576132fc6132a3565b5b92915050565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073695f8201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b5f61335d602383612857565b915061336882613303565b604082019050919050565b5f6020820190508181035f83015261338a81613351565b9050919050565b5f61339b8261293f565b91506133a68361293f565b92508282039050818111156133be576133bd6132a3565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c20725f8201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b5f61341e602a83612857565b9150613429826133c4565b604082019050919050565b5f6020820190508181035f83015261344b81613412565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f8151905061348d81612915565b92915050565b5f602082840312156134a8576134a76128dd565b5b5f6134b58482850161347f565b91505092915050565b5f819050919050565b5f6134e16134dc6134d7846134be565b6129e3565b61293f565b9050919050565b6134f1816134c7565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61352981612904565b82525050565b5f61353a8383613520565b60208301905092915050565b5f602082019050919050565b5f61355c826134f7565b6135668185613501565b935061357183613511565b805f5b838110156135a1578151613588888261352f565b975061359383613546565b925050600181019050613574565b5085935050505092915050565b5f60a0820190506135c15f830188612a57565b6135ce60208301876134e8565b81810360408301526135e08186613552565b90506135ef6060830185612b03565b6135fc6080830184612a57565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61363d8261293f565b91506136488361293f565b92508261365857613657613606565b5b828204905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613697601b83612857565b91506136a282613663565b602082019050919050565b5f6020820190508181035f8301526136c48161368b565b9050919050565b5f6136d58261293f565b91506136e08361293f565b92508282026136ee8161293f565b91508282048414831517613705576137046132a3565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613766602183612857565b91506137718261370c565b604082019050919050565b5f6020820190508181035f8301526137938161375a565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203622ce4494f782251d5e65d260ad1b95fd8d32dd374d997284621476d0b5250f64736f6c634300081c0033

Deployed Bytecode Sourcemap

3492:10600:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5742:71;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6483:145;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4727:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5971:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6632:302;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5014:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5896:71;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4771:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13558:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10303:207;;;;;;;;;;;;;:::i;:::-;;6058:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1475:128;;;;;;;;;;;;;:::i;:::-;;13678:96;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4904:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4481:43;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1301:67;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9998:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4958:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5817:75;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13387:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13088:255;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6188:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4443:36;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10091:208;;;;;;;;;;;;;:::i;:::-;;13885:202;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6343:136;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13778:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1607:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5742:71;5779:13;5804:5;;;;;;;;;;;;;;;;;5797:12;;5742:71;:::o;6483:145::-;6561:4;6571:39;6580:12;:10;:12::i;:::-;6594:7;6603:6;6571:8;:39::i;:::-;6620:4;6613:11;;6483:145;;;;:::o;4727:41::-;;;;;;;;;;;;;:::o;5971:83::-;6024:7;3988:23;6036:14;;5971:83;:::o;6632:302::-;6736:4;6745:36;6755:6;6763:9;6774:6;6745:9;:36::i;:::-;6784:132;6795:6;6804:12;:10;:12::i;:::-;6819:94;6859:6;6819:94;;;;;;;;;;;;;;;;;:11;:19;6831:6;6819:19;;;;;;;;;;;;;;;:33;6839:12;:10;:12::i;:::-;6819:33;;;;;;;;;;;;;;;;:37;;:94;;;;;:::i;:::-;6784:8;:132::i;:::-;6926:4;6919:11;;6632:302;;;;;:::o;5014:58::-;;;;:::o;5896:71::-;5937:5;3686:1;5947:16;;5896:71;:::o;4771:28::-;;;;;;;;;;;;;:::o;13558:89::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13631:12:::1;13617:11;;:26;;;;;;;;;;;;;;;;;;13558:89:::0;:::o;10303:207::-;10361:19;;;;;;;;;;;10345:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;10400:17;;;;;;;;;;;10384:33;;:12;:10;:12::i;:::-;:33;;;10345:72;10337:81;;;;;;10421:26;10450:21;10421:50;;10474:32;10487:18;10474:12;:32::i;:::-;10334:176;10303:207::o;6058:126::-;6124:7;6143:37;6163:7;:16;6171:7;6163:16;;;;;;;;;;;;;;;;6143:19;:37::i;:::-;6136:44;;6058:126;;;:::o;1475:128::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1574:1:::1;1537:40;;1558:6;;;;;;;;;;;1537:40;;;;;;;;;;;;1597:1;1580:6;;:19;;;;;;;;;;;;;;;;;;1475:128::o:0;13678:96::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13759:11:::1;13744:12;:26;;;;13678:96:::0;:::o;4904:51::-;;;;:::o;4481:43::-;;;;;;;;;;;;;;;;;:::o;1301:67::-;1339:7;1358:6;;;;;;;;;;;1351:13;;1301:67;:::o;9998:89::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10071:12:::1;10057:11;;:26;;;;;;;;;;;;;;;;;;9998:89:::0;:::o;4958:53::-;;;;:::o;5817:75::-;5856:13;5881:7;;;;;;;;;;;;;;;;;5874:14;;5817:75;:::o;13387:127::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13492:18:::1;13470:19;:40;;;;13387:127:::0;:::o;13088:255::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13231:13:::1;13214:14;:30;;;;13265:14;13247:15;:32;;;;13297:11;13282:12;:26;;;;13327:12;13311:13;:28;;;;13088:255:::0;;;;:::o;6188:151::-;6269:4;6279:42;6289:12;:10;:12::i;:::-;6303:9;6314:6;6279:9;:42::i;:::-;6331:4;6324:11;;6188:151;;;;:::o;4443:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;10091:208::-;10149:19;;;;;;;;;;;10133:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;10188:17;;;;;;;;;;;10172:33;;:12;:10;:12::i;:::-;:33;;;10133:72;10125:81;;;;;;10209:23;10235:24;10253:4;10235:9;:24::i;:::-;10209:50;;10262:33;10279:15;10262:16;:33::i;:::-;10122:177;10091:208::o;13885:202::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13994:9:::1;14006:1;13994:13;;13990:94;14013:8;;:15;;14009:1;:19;13990:94;;;14072:8;14038:18;:31;14057:8;;14066:1;14057:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;14038:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;14030:3;;;;;;;13990:94;;;;13885:202:::0;;;:::o;6343:136::-;6428:7;6448:11;:18;6460:5;6448:18;;;;;;;;;;;;;;;:27;6467:7;6448:27;;;;;;;;;;;;;;;;6441:34;;6343:136;;;;:::o;13778:103::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13864:13:::1;13847:14;:30;;;;13778:103:::0;:::o;1607:216::-;1414:12;:10;:12::i;:::-;1404:22;;:6;;;;;;;;;;;:22;;;1396:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1708:1:::1;1688:22;;:8;:22;;::::0;1680:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1790:8;1761:38;;1782:6;;;;;;;;;;;1761:38;;;;;;;;;;;;1811:8;1802:6;;:17;;;;;;;;;;;;;;;;;;1607:216:::0;:::o;228:86::-;281:7;300:10;293:17;;228:86;:::o;7457:305::-;7565:1;7548:19;;:5;:19;;;7540:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7638:1;7619:21;;:7;:21;;;7611:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7712:6;7682:11;:18;7694:5;7682:18;;;;;;;;;;;;;;;:27;7701:7;7682:27;;;;;;;;;;;;;;;:36;;;;7742:7;7726:32;;7735:5;7726:32;;;7751:6;7726:32;;;;;;:::i;:::-;;;;;;;;7457:305;;;:::o;7766:1762::-;7868:1;7852:18;;:4;:18;;;7844:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7937:1;7923:16;;:2;:16;;;7915:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7999:1;7990:6;:10;7982:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8063:7;:5;:7::i;:::-;8055:15;;:4;:15;;;;:32;;;;;8080:7;:5;:7::i;:::-;8074:13;;:2;:13;;;;8055:32;8051:951;;;8120:11;;;;;;;;;;;8115:116;;8152:7;:5;:7::i;:::-;8144:15;;:4;:15;;;8136:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;8115:116;8253:12;;8243:6;:22;;8235:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;8310:4;:10;8315:4;8310:10;;;;;;;;;;;;;;;;;;;;;;;;;8309:11;:24;;;;;8325:4;:8;8330:2;8325:8;;;;;;;;;;;;;;;;;;;;;;;;;8324:9;8309:24;8301:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;8387:13;;;;;;;;;;;8381:19;;:2;:19;;;8378:118;;8438:14;;8429:6;8413:13;8423:2;8413:9;:13::i;:::-;:22;;;;:::i;:::-;:39;8405:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;8378:118;8500:28;8531:24;8549:4;8531:9;:24::i;:::-;8500:55;;8558:12;8597:19;;8573:20;:43;;8558:58;;8648:12;;8624:20;:36;8621:84;;8689:12;;8666:35;;8621:84;8713:7;:18;;;;;8725:6;;;;;;;;;;8724:7;8713:18;:43;;;;;8743:13;;;;;;;;;;;8735:21;;:4;:21;;;;8713:43;:58;;;;;8760:11;;;;;;;;;;;8713:58;:87;;;;;8776:18;:24;8795:4;8776:24;;;;;;;;;;;;;;;;;;;;;;;;;8775:25;8713:87;:114;;;;;8805:18;:22;8824:2;8805:22;;;;;;;;;;;;;;;;;;;;;;;;;8804:23;8713:114;8709:290;;;8832:38;8849:20;8832:16;:38::i;:::-;8873:26;8902:21;8873:50;;8951:1;8930:18;:22;8926:70;;;8957:35;8970:21;8957:12;:35::i;:::-;8926:70;8829:170;8709:290;8089:913;;8051:951;9006:12;9021:4;9006:19;;9054:18;:24;9073:4;9054:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;9082:18;:22;9101:2;9082:22;;;;;;;;;;;;;;;;;;;;;;;;;9054:50;9053:102;;;;9118:13;;;;;;;;;;;9110:21;;:4;:21;;;;:44;;;;;9141:13;;;;;;;;;;;9135:19;;:2;:19;;;;9110:44;9053:102;9049:430;;;9170:5;9160:15;;9049:430;;;9221:13;;;;;;;;;;;9213:21;;:4;:21;;;:55;;;;;9252:15;;;;;;;;;;;9238:30;;:2;:30;;;;9213:55;9210:118;;;9285:14;;9273:9;:26;;;;9312:12;;9302:7;:22;;;;9210:118;9363:13;;;;;;;;;;;9357:19;;:2;:19;;;:55;;;;;9396:15;;;;;;;;;;;9380:32;;:4;:32;;;;9357:55;9353:121;;;9429:15;;9417:9;:27;;;;9457:13;;9447:7;:23;;;;9353:121;9049:430;9483:41;9498:4;9504:2;9508:6;9516:7;9483:14;:41::i;:::-;7841:1687;7766:1762;;;:::o;2135:168::-;2227:7;2252:1;2247;:6;;2255:12;2239:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2271:9;2287:1;2283;:5;;;;:::i;:::-;2271:17;;2298:1;2291:8;;;2135:168;;;;;:::o;9907:87::-;9956:17;;;;;;;;;;;:26;;:34;9983:6;9956:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9907:87;:::o;6938:235::-;7009:7;7043;;7032;:18;;7022:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;7103:19;7125:10;:8;:10::i;:::-;7103:32;;7145:24;7157:11;7145:7;:11;;:24;;;;:::i;:::-;7138:31;;;6938:235;;;:::o;9532:371::-;5159:4;5150:6;;:13;;;;;;;;;;;;;;;;;;9602:21:::1;9640:1;9626:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9602:40;;9663:4;9645;9650:1;9645:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9681:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9671:4;9676:1;9671:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9706:62;9723:4;9738:15;;;;;;;;;;;9756:11;9706:8;:62::i;:::-;9771:15;;;;;;;;;;;:66;;;9840:11;9854:1;9858:4;9873;9881:15;9771:128;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9599:304;5179:5:::0;5170:6;;:14;;;;;;;;;;;;;;;;;;9532:371;:::o;10514:218::-;10626:7;10621:28;;10635:14;:12;:14::i;:::-;10621:28;10652:44;10670:6;10678:9;10689:6;10652:17;:44::i;:::-;10704:7;10699:29;;10713:15;:13;:15::i;:::-;10699:29;10514:218;;;;:::o;12715:144::-;12757:7;12770:15;12787;12806:19;:17;:19::i;:::-;12769:56;;;;12835:20;12847:7;12835;:11;;:20;;;;:::i;:::-;12828:27;;;;12715:144;:::o;2501:120::-;2559:7;2578:39;2582:1;2585;2578:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2571:46;;2501:120;;;;:::o;7177:175::-;7229:1;7216:9;;:14;:30;;;;;7245:1;7234:7;;:12;7216:30;7248:7;7212:43;7279:9;;7259:17;:29;;;;7309:7;;7291:15;:25;;;;7333:1;7321:9;:13;;;;7347:1;7337:7;:11;;;;7177:175;:::o;10736:450::-;10835:15;10853:23;10879:12;10894:23;10920:12;10935:13;10954:19;10965:7;10954:10;:19::i;:::-;10832:141;;;;;;;;;;;;10994:28;11014:7;10994;:15;11002:6;10994:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10976:7;:15;10984:6;10976:15;;;;;;;;;;;;;;;:46;;;;11046:39;11069:15;11046:7;:18;11054:9;11046:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11025:7;:18;11033:9;11025:18;;;;;;;;;;;;;;;:60;;;;11088:16;11098:5;11088:9;:16::i;:::-;11107:23;11119:4;11125;11107:11;:23::i;:::-;11155:9;11138:44;;11147:6;11138:44;;;11166:15;11138:44;;;;;;:::i;:::-;;;;;;;;10829:357;;;;;;10736:450;;;:::o;7356:97::-;7404:17;;7392:9;:29;;;;7434:15;;7424:7;:25;;;;7356:97::o;12863:221::-;12914:7;12923;12935:15;12953:7;;12935:25;;12963:15;3988:23;12963:25;;13005:20;3988:23;13005:7;;:11;;:20;;;;:::i;:::-;12995:7;:30;12991:61;;;13035:7;;3988:23;13027:25;;;;;;;;12991:61;13063:7;13072;13055:25;;;;;;12863:221;;;:::o;2625:167::-;2717:7;2741:1;2737;:5;2744:12;2729:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2760:9;2776:1;2772;:5;;;;:::i;:::-;2760:17;;2787:1;2780:8;;;2625:167;;;;;:::o;11541:447::-;11605:7;11615;11625;11635;11645;11655;11671:23;11696:12;11710:13;11728:40;11740:7;11749:9;;11760:7;;11728:11;:40::i;:::-;11670:98;;;;;;11771:19;11793:10;:8;:10::i;:::-;11771:32;;11807:15;11824:23;11849:12;11866:46;11878:7;11887:4;11893:5;11900:11;11866;:46::i;:::-;11806:106;;;;;;11923:7;11932:15;11949:4;11955:15;11972:4;11978:5;11915:69;;;;;;;;;;;;;;;;;;;11541:447;;;;;;;:::o;2007:124::-;2065:7;2084:43;2088:1;2091;2084:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2077:50;;2007:124;;;;:::o;1852:151::-;1910:7;1922:9;1938:1;1934;:5;;;;:::i;:::-;1922:17;;1955:1;1950;:6;;1942:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1998:1;1991:8;;;1852:151;;;;:::o;11190:183::-;11235:19;11257:10;:8;:10::i;:::-;11235:32;;11270:13;11286:22;11296:11;11286:5;:9;;:22;;;;:::i;:::-;11270:38;;11336:33;11363:5;11336:7;:22;11352:4;11336:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;11311:7;:22;11327:4;11311:22;;;;;;;;;;;;;;;:58;;;;11232:141;;11190:183;:::o;11377:127::-;11447:17;11459:4;11447:7;;:11;;:17;;;;:::i;:::-;11437:7;:27;;;;11480:20;11495:4;11480:10;;:14;;:20;;;;:::i;:::-;11467:10;:33;;;;11377:127;;:::o;11992:333::-;12097:7;12107;12117;12132:12;12147:30;12173:3;12147:21;12159:8;12147:7;:11;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;12132:45;;12180:13;12196:28;12220:3;12196:19;12208:6;12196:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;12180:44;;12227:23;12253:28;12275:5;12253:17;12265:4;12253:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12227:54;;12292:15;12309:4;12315:5;12284:37;;;;;;;;;11992:333;;;;;;;:::o;12329:382::-;12451:7;12461;12471;12486:15;12504:24;12516:11;12504:7;:11;;:24;;;;:::i;:::-;12486:42;;12531:12;12546:21;12555:11;12546:4;:8;;:21;;;;:::i;:::-;12531:36;;12570:13;12586:22;12596:11;12586:5;:9;;:22;;;;:::i;:::-;12570:38;;12611:23;12637:28;12659:5;12637:17;12649:4;12637:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12611:54;;12676:7;12685:15;12702:4;12668:39;;;;;;;;;;12329:382;;;;;;;;:::o;2307:190::-;2365:7;2386:1;2381;:6;2377:27;;2399:1;2392:8;;;;2377:27;2406:9;2422:1;2418;:5;;;;:::i;:::-;2406:17;;2443:1;2438;2434;:5;;;;:::i;:::-;:10;2426:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2492:1;2485:8;;;2307:190;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1323:117::-;1432:1;1429;1422:12;1446:117;1555:1;1552;1545:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:60::-;3367:3;3388:5;3381:12;;3339:60;;;:::o;3405:142::-;3455:9;3488:53;3506:34;3515:24;3533:5;3515:24;:::i;:::-;3506:34;:::i;:::-;3488:53;:::i;:::-;3475:66;;3405:142;;;:::o;3553:126::-;3603:9;3636:37;3667:5;3636:37;:::i;:::-;3623:50;;3553:126;;;:::o;3685:152::-;3761:9;3794:37;3825:5;3794:37;:::i;:::-;3781:50;;3685:152;;;:::o;3843:183::-;3956:63;4013:5;3956:63;:::i;:::-;3951:3;3944:76;3843:183;;:::o;4032:274::-;4151:4;4189:2;4178:9;4174:18;4166:26;;4202:97;4296:1;4285:9;4281:17;4272:6;4202:97;:::i;:::-;4032:274;;;;:::o;4312:118::-;4399:24;4417:5;4399:24;:::i;:::-;4394:3;4387:37;4312:118;;:::o;4436:222::-;4529:4;4567:2;4556:9;4552:18;4544:26;;4580:71;4648:1;4637:9;4633:17;4624:6;4580:71;:::i;:::-;4436:222;;;;:::o;4664:619::-;4741:6;4749;4757;4806:2;4794:9;4785:7;4781:23;4777:32;4774:119;;;4812:79;;:::i;:::-;4774:119;4932:1;4957:53;5002:7;4993:6;4982:9;4978:22;4957:53;:::i;:::-;4947:63;;4903:117;5059:2;5085:53;5130:7;5121:6;5110:9;5106:22;5085:53;:::i;:::-;5075:63;;5030:118;5187:2;5213:53;5258:7;5249:6;5238:9;5234:22;5213:53;:::i;:::-;5203:63;;5158:118;4664:619;;;;;:::o;5289:86::-;5324:7;5364:4;5357:5;5353:16;5342:27;;5289:86;;;:::o;5381:112::-;5464:22;5480:5;5464:22;:::i;:::-;5459:3;5452:35;5381:112;;:::o;5499:214::-;5588:4;5626:2;5615:9;5611:18;5603:26;;5639:67;5703:1;5692:9;5688:17;5679:6;5639:67;:::i;:::-;5499:214;;;;:::o;5719:118::-;5806:24;5824:5;5806:24;:::i;:::-;5801:3;5794:37;5719:118;;:::o;5843:222::-;5936:4;5974:2;5963:9;5959:18;5951:26;;5987:71;6055:1;6044:9;6040:17;6031:6;5987:71;:::i;:::-;5843:222;;;;:::o;6071:116::-;6141:21;6156:5;6141:21;:::i;:::-;6134:5;6131:32;6121:60;;6177:1;6174;6167:12;6121:60;6071:116;:::o;6193:133::-;6236:5;6274:6;6261:20;6252:29;;6290:30;6314:5;6290:30;:::i;:::-;6193:133;;;;:::o;6332:323::-;6388:6;6437:2;6425:9;6416:7;6412:23;6408:32;6405:119;;;6443:79;;:::i;:::-;6405:119;6563:1;6588:50;6630:7;6621:6;6610:9;6606:22;6588:50;:::i;:::-;6578:60;;6534:114;6332:323;;;;:::o;6661:329::-;6720:6;6769:2;6757:9;6748:7;6744:23;6740:32;6737:119;;;6775:79;;:::i;:::-;6737:119;6895:1;6920:53;6965:7;6956:6;6945:9;6941:22;6920:53;:::i;:::-;6910:63;;6866:117;6661:329;;;;:::o;6996:::-;7055:6;7104:2;7092:9;7083:7;7079:23;7075:32;7072:119;;;7110:79;;:::i;:::-;7072:119;7230:1;7255:53;7300:7;7291:6;7280:9;7276:22;7255:53;:::i;:::-;7245:63;;7201:117;6996:329;;;;:::o;7331:765::-;7417:6;7425;7433;7441;7490:3;7478:9;7469:7;7465:23;7461:33;7458:120;;;7497:79;;:::i;:::-;7458:120;7617:1;7642:53;7687:7;7678:6;7667:9;7663:22;7642:53;:::i;:::-;7632:63;;7588:117;7744:2;7770:53;7815:7;7806:6;7795:9;7791:22;7770:53;:::i;:::-;7760:63;;7715:118;7872:2;7898:53;7943:7;7934:6;7923:9;7919:22;7898:53;:::i;:::-;7888:63;;7843:118;8000:2;8026:53;8071:7;8062:6;8051:9;8047:22;8026:53;:::i;:::-;8016:63;;7971:118;7331:765;;;;;;;:::o;8102:117::-;8211:1;8208;8201:12;8225:117;8334:1;8331;8324:12;8348:117;8457:1;8454;8447:12;8488:568;8561:8;8571:6;8621:3;8614:4;8606:6;8602:17;8598:27;8588:122;;8629:79;;:::i;:::-;8588:122;8742:6;8729:20;8719:30;;8772:18;8764:6;8761:30;8758:117;;;8794:79;;:::i;:::-;8758:117;8908:4;8900:6;8896:17;8884:29;;8962:3;8954:4;8946:6;8942:17;8932:8;8928:32;8925:41;8922:128;;;8969:79;;:::i;:::-;8922:128;8488:568;;;;;:::o;9062:698::-;9154:6;9162;9170;9219:2;9207:9;9198:7;9194:23;9190:32;9187:119;;;9225:79;;:::i;:::-;9187:119;9373:1;9362:9;9358:17;9345:31;9403:18;9395:6;9392:30;9389:117;;;9425:79;;:::i;:::-;9389:117;9538:80;9610:7;9601:6;9590:9;9586:22;9538:80;:::i;:::-;9520:98;;;;9316:312;9667:2;9693:50;9735:7;9726:6;9715:9;9711:22;9693:50;:::i;:::-;9683:60;;9638:115;9062:698;;;;;:::o;9766:474::-;9834:6;9842;9891:2;9879:9;9870:7;9866:23;9862:32;9859:119;;;9897:79;;:::i;:::-;9859:119;10017:1;10042:53;10087:7;10078:6;10067:9;10063:22;10042:53;:::i;:::-;10032:63;;9988:117;10144:2;10170:53;10215:7;10206:6;10195:9;10191:22;10170:53;:::i;:::-;10160:63;;10115:118;9766:474;;;;;:::o;10246:182::-;10386:34;10382:1;10374:6;10370:14;10363:58;10246:182;:::o;10434:366::-;10576:3;10597:67;10661:2;10656:3;10597:67;:::i;:::-;10590:74;;10673:93;10762:3;10673:93;:::i;:::-;10791:2;10786:3;10782:12;10775:19;;10434:366;;;:::o;10806:419::-;10972:4;11010:2;10999:9;10995:18;10987:26;;11059:9;11053:4;11049:20;11045:1;11034:9;11030:17;11023:47;11087:131;11213:4;11087:131;:::i;:::-;11079:139;;10806:419;;;:::o;11231:180::-;11279:77;11276:1;11269:88;11376:4;11373:1;11366:15;11400:4;11397:1;11390:15;11417:225;11557:34;11553:1;11545:6;11541:14;11534:58;11626:8;11621:2;11613:6;11609:15;11602:33;11417:225;:::o;11648:366::-;11790:3;11811:67;11875:2;11870:3;11811:67;:::i;:::-;11804:74;;11887:93;11976:3;11887:93;:::i;:::-;12005:2;12000:3;11996:12;11989:19;;11648:366;;;:::o;12020:419::-;12186:4;12224:2;12213:9;12209:18;12201:26;;12273:9;12267:4;12263:20;12259:1;12248:9;12244:17;12237:47;12301:131;12427:4;12301:131;:::i;:::-;12293:139;;12020:419;;;:::o;12445:223::-;12585:34;12581:1;12573:6;12569:14;12562:58;12654:6;12649:2;12641:6;12637:15;12630:31;12445:223;:::o;12674:366::-;12816:3;12837:67;12901:2;12896:3;12837:67;:::i;:::-;12830:74;;12913:93;13002:3;12913:93;:::i;:::-;13031:2;13026:3;13022:12;13015:19;;12674:366;;;:::o;13046:419::-;13212:4;13250:2;13239:9;13235:18;13227:26;;13299:9;13293:4;13289:20;13285:1;13274:9;13270:17;13263:47;13327:131;13453:4;13327:131;:::i;:::-;13319:139;;13046:419;;;:::o;13471:221::-;13611:34;13607:1;13599:6;13595:14;13588:58;13680:4;13675:2;13667:6;13663:15;13656:29;13471:221;:::o;13698:366::-;13840:3;13861:67;13925:2;13920:3;13861:67;:::i;:::-;13854:74;;13937:93;14026:3;13937:93;:::i;:::-;14055:2;14050:3;14046:12;14039:19;;13698:366;;;:::o;14070:419::-;14236:4;14274:2;14263:9;14259:18;14251:26;;14323:9;14317:4;14313:20;14309:1;14298:9;14294:17;14287:47;14351:131;14477:4;14351:131;:::i;:::-;14343:139;;14070:419;;;:::o;14495:224::-;14635:34;14631:1;14623:6;14619:14;14612:58;14704:7;14699:2;14691:6;14687:15;14680:32;14495:224;:::o;14725:366::-;14867:3;14888:67;14952:2;14947:3;14888:67;:::i;:::-;14881:74;;14964:93;15053:3;14964:93;:::i;:::-;15082:2;15077:3;15073:12;15066:19;;14725:366;;;:::o;15097:419::-;15263:4;15301:2;15290:9;15286:18;15278:26;;15350:9;15344:4;15340:20;15336:1;15325:9;15321:17;15314:47;15378:131;15504:4;15378:131;:::i;:::-;15370:139;;15097:419;;;:::o;15522:222::-;15662:34;15658:1;15650:6;15646:14;15639:58;15731:5;15726:2;15718:6;15714:15;15707:30;15522:222;:::o;15750:366::-;15892:3;15913:67;15977:2;15972:3;15913:67;:::i;:::-;15906:74;;15989:93;16078:3;15989:93;:::i;:::-;16107:2;16102:3;16098:12;16091:19;;15750:366;;;:::o;16122:419::-;16288:4;16326:2;16315:9;16311:18;16303:26;;16375:9;16369:4;16365:20;16361:1;16350:9;16346:17;16339:47;16403:131;16529:4;16403:131;:::i;:::-;16395:139;;16122:419;;;:::o;16547:228::-;16687:34;16683:1;16675:6;16671:14;16664:58;16756:11;16751:2;16743:6;16739:15;16732:36;16547:228;:::o;16781:366::-;16923:3;16944:67;17008:2;17003:3;16944:67;:::i;:::-;16937:74;;17020:93;17109:3;17020:93;:::i;:::-;17138:2;17133:3;17129:12;17122:19;;16781:366;;;:::o;17153:419::-;17319:4;17357:2;17346:9;17342:18;17334:26;;17406:9;17400:4;17396:20;17392:1;17381:9;17377:17;17370:47;17434:131;17560:4;17434:131;:::i;:::-;17426:139;;17153:419;;;:::o;17578:250::-;17718:34;17714:1;17706:6;17702:14;17695:58;17787:33;17782:2;17774:6;17770:15;17763:58;17578:250;:::o;17834:366::-;17976:3;17997:67;18061:2;18056:3;17997:67;:::i;:::-;17990:74;;18073:93;18162:3;18073:93;:::i;:::-;18191:2;18186:3;18182:12;18175:19;;17834:366;;;:::o;18206:419::-;18372:4;18410:2;18399:9;18395:18;18387:26;;18459:9;18453:4;18449:20;18445:1;18434:9;18430:17;18423:47;18487:131;18613:4;18487:131;:::i;:::-;18479:139;;18206:419;;;:::o;18631:178::-;18771:30;18767:1;18759:6;18755:14;18748:54;18631:178;:::o;18815:366::-;18957:3;18978:67;19042:2;19037:3;18978:67;:::i;:::-;18971:74;;19054:93;19143:3;19054:93;:::i;:::-;19172:2;19167:3;19163:12;19156:19;;18815:366;;;:::o;19187:419::-;19353:4;19391:2;19380:9;19376:18;19368:26;;19440:9;19434:4;19430:20;19426:1;19415:9;19411:17;19404:47;19468:131;19594:4;19468:131;:::i;:::-;19460:139;;19187:419;;;:::o;19612:222::-;19752:34;19748:1;19740:6;19736:14;19729:58;19821:5;19816:2;19808:6;19804:15;19797:30;19612:222;:::o;19840:366::-;19982:3;20003:67;20067:2;20062:3;20003:67;:::i;:::-;19996:74;;20079:93;20168:3;20079:93;:::i;:::-;20197:2;20192:3;20188:12;20181:19;;19840:366;;;:::o;20212:419::-;20378:4;20416:2;20405:9;20401:18;20393:26;;20465:9;20459:4;20455:20;20451:1;20440:9;20436:17;20429:47;20493:131;20619:4;20493:131;:::i;:::-;20485:139;;20212:419;;;:::o;20637:180::-;20685:77;20682:1;20675:88;20782:4;20779:1;20772:15;20806:4;20803:1;20796:15;20823:191;20863:3;20882:20;20900:1;20882:20;:::i;:::-;20877:25;;20916:20;20934:1;20916:20;:::i;:::-;20911:25;;20959:1;20956;20952:9;20945:16;;20980:3;20977:1;20974:10;20971:36;;;20987:18;;:::i;:::-;20971:36;20823:191;;;;:::o;21020:222::-;21160:34;21156:1;21148:6;21144:14;21137:58;21229:5;21224:2;21216:6;21212:15;21205:30;21020:222;:::o;21248:366::-;21390:3;21411:67;21475:2;21470:3;21411:67;:::i;:::-;21404:74;;21487:93;21576:3;21487:93;:::i;:::-;21605:2;21600:3;21596:12;21589:19;;21248:366;;;:::o;21620:419::-;21786:4;21824:2;21813:9;21809:18;21801:26;;21873:9;21867:4;21863:20;21859:1;21848:9;21844:17;21837:47;21901:131;22027:4;21901:131;:::i;:::-;21893:139;;21620:419;;;:::o;22045:194::-;22085:4;22105:20;22123:1;22105:20;:::i;:::-;22100:25;;22139:20;22157:1;22139:20;:::i;:::-;22134:25;;22183:1;22180;22176:9;22168:17;;22207:1;22201:4;22198:11;22195:37;;;22212:18;;:::i;:::-;22195:37;22045:194;;;;:::o;22245:229::-;22385:34;22381:1;22373:6;22369:14;22362:58;22454:12;22449:2;22441:6;22437:15;22430:37;22245:229;:::o;22480:366::-;22622:3;22643:67;22707:2;22702:3;22643:67;:::i;:::-;22636:74;;22719:93;22808:3;22719:93;:::i;:::-;22837:2;22832:3;22828:12;22821:19;;22480:366;;;:::o;22852:419::-;23018:4;23056:2;23045:9;23041:18;23033:26;;23105:9;23099:4;23095:20;23091:1;23080:9;23076:17;23069:47;23133:131;23259:4;23133:131;:::i;:::-;23125:139;;22852:419;;;:::o;23277:180::-;23325:77;23322:1;23315:88;23422:4;23419:1;23412:15;23446:4;23443:1;23436:15;23463:143;23520:5;23551:6;23545:13;23536:22;;23567:33;23594:5;23567:33;:::i;:::-;23463:143;;;;:::o;23612:351::-;23682:6;23731:2;23719:9;23710:7;23706:23;23702:32;23699:119;;;23737:79;;:::i;:::-;23699:119;23857:1;23882:64;23938:7;23929:6;23918:9;23914:22;23882:64;:::i;:::-;23872:74;;23828:128;23612:351;;;;:::o;23969:85::-;24014:7;24043:5;24032:16;;23969:85;;;:::o;24060:158::-;24118:9;24151:61;24169:42;24178:32;24204:5;24178:32;:::i;:::-;24169:42;:::i;:::-;24151:61;:::i;:::-;24138:74;;24060:158;;;:::o;24224:147::-;24319:45;24358:5;24319:45;:::i;:::-;24314:3;24307:58;24224:147;;:::o;24377:114::-;24444:6;24478:5;24472:12;24462:22;;24377:114;;;:::o;24497:184::-;24596:11;24630:6;24625:3;24618:19;24670:4;24665:3;24661:14;24646:29;;24497:184;;;;:::o;24687:132::-;24754:4;24777:3;24769:11;;24807:4;24802:3;24798:14;24790:22;;24687:132;;;:::o;24825:108::-;24902:24;24920:5;24902:24;:::i;:::-;24897:3;24890:37;24825:108;;:::o;24939:179::-;25008:10;25029:46;25071:3;25063:6;25029:46;:::i;:::-;25107:4;25102:3;25098:14;25084:28;;24939:179;;;;:::o;25124:113::-;25194:4;25226;25221:3;25217:14;25209:22;;25124:113;;;:::o;25273:732::-;25392:3;25421:54;25469:5;25421:54;:::i;:::-;25491:86;25570:6;25565:3;25491:86;:::i;:::-;25484:93;;25601:56;25651:5;25601:56;:::i;:::-;25680:7;25711:1;25696:284;25721:6;25718:1;25715:13;25696:284;;;25797:6;25791:13;25824:63;25883:3;25868:13;25824:63;:::i;:::-;25817:70;;25910:60;25963:6;25910:60;:::i;:::-;25900:70;;25756:224;25743:1;25740;25736:9;25731:14;;25696:284;;;25700:14;25996:3;25989:10;;25397:608;;;25273:732;;;;:::o;26011:831::-;26274:4;26312:3;26301:9;26297:19;26289:27;;26326:71;26394:1;26383:9;26379:17;26370:6;26326:71;:::i;:::-;26407:80;26483:2;26472:9;26468:18;26459:6;26407:80;:::i;:::-;26534:9;26528:4;26524:20;26519:2;26508:9;26504:18;26497:48;26562:108;26665:4;26656:6;26562:108;:::i;:::-;26554:116;;26680:72;26748:2;26737:9;26733:18;26724:6;26680:72;:::i;:::-;26762:73;26830:3;26819:9;26815:19;26806:6;26762:73;:::i;:::-;26011:831;;;;;;;;:::o;26848:180::-;26896:77;26893:1;26886:88;26993:4;26990:1;26983:15;27017:4;27014:1;27007:15;27034:185;27074:1;27091:20;27109:1;27091:20;:::i;:::-;27086:25;;27125:20;27143:1;27125:20;:::i;:::-;27120:25;;27164:1;27154:35;;27169:18;;:::i;:::-;27154:35;27211:1;27208;27204:9;27199:14;;27034:185;;;;:::o;27225:177::-;27365:29;27361:1;27353:6;27349:14;27342:53;27225:177;:::o;27408:366::-;27550:3;27571:67;27635:2;27630:3;27571:67;:::i;:::-;27564:74;;27647:93;27736:3;27647:93;:::i;:::-;27765:2;27760:3;27756:12;27749:19;;27408:366;;;:::o;27780:419::-;27946:4;27984:2;27973:9;27969:18;27961:26;;28033:9;28027:4;28023:20;28019:1;28008:9;28004:17;27997:47;28061:131;28187:4;28061:131;:::i;:::-;28053:139;;27780:419;;;:::o;28205:410::-;28245:7;28268:20;28286:1;28268:20;:::i;:::-;28263:25;;28302:20;28320:1;28302:20;:::i;:::-;28297:25;;28357:1;28354;28350:9;28379:30;28397:11;28379:30;:::i;:::-;28368:41;;28558:1;28549:7;28545:15;28542:1;28539:22;28519:1;28512:9;28492:83;28469:139;;28588:18;;:::i;:::-;28469:139;28253:362;28205:410;;;;:::o;28621:220::-;28761:34;28757:1;28749:6;28745:14;28738:58;28830:3;28825:2;28817:6;28813:15;28806:28;28621:220;:::o;28847:366::-;28989:3;29010:67;29074:2;29069:3;29010:67;:::i;:::-;29003:74;;29086:93;29175:3;29086:93;:::i;:::-;29204:2;29199:3;29195:12;29188:19;;28847:366;;;:::o;29219:419::-;29385:4;29423:2;29412:9;29408:18;29400:26;;29472:9;29466:4;29462:20;29458:1;29447:9;29443:17;29436:47;29500:131;29626:4;29500:131;:::i;:::-;29492:139;;29219:419;;;:::o

Swarm Source

ipfs://3622ce4494f782251d5e65d260ad1b95fd8d32dd374d997284621476d0b5250f

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.