Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 924 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 23631459 | 124 days ago | IN | 0 ETH | 0.00002641 | ||||
| Approve | 22974774 | 216 days ago | IN | 0 ETH | 0.00007384 | ||||
| Approve | 20248673 | 597 days ago | IN | 0 ETH | 0.00010972 | ||||
| Approve | 20248554 | 597 days ago | IN | 0 ETH | 0.00011281 | ||||
| Claim Dividend | 19824397 | 656 days ago | IN | 0 ETH | 0.00015759 | ||||
| Approve | 19103728 | 757 days ago | IN | 0 ETH | 0.00068423 | ||||
| Approve | 18995880 | 772 days ago | IN | 0 ETH | 0.00030528 | ||||
| Approve | 18993386 | 773 days ago | IN | 0 ETH | 0.00138484 | ||||
| Approve | 18915421 | 784 days ago | IN | 0 ETH | 0.0003965 | ||||
| Transfer | 18902361 | 786 days ago | IN | 0 ETH | 0.00381241 | ||||
| Approve | 18779629 | 803 days ago | IN | 0 ETH | 0.00288835 | ||||
| Claim Dividend | 18752826 | 806 days ago | IN | 0 ETH | 0.00276958 | ||||
| Approve | 18505155 | 841 days ago | IN | 0 ETH | 0.00064369 | ||||
| Approve | 18495363 | 843 days ago | IN | 0 ETH | 0.00032056 | ||||
| Claim Dividend | 18430957 | 852 days ago | IN | 0 ETH | 0.00172797 | ||||
| Approve | 18191794 | 885 days ago | IN | 0 ETH | 0.0005304 | ||||
| Approve | 18103533 | 897 days ago | IN | 0 ETH | 0.00043691 | ||||
| Approve | 18083793 | 900 days ago | IN | 0 ETH | 0.00070133 | ||||
| Approve | 17949842 | 919 days ago | IN | 0 ETH | 0.0010654 | ||||
| Approve | 17946368 | 919 days ago | IN | 0 ETH | 0.0006479 | ||||
| Approve | 17914658 | 924 days ago | IN | 0 ETH | 0.00179104 | ||||
| Approve | 17891588 | 927 days ago | IN | 0 ETH | 0.0007974 | ||||
| Approve | 17846899 | 933 days ago | IN | 0 ETH | 0.00036899 | ||||
| Approve | 17846895 | 933 days ago | IN | 0 ETH | 0.00058776 | ||||
| Approve | 17798314 | 940 days ago | IN | 0 ETH | 0.00094333 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x60a06040 | 17189824 | 1026 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
MSBOB
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.17;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@rari-capital/solmate/src/auth/Owned.sol";
import "./interface/IDEXFactory.sol";
import "./interface/IDEXRouter.sol";
import "./interface/IWETH.sol";
contract DividendDistributor {
address public _token;
address public immutable dividendToken;
struct Share {
uint256 amount;
uint256 totalExcluded;
uint256 totalClaimed;
}
address[] private shareholders;
mapping(address => uint256) private shareholderIndexes;
mapping(address => Share) public shares;
uint256 public totalShares;
uint256 public totalDividends;
uint256 public totalClaimed;
uint256 public dividendsPerShare;
uint256 private accuracyFactor = 10 ** 36;
modifier onlyToken() {
require(msg.sender == _token);
_;
}
constructor(address _dividendToken) {
_token = msg.sender;
dividendToken = _dividendToken;
}
function setShare(address shareholder, uint256 amount) external onlyToken {
if (shares[shareholder].amount != 0) {
distributeDividend(shareholder);
}
if (amount != 0 && shares[shareholder].amount == 0) {
addShareholder(shareholder);
} else if (amount == 0 && shares[shareholder].amount != 0) {
removeShareholder(shareholder);
}
totalShares = totalShares - shares[shareholder].amount + amount;
shares[shareholder].amount = amount;
shares[shareholder].totalExcluded = getCumulativeDividends(amount);
}
function deposit(uint256 amount) external onlyToken {
if (amount != 0) {
totalDividends += amount;
dividendsPerShare += (accuracyFactor * amount) / totalShares;
}
}
function distributeDividend(address shareholder) internal {
if (shares[shareholder].amount == 0) {
return;
}
uint256 amount = getClaimableDividendOf(shareholder);
if (amount != 0) {
totalClaimed += amount;
shares[shareholder].totalClaimed += amount;
shares[shareholder].totalExcluded = getCumulativeDividends(
shares[shareholder].amount
);
IERC20(dividendToken).transfer(shareholder, amount);
}
}
function claimDividend(address shareholder) external onlyToken {
distributeDividend(shareholder);
}
function getClaimableDividendOf(
address shareholder
) public view returns (uint256) {
if (shares[shareholder].amount == 0) {
return 0;
}
uint256 shareholderTotalDividends = getCumulativeDividends(
shares[shareholder].amount
);
uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded;
if (shareholderTotalDividends <= shareholderTotalExcluded) {
return 0;
}
return shareholderTotalDividends - shareholderTotalExcluded;
}
function getCumulativeDividends(
uint256 share
) internal view returns (uint256) {
return (share * dividendsPerShare) / accuracyFactor;
}
function addShareholder(address shareholder) internal {
shareholderIndexes[shareholder] = shareholders.length;
shareholders.push(shareholder);
}
function removeShareholder(address shareholder) internal {
shareholders[shareholderIndexes[shareholder]] = shareholders[
shareholders.length - 1
];
shareholderIndexes[
shareholders[shareholders.length - 1]
] = shareholderIndexes[shareholder];
shareholders.pop();
}
function getDividendsClaimedOf(
address shareholder
) external view returns (uint256) {
require(shares[shareholder].amount != 0, "Not a shareholder!");
return shares[shareholder].totalClaimed;
}
}
contract MSBOB is IERC20, Owned {
IDEXRouter private constant router =
IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); // Uniswap Router
address private constant DEAD = 0x000000000000000000000000000000000000dEaD;
address private constant ZERO = address(0);
address private immutable WETH;
address public immutable dividendToken;
string private constant _name = "MSBOB";
string private constant _symbol = "MSBOB";
uint8 private constant _decimals = 9;
uint256 private _totalSupply = 1_000_000_000 * (10 ** _decimals);
uint256 public numTokensSell = 5_000 * 10 ** _decimals;
uint256 public totalFee = 9;
uint256 public swapRewardPercent = 100;
address public marketingWallet;
bool public buyLimit = true;
uint256 public maxBuy = 10_000_000 * 10 ** _decimals;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
mapping(address => bool) public isFeeExempt;
mapping(address => bool) public isDividendExempt;
mapping(address => bool) public isBot;
DividendDistributor public distributor;
address public pair;
bool public tradingOpen;
bool public blacklistEnabled;
bool private inSwap;
modifier swapping() {
inSwap = true;
_;
inSwap = false;
}
constructor(
address _owner,
address _marketingWallet,
address _dividendToken
) Owned(_owner) {
WETH = router.WETH();
pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
_allowances[address(this)][address(router)] = type(uint256).max;
dividendToken = _dividendToken;
distributor = new DividendDistributor(_dividendToken);
marketingWallet = _marketingWallet;
isFeeExempt[_owner] = true;
isFeeExempt[_marketingWallet] = true;
isDividendExempt[pair] = true;
isDividendExempt[address(this)] = true;
isDividendExempt[DEAD] = true;
_balances[_owner] = _totalSupply;
emit Transfer(address(0), _owner, _totalSupply);
}
receive() external payable {}
function totalSupply() external view override returns (uint256) {
return _totalSupply;
}
function decimals() external pure returns (uint8) {
return _decimals;
}
function symbol() external pure returns (string memory) {
return _symbol;
}
function name() external pure returns (string memory) {
return _name;
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function allowance(
address holder,
address spender
) external view override returns (uint256) {
return _allowances[holder][spender];
}
function approve(
address spender,
uint256 amount
) external override returns (bool) {
_allowances[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}
function transfer(
address recipient,
uint256 amount
) external override returns (bool) {
return _transferFrom(msg.sender, recipient, amount);
}
function transferFrom(
address sender,
address recipient,
uint256 amount
) external override returns (bool) {
if (_allowances[sender][msg.sender] != type(uint256).max) {
uint256 currentAllowance = _allowances[sender][msg.sender];
require(currentAllowance >= amount, "Insufficient allowance");
_allowances[sender][msg.sender] = currentAllowance - amount;
}
return _transferFrom(sender, recipient, amount);
}
function _transferFrom(
address sender,
address recipient,
uint256 amount
) internal returns (bool) {
require(
tradingOpen || sender == owner || recipient == owner,
"Trading not yet enabled"
); //transfers disabled before openTrading
if (blacklistEnabled) {
require(!isBot[sender] && !isBot[recipient], "Bot");
}
if (buyLimit) {
if (sender != owner && recipient != owner)
require(amount <= maxBuy, "Too much sir");
}
if (inSwap) {
return _basicTransfer(sender, recipient, amount);
}
uint256 contractTokenBal = balanceOf(address(this));
bool overMinTokenBal = contractTokenBal >= numTokensSell;
if (
overMinTokenBal &&
recipient == pair &&
balanceOf(address(this)) != 0
) {
swapBack();
}
uint256 senderBalance = _balances[sender];
require(senderBalance >= amount, "Insufficient Balance");
unchecked {
_balances[sender] = senderBalance - amount;
}
uint256 amountReceived = shouldTakeFee(sender, recipient)
? takeFee(sender, amount)
: amount;
_balances[recipient] += amountReceived;
if (sender != pair && !isDividendExempt[sender]) {
try distributor.setShare(sender, _balances[sender]) {} catch {}
}
if (recipient != pair && !isDividendExempt[recipient]) {
try
distributor.setShare(recipient, _balances[recipient])
{} catch {}
}
emit Transfer(sender, recipient, amountReceived);
return true;
}
function _basicTransfer(
address sender,
address recipient,
uint256 amount
) internal returns (bool) {
uint256 senderBalance = _balances[sender];
require(senderBalance >= amount, "Insufficient Balance");
unchecked {
_balances[sender] = senderBalance - amount;
_balances[recipient] += amount;
}
emit Transfer(sender, recipient, amount);
return true;
}
function shouldTakeFee(
address sender,
address recipient
) internal view returns (bool) {
return (!(isFeeExempt[sender] || isFeeExempt[recipient]) &&
(sender == pair || recipient == pair));
}
function takeFee(
address sender,
uint256 amount
) internal returns (uint256) {
uint256 feeAmount = (amount * totalFee) / 100;
_balances[address(this)] += feeAmount;
emit Transfer(sender, address(this), feeAmount);
return amount - feeAmount;
}
function swapBack() internal swapping {
uint256 tokenBal = balanceOf(address(this));
uint256 tokenForDividends = (tokenBal * swapRewardPercent) / 100;
if (tokenForDividends != 0) {
uint256 balBefore = IERC20(dividendToken).balanceOf(address(distributor));
swapTokensForDividend(tokenForDividends, address(distributor));
uint256 balAfter = IERC20(dividendToken).balanceOf(address(distributor));
distributor.deposit(balAfter - balBefore);
}
if (tokenBal - tokenForDividends != 0) {
swapTokensForETH(tokenBal - tokenForDividends, marketingWallet);
}
}
function swapTokensForDividend(uint256 tokenAmount, address to) private {
address[] memory path = new address[](3);
path[0] = address(this);
path[1] = WETH;
path[2] = dividendToken;
// make the swap
router.swapExactTokensForTokensSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
to,
block.timestamp
);
}
function swapTokensForETH(uint256 tokenAmount, address to) private {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = WETH;
// make the swap
router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
to,
block.timestamp
);
}
function _setIsDividendExempt(address holder, bool exempt) internal {
require(holder != address(this) && holder != pair);
isDividendExempt[holder] = exempt;
if (exempt) {
distributor.setShare(holder, 0);
} else {
distributor.setShare(holder, _balances[holder]);
}
}
function claimDividend() external {
distributor.claimDividend(msg.sender);
}
function getClaimableDividendOf(
address shareholder
) public view returns (uint256) {
return distributor.getClaimableDividendOf(shareholder);
}
function getCirculatingSupply() public view returns (uint256) {
return _totalSupply - balanceOf(DEAD) - balanceOf(ZERO);
}
function getTotalDividends() external view returns (uint256) {
return distributor.totalDividends();
}
function getTotalClaimed() external view returns (uint256) {
return distributor.totalClaimed();
}
function getDividendsClaimedOf(
address shareholder
) external view returns (uint256) {
return distributor.getDividendsClaimedOf(shareholder);
}
function checkBot(address account) external view returns (bool) {
return isBot[account];
}
function openTrading() external onlyOwner {
tradingOpen = true;
}
function setBot(address _address, bool toggle) external onlyOwner {
isBot[_address] = toggle;
_setIsDividendExempt(_address, toggle);
}
function setIsDividendExempt(
address holder,
bool exempt
) external onlyOwner {
_setIsDividendExempt(holder, exempt);
}
function setIsFeeExempt(address holder, bool exempt) external onlyOwner {
isFeeExempt[holder] = exempt;
}
function setFee(uint256 _fee) external onlyOwner {
require(_fee <= 14, "Fee cannot exceed 14%");
totalFee = _fee;
}
function manualSend() external onlyOwner {
payable(marketingWallet).transfer(address(this).balance);
}
function claimDividendOf(address holder) external onlyOwner {
distributor.claimDividend(holder);
}
function manualBurn(uint256 amount) external onlyOwner returns (bool) {
return _basicTransfer(address(this), DEAD, amount);
}
function setMarketingWallet(address _marketingWallet) external onlyOwner {
marketingWallet = _marketingWallet;
}
function removeBuyLimit() external onlyOwner {
buyLimit = false;
}
function updateBuyLimit(uint256 newLimit) external onlyOwner {
maxBuy = newLimit;
}
function setBlacklistEnabled() external onlyOwner {
require(blacklistEnabled == false, "can only be called once");
blacklistEnabled = true;
}
function setSwapRewardPercent(uint256 percent) external onlyOwner {
require(percent <= 100, "Can not exceed 100%");
swapRewardPercent = percent;
}
function setSwapThresholdAmount(uint256 amount) external onlyOwner {
numTokensSell = amount;
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol)
pragma solidity ^0.8.0;
/**
* @dev Interface of the ERC20 standard as defined in the EIP.
*/
interface IERC20 {
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(address indexed owner, address indexed spender, uint256 value);
/**
* @dev Returns the amount of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves `amount` tokens from the caller's account to `to`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address to, uint256 amount) external returns (bool);
/**
* @dev Returns the remaining number of tokens that `spender` will be
* allowed to spend on behalf of `owner` through {transferFrom}. This is
* zero by default.
*
* This value changes when {approve} or {transferFrom} are called.
*/
function allowance(address owner, address spender) external view returns (uint256);
/**
* @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* IMPORTANT: Beware that changing an allowance with this method brings the risk
* that someone may use both the old and the new allowance by unfortunate
* transaction ordering. One possible solution to mitigate this race
* condition is to first reduce the spender's allowance to 0 and set the
* desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
*
* Emits an {Approval} event.
*/
function approve(address spender, uint256 amount) external returns (bool);
/**
* @dev Moves `amount` tokens from `from` to `to` using the
* allowance mechanism. `amount` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transferFrom(
address from,
address to,
uint256 amount
) external returns (bool);
}// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
/*//////////////////////////////////////////////////////////////
EVENTS
//////////////////////////////////////////////////////////////*/
event OwnerUpdated(address indexed user, address indexed newOwner);
/*//////////////////////////////////////////////////////////////
OWNERSHIP STORAGE
//////////////////////////////////////////////////////////////*/
address public owner;
modifier onlyOwner() virtual {
require(msg.sender == owner, "UNAUTHORIZED");
_;
}
/*//////////////////////////////////////////////////////////////
CONSTRUCTOR
//////////////////////////////////////////////////////////////*/
constructor(address _owner) {
owner = _owner;
emit OwnerUpdated(address(0), _owner);
}
/*//////////////////////////////////////////////////////////////
OWNERSHIP LOGIC
//////////////////////////////////////////////////////////////*/
function setOwner(address newOwner) public virtual onlyOwner {
owner = newOwner;
emit OwnerUpdated(msg.sender, newOwner);
}
}// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.17;
interface IDEXFactory {
function createPair(
address tokenA,
address tokenB
) external returns (address pair);
function getPair(
address tokenA,
address tokenB
) external view returns (address pair);
}// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.17;
interface IDEXRouter {
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);
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external payable;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.17;
interface IWETH {
function deposit() external payable;
function withdraw(uint256) external;
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"metadata": {
"useLiteralContent": true
},
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_marketingWallet","type":"address"},{"internalType":"address","name":"_dividendToken","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerUpdated","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":"holder","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":"blacklistEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"checkBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"claimDividendOf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"distributor","outputs":[{"internalType":"contract DividendDistributor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dividendToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getClaimableDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getDividendsClaimedOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"numTokensSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeBuyLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setBlacklistEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setSwapRewardPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapThresholdAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapRewardPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"updateBuyLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60c0604052620000126009600a62000527565b6200002290633b9aca006200053f565b600155620000336009600a62000527565b62000041906113886200053f565b6002556009600381905560646004556005805460ff60a01b1916600160a01b1790556200007090600a62000527565b6200007f90629896806200053f565b6006553480156200008f57600080fd5b5060405162002ffe38038062002ffe833981016040819052620000b29162000576565b600080546001600160a01b0319166001600160a01b03851690811782556040518592907f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200014e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001749190620005c0565b6001600160a01b03166080526040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9163c45a01559160048083019260209291908290030181865afa158015620001d1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f79190620005c0565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000249573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026f9190620005c0565b600d80546001600160a01b0319166001600160a01b03928316179055306000908152600860209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d845290915290819020600019905590821660a052518190620002d49062000404565b6001600160a01b039091168152602001604051809103906000f08015801562000301573d6000803e3d6000fd5b50600c80546001600160a01b039283166001600160a01b031991821617909155600580548584169216821790558482166000818152600960209081526040808320805460ff1990811660019081179092559584528184208054871682179055600d549096168352600a8252808320805486168717905530835280832080548616871790557f20677881080440a9b3c87e826370bb5d9c2f74efd4dede686d52d77a6a09f8bb8054909516861790945593548282526007909452828120849055915190927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91620003f391815260200190565b60405180910390a3505050620005de565b6109ae806200265083390190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004695781600019048211156200044d576200044d62000412565b808516156200045b57918102915b93841c93908002906200042d565b509250929050565b600082620004825750600162000521565b81620004915750600062000521565b8160018114620004aa5760028114620004b557620004d5565b600191505062000521565b60ff841115620004c957620004c962000412565b50506001821b62000521565b5060208310610133831016604e8410600b8410161715620004fa575081810a62000521565b62000506838362000428565b80600019048211156200051d576200051d62000412565b0290505b92915050565b60006200053860ff84168362000471565b9392505050565b808202811582820484141762000521576200052162000412565b80516001600160a01b03811681146200057157600080fd5b919050565b6000806000606084860312156200058c57600080fd5b620005978462000559565b9250620005a76020850162000559565b9150620005b76040850162000559565b90509250925092565b600060208284031215620005d357600080fd5b620005388262000559565b60805160a051612030620006206000396000818161032e01528181611831015281816118db0152611baf015260008181611b5b0152611cc701526120306000f3fe6080604052600436106102815760003560e01c806369fe0e2d1161014f578063b1a4e0dc116100c1578063f0fc6bca1161007a578063f0fc6bca146107ea578063f283c4ba146107ff578063f429389014610815578063f685d7d81461082a578063f708a64f1461084a578063ffb54a991461086a57600080fd5b8063b1a4e0dc146106ff578063b294f11114610738578063bfe109281461074e578063bffb691d1461076e578063c9567bf91461078f578063dd62ed3e146107a457600080fd5b8063764ca51211610113578063764ca5121461066a5780638da5cb5b1461067f5780638ecc37fb1461069f57806395d89b411461028d578063a8aa1b31146106bf578063a9059cbb146106df57600080fd5b806369fe0e2d146105c957806370a08231146105e957806370db69d61461061f578063736a83a11461063557806375f0a8741461064a57600080fd5b8063342aa8b5116101f35780634d31d2c7116101ac5780634d31d2c714610513578063589210d9146105335780635cc33f74146105545780635d098b3814610574578063658d4b7f1461059457806367ee5f09146105b457600080fd5b8063342aa8b51461042e5780633bbac5791461044e5780633e07ce5b1461047e5780633f4218e0146104935780634355855a146104c35780634d1b2f9e146104f357600080fd5b80631df4ccfc116102455780631df4ccfc1461038757806323b635851461039d57806323b872dd146103bd57806329e04b4a146103dd5780632b112e49146103fd578063313ce5671461041257600080fd5b806306fdde031461028d578063095ea7b3146102ca57806313af4035146102fa5780631582358e1461031c57806318160ddd1461036857600080fd5b3661028857005b600080fd5b34801561029957600080fd5b50604080518082018252600581526426a9a127a160d91b602082015290516102c19190611d51565b60405180910390f35b3480156102d657600080fd5b506102ea6102e5366004611db6565b61088b565b60405190151581526020016102c1565b34801561030657600080fd5b5061031a610315366004611de0565b6108f8565b005b34801561032857600080fd5b506103507f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016102c1565b34801561037457600080fd5b506001545b6040519081526020016102c1565b34801561039357600080fd5b5061037960035481565b3480156103a957600080fd5b506102ea6103b8366004611dfb565b610976565b3480156103c957600080fd5b506102ea6103d8366004611e14565b6109b6565b3480156103e957600080fd5b5061031a6103f8366004611dfb565b610a94565b34801561040957600080fd5b50610379610ac3565b34801561041e57600080fd5b50604051600981526020016102c1565b34801561043a57600080fd5b5061031a610449366004611e50565b610b33565b34801561045a57600080fd5b506102ea610469366004611de0565b600b6020526000908152604090205460ff1681565b34801561048a57600080fd5b5061031a610b8f565b34801561049f57600080fd5b506102ea6104ae366004611de0565b60096020526000908152604090205460ff1681565b3480156104cf57600080fd5b506102ea6104de366004611de0565b600a6020526000908152604090205460ff1681565b3480156104ff57600080fd5b5061031a61050e366004611dfb565b610bc8565b34801561051f57600080fd5b5061031a61052e366004611de0565b610bf7565b34801561053f57600080fd5b506005546102ea90600160a01b900460ff1681565b34801561056057600080fd5b5061037961056f366004611de0565b610c83565b34801561058057600080fd5b5061031a61058f366004611de0565b610cf3565b3480156105a057600080fd5b5061031a6105af366004611e50565b610d3f565b3480156105c057600080fd5b50610379610d94565b3480156105d557600080fd5b5061031a6105e4366004611dfb565b610e02565b3480156105f557600080fd5b50610379610604366004611de0565b6001600160a01b031660009081526007602052604090205490565b34801561062b57600080fd5b5061037960065481565b34801561064157600080fd5b50610379610e7a565b34801561065657600080fd5b50600554610350906001600160a01b031681565b34801561067657600080fd5b5061031a610ec4565b34801561068b57600080fd5b50600054610350906001600160a01b031681565b3480156106ab57600080fd5b506103796106ba366004611de0565b610f5d565b3480156106cb57600080fd5b50600d54610350906001600160a01b031681565b3480156106eb57600080fd5b506102ea6106fa366004611db6565b610f90565b34801561070b57600080fd5b506102ea61071a366004611de0565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561074457600080fd5b5061037960025481565b34801561075a57600080fd5b50600c54610350906001600160a01b031681565b34801561077a57600080fd5b50600d546102ea90600160a81b900460ff1681565b34801561079b57600080fd5b5061031a610f9d565b3480156107b057600080fd5b506103796107bf366004611e8c565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156107f657600080fd5b5061031a610fdc565b34801561080b57600080fd5b5061037960045481565b34801561082157600080fd5b5061031a61103b565b34801561083657600080fd5b5061031a610845366004611dfb565b6110a1565b34801561085657600080fd5b5061031a610865366004611e50565b611117565b34801561087657600080fd5b50600d546102ea90600160a01b900460ff1681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108e69086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461092b5760405162461bcd60e51b815260040161092290611ebf565b60405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b600080546001600160a01b031633146109a15760405162461bcd60e51b815260040161092290611ebf565b6109ae3061dead8461114b565b90505b919050565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610a7f576001600160a01b038416600090815260086020908152604080832033845290915290205482811015610a4f5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606401610922565b610a598382611efb565b6001600160a01b0386166000908152600860209081526040808320338452909152902055505b610a8a84848461121e565b90505b9392505050565b6000546001600160a01b03163314610abe5760405162461bcd60e51b815260040161092290611ebf565b600255565b60076020527f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df5461dead60009081527fb0c2646e02af70b79e3fe9277b98373379f54150e4e26b2b5650139f7a75a65d54600154919291610b249190611efb565b610b2e9190611efb565b905090565b6000546001600160a01b03163314610b5d5760405162461bcd60e51b815260040161092290611ebf565b6001600160a01b0382166000908152600b60205260409020805460ff1916821515179055610b8b82826116b2565b5050565b6000546001600160a01b03163314610bb95760405162461bcd60e51b815260040161092290611ebf565b6005805460ff60a01b19169055565b6000546001600160a01b03163314610bf25760405162461bcd60e51b815260040161092290611ebf565b600655565b6000546001600160a01b03163314610c215760405162461bcd60e51b815260040161092290611ebf565b600c54604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b158015610c6857600080fd5b505af1158015610c7c573d6000803e3d6000fd5b5050505050565b600c54604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610ccf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190611f0e565b6000546001600160a01b03163314610d1d5760405162461bcd60e51b815260040161092290611ebf565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610d695760405162461bcd60e51b815260040161092290611ebf565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b600c546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610dde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2e9190611f0e565b6000546001600160a01b03163314610e2c5760405162461bcd60e51b815260040161092290611ebf565b600e811115610e755760405162461bcd60e51b81526020600482015260156024820152744665652063616e6e6f74206578636565642031342560581b6044820152606401610922565b600355565b600c546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610dde573d6000803e3d6000fd5b6000546001600160a01b03163314610eee5760405162461bcd60e51b815260040161092290611ebf565b600d54600160a81b900460ff1615610f485760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e63650000000000000000006044820152606401610922565b600d805460ff60a81b1916600160a81b179055565b600c54604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610cb2565b6000610a8d33848461121e565b6000546001600160a01b03163314610fc75760405162461bcd60e51b815260040161092290611ebf565b600d805460ff60a01b1916600160a01b179055565b600c54604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b15801561102157600080fd5b505af1158015611035573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146110655760405162461bcd60e51b815260040161092290611ebf565b6005546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561109e573d6000803e3d6000fd5b50565b6000546001600160a01b031633146110cb5760405162461bcd60e51b815260040161092290611ebf565b60648111156111125760405162461bcd60e51b815260206004820152601360248201527243616e206e6f7420657863656564203130302560681b6044820152606401610922565b600455565b6000546001600160a01b031633146111415760405162461bcd60e51b815260040161092290611ebf565b610b8b82826116b2565b6001600160a01b038316600090815260076020526040812054828110156111ab5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b6044820152606401610922565b6001600160a01b0380861660008181526007602052604080822087860390559287168082529083902080548701905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061120b9087815260200190565b60405180910390a3506001949350505050565b600d54600090600160a01b900460ff168061124657506000546001600160a01b038581169116145b8061125e57506000546001600160a01b038481169116145b6112aa5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742079657420656e61626c65640000000000000000006044820152606401610922565b600d54600160a81b900460ff1615611330576001600160a01b0384166000908152600b602052604090205460ff161580156112fe57506001600160a01b0383166000908152600b602052604090205460ff16155b6113305760405162461bcd60e51b8152602060048201526003602482015262109bdd60ea1b6044820152606401610922565b600554600160a01b900460ff16156113b4576000546001600160a01b0385811691161480159061136e57506000546001600160a01b03848116911614155b156113b4576006548211156113b45760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610922565b600d54600160b01b900460ff16156113d8576113d184848461114b565b9050610a8d565b30600090815260076020526040902054600254811080159081906114095750600d546001600160a01b038681169116145b801561142357503060009081526007602052604090205415155b15611430576114306117c3565b6001600160a01b038616600090815260076020526040902054848110156114905760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b6044820152606401610922565b6001600160a01b038716600090815260076020526040812086830390556114b788886119f5565b6114c157856114cb565b6114cb8887611a6a565b6001600160a01b0388166000908152600760205260408120805492935083929091906114f8908490611f27565b9091555050600d546001600160a01b0389811691161480159061153457506001600160a01b0388166000908152600a602052604090205460ff16155b156115aa57600c546001600160a01b0389811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561159757600080fd5b505af19250505080156115a8575060015b505b600d546001600160a01b038881169116148015906115e157506001600160a01b0387166000908152600a602052604090205460ff16155b1561165757600c546001600160a01b0388811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561164457600080fd5b505af1925050508015611655575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161169c91815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b03821630148015906116d95750600d546001600160a01b03838116911614155b6116e257600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff1916821580159190911790915561177a57600c54604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561175e57600080fd5b505af1158015611772573d6000803e3d6000fd5b505050505050565b600c546001600160a01b0383811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611744565b600d805460ff60b01b1916600160b01b17905530600090815260076020526040812054905060006064600454836117fa9190611f3a565b6118049190611f51565b905080156119b757600c546040516370a0823160e01b81526001600160a01b0391821660048201526000917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015611878573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189c9190611f0e565b600c549091506118b69083906001600160a01b0316611b02565b600c546040516370a0823160e01b81526001600160a01b0391821660048201526000917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015611922573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119469190611f0e565b600c549091506001600160a01b031663b6b55f256119648484611efb565b6040518263ffffffff1660e01b815260040161198291815260200190565b600060405180830381600087803b15801561199c57600080fd5b505af11580156119b0573d6000803e3d6000fd5b5050505050505b6119c18183611efb565b156119e4576119e46119d38284611efb565b6005546001600160a01b0316611c70565b5050600d805460ff60b01b19169055565b6001600160a01b03821660009081526009602052604081205460ff1680611a3457506001600160a01b03821660009081526009602052604090205460ff165b158015610a8d5750600d546001600160a01b0384811691161480610a8d575050600d546001600160a01b03908116911614919050565b600080606460035484611a7d9190611f3a565b611a879190611f51565b30600090815260076020526040812080549293508392909190611aab908490611f27565b909155505060405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3611afa8184611efb565b949350505050565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611b3957611b39611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611b8d57611b8d611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600281518110611be157611be1611f73565b6001600160a01b0390921660209283029190910190910152604051635c11d79560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d79590611c39908690600090869088904290600401611f89565b600060405180830381600087803b158015611c5357600080fd5b505af1158015611c67573d6000803e3d6000fd5b50505050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611ca557611ca5611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611cf957611cf9611f73565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac94790611c39908690600090869088904290600401611f89565b600060208083528351808285015260005b81811015611d7e57858101830151858201604001528201611d62565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109b157600080fd5b60008060408385031215611dc957600080fd5b611dd283611d9f565b946020939093013593505050565b600060208284031215611df257600080fd5b610a8d82611d9f565b600060208284031215611e0d57600080fd5b5035919050565b600080600060608486031215611e2957600080fd5b611e3284611d9f565b9250611e4060208501611d9f565b9150604084013590509250925092565b60008060408385031215611e6357600080fd5b611e6c83611d9f565b915060208301358015158114611e8157600080fd5b809150509250929050565b60008060408385031215611e9f57600080fd5b611ea883611d9f565b9150611eb660208401611d9f565b90509250929050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156108f2576108f2611ee5565b600060208284031215611f2057600080fd5b5051919050565b808201808211156108f2576108f2611ee5565b80820281158282048414176108f2576108f2611ee5565b600082611f6e57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fd95784516001600160a01b031683529383019391830191600101611fb4565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212203dc76064260cdddf7a018b8916a7aab836aa04b3371083960716684069794fd964736f6c6343000811003360a06040526ec097ce7bc90715b34b9f100000000060085534801561002357600080fd5b506040516109ae3803806109ae83398101604081905261004291610065565b600080546001600160a01b031916331790556001600160a01b0316608052610095565b60006020828403121561007757600080fd5b81516001600160a01b038116811461008e57600080fd5b9392505050565b6080516108f86100b66000396000818160d301526105d501526108f86000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063997664d711610071578063997664d714610162578063b6b55f251461016b578063ce7c2ac21461017e578063d54ad2a1146101c8578063e2d2e219146101d1578063ecd0c0c3146101da57600080fd5b806314b6ca96146100b95780631582358e146100ce57806315f7e05e146101125780633a98ef39146101255780635cc33f741461013c5780638ecc37fb1461014f575b600080fd5b6100cc6100c736600461079a565b6101ed565b005b6100f57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100cc6101203660046107c4565b610363565b61012e60045481565b604051908152602001610109565b61012e61014a3660046107c4565b610386565b61012e61015d3660046107c4565b610405565b61012e60055481565b6100cc6101793660046107e6565b610490565b6101ad61018c3660046107c4565b60036020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610109565b61012e60065481565b61012e60075481565b6000546100f5906001600160a01b031681565b6000546001600160a01b0316331461020457600080fd5b6001600160a01b0382166000908152600360205260409020541561022b5761022b826104f8565b801580159061025057506001600160a01b038216600090815260036020526040902054155b156102b557600180546001600160a01b03841660008181526002602052604081208390558284018455929092527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b03191690911790556102e8565b801580156102da57506001600160a01b03821660009081526003602052604090205415155b156102e8576102e882610648565b6001600160a01b038216600090815260036020526040902054600454829161030f91610815565b6103199190610828565b6004556001600160a01b03821660009081526003602052604090208190556103408161075b565b6001600160a01b0390921660009081526003602052604090206001019190915550565b6000546001600160a01b0316331461037a57600080fd5b610383816104f8565b50565b6001600160a01b03811660009081526003602052604081205481036103e65760405162461bcd60e51b81526020600482015260126024820152714e6f742061207368617265686f6c6465722160701b604482015260640160405180910390fd5b506001600160a01b031660009081526003602052604090206002015490565b6001600160a01b038116600090815260036020526040812054810361042c57506000919050565b6001600160a01b03821660009081526003602052604081205461044e9061075b565b6001600160a01b03841660009081526003602052604090206001015490915080821161047e575060009392505050565b6104888183610815565b949350505050565b6000546001600160a01b031633146104a757600080fd5b80156103835780600560008282546104bf9190610828565b90915550506004546008546104d590839061083b565b6104df9190610852565b600760008282546104f09190610828565b909155505050565b6001600160a01b038116600090815260036020526040812054900361051a5750565b600061052582610405565b9050801561064457806006600082825461053f9190610828565b90915550506001600160a01b0382166000908152600360205260408120600201805483929061056f908490610828565b90915550506001600160a01b0382166000908152600360205260409020546105969061075b565b6001600160a01b038381166000818152600360205260409081902060010193909355915163a9059cbb60e01b81526004810192909252602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af115801561061e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106429190610874565b505b5050565b60018054610657908290610815565b8154811061066757610667610896565b60009182526020808320909101546001600160a01b03848116845260029092526040909220546001805492909316929181106106a5576106a5610896565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152600291829052604081205460018054919392916106f0908290610815565b8154811061070057610700610896565b60009182526020808320909101546001600160a01b031683528201929092526040019020556001805480610736576107366108ac565b600082815260209020810160001990810180546001600160a01b031916905501905550565b60006008546007548361076e919061083b565b6107789190610852565b92915050565b80356001600160a01b038116811461079557600080fd5b919050565b600080604083850312156107ad57600080fd5b6107b68361077e565b946020939093013593505050565b6000602082840312156107d657600080fd5b6107df8261077e565b9392505050565b6000602082840312156107f857600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610778576107786107ff565b80820180821115610778576107786107ff565b8082028115828204841417610778576107786107ff565b60008261086f57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561088657600080fd5b815180151581146107df57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea264697066735822122039dfffef9503ab768344756cd24c8cc64b8632f9080fd86f2aaf1c838dfd662d64736f6c63430008110033000000000000000000000000ecec7e65a81b8dfc102d3a1326c3ec3f0a51198e000000000000000000000000c154f917e478e839ef59583a896a5a96595e61fd0000000000000000000000007d8146cf21e8d7cbe46054e01588207b51198729
Deployed Bytecode
0x6080604052600436106102815760003560e01c806369fe0e2d1161014f578063b1a4e0dc116100c1578063f0fc6bca1161007a578063f0fc6bca146107ea578063f283c4ba146107ff578063f429389014610815578063f685d7d81461082a578063f708a64f1461084a578063ffb54a991461086a57600080fd5b8063b1a4e0dc146106ff578063b294f11114610738578063bfe109281461074e578063bffb691d1461076e578063c9567bf91461078f578063dd62ed3e146107a457600080fd5b8063764ca51211610113578063764ca5121461066a5780638da5cb5b1461067f5780638ecc37fb1461069f57806395d89b411461028d578063a8aa1b31146106bf578063a9059cbb146106df57600080fd5b806369fe0e2d146105c957806370a08231146105e957806370db69d61461061f578063736a83a11461063557806375f0a8741461064a57600080fd5b8063342aa8b5116101f35780634d31d2c7116101ac5780634d31d2c714610513578063589210d9146105335780635cc33f74146105545780635d098b3814610574578063658d4b7f1461059457806367ee5f09146105b457600080fd5b8063342aa8b51461042e5780633bbac5791461044e5780633e07ce5b1461047e5780633f4218e0146104935780634355855a146104c35780634d1b2f9e146104f357600080fd5b80631df4ccfc116102455780631df4ccfc1461038757806323b635851461039d57806323b872dd146103bd57806329e04b4a146103dd5780632b112e49146103fd578063313ce5671461041257600080fd5b806306fdde031461028d578063095ea7b3146102ca57806313af4035146102fa5780631582358e1461031c57806318160ddd1461036857600080fd5b3661028857005b600080fd5b34801561029957600080fd5b50604080518082018252600581526426a9a127a160d91b602082015290516102c19190611d51565b60405180910390f35b3480156102d657600080fd5b506102ea6102e5366004611db6565b61088b565b60405190151581526020016102c1565b34801561030657600080fd5b5061031a610315366004611de0565b6108f8565b005b34801561032857600080fd5b506103507f0000000000000000000000007d8146cf21e8d7cbe46054e01588207b5119872981565b6040516001600160a01b0390911681526020016102c1565b34801561037457600080fd5b506001545b6040519081526020016102c1565b34801561039357600080fd5b5061037960035481565b3480156103a957600080fd5b506102ea6103b8366004611dfb565b610976565b3480156103c957600080fd5b506102ea6103d8366004611e14565b6109b6565b3480156103e957600080fd5b5061031a6103f8366004611dfb565b610a94565b34801561040957600080fd5b50610379610ac3565b34801561041e57600080fd5b50604051600981526020016102c1565b34801561043a57600080fd5b5061031a610449366004611e50565b610b33565b34801561045a57600080fd5b506102ea610469366004611de0565b600b6020526000908152604090205460ff1681565b34801561048a57600080fd5b5061031a610b8f565b34801561049f57600080fd5b506102ea6104ae366004611de0565b60096020526000908152604090205460ff1681565b3480156104cf57600080fd5b506102ea6104de366004611de0565b600a6020526000908152604090205460ff1681565b3480156104ff57600080fd5b5061031a61050e366004611dfb565b610bc8565b34801561051f57600080fd5b5061031a61052e366004611de0565b610bf7565b34801561053f57600080fd5b506005546102ea90600160a01b900460ff1681565b34801561056057600080fd5b5061037961056f366004611de0565b610c83565b34801561058057600080fd5b5061031a61058f366004611de0565b610cf3565b3480156105a057600080fd5b5061031a6105af366004611e50565b610d3f565b3480156105c057600080fd5b50610379610d94565b3480156105d557600080fd5b5061031a6105e4366004611dfb565b610e02565b3480156105f557600080fd5b50610379610604366004611de0565b6001600160a01b031660009081526007602052604090205490565b34801561062b57600080fd5b5061037960065481565b34801561064157600080fd5b50610379610e7a565b34801561065657600080fd5b50600554610350906001600160a01b031681565b34801561067657600080fd5b5061031a610ec4565b34801561068b57600080fd5b50600054610350906001600160a01b031681565b3480156106ab57600080fd5b506103796106ba366004611de0565b610f5d565b3480156106cb57600080fd5b50600d54610350906001600160a01b031681565b3480156106eb57600080fd5b506102ea6106fa366004611db6565b610f90565b34801561070b57600080fd5b506102ea61071a366004611de0565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561074457600080fd5b5061037960025481565b34801561075a57600080fd5b50600c54610350906001600160a01b031681565b34801561077a57600080fd5b50600d546102ea90600160a81b900460ff1681565b34801561079b57600080fd5b5061031a610f9d565b3480156107b057600080fd5b506103796107bf366004611e8c565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156107f657600080fd5b5061031a610fdc565b34801561080b57600080fd5b5061037960045481565b34801561082157600080fd5b5061031a61103b565b34801561083657600080fd5b5061031a610845366004611dfb565b6110a1565b34801561085657600080fd5b5061031a610865366004611e50565b611117565b34801561087657600080fd5b50600d546102ea90600160a01b900460ff1681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906108e69086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461092b5760405162461bcd60e51b815260040161092290611ebf565b60405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b600080546001600160a01b031633146109a15760405162461bcd60e51b815260040161092290611ebf565b6109ae3061dead8461114b565b90505b919050565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610a7f576001600160a01b038416600090815260086020908152604080832033845290915290205482811015610a4f5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606401610922565b610a598382611efb565b6001600160a01b0386166000908152600860209081526040808320338452909152902055505b610a8a84848461121e565b90505b9392505050565b6000546001600160a01b03163314610abe5760405162461bcd60e51b815260040161092290611ebf565b600255565b60076020527f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df5461dead60009081527fb0c2646e02af70b79e3fe9277b98373379f54150e4e26b2b5650139f7a75a65d54600154919291610b249190611efb565b610b2e9190611efb565b905090565b6000546001600160a01b03163314610b5d5760405162461bcd60e51b815260040161092290611ebf565b6001600160a01b0382166000908152600b60205260409020805460ff1916821515179055610b8b82826116b2565b5050565b6000546001600160a01b03163314610bb95760405162461bcd60e51b815260040161092290611ebf565b6005805460ff60a01b19169055565b6000546001600160a01b03163314610bf25760405162461bcd60e51b815260040161092290611ebf565b600655565b6000546001600160a01b03163314610c215760405162461bcd60e51b815260040161092290611ebf565b600c54604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b158015610c6857600080fd5b505af1158015610c7c573d6000803e3d6000fd5b5050505050565b600c54604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610ccf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190611f0e565b6000546001600160a01b03163314610d1d5760405162461bcd60e51b815260040161092290611ebf565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610d695760405162461bcd60e51b815260040161092290611ebf565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b600c546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610dde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2e9190611f0e565b6000546001600160a01b03163314610e2c5760405162461bcd60e51b815260040161092290611ebf565b600e811115610e755760405162461bcd60e51b81526020600482015260156024820152744665652063616e6e6f74206578636565642031342560581b6044820152606401610922565b600355565b600c546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610dde573d6000803e3d6000fd5b6000546001600160a01b03163314610eee5760405162461bcd60e51b815260040161092290611ebf565b600d54600160a81b900460ff1615610f485760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e63650000000000000000006044820152606401610922565b600d805460ff60a81b1916600160a81b179055565b600c54604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610cb2565b6000610a8d33848461121e565b6000546001600160a01b03163314610fc75760405162461bcd60e51b815260040161092290611ebf565b600d805460ff60a01b1916600160a01b179055565b600c54604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b15801561102157600080fd5b505af1158015611035573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146110655760405162461bcd60e51b815260040161092290611ebf565b6005546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561109e573d6000803e3d6000fd5b50565b6000546001600160a01b031633146110cb5760405162461bcd60e51b815260040161092290611ebf565b60648111156111125760405162461bcd60e51b815260206004820152601360248201527243616e206e6f7420657863656564203130302560681b6044820152606401610922565b600455565b6000546001600160a01b031633146111415760405162461bcd60e51b815260040161092290611ebf565b610b8b82826116b2565b6001600160a01b038316600090815260076020526040812054828110156111ab5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b6044820152606401610922565b6001600160a01b0380861660008181526007602052604080822087860390559287168082529083902080548701905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061120b9087815260200190565b60405180910390a3506001949350505050565b600d54600090600160a01b900460ff168061124657506000546001600160a01b038581169116145b8061125e57506000546001600160a01b038481169116145b6112aa5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742079657420656e61626c65640000000000000000006044820152606401610922565b600d54600160a81b900460ff1615611330576001600160a01b0384166000908152600b602052604090205460ff161580156112fe57506001600160a01b0383166000908152600b602052604090205460ff16155b6113305760405162461bcd60e51b8152602060048201526003602482015262109bdd60ea1b6044820152606401610922565b600554600160a01b900460ff16156113b4576000546001600160a01b0385811691161480159061136e57506000546001600160a01b03848116911614155b156113b4576006548211156113b45760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610922565b600d54600160b01b900460ff16156113d8576113d184848461114b565b9050610a8d565b30600090815260076020526040902054600254811080159081906114095750600d546001600160a01b038681169116145b801561142357503060009081526007602052604090205415155b15611430576114306117c3565b6001600160a01b038616600090815260076020526040902054848110156114905760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b6044820152606401610922565b6001600160a01b038716600090815260076020526040812086830390556114b788886119f5565b6114c157856114cb565b6114cb8887611a6a565b6001600160a01b0388166000908152600760205260408120805492935083929091906114f8908490611f27565b9091555050600d546001600160a01b0389811691161480159061153457506001600160a01b0388166000908152600a602052604090205460ff16155b156115aa57600c546001600160a01b0389811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561159757600080fd5b505af19250505080156115a8575060015b505b600d546001600160a01b038881169116148015906115e157506001600160a01b0387166000908152600a602052604090205460ff16155b1561165757600c546001600160a01b0388811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561164457600080fd5b505af1925050508015611655575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161169c91815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b03821630148015906116d95750600d546001600160a01b03838116911614155b6116e257600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff1916821580159190911790915561177a57600c54604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561175e57600080fd5b505af1158015611772573d6000803e3d6000fd5b505050505050565b600c546001600160a01b0383811660008181526007602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611744565b600d805460ff60b01b1916600160b01b17905530600090815260076020526040812054905060006064600454836117fa9190611f3a565b6118049190611f51565b905080156119b757600c546040516370a0823160e01b81526001600160a01b0391821660048201526000917f0000000000000000000000007d8146cf21e8d7cbe46054e01588207b5119872916906370a0823190602401602060405180830381865afa158015611878573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189c9190611f0e565b600c549091506118b69083906001600160a01b0316611b02565b600c546040516370a0823160e01b81526001600160a01b0391821660048201526000917f0000000000000000000000007d8146cf21e8d7cbe46054e01588207b5119872916906370a0823190602401602060405180830381865afa158015611922573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119469190611f0e565b600c549091506001600160a01b031663b6b55f256119648484611efb565b6040518263ffffffff1660e01b815260040161198291815260200190565b600060405180830381600087803b15801561199c57600080fd5b505af11580156119b0573d6000803e3d6000fd5b5050505050505b6119c18183611efb565b156119e4576119e46119d38284611efb565b6005546001600160a01b0316611c70565b5050600d805460ff60b01b19169055565b6001600160a01b03821660009081526009602052604081205460ff1680611a3457506001600160a01b03821660009081526009602052604090205460ff165b158015610a8d5750600d546001600160a01b0384811691161480610a8d575050600d546001600160a01b03908116911614919050565b600080606460035484611a7d9190611f3a565b611a879190611f51565b30600090815260076020526040812080549293508392909190611aab908490611f27565b909155505060405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3611afa8184611efb565b949350505050565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611b3957611b39611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611b8d57611b8d611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007d8146cf21e8d7cbe46054e01588207b5119872981600281518110611be157611be1611f73565b6001600160a01b0390921660209283029190910190910152604051635c11d79560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d79590611c39908690600090869088904290600401611f89565b600060405180830381600087803b158015611c5357600080fd5b505af1158015611c67573d6000803e3d6000fd5b50505050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611ca557611ca5611f73565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611cf957611cf9611f73565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac94790611c39908690600090869088904290600401611f89565b600060208083528351808285015260005b81811015611d7e57858101830151858201604001528201611d62565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109b157600080fd5b60008060408385031215611dc957600080fd5b611dd283611d9f565b946020939093013593505050565b600060208284031215611df257600080fd5b610a8d82611d9f565b600060208284031215611e0d57600080fd5b5035919050565b600080600060608486031215611e2957600080fd5b611e3284611d9f565b9250611e4060208501611d9f565b9150604084013590509250925092565b60008060408385031215611e6357600080fd5b611e6c83611d9f565b915060208301358015158114611e8157600080fd5b809150509250929050565b60008060408385031215611e9f57600080fd5b611ea883611d9f565b9150611eb660208401611d9f565b90509250929050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156108f2576108f2611ee5565b600060208284031215611f2057600080fd5b5051919050565b808201808211156108f2576108f2611ee5565b80820281158282048414176108f2576108f2611ee5565b600082611f6e57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fd95784516001600160a01b031683529383019391830191600101611fb4565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212203dc76064260cdddf7a018b8916a7aab836aa04b3371083960716684069794fd964736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000ecec7e65a81b8dfc102d3a1326c3ec3f0a51198e000000000000000000000000c154f917e478e839ef59583a896a5a96595e61fd0000000000000000000000007d8146cf21e8d7cbe46054e01588207b51198729
-----Decoded View---------------
Arg [0] : _owner (address): 0xeCEc7e65a81b8DfC102d3a1326c3eC3F0A51198E
Arg [1] : _marketingWallet (address): 0xc154F917e478E839EF59583a896A5a96595E61fd
Arg [2] : _dividendToken (address): 0x7D8146cf21e8D7cbe46054e01588207b51198729
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000ecec7e65a81b8dfc102d3a1326c3ec3f0a51198e
Arg [1] : 000000000000000000000000c154f917e478e839ef59583a896a5a96595e61fd
Arg [2] : 0000000000000000000000007d8146cf21e8d7cbe46054e01588207b51198729
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.