ETH Price: $3,372.56 (+3.10%)
Gas: 2 Gwei

Contract

0x38bd0022155076cbFBd434e1C4d2a7bBF42eD27A
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve186796922023-11-29 20:36:23242 days ago1701290183IN
0x38bd0022...BF42eD27A
0 ETH0.0017132337.04698743
Approve176960182023-07-15 3:03:23380 days ago1689390203IN
0x38bd0022...BF42eD27A
0 ETH0.0009052819.43469227
Approve173580942023-05-28 14:25:35427 days ago1685283935IN
0x38bd0022...BF42eD27A
0 ETH0.0013279554.65491017
Approve146489832022-04-24 18:19:28826 days ago1650824368IN
0x38bd0022...BF42eD27A
0 ETH0.0015126662.25708439
Approve145237462022-04-05 4:20:10846 days ago1649132410IN
0x38bd0022...BF42eD27A
0 ETH0.0013329454.86054494
Approve144668592022-03-27 7:24:26855 days ago1648365866IN
0x38bd0022...BF42eD27A
0 ETH0.000813317.46004723
Approve143844422022-03-14 11:26:11868 days ago1647257171IN
0x38bd0022...BF42eD27A
0 ETH0.0004165417.1440649
Approve143843362022-03-14 11:02:17868 days ago1647255737IN
0x38bd0022...BF42eD27A
0 ETH0.0007825316.7994061
Approve143837432022-03-14 8:55:22868 days ago1647248122IN
0x38bd0022...BF42eD27A
0 ETH0.0011827425.39120102
Approve143697922022-03-12 4:22:09870 days ago1647058929IN
0x38bd0022...BF42eD27A
0 ETH0.0009441120.26824818
Approve143683562022-03-11 23:10:48870 days ago1647040248IN
0x38bd0022...BF42eD27A
0 ETH0.0010692622.9549976
Approve143659702022-03-11 14:06:42870 days ago1647007602IN
0x38bd0022...BF42eD27A
0 ETH0.0011724925.17115607
Approve143653742022-03-11 11:56:29871 days ago1646999789IN
0x38bd0022...BF42eD27A
0 ETH0.0007172324.32871372
Approve143645602022-03-11 8:47:23871 days ago1646988443IN
0x38bd0022...BF42eD27A
0 ETH0.0008492118.23089364
Approve143640492022-03-11 6:43:04871 days ago1646980984IN
0x38bd0022...BF42eD27A
0 ETH0.000835917.94520143
Approve143637312022-03-11 5:38:40871 days ago1646977120IN
0x38bd0022...BF42eD27A
0 ETH0.0013566329.12419547
Approve143629542022-03-11 2:42:14871 days ago1646966534IN
0x38bd0022...BF42eD27A
0 ETH0.0009515720.42849631
Approve143624372022-03-11 0:48:17871 days ago1646959697IN
0x38bd0022...BF42eD27A
0 ETH0.0018363839.42340011
Approve143621892022-03-10 23:53:23871 days ago1646956403IN
0x38bd0022...BF42eD27A
0 ETH0.0011289424.23612667
Approve143621762022-03-10 23:50:11871 days ago1646956211IN
0x38bd0022...BF42eD27A
0 ETH0.0011880625.50538481
Approve143621412022-03-10 23:44:46871 days ago1646955886IN
0x38bd0022...BF42eD27A
0 ETH0.0013409628.78775764
Approve143621062022-03-10 23:36:36871 days ago1646955396IN
0x38bd0022...BF42eD27A
0 ETH0.0014983132.16583486
Approve143620972022-03-10 23:33:54871 days ago1646955234IN
0x38bd0022...BF42eD27A
0 ETH0.0023290550
Approve143620612022-03-10 23:26:19871 days ago1646954779IN
0x38bd0022...BF42eD27A
0 ETH0.001134624.35770093
Approve143620572022-03-10 23:25:53871 days ago1646954753IN
0x38bd0022...BF42eD27A
0 ETH0.0011051523.72549169
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
176960182023-07-15 3:03:23380 days ago1689390203
0x38bd0022...BF42eD27A
0.00531297 ETH
176960182023-07-15 3:03:23380 days ago1689390203
0x38bd0022...BF42eD27A
0.00531297 ETH
176960182023-07-15 3:03:23380 days ago1689390203
0x38bd0022...BF42eD27A
0.01062594 ETH
144669262022-03-27 7:38:33855 days ago1648366713
0x38bd0022...BF42eD27A
0.00097385 ETH
144669262022-03-27 7:38:33855 days ago1648366713
0x38bd0022...BF42eD27A
0.00097385 ETH
144669262022-03-27 7:38:33855 days ago1648366713
0x38bd0022...BF42eD27A
0.00194771 ETH
144410232022-03-23 6:38:20859 days ago1648017500
0x38bd0022...BF42eD27A
0.00399982 ETH
144410232022-03-23 6:38:20859 days ago1648017500
0x38bd0022...BF42eD27A
0.00399982 ETH
144410232022-03-23 6:38:20859 days ago1648017500
0x38bd0022...BF42eD27A
0.00799965 ETH
143998762022-03-16 20:55:24865 days ago1647464124
0x38bd0022...BF42eD27A
0.00252855 ETH
143998762022-03-16 20:55:24865 days ago1647464124
0x38bd0022...BF42eD27A
0.00252855 ETH
143998762022-03-16 20:55:24865 days ago1647464124
0x38bd0022...BF42eD27A
0.00505711 ETH
143864722022-03-14 18:55:56867 days ago1647284156
0x38bd0022...BF42eD27A
0.00117836 ETH
143864722022-03-14 18:55:56867 days ago1647284156
0x38bd0022...BF42eD27A
0.00117836 ETH
143864722022-03-14 18:55:56867 days ago1647284156
0x38bd0022...BF42eD27A
0.00235672 ETH
143843392022-03-14 11:02:37868 days ago1647255757
0x38bd0022...BF42eD27A
0.00066096 ETH
143843392022-03-14 11:02:37868 days ago1647255757
0x38bd0022...BF42eD27A
0.00066096 ETH
143843392022-03-14 11:02:37868 days ago1647255757
0x38bd0022...BF42eD27A
0.00132193 ETH
143837492022-03-14 8:56:18868 days ago1647248178
0x38bd0022...BF42eD27A
0.00044511 ETH
143837492022-03-14 8:56:18868 days ago1647248178
0x38bd0022...BF42eD27A
0.00044511 ETH
143837492022-03-14 8:56:18868 days ago1647248178
0x38bd0022...BF42eD27A
0.00089023 ETH
143768122022-03-13 6:47:28869 days ago1647154048
0x38bd0022...BF42eD27A
0.00140441 ETH
143768122022-03-13 6:47:28869 days ago1647154048
0x38bd0022...BF42eD27A
0.00140441 ETH
143768122022-03-13 6:47:28869 days ago1647154048
0x38bd0022...BF42eD27A
0.00280882 ETH
143737282022-03-12 19:08:30869 days ago1647112110
0x38bd0022...BF42eD27A
0.00142101 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Shimurai

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-03-10
*/

/** 
 * SPDX-License-Identifier: Unlicensed

Telegram: https://t.me/ShimuraiToken

Website: https://www.shimuraitoken.com/

 * */

 pragma solidity ^0.8.4;

 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);
 }
 
 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;
     }
 
 }
 
 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);
     }
 
 }  
 
 interface IUniswapV2Factory {
     function createPair(address tokenA, address tokenB) external returns (address pair);
 }
 
 interface IUniswapV2Router02 {
     function swapExactTokensForETHSupportingFeeOnTransferTokens(
         uint amountIn,
         uint amountOutMin,
         address[] calldata path,
         address to,
         uint deadline
     ) external;
     function factory() external pure returns (address);
     function WETH() external pure returns (address);
     function addLiquidityETH(
         address token,
         uint amountTokenDesired,
         uint amountTokenMin,
         uint amountETHMin,
         address to,
         uint deadline
     ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
 }
 
 contract Shimurai is Context, IERC20, Ownable {
     using SafeMath for uint256;
     mapping (address => uint256) private _rOwned;
     mapping (address => uint256) private _tOwned;
     mapping (address => uint256) private _buyMap;
     mapping (address => mapping (address => uint256)) private _allowances;
     mapping (address => bool) private _isExcludedFromFee;
     mapping (address => bool) private bots;
     mapping (address => uint) private cooldown;
     uint256 private constant MAX = ~uint256(0);
     uint256 private constant _tTotal = 1e12 * 10**9;
     uint256 private _rTotal = (MAX - (MAX % _tTotal));
     uint256 private _tFeeTotal;
     
     uint256 private _feeAddr1;
     uint256 private _feeAddr2;
     address payable private _feeAddrWallet1;
     address payable private _feeAddrWallet2;
     
     string private constant _name = "Shimurai Token";
     string private constant _symbol = "Shimurai";
     uint8 private constant _decimals = 9;   
     
     IUniswapV2Router02 private uniswapV2Router;
     address private uniswapV2Pair;
     bool private tradingOpen;
     bool private inSwap = false;
     bool private swapEnabled = false;
     bool private cooldownEnabled = false;
     uint256 private _maxTxAmount = _tTotal;
     event MaxTxAmountUpdated(uint _maxTxAmount);
     modifier lockTheSwap {
         inSwap = true;
         _;
         inSwap = false;
     }
     constructor () {
         _feeAddrWallet1 = payable(0x57Bfb739E7B0387cbb12cD4D56213A2Ae38dF562);
         _feeAddrWallet2 = payable(0x57Bfb739E7B0387cbb12cD4D56213A2Ae38dF562);
         _rOwned[_msgSender()] = _rTotal;
         _isExcludedFromFee[owner()] = true;
         _isExcludedFromFee[address(this)] = true;
         _isExcludedFromFee[_feeAddrWallet1] = true;
         _isExcludedFromFee[_feeAddrWallet2] = true;
         emit Transfer(address(0x57Bfb739E7B0387cbb12cD4D56213A2Ae38dF562), _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 originalPurchase(address account) public  view returns (uint256) {
         return _buyMap[account];
     }
 
     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 setCooldownEnabled(bool onoff) external onlyOwner() {
         cooldownEnabled = onoff;
     }
     
     function setMaxTx(uint256 maxTransactionAmount) external onlyOwner() {
         _maxTxAmount = maxTransactionAmount;
     }
 
     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 _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 (!_isBuy(from)) {
             // TAX SELLERS 25% WHO SELL WITHIN 4 HOURS
             if (_buyMap[from] != 0 &&
                 (_buyMap[from] + (4 hours) >= block.timestamp))  {
                 _feeAddr1 = 1;
                 _feeAddr2 = 25;
             } else {   
                 _feeAddr1 = 2;
                 _feeAddr2 = 12;
             }
         } else {
             if (_buyMap[to] == 0) {
                 _buyMap[to] = block.timestamp;
             }
             _feeAddr1 = 2;
             _feeAddr2 = 12;
         }
         
         if (from != owner() && to != owner()) {
             require(!bots[from] && !bots[to]);
             if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) {
                 // Cooldown
                 require(amount <= _maxTxAmount);
                 require(cooldown[to] < block.timestamp);
                 cooldown[to] = block.timestamp + (30 seconds);
             }
             
             
             uint256 contractTokenBalance = balanceOf(address(this));
             if (!inSwap && from != uniswapV2Pair && swapEnabled) {
                 swapTokensForEth(contractTokenBalance);
                 uint256 contractETHBalance = address(this).balance;
                 if(contractETHBalance > 0) {
                     sendETHToFee(address(this).balance);
                 }
             }
         }
         
         _tokenTransfer(from,to,amount);
     }
 
     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 {
         _feeAddrWallet1.transfer(amount.div(2));
         _feeAddrWallet2.transfer(amount.div(2));
     }
     
     function openTrading() external onlyOwner() {
         require(!tradingOpen,"trading is already open");
         IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
         uniswapV2Router = _uniswapV2Router;
         _approve(address(this), address(uniswapV2Router), _tTotal);
         uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
         uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
         swapEnabled = true;
         cooldownEnabled = true;
         _maxTxAmount = 10000000000 * 10 ** 9;
         tradingOpen = true;
         IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
     }
     
     function setBots(address[] memory bots_) public onlyOwner {
         for (uint i = 0; i < bots_.length; i++) {
             bots[bots_[i]] = true;
         }
     }
     
     function removeStrictTxLimit() public onlyOwner {
         _maxTxAmount = 1e12 * 10**9;
     }
     
     function delBot(address notbot) public onlyOwner {
         bots[notbot] = false;
     }
         
     function _tokenTransfer(address sender, address recipient, uint256 amount) private {
         _transferStandard(sender, recipient, amount);
     }
 
     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 updateMaxTx (uint256 fee) public onlyOwner {
         _maxTxAmount = fee;
     }
     
     function _reflectFee(uint256 rFee, uint256 tFee) private {
         _rTotal = _rTotal.sub(rFee);
         _tFeeTotal = _tFeeTotal.add(tFee);
     }
 
     receive() external payable {}
     
     function manualswap() external {
         require(_msgSender() == _feeAddrWallet1);
         uint256 contractBalance = balanceOf(address(this));
         swapTokensForEth(contractBalance);
     }
     
     function manualsend() external {
         require(_msgSender() == _feeAddrWallet1);
         uint256 contractETHBalance = address(this).balance;
         sendETHToFee(contractETHBalance);
     }
     
 
     function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
         (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _feeAddr1, _feeAddr2);
         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 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
         uint256 tFee = tAmount.mul(taxFee).div(100);
         uint256 tTeam = tAmount.mul(TeamFee).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 _isBuy(address _sender) private view returns (bool) {
         return _sender == uniswapV2Pair;
     }
 
 
     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);
     }
 }

Contract Security Audit

Contract ABI

[{"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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","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":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"originalPurchase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeStrictTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTransactionAmount","type":"uint256"}],"name":"setMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"uint256","name":"fee","type":"uint256"}],"name":"updateMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001b683635c9adc5dea000006000196200022a565b620000299060001962000206565b6009556010805462ffffff60a81b19169055683635c9adc5dea000006011553480156200005557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80547357bfb739e7b0387cbb12cd4d56213a2ae38df5626001600160a01b03199182168117909255600e8054909116909117905560095460026000620000dc3390565b6001600160a01b03166001600160a01b031681526020019081526020016000208190555060016006600062000116620001f760201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526006909352818320805485166001908117909155600d54821684528284208054861682179055600e54909116835291208054909216179055620001873390565b6001600160a01b03167357bfb739e7b0387cbb12cd4d56213a2ae38df5626001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea00000604051620001e991815260200190565b60405180910390a36200024b565b6000546001600160a01b031690565b6000828210156200022557634e487b7160e01b81526011600452602481fd5b500390565b6000826200024657634e487b7160e01b81526012600452602481fd5b500690565b611b7f806200025b6000396000f3fe60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c2d0ffca1161006f578063c2d0ffca1461033a578063c3c8cd801461035a578063c9567bf91461036f578063cc653b4414610384578063dd62ed3e146103ba578063ff8726021461040057600080fd5b80638da5cb5b146102a157806395d89b41146102c9578063a9059cbb146102fa578063b515566a1461031a578063bc3371821461033a57600080fd5b8063313ce567116100f2578063313ce5671461021b5780635932ead1146102375780636fc3eaec1461025757806370a082311461026c578063715018a61461028c57600080fd5b806306fdde031461013a578063095ea7b31461018357806318160ddd146101b357806323b872dd146101d9578063273123b7146101f957600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152600e81526d29b434b6bab930b4902a37b5b2b760911b60208201525b60405161017a9190611951565b60405180910390f35b34801561018f57600080fd5b506101a361019e3660046117e2565b610415565b604051901515815260200161017a565b3480156101bf57600080fd5b50683635c9adc5dea000005b60405190815260200161017a565b3480156101e557600080fd5b506101a36101f43660046117a2565b61042c565b34801561020557600080fd5b50610219610214366004611732565b610495565b005b34801561022757600080fd5b506040516009815260200161017a565b34801561024357600080fd5b506102196102523660046118d4565b6104e9565b34801561026357600080fd5b50610219610531565b34801561027857600080fd5b506101cb610287366004611732565b61055e565b34801561029857600080fd5b50610219610580565b3480156102ad57600080fd5b506000546040516001600160a01b03909116815260200161017a565b3480156102d557600080fd5b506040805180820190915260088152675368696d7572616960c01b602082015261016d565b34801561030657600080fd5b506101a36103153660046117e2565b6105f4565b34801561032657600080fd5b5061021961033536600461180d565b610601565b34801561034657600080fd5b5061021961035536600461190c565b6106a5565b34801561036657600080fd5b506102196106d4565b34801561037b57600080fd5b5061021961070a565b34801561039057600080fd5b506101cb61039f366004611732565b6001600160a01b031660009081526004602052604090205490565b3480156103c657600080fd5b506101cb6103d536600461176a565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561040c57600080fd5b50610219610acd565b6000610422338484610b06565b5060015b92915050565b6000610439848484610c2a565b61048b843361048685604051806060016040528060288152602001611b22602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610fd3565b610b06565b5060019392505050565b6000546001600160a01b031633146104c85760405162461bcd60e51b81526004016104bf906119a4565b60405180910390fd5b6001600160a01b03166000908152600760205260409020805460ff19169055565b6000546001600160a01b031633146105135760405162461bcd60e51b81526004016104bf906119a4565b60108054911515600160b81b0260ff60b81b19909216919091179055565b600d546001600160a01b0316336001600160a01b03161461055157600080fd5b4761055b8161100d565b50565b6001600160a01b03811660009081526002602052604081205461042690611092565b6000546001600160a01b031633146105aa5760405162461bcd60e51b81526004016104bf906119a4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610422338484610c2a565b6000546001600160a01b0316331461062b5760405162461bcd60e51b81526004016104bf906119a4565b60005b81518110156106a15760016007600084848151811061065d57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061069981611ab7565b91505061062e565b5050565b6000546001600160a01b031633146106cf5760405162461bcd60e51b81526004016104bf906119a4565b601155565b600d546001600160a01b0316336001600160a01b0316146106f457600080fd5b60006106ff3061055e565b905061055b81611116565b6000546001600160a01b031633146107345760405162461bcd60e51b81526004016104bf906119a4565b601054600160a01b900460ff161561078e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104bf565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107cb3082683635c9adc5dea00000610b06565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561080457600080fd5b505afa158015610818573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083c919061174e565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088457600080fd5b505afa158015610898573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bc919061174e565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561090457600080fd5b505af1158015610918573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093c919061174e565b601080546001600160a01b0319166001600160a01b03928316179055600f541663f305d719473061096c8161055e565b6000806109816000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b1580156109e457600080fd5b505af11580156109f8573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a1d9190611924565b505060108054678ac7230489e8000060115563ffff00ff60a01b198116630101000160a01b17909155600f5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610a9557600080fd5b505af1158015610aa9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a191906118f0565b6000546001600160a01b03163314610af75760405162461bcd60e51b81526004016104bf906119a4565b683635c9adc5dea00000601155565b6001600160a01b038316610b685760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104bf565b6001600160a01b038216610bc95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104bf565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104bf565b6001600160a01b038216610cf05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104bf565b60008111610d525760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104bf565b6010546001600160a01b03848116911614610dd5576001600160a01b03831660009081526004602052604090205415801590610db357506001600160a01b0383166000908152600460205260409020544290610db090613840611a49565b10155b15610dc7576001600b556019600c55610e18565b6002600b55600c8055610e18565b6001600160a01b038216600090815260046020526040902054610e0e576001600160a01b03821660009081526004602052604090204290555b6002600b55600c80555b6000546001600160a01b03848116911614801590610e4457506000546001600160a01b03838116911614155b15610fc3576001600160a01b03831660009081526007602052604090205460ff16158015610e8b57506001600160a01b03821660009081526007602052604090205460ff16155b610e9457600080fd5b6010546001600160a01b038481169116148015610ebf5750600f546001600160a01b03838116911614155b8015610ee457506001600160a01b03821660009081526006602052604090205460ff16155b8015610ef95750601054600160b81b900460ff165b15610f5657601154811115610f0d57600080fd5b6001600160a01b0382166000908152600860205260409020544211610f3157600080fd5b610f3c42601e611a49565b6001600160a01b0383166000908152600860205260409020555b6000610f613061055e565b601054909150600160a81b900460ff16158015610f8c57506010546001600160a01b03858116911614155b8015610fa15750601054600160b01b900460ff165b15610fc157610faf81611116565b478015610fbf57610fbf4761100d565b505b505b610fce8383836112bb565b505050565b60008184841115610ff75760405162461bcd60e51b81526004016104bf9190611951565b5060006110048486611aa0565b95945050505050565b600d546001600160a01b03166108fc6110278360026112c6565b6040518115909202916000818181858888f1935050505015801561104f573d6000803e3d6000fd5b50600e546001600160a01b03166108fc61106a8360026112c6565b6040518115909202916000818181858888f193505050501580156106a1573d6000803e3d6000fd5b60006009548211156110f95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016104bf565b6000611103611308565b905061110f83826112c6565b9392505050565b6010805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061116c57634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156111c057600080fd5b505afa1580156111d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f8919061174e565b8160018151811061121957634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152600f5461123f9130911684610b06565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112789085906000908690309042906004016119d9565b600060405180830381600087803b15801561129257600080fd5b505af11580156112a6573d6000803e3d6000fd5b50506010805460ff60a81b1916905550505050565b610fce83838361132b565b600061110f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611422565b6000806000611315611450565b909250905061132482826112c6565b9250505090565b60008060008060008061133d87611492565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061136f90876114ef565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461139e9086611531565b6001600160a01b0389166000908152600260205260409020556113c081611590565b6113ca84836115da565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161140f91815260200190565b60405180910390a3505050505050505050565b600081836114435760405162461bcd60e51b81526004016104bf9190611951565b5060006110048486611a61565b6009546000908190683635c9adc5dea0000061146c82826112c6565b82101561148957505060095492683635c9adc5dea0000092509050565b90939092509050565b60008060008060008060008060006114af8a600b54600c546115fe565b92509250925060006114bf611308565b905060008060006114d28e878787611653565b919e509c509a509598509396509194505050505091939550919395565b600061110f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fd3565b60008061153e8385611a49565b90508381101561110f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104bf565b600061159a611308565b905060006115a883836116a3565b306000908152600260205260409020549091506115c59082611531565b30600090815260026020526040902055505050565b6009546115e790836114ef565b600955600a546115f79082611531565b600a555050565b6000808080611618606461161289896116a3565b906112c6565b9050600061162b60646116128a896116a3565b905060006116438261163d8b866114ef565b906114ef565b9992985090965090945050505050565b600080808061166288866116a3565b9050600061167088876116a3565b9050600061167e88886116a3565b905060006116908261163d86866114ef565b939b939a50919850919650505050505050565b6000826116b257506000610426565b60006116be8385611a81565b9050826116cb8583611a61565b1461110f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104bf565b803561172d81611afe565b919050565b600060208284031215611743578081fd5b813561110f81611afe565b60006020828403121561175f578081fd5b815161110f81611afe565b6000806040838503121561177c578081fd5b823561178781611afe565b9150602083013561179781611afe565b809150509250929050565b6000806000606084860312156117b6578081fd5b83356117c181611afe565b925060208401356117d181611afe565b929592945050506040919091013590565b600080604083850312156117f4578182fd5b82356117ff81611afe565b946020939093013593505050565b6000602080838503121561181f578182fd5b823567ffffffffffffffff80821115611836578384fd5b818501915085601f830112611849578384fd5b81358181111561185b5761185b611ae8565b8060051b604051601f19603f8301168101818110858211171561188057611880611ae8565b604052828152858101935084860182860187018a101561189e578788fd5b8795505b838610156118c7576118b381611722565b8552600195909501949386019386016118a2565b5098975050505050505050565b6000602082840312156118e5578081fd5b813561110f81611b13565b600060208284031215611901578081fd5b815161110f81611b13565b60006020828403121561191d578081fd5b5035919050565b600080600060608486031215611938578283fd5b8351925060208401519150604084015190509250925092565b6000602080835283518082850152825b8181101561197d57858101830151858201604001528201611961565b8181111561198e5783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015611a285784516001600160a01b031683529383019391830191600101611a03565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611a5c57611a5c611ad2565b500190565b600082611a7c57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611a9b57611a9b611ad2565b500290565b600082821015611ab257611ab2611ad2565b500390565b6000600019821415611acb57611acb611ad2565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461055b57600080fd5b801515811461055b57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208366b8af61690b226e41cbb0539dbdd0f6c40e52c71288d2ada1d42cac0d9be864736f6c63430008040033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c2d0ffca1161006f578063c2d0ffca1461033a578063c3c8cd801461035a578063c9567bf91461036f578063cc653b4414610384578063dd62ed3e146103ba578063ff8726021461040057600080fd5b80638da5cb5b146102a157806395d89b41146102c9578063a9059cbb146102fa578063b515566a1461031a578063bc3371821461033a57600080fd5b8063313ce567116100f2578063313ce5671461021b5780635932ead1146102375780636fc3eaec1461025757806370a082311461026c578063715018a61461028c57600080fd5b806306fdde031461013a578063095ea7b31461018357806318160ddd146101b357806323b872dd146101d9578063273123b7146101f957600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152600e81526d29b434b6bab930b4902a37b5b2b760911b60208201525b60405161017a9190611951565b60405180910390f35b34801561018f57600080fd5b506101a361019e3660046117e2565b610415565b604051901515815260200161017a565b3480156101bf57600080fd5b50683635c9adc5dea000005b60405190815260200161017a565b3480156101e557600080fd5b506101a36101f43660046117a2565b61042c565b34801561020557600080fd5b50610219610214366004611732565b610495565b005b34801561022757600080fd5b506040516009815260200161017a565b34801561024357600080fd5b506102196102523660046118d4565b6104e9565b34801561026357600080fd5b50610219610531565b34801561027857600080fd5b506101cb610287366004611732565b61055e565b34801561029857600080fd5b50610219610580565b3480156102ad57600080fd5b506000546040516001600160a01b03909116815260200161017a565b3480156102d557600080fd5b506040805180820190915260088152675368696d7572616960c01b602082015261016d565b34801561030657600080fd5b506101a36103153660046117e2565b6105f4565b34801561032657600080fd5b5061021961033536600461180d565b610601565b34801561034657600080fd5b5061021961035536600461190c565b6106a5565b34801561036657600080fd5b506102196106d4565b34801561037b57600080fd5b5061021961070a565b34801561039057600080fd5b506101cb61039f366004611732565b6001600160a01b031660009081526004602052604090205490565b3480156103c657600080fd5b506101cb6103d536600461176a565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561040c57600080fd5b50610219610acd565b6000610422338484610b06565b5060015b92915050565b6000610439848484610c2a565b61048b843361048685604051806060016040528060288152602001611b22602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610fd3565b610b06565b5060019392505050565b6000546001600160a01b031633146104c85760405162461bcd60e51b81526004016104bf906119a4565b60405180910390fd5b6001600160a01b03166000908152600760205260409020805460ff19169055565b6000546001600160a01b031633146105135760405162461bcd60e51b81526004016104bf906119a4565b60108054911515600160b81b0260ff60b81b19909216919091179055565b600d546001600160a01b0316336001600160a01b03161461055157600080fd5b4761055b8161100d565b50565b6001600160a01b03811660009081526002602052604081205461042690611092565b6000546001600160a01b031633146105aa5760405162461bcd60e51b81526004016104bf906119a4565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610422338484610c2a565b6000546001600160a01b0316331461062b5760405162461bcd60e51b81526004016104bf906119a4565b60005b81518110156106a15760016007600084848151811061065d57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061069981611ab7565b91505061062e565b5050565b6000546001600160a01b031633146106cf5760405162461bcd60e51b81526004016104bf906119a4565b601155565b600d546001600160a01b0316336001600160a01b0316146106f457600080fd5b60006106ff3061055e565b905061055b81611116565b6000546001600160a01b031633146107345760405162461bcd60e51b81526004016104bf906119a4565b601054600160a01b900460ff161561078e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104bf565b600f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107cb3082683635c9adc5dea00000610b06565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561080457600080fd5b505afa158015610818573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083c919061174e565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088457600080fd5b505afa158015610898573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bc919061174e565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561090457600080fd5b505af1158015610918573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093c919061174e565b601080546001600160a01b0319166001600160a01b03928316179055600f541663f305d719473061096c8161055e565b6000806109816000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b1580156109e457600080fd5b505af11580156109f8573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a1d9190611924565b505060108054678ac7230489e8000060115563ffff00ff60a01b198116630101000160a01b17909155600f5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b158015610a9557600080fd5b505af1158015610aa9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a191906118f0565b6000546001600160a01b03163314610af75760405162461bcd60e51b81526004016104bf906119a4565b683635c9adc5dea00000601155565b6001600160a01b038316610b685760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104bf565b6001600160a01b038216610bc95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104bf565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104bf565b6001600160a01b038216610cf05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104bf565b60008111610d525760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104bf565b6010546001600160a01b03848116911614610dd5576001600160a01b03831660009081526004602052604090205415801590610db357506001600160a01b0383166000908152600460205260409020544290610db090613840611a49565b10155b15610dc7576001600b556019600c55610e18565b6002600b55600c8055610e18565b6001600160a01b038216600090815260046020526040902054610e0e576001600160a01b03821660009081526004602052604090204290555b6002600b55600c80555b6000546001600160a01b03848116911614801590610e4457506000546001600160a01b03838116911614155b15610fc3576001600160a01b03831660009081526007602052604090205460ff16158015610e8b57506001600160a01b03821660009081526007602052604090205460ff16155b610e9457600080fd5b6010546001600160a01b038481169116148015610ebf5750600f546001600160a01b03838116911614155b8015610ee457506001600160a01b03821660009081526006602052604090205460ff16155b8015610ef95750601054600160b81b900460ff165b15610f5657601154811115610f0d57600080fd5b6001600160a01b0382166000908152600860205260409020544211610f3157600080fd5b610f3c42601e611a49565b6001600160a01b0383166000908152600860205260409020555b6000610f613061055e565b601054909150600160a81b900460ff16158015610f8c57506010546001600160a01b03858116911614155b8015610fa15750601054600160b01b900460ff165b15610fc157610faf81611116565b478015610fbf57610fbf4761100d565b505b505b610fce8383836112bb565b505050565b60008184841115610ff75760405162461bcd60e51b81526004016104bf9190611951565b5060006110048486611aa0565b95945050505050565b600d546001600160a01b03166108fc6110278360026112c6565b6040518115909202916000818181858888f1935050505015801561104f573d6000803e3d6000fd5b50600e546001600160a01b03166108fc61106a8360026112c6565b6040518115909202916000818181858888f193505050501580156106a1573d6000803e3d6000fd5b60006009548211156110f95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016104bf565b6000611103611308565b905061110f83826112c6565b9392505050565b6010805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061116c57634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156111c057600080fd5b505afa1580156111d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f8919061174e565b8160018151811061121957634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152600f5461123f9130911684610b06565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112789085906000908690309042906004016119d9565b600060405180830381600087803b15801561129257600080fd5b505af11580156112a6573d6000803e3d6000fd5b50506010805460ff60a81b1916905550505050565b610fce83838361132b565b600061110f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611422565b6000806000611315611450565b909250905061132482826112c6565b9250505090565b60008060008060008061133d87611492565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061136f90876114ef565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461139e9086611531565b6001600160a01b0389166000908152600260205260409020556113c081611590565b6113ca84836115da565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161140f91815260200190565b60405180910390a3505050505050505050565b600081836114435760405162461bcd60e51b81526004016104bf9190611951565b5060006110048486611a61565b6009546000908190683635c9adc5dea0000061146c82826112c6565b82101561148957505060095492683635c9adc5dea0000092509050565b90939092509050565b60008060008060008060008060006114af8a600b54600c546115fe565b92509250925060006114bf611308565b905060008060006114d28e878787611653565b919e509c509a509598509396509194505050505091939550919395565b600061110f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fd3565b60008061153e8385611a49565b90508381101561110f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104bf565b600061159a611308565b905060006115a883836116a3565b306000908152600260205260409020549091506115c59082611531565b30600090815260026020526040902055505050565b6009546115e790836114ef565b600955600a546115f79082611531565b600a555050565b6000808080611618606461161289896116a3565b906112c6565b9050600061162b60646116128a896116a3565b905060006116438261163d8b866114ef565b906114ef565b9992985090965090945050505050565b600080808061166288866116a3565b9050600061167088876116a3565b9050600061167e88886116a3565b905060006116908261163d86866114ef565b939b939a50919850919650505050505050565b6000826116b257506000610426565b60006116be8385611a81565b9050826116cb8583611a61565b1461110f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104bf565b803561172d81611afe565b919050565b600060208284031215611743578081fd5b813561110f81611afe565b60006020828403121561175f578081fd5b815161110f81611afe565b6000806040838503121561177c578081fd5b823561178781611afe565b9150602083013561179781611afe565b809150509250929050565b6000806000606084860312156117b6578081fd5b83356117c181611afe565b925060208401356117d181611afe565b929592945050506040919091013590565b600080604083850312156117f4578182fd5b82356117ff81611afe565b946020939093013593505050565b6000602080838503121561181f578182fd5b823567ffffffffffffffff80821115611836578384fd5b818501915085601f830112611849578384fd5b81358181111561185b5761185b611ae8565b8060051b604051601f19603f8301168101818110858211171561188057611880611ae8565b604052828152858101935084860182860187018a101561189e578788fd5b8795505b838610156118c7576118b381611722565b8552600195909501949386019386016118a2565b5098975050505050505050565b6000602082840312156118e5578081fd5b813561110f81611b13565b600060208284031215611901578081fd5b815161110f81611b13565b60006020828403121561191d578081fd5b5035919050565b600080600060608486031215611938578283fd5b8351925060208401519150604084015190509250925092565b6000602080835283518082850152825b8181101561197d57858101830151858201604001528201611961565b8181111561198e5783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015611a285784516001600160a01b031683529383019391830191600101611a03565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611a5c57611a5c611ad2565b500190565b600082611a7c57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611a9b57611a9b611ad2565b500290565b600082821015611ab257611ab2611ad2565b500390565b6000600019821415611acb57611acb611ad2565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461055b57600080fd5b801515811461055b57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208366b8af61690b226e41cbb0539dbdd0f6c40e52c71288d2ada1d42cac0d9be864736f6c63430008040033

Deployed Bytecode Sourcemap

3725:11648:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5716:85;;;;;;;;;;-1:-1:-1;5787:5:0;;;;;;;;;;;;-1:-1:-1;;;5787:5:0;;;;5716:85;;;;;;;:::i;:::-;;;;;;;;6729:164;;;;;;;;;;-1:-1:-1;6729:164:0;;;;;:::i;:::-;;:::i;:::-;;;5672:14:1;;5665:22;5647:41;;5635:2;5620:18;6729:164:0;5602:92:1;6005:97:0;;;;;;;;;;-1:-1:-1;4287:12:0;6005:97;;;10363:25:1;;;10351:2;10336:18;6005:97:0;10318:76:1;6903:317:0;;;;;;;;;;-1:-1:-1;6903:317:0;;;;;:::i;:::-;;:::i;11786:90::-;;;;;;;;;;-1:-1:-1;11786:90:0;;;;;:::i;:::-;;:::i;:::-;;5910:85;;;;;;;;;;-1:-1:-1;5910:85:0;;4715:1;11529:36:1;;11517:2;11502:18;5910:85:0;11484:87:1;7230:105:0;;;;;;;;;;-1:-1:-1;7230:105:0;;;;;:::i;:::-;;:::i;13308:198::-;;;;;;;;;;;;;:::i;6244:140::-;;;;;;;;;;-1:-1:-1;6244:140:0;;;;;:::i;:::-;;:::i;2773:151::-;;;;;;;;;;;;;:::i;2550:81::-;;;;;;;;;;-1:-1:-1;2588:7:0;2616:6;2550:81;;-1:-1:-1;;;;;2616:6:0;;;4245:51:1;;4233:2;4218:18;2550:81:0;4200:102:1;5811:89:0;;;;;;;;;;-1:-1:-1;5884:7:0;;;;;;;;;;;;-1:-1:-1;;;5884:7:0;;;;5811:89;;6394:170;;;;;;;;;;-1:-1:-1;6394:170:0;;;;;:::i;:::-;;:::i;11494:168::-;;;;;;;;;;-1:-1:-1;11494:168:0;;;;;:::i;:::-;;:::i;7349:125::-;;;;;;;;;;-1:-1:-1;7349:125:0;;;;;:::i;:::-;;:::i;13095:199::-;;;;;;;;;;;;;:::i;10650:830::-;;;;;;;;;;;;;:::i;6116:118::-;;;;;;;;;;-1:-1:-1;6116:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;6209:16:0;6181:7;6209:16;;;:7;:16;;;;;;;6116:118;6574:145;;;;;;;;;;-1:-1:-1;6574:145:0;;;;;:::i;:::-;-1:-1:-1;;;;;6683:18:0;;;6655:7;6683:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6574:145;11676:96;;;;;;;;;;;;;:::i;6729:164::-;6804:4;6822:39;284:10;6845:7;6854:6;6822:8;:39::i;:::-;-1:-1:-1;6880:4:0;6729:164;;;;;:::o;6903:317::-;7001:4;7019:36;7029:6;7037:9;7048:6;7019:9;:36::i;:::-;7067:121;7076:6;284:10;7098:89;7136:6;7098:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7098:19:0;;;;;;:11;:19;;;;;;;;284:10;7098:33;;;;;;;;;;:37;:89::i;:::-;7067:8;:121::i;:::-;-1:-1:-1;7207:4:0;6903:317;;;;;:::o;11786:90::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;11847:12:0::1;11862:5;11847:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;11847:20:0::1;::::0;;11786:90::o;7230:105::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;7303:15:::1;:23:::0;;;::::1;;-1:-1:-1::0;;;7303:23:0::1;-1:-1:-1::0;;;;7303:23:0;;::::1;::::0;;;::::1;::::0;;7230:105::o;13308:198::-;13375:15;;-1:-1:-1;;;;;13375:15:0;284:10;-1:-1:-1;;;;;13359:31:0;;13351:40;;;;;;13432:21;13465:32;13432:21;13465:12;:32::i;:::-;13308:198;:::o;6244:140::-;-1:-1:-1;;;;;6358:16:0;;6310:7;6358:16;;;:7;:16;;;;;;6338:37;;:19;:37::i;2773:151::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;2881:1:::1;2865:6:::0;;2844:40:::1;::::0;-1:-1:-1;;;;;2865:6:0;;::::1;::::0;2844:40:::1;::::0;2881:1;;2844:40:::1;2913:1;2896:19:::0;;-1:-1:-1;;;;;;2896:19:0::1;::::0;;2773:151::o;6394:170::-;6472:4;6490:42;284:10;6514:9;6525:6;6490:9;:42::i;11494:168::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;11569:6:::1;11564:90;11585:5;:12;11581:1;:16;11564:90;;;11637:4;11620;:14;11625:5;11631:1;11625:8;;;;;;-1:-1:-1::0;;;11625:8:0::1;;;;;;;;;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11620:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11620:14:0;:21;;-1:-1:-1;;11620:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11599:3;::::1;::::0;::::1;:::i;:::-;;;;11564:90;;;;11494:168:::0;:::o;7349:125::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;7430:12:::1;:35:::0;7349:125::o;13095:199::-;13162:15;;-1:-1:-1;;;;;13162:15:0;284:10;-1:-1:-1;;;;;13146:31:0;;13138:40;;;;;;13190:23;13216:24;13234:4;13216:9;:24::i;:::-;13190:50;;13252:33;13269:15;13252:16;:33::i;10650:830::-;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;10715:11:::1;::::0;-1:-1:-1;;;10715:11:0;::::1;;;10714:12;10706:47;;;::::0;-1:-1:-1;;;10706:47:0;;10067:2:1;10706:47:0::1;::::0;::::1;10049:21:1::0;10106:2;10086:18;;;10079:30;10145:25;10125:18;;;10118:53;10188:18;;10706:47:0::1;10039:173:1::0;10706:47:0::1;10877:15;:34:::0;;-1:-1:-1;;;;;;10877:34:0::1;10822:42;10877:34:::0;;::::1;::::0;;;10923:58:::1;10940:4;10822:42:::0;4287:12:::1;10923:8;:58::i;:::-;11027:16;-1:-1:-1::0;;;;;11027:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11009:56:0::1;;11074:4;11081:16;-1:-1:-1::0;;;;;11081:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11009:96;::::0;-1:-1:-1;;;;;;11009:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4537:15:1;;;11009:96:0::1;::::0;::::1;4519:34:1::0;4589:15;;4569:18;;;4562:43;4454:18;;11009:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10993:13;:112:::0;;-1:-1:-1;;;;;;10993:112:0::1;-1:-1:-1::0;;;;;10993:112:0;;::::1;;::::0;;11117:15:::1;::::0;::::1;:31;11156:21;11187:4;11193:24;11187:4:::0;11193:9:::1;:24::i;:::-;11218:1;11220::::0;11222:7:::1;2588::::0;2616:6;-1:-1:-1;;;;;2616:6:0;;2550:81;11222:7:::1;11117:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11117:129:0;;;-1:-1:-1;;;;;5254:15:1;;;11117:129:0::1;::::0;::::1;5236:34:1::0;5286:18;;;5279:34;;;;5329:18;;;5322:34;;;;5372:18;;;5365:34;5436:15;;;5415:19;;;5408:44;11230:15:0::1;5468:19:1::0;;;5461:35;5170:19;;11117:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11258:11:0::1;:18:::0;;11337:21:::1;11322:12;:36:::0;-1:-1:-1;;;;11370:18:0;;-1:-1:-1;;;11370:18:0;;;;11438:15:::1;::::0;11400:71:::1;::::0;-1:-1:-1;;;11400:71:0;;-1:-1:-1;;;;;11438:15:0;;::::1;11400:71;::::0;::::1;4790:51:1::0;-1:-1:-1;;4857:18:1;;;4850:34;11407:13:0;;;-1:-1:-1;11400:29:0::1;::::0;4763:18:1;;11400:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;11676:96::-:0;2682:6;;-1:-1:-1;;;;;2682:6:0;284:10;2682:22;2674:67;;;;-1:-1:-1;;;2674:67:0;;;;;;;:::i;:::-;11751:12:::1;11736;:27:::0;11676:96::o;7752:340::-;-1:-1:-1;;;;;7846:19:0;;7838:68;;;;-1:-1:-1;;;7838:68:0;;9662:2:1;7838:68:0;;;9644:21:1;9701:2;9681:18;;;9674:30;9740:34;9720:18;;;9713:62;-1:-1:-1;;;9791:18:1;;;9784:34;9835:19;;7838:68:0;9634:226:1;7838:68:0;-1:-1:-1;;;;;7926:21:0;;7918:68;;;;-1:-1:-1;;;7918:68:0;;7324:2:1;7918:68:0;;;7306:21:1;7363:2;7343:18;;;7336:30;7402:34;7382:18;;;7375:62;-1:-1:-1;;;7453:18:1;;;7446:32;7495:19;;7918:68:0;7296:224:1;7918:68:0;-1:-1:-1;;;;;7998:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8051:32;;10363:25:1;;;8051:32:0;;10336:18:1;8051:32:0;;;;;;;7752:340;;;:::o;8102:1854::-;-1:-1:-1;;;;;8191:18:0;;8183:68;;;;-1:-1:-1;;;8183:68:0;;9256:2:1;8183:68:0;;;9238:21:1;9295:2;9275:18;;;9268:30;9334:34;9314:18;;;9307:62;-1:-1:-1;;;9385:18:1;;;9378:35;9430:19;;8183:68:0;9228:227:1;8183:68:0;-1:-1:-1;;;;;8271:16:0;;8263:64;;;;-1:-1:-1;;;8263:64:0;;6509:2:1;8263:64:0;;;6491:21:1;6548:2;6528:18;;;6521:30;6587:34;6567:18;;;6560:62;-1:-1:-1;;;6638:18:1;;;6631:33;6681:19;;8263:64:0;6481:225:1;8263:64:0;8356:1;8347:6;:10;8339:64;;;;-1:-1:-1;;;8339:64:0;;8846:2:1;8339:64:0;;;8828:21:1;8885:2;8865:18;;;8858:30;8924:34;8904:18;;;8897:62;-1:-1:-1;;;8975:18:1;;;8968:39;9024:19;;8339:64:0;8818:231:1;8339:64:0;14891:13;;-1:-1:-1;;;;;14880:24:0;;;14891:13;;14880:24;8433:555;;-1:-1:-1;;;;;8529:13:0;;;;;;:7;:13;;;;;;:18;;;;:86;;-1:-1:-1;;;;;;8570:13:0;;;;;;:7;:13;;;;;;8599:15;;8570:25;;8587:7;8570:25;:::i;:::-;:44;;8529:86;8525:270;;;8650:1;8638:9;:13;8683:2;8671:9;:14;8433:555;;8525:270;8743:1;8731:9;:13;8776:2;8764:14;;8433:555;;;-1:-1:-1;;;;;8833:11:0;;;;;;:7;:11;;;;;;8829:88;;-1:-1:-1;;;;;8871:11:0;;;;;;:7;:11;;;;;8885:15;8871:29;;8829:88;8944:1;8932:9;:13;8973:2;8961:14;;8433:555;2588:7;2616:6;-1:-1:-1;;;;;9014:15:0;;;2616:6;;9014:15;;;;:32;;-1:-1:-1;2588:7:0;2616:6;-1:-1:-1;;;;;9033:13:0;;;2616:6;;9033:13;;9014:32;9010:885;;;-1:-1:-1;;;;;9073:10:0;;;;;;:4;:10;;;;;;;;9072:11;:24;;;;-1:-1:-1;;;;;;9088:8:0;;;;;;:4;:8;;;;;;;;9087:9;9072:24;9064:33;;;;;;9125:13;;-1:-1:-1;;;;;9117:21:0;;;9125:13;;9117:21;:55;;;;-1:-1:-1;9156:15:0;;-1:-1:-1;;;;;9142:30:0;;;9156:15;;9142:30;;9117:55;:83;;;;-1:-1:-1;;;;;;9178:22:0;;;;;;:18;:22;;;;;;;;9176:24;9117:83;:102;;;;-1:-1:-1;9204:15:0;;-1:-1:-1;;;9204:15:0;;;;9117:102;9113:330;;;9289:12;;9279:6;:22;;9271:31;;;;;;-1:-1:-1;;;;;9330:12:0;;;;;;:8;:12;;;;;;9345:15;-1:-1:-1;9322:39:0;;;;;;9396:30;:15;9415:10;9396:30;:::i;:::-;-1:-1:-1;;;;;9381:12:0;;;;;;:8;:12;;;;;:45;9113:330;9488:28;9519:24;9537:4;9519:9;:24::i;:::-;9564:6;;9488:55;;-1:-1:-1;;;;9564:6:0;;;;9563:7;:32;;;;-1:-1:-1;9582:13:0;;-1:-1:-1;;;;;9574:21:0;;;9582:13;;9574:21;;9563:32;:47;;;;-1:-1:-1;9599:11:0;;-1:-1:-1;;;9599:11:0;;;;9563:47;9559:324;;;9632:38;9649:20;9632:16;:38::i;:::-;9719:21;9763:22;;9760:107;;9811:35;9824:21;9811:12;:35::i;:::-;9559:324;;9010:885;;9917:30;9932:4;9937:2;9940:6;9917:14;:30::i;:::-;8102:1854;;;:::o;1367:194::-;1453:7;1490:12;1482:6;;;;1474:29;;;;-1:-1:-1;;;1474:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1515:9:0;1527:5;1531:1;1527;:5;:::i;:::-;1515:17;1367:194;-1:-1:-1;;;;;1367:194:0:o;10479:157::-;10537:15;;-1:-1:-1;;;;;10537:15:0;:39;10562:13;:6;10573:1;10562:10;:13::i;:::-;10537:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10588:15:0;;-1:-1:-1;;;;;10588:15:0;:39;10613:13;:6;10624:1;10613:10;:13::i;:::-;10588:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7484:258;7551:7;7591;;7580;:18;;7572:73;;;;-1:-1:-1;;;7572:73:0;;6913:2:1;7572:73:0;;;6895:21:1;6952:2;6932:18;;;6925:30;6991:34;6971:18;;;6964:62;-1:-1:-1;;;7042:18:1;;;7035:40;7092:19;;7572:73:0;6885:232:1;7572:73:0;7657:19;7680:10;:8;:10::i;:::-;7657:33;-1:-1:-1;7709:24:0;:7;7657:33;7709:11;:24::i;:::-;7702:31;7484:258;-1:-1:-1;;;7484:258:0:o;9966:495::-;5102:6;:13;;-1:-1:-1;;;;5102:13:0;-1:-1:-1;;;5102:13:0;;;10069:16:::1;::::0;;10083:1:::1;10069:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10069:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10069:16:0::1;10045:40;;10115:4;10097;10102:1;10097:7;;;;;;-1:-1:-1::0;;;10097:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;10097:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10142:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10142:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10097:7;;10142:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10132:4;10137:1;10132:7;;;;;;-1:-1:-1::0;;;10132:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;10132:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10208:15:::1;::::0;10176:62:::1;::::0;10193:4:::1;::::0;10208:15:::1;10226:11:::0;10176:8:::1;:62::i;:::-;10250:15;::::0;:202:::1;::::0;-1:-1:-1;;;10250:202:0;;-1:-1:-1;;;;;10250:15:0;;::::1;::::0;:66:::1;::::0;:202:::1;::::0;10332:11;;10250:15:::1;::::0;10376:4;;10404::::1;::::0;10425:15:::1;::::0;10250:202:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5140:6:0;:14;;-1:-1:-1;;;;5140:14:0;;;-1:-1:-1;;;;9966:495:0:o;11894:148::-;11989:44;12007:6;12015:9;12026:6;11989:17;:44::i;1834:134::-;1892:7;1920:39;1924:1;1927;1920:39;;;;;;;;;;;;;;;;;:3;:39::i;14926:166::-;14967:7;14989:15;15006;15025:19;:17;:19::i;:::-;14988:56;;-1:-1:-1;14988:56:0;-1:-1:-1;15063:20:0;14988:56;;15063:11;:20::i;:::-;15056:27;;;;14926:166;:::o;12052:495::-;12152:15;12169:23;12194:12;12208:23;12233:12;12247:13;12264:19;12275:7;12264:10;:19::i;:::-;-1:-1:-1;;;;;12313:15:0;;;;;;:7;:15;;;;;;12151:132;;-1:-1:-1;12151:132:0;;-1:-1:-1;12151:132:0;;-1:-1:-1;12151:132:0;-1:-1:-1;12151:132:0;-1:-1:-1;12151:132:0;-1:-1:-1;12313:28:0;;12151:132;12313:19;:28::i;:::-;-1:-1:-1;;;;;12295:15:0;;;;;;;:7;:15;;;;;;:46;;;;12374:18;;;;;;;:39;;12397:15;12374:22;:39::i;:::-;-1:-1:-1;;;;;12353:18:0;;;;;;:7;:18;;;;;:60;12426:16;12436:5;12426:9;:16::i;:::-;12454:23;12466:4;12472;12454:11;:23::i;:::-;12511:9;-1:-1:-1;;;;;12494:44:0;12503:6;-1:-1:-1;;;;;12494:44:0;;12522:15;12494:44;;;;10363:25:1;;10351:2;10336:18;;10318:76;12494:44:0;;;;;;;;12052:495;;;;;;;;;:::o;1978:193::-;2064:7;2100:12;2093:5;2085:28;;;;-1:-1:-1;;;2085:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2125:9:0;2137:5;2141:1;2137;:5;:::i;15102:267::-;15200:7;;15152;;;;4287:12;15276:20;15200:7;4287:12;15276:11;:20::i;:::-;15266:7;:30;15262:61;;;-1:-1:-1;;15306:7:0;;;4287:12;;-1:-1:-1;15102:267:0;-1:-1:-1;15102:267:0:o;15262:61::-;15343:7;;15352;;-1:-1:-1;15102:267:0;-1:-1:-1;15102:267:0:o;13523:476::-;13582:7;13591;13600;13609;13618;13627;13649:23;13674:12;13688:13;13705:42;13717:7;13726:9;;13737;;13705:11;:42::i;:::-;13648:99;;;;;;13759:19;13782:10;:8;:10::i;:::-;13759:33;;13805:15;13822:23;13847:12;13863:46;13875:7;13884:4;13890:5;13897:11;13863;:46::i;:::-;13804:105;;-1:-1:-1;13804:105:0;-1:-1:-1;13804:105:0;-1:-1:-1;13961:15:0;;-1:-1:-1;13978:4:0;;-1:-1:-1;13984:5:0;;-1:-1:-1;;;;;13523:476:0;;;;;;;:::o;1219:138::-;1277:7;1305:43;1309:1;1312;1305:43;;;;;;;;;;;;;;;;;:3;:43::i;1026:183::-;1084:7;;1117:5;1121:1;1117;:5;:::i;:::-;1105:17;;1147:1;1142;:6;;1134:46;;;;-1:-1:-1;;;1134:46:0;;7727:2:1;1134:46:0;;;7709:21:1;7766:2;7746:18;;;7739:30;7805:29;7785:18;;;7778:57;7852:18;;1134:46:0;7699:177:1;12557:216:0;12611:19;12634:10;:8;:10::i;:::-;12611:33;-1:-1:-1;12656:13:0;12672:22;:5;12611:33;12672:9;:22::i;:::-;12747:4;12731:22;;;;:7;:22;;;;;;12656:38;;-1:-1:-1;12731:33:0;;12656:38;12731:26;:33::i;:::-;12722:4;12706:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;12557:216:0:o;12892:150::-;12971:7;;:17;;12983:4;12971:11;:17::i;:::-;12961:7;:27;13013:10;;:20;;13028:4;13013:14;:20::i;:::-;13000:10;:33;-1:-1:-1;;12892:150:0:o;14009:356::-;14102:7;;;;14156:28;14180:3;14156:19;:7;14168:6;14156:11;:19::i;:::-;:23;;:28::i;:::-;14141:43;-1:-1:-1;14196:13:0;14212:29;14237:3;14212:20;:7;14224;14212:11;:20::i;:29::-;14196:45;-1:-1:-1;14253:23:0;14279:28;14196:45;14279:17;:7;14291:4;14279:11;:17::i;:::-;:21;;:28::i;:::-;14253:54;14344:4;;-1:-1:-1;14350:5:0;;-1:-1:-1;14009:356:0;;-1:-1:-1;;;;;14009:356:0:o;14375:415::-;14485:7;;;;14542:24;:7;14554:11;14542;:24::i;:::-;14524:42;-1:-1:-1;14578:12:0;14593:21;:4;14602:11;14593:8;:21::i;:::-;14578:36;-1:-1:-1;14626:13:0;14642:22;:5;14652:11;14642:9;:22::i;:::-;14626:38;-1:-1:-1;14676:23:0;14702:28;14626:38;14702:17;:7;14714:4;14702:11;:17::i;:28::-;14750:7;;;;-1:-1:-1;14776:4:0;;-1:-1:-1;14375:415:0;;-1:-1:-1;;;;;;;14375:415:0:o;1571:253::-;1629:7;1654:6;1650:49;;-1:-1:-1;1685:1:0;1678:8;;1650:49;1710:9;1722:5;1726:1;1722;:5;:::i;:::-;1710:17;-1:-1:-1;1756:1:0;1747:5;1751:1;1710:17;1747:5;:::i;:::-;:10;1739:56;;;;-1:-1:-1;;;1739:56:0;;8083:2:1;1739:56:0;;;8065:21:1;8122:2;8102:18;;;8095:30;8161:34;8141:18;;;8134:62;-1:-1:-1;;;8212:18:1;;;8205:31;8253:19;;1739:56:0;8055:223:1;14:134;82:20;;111:31;82:20;111:31;:::i;:::-;63:85;;;:::o;153:257::-;212:6;265:2;253:9;244:7;240:23;236:32;233:2;;;286:6;278;271:22;233:2;330:9;317:23;349:31;374:5;349:31;:::i;415:261::-;485:6;538:2;526:9;517:7;513:23;509:32;506:2;;;559:6;551;544:22;506:2;596:9;590:16;615:31;640:5;615:31;:::i;681:398::-;749:6;757;810:2;798:9;789:7;785:23;781:32;778:2;;;831:6;823;816:22;778:2;875:9;862:23;894:31;919:5;894:31;:::i;:::-;944:5;-1:-1:-1;1001:2:1;986:18;;973:32;1014:33;973:32;1014:33;:::i;:::-;1066:7;1056:17;;;768:311;;;;;:::o;1084:466::-;1161:6;1169;1177;1230:2;1218:9;1209:7;1205:23;1201:32;1198:2;;;1251:6;1243;1236:22;1198:2;1295:9;1282:23;1314:31;1339:5;1314:31;:::i;:::-;1364:5;-1:-1:-1;1421:2:1;1406:18;;1393:32;1434:33;1393:32;1434:33;:::i;:::-;1188:362;;1486:7;;-1:-1:-1;;;1540:2:1;1525:18;;;;1512:32;;1188:362::o;1555:325::-;1623:6;1631;1684:2;1672:9;1663:7;1659:23;1655:32;1652:2;;;1705:6;1697;1690:22;1652:2;1749:9;1736:23;1768:31;1793:5;1768:31;:::i;:::-;1818:5;1870:2;1855:18;;;;1842:32;;-1:-1:-1;;;1642:238:1:o;1885:1177::-;1969:6;2000:2;2043;2031:9;2022:7;2018:23;2014:32;2011:2;;;2064:6;2056;2049:22;2011:2;2109:9;2096:23;2138:18;2179:2;2171:6;2168:14;2165:2;;;2200:6;2192;2185:22;2165:2;2243:6;2232:9;2228:22;2218:32;;2288:7;2281:4;2277:2;2273:13;2269:27;2259:2;;2315:6;2307;2300:22;2259:2;2356;2343:16;2378:2;2374;2371:10;2368:2;;;2384:18;;:::i;:::-;2430:2;2427:1;2423:10;2462:2;2456:9;2525:2;2521:7;2516:2;2512;2508:11;2504:25;2496:6;2492:38;2580:6;2568:10;2565:22;2560:2;2548:10;2545:18;2542:46;2539:2;;;2591:18;;:::i;:::-;2627:2;2620:22;2677:18;;;2711:15;;;;-1:-1:-1;2746:11:1;;;2776;;;2772:20;;2769:33;-1:-1:-1;2766:2:1;;;2820:6;2812;2805:22;2766:2;2847:6;2838:15;;2862:169;2876:2;2873:1;2870:9;2862:169;;;2933:23;2952:3;2933:23;:::i;:::-;2921:36;;2894:1;2887:9;;;;;2977:12;;;;3009;;2862:169;;;-1:-1:-1;3050:6:1;1980:1082;-1:-1:-1;;;;;;;;1980:1082:1:o;3067:251::-;3123:6;3176:2;3164:9;3155:7;3151:23;3147:32;3144:2;;;3197:6;3189;3182:22;3144:2;3241:9;3228:23;3260:28;3282:5;3260:28;:::i;3323:255::-;3390:6;3443:2;3431:9;3422:7;3418:23;3414:32;3411:2;;;3464:6;3456;3449:22;3411:2;3501:9;3495:16;3520:28;3542:5;3520:28;:::i;3583:190::-;3642:6;3695:2;3683:9;3674:7;3670:23;3666:32;3663:2;;;3716:6;3708;3701:22;3663:2;-1:-1:-1;3744:23:1;;3653:120;-1:-1:-1;3653:120:1:o;3778:316::-;3866:6;3874;3882;3935:2;3923:9;3914:7;3910:23;3906:32;3903:2;;;3956:6;3948;3941:22;3903:2;3990:9;3984:16;3974:26;;4040:2;4029:9;4025:18;4019:25;4009:35;;4084:2;4073:9;4069:18;4063:25;4053:35;;3893:201;;;;;:::o;5699:603::-;5811:4;5840:2;5869;5858:9;5851:21;5901:6;5895:13;5944:6;5939:2;5928:9;5924:18;5917:34;5969:4;5982:140;5996:6;5993:1;5990:13;5982:140;;;6091:14;;;6087:23;;6081:30;6057:17;;;6076:2;6053:26;6046:66;6011:10;;5982:140;;;6140:6;6137:1;6134:13;6131:2;;;6210:4;6205:2;6196:6;6185:9;6181:22;6177:31;6170:45;6131:2;-1:-1:-1;6286:2:1;6265:15;-1:-1:-1;;6261:29:1;6246:45;;;;6293:2;6242:54;;5820:482;-1:-1:-1;;;5820:482:1:o;8283:356::-;8485:2;8467:21;;;8504:18;;;8497:30;8563:34;8558:2;8543:18;;8536:62;8630:2;8615:18;;8457:182::o;10399:983::-;10661:4;10709:3;10698:9;10694:19;10740:6;10729:9;10722:25;10766:2;10804:6;10799:2;10788:9;10784:18;10777:34;10847:3;10842:2;10831:9;10827:18;10820:31;10871:6;10906;10900:13;10937:6;10929;10922:22;10975:3;10964:9;10960:19;10953:26;;11014:2;11006:6;11002:15;10988:29;;11035:4;11048:195;11062:6;11059:1;11056:13;11048:195;;;11127:13;;-1:-1:-1;;;;;11123:39:1;11111:52;;11218:15;;;;11183:12;;;;11159:1;11077:9;11048:195;;;-1:-1:-1;;;;;;;11299:32:1;;;;11294:2;11279:18;;11272:60;-1:-1:-1;;;11363:3:1;11348:19;11341:35;11260:3;10670:712;-1:-1:-1;;;10670:712:1:o;11576:128::-;11616:3;11647:1;11643:6;11640:1;11637:13;11634:2;;;11653:18;;:::i;:::-;-1:-1:-1;11689:9:1;;11624:80::o;11709:217::-;11749:1;11775;11765:2;;-1:-1:-1;;;11800:31:1;;11854:4;11851:1;11844:15;11882:4;11807:1;11872:15;11765:2;-1:-1:-1;11911:9:1;;11755:171::o;11931:168::-;11971:7;12037:1;12033;12029:6;12025:14;12022:1;12019:21;12014:1;12007:9;12000:17;11996:45;11993:2;;;12044:18;;:::i;:::-;-1:-1:-1;12084:9:1;;11983:116::o;12104:125::-;12144:4;12172:1;12169;12166:8;12163:2;;;12177:18;;:::i;:::-;-1:-1:-1;12214:9:1;;12153:76::o;12234:135::-;12273:3;-1:-1:-1;;12294:17:1;;12291:2;;;12314:18;;:::i;:::-;-1:-1:-1;12361:1:1;12350:13;;12281:88::o;12374:127::-;12435:10;12430:3;12426:20;12423:1;12416:31;12466:4;12463:1;12456:15;12490:4;12487:1;12480:15;12506:127;12567:10;12562:3;12558:20;12555:1;12548:31;12598:4;12595:1;12588:15;12622:4;12619:1;12612:15;12638:131;-1:-1:-1;;;;;12713:31:1;;12703:42;;12693:2;;12759:1;12756;12749:12;12774:118;12860:5;12853:13;12846:21;12839:5;12836:32;12826:2;;12882:1;12879;12872:12

Swarm Source

ipfs://8366b8af61690b226e41cbb0539dbdd0f6c40e52c71288d2ada1d42cac0d9be8

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.