Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 18 from a total of 18 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 20553991 | 292 days ago | IN | 0 S | 0.00282732 | ||||
| Approve | 20551872 | 292 days ago | IN | 0 S | 0.00279935 | ||||
| Transfer Operato... | 20434219 | 293 days ago | IN | 0 S | 0.00153625 | ||||
| Transfer Operato... | 20036432 | 295 days ago | IN | 0 S | 0.00153625 | ||||
| Approve | 19960661 | 295 days ago | IN | 0 S | 0.0013378 | ||||
| Approve | 19960627 | 295 days ago | IN | 0 S | 0.0013378 | ||||
| Approve | 19960594 | 295 days ago | IN | 0 S | 0.0023328 | ||||
| Approve | 19958695 | 295 days ago | IN | 0 S | 0.0023328 | ||||
| Approve | 19956635 | 295 days ago | IN | 0 S | 0.0023328 | ||||
| Transfer | 19956409 | 295 days ago | IN | 0 S | 0.00296325 | ||||
| Set Automated Ma... | 19953551 | 295 days ago | IN | 0 S | 0.00232155 | ||||
| Approve | 19842406 | 296 days ago | IN | 0 S | 0.0023328 | ||||
| Transfer | 19839977 | 296 days ago | IN | 0 S | 0.0029626 | ||||
| Approve | 19839669 | 296 days ago | IN | 0 S | 0.0023328 | ||||
| Transfer | 19839493 | 296 days ago | IN | 0 S | 0.0029626 | ||||
| Set Tax Office | 19838790 | 296 days ago | IN | 0 S | 0.00248093 | ||||
| Approve | 19829393 | 296 days ago | IN | 0 S | 0.0023328 | ||||
| Set Tax Collecto... | 19827933 | 296 days ago | IN | 0 S | 0.0026482 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Cross-Chain Transactions
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
Canyon
Compiler Version
v0.8.26+commit.8a97fa7a
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import "@openzeppelin/contracts/utils/Context.sol";
import "./utils/Operator.sol";
import "./libraries/SafeMath8.sol";
import "./interfaces/ITaxOffice.sol";
contract Canyon is Context, IERC20, IERC20Metadata, Operator {
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
using SafeMath8 for uint8;
// Removed SafeMath usage for uint256
// Tax and tax collector
address public taxCollector;
address public router;
bool public rewardPoolDistributed;
ITaxOffice public taxOffice;
mapping(address => bool) public automatedMarketMakerPairs;
mapping(address => bool) public isTaxExempt;
// Tax rate (can be updated by operator or tax office)
uint256 public fixedTaxRate = 100; // Default 1% tax rate
// Constants
uint256 public constant INITIAL_GENESIS_POOL_DISTRIBUTION = 14000 ether;
uint256 public constant INITIAL_DAO_FUND_DISTRIBUTION = 1600 ether;
uint256 public startTime;
// Events
event TaxCollected(address indexed from, uint256 amount);
event TaxRateUpdated(uint256 newRate);
string private _name;
string private _symbol;
uint8 private constant _decimals = 18;
constructor(address _router, address _taxCollectorAddress) {
require(_router != address(0), "Router address cannot be zero");
require(_taxCollectorAddress != address(0), "TaxCollector address cannot be zero");
_name = "Valley Finance";
_symbol = "CANYON";
_mint(msg.sender, 100 ether);
rewardPoolDistributed = false;
startTime = block.timestamp;
router = _router;
taxCollector = _taxCollectorAddress;
// Initialize with default tax rate
}
// Add setter function for TaxOffice
// ERC20 Standard Functions
function name() public view virtual override returns (string memory) {
return _name;
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function decimals() public view virtual override returns (uint8) {
return _decimals;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(address to, uint256 amount) public virtual override returns (bool) {
address owner = _msgSender();
_transfer(owner, to, amount);
return true;
}
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public virtual override returns (bool) {
address owner = _msgSender();
_approve(owner, spender, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
address spender = _msgSender();
_spendAllowance(from, spender, amount);
_transfer(from, to, amount);
return true;
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
address owner = _msgSender();
_approve(owner, spender, allowance(owner, spender) + addedValue);
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
address owner = _msgSender();
uint256 currentAllowance = allowance(owner, spender);
require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
unchecked {
_approve(owner, spender, currentAllowance - subtractedValue);
}
return true;
}
// Initialization Functions
function setTaxOffice(address _taxOffice) external onlyOwner {
require(_taxOffice != address(0), "TaxOffice address cannot be zero");
require(address(taxOffice) == address(0), "TaxOffice already set");
taxOffice = ITaxOffice(_taxOffice);
}
// Internal ERC20 Functions
function _transfer(address from, address to, uint256 amount) internal virtual {
require(from != address(0) && to != address(0) && amount > 0, "Invalid transfer");
require(_balances[from] >= amount, "Insufficient balance"); // 🔥 Fix: Prevent underflow
// Check if the transaction is a sell (to AMM or router)
bool isSell = automatedMarketMakerPairs[to] || to == address(router);
// Fix: Prevent swaps if tax system is not set
if (isSell) {
require(taxCollector != address(0), "Tax system not set");
}
// Fix: Skip tax for whitelisted addresses
if (!isSell || isTaxExempt[from]) {
_balances[from] = _balances[from] - amount;
_balances[to] = _balances[to] + amount;
emit Transfer(from, to, amount);
} else {
_transferWithTax(from, to, amount);
}
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_totalSupply += amount;
_balances[account] += amount;
emit Transfer(address(0), account, amount);
}
function _burn(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: burn from the zero address");
uint256 accountBalance = _balances[account];
require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
unchecked {
_balances[account] = accountBalance - amount;
_totalSupply -= amount;
}
emit Transfer(account, address(0), amount);
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
uint256 currentAllowance = allowance(owner, spender);
if (currentAllowance != type(uint256).max) {
require(currentAllowance >= amount, "ERC20: insufficient allowance");
unchecked {
_approve(owner, spender, currentAllowance - amount);
}
}
}
// Tax-related Functions
function _transferWithTax(address from, address to, uint256 amount) internal {
require(_balances[from] >= amount, "ERC20: transfer amount exceeds balance");
require(taxCollector != address(0), "Tax collector not set");
// Calculate tax and transfer amount
uint256 taxAmount = (amount * fixedTaxRate) / 10000;
uint256 transferAmount;
transferAmount = amount - taxAmount;
// Add slippage protection for AMM trades
if (automatedMarketMakerPairs[to]) {
// Ensure minimum received amount is reasonable (at least 60% of input after tax)
require(transferAmount >= (amount * 6000) / 10000, "High tax rate: Increase slippage tolerance");
}
require(transferAmount > 0, "Transfer amount too small");
// Update balances atomically
_balances[from] = _balances[from] - amount;
_balances[to] += transferAmount;
_balances[taxCollector] += taxAmount;
// Emit events
emit TaxCollected(from, taxAmount);
emit Transfer(from, to, transferAmount);
emit Transfer(from, taxCollector, taxAmount);
}
// Function to set fixed tax rate (can only be called by operator or tax office)
function setFixedTaxRate(uint256 _rate) external {
require(msg.sender == operator() || msg.sender == address(taxOffice), "Not authorized");
require(_rate <= 4000, "Tax rate cannot exceed 40%");
// Allow zero tax rate and any rate up to 40%
fixedTaxRate = _rate;
emit TaxRateUpdated(_rate);
}
// Operator Functions
function setTaxCollector(address _taxCollector) external onlyOperator {
require(_taxCollector != address(0), "TaxCollector address cannot be zero");
taxCollector = _taxCollector;
}
function setRewardPoolDistributed() external onlyOperator {
rewardPoolDistributed = true;
}
function setAutomatedMarketMakerPair(address pair, bool value) public onlyOperator {
require(pair != address(0), "Invalid pair address");
automatedMarketMakerPairs[pair] = value;
}
function distributeReward(address _genesisPool, address _daoFund) external onlyOperator {
require(!rewardPoolDistributed, "only can distribute once");
require(_genesisPool != address(0), "!_genesisPool");
require(_daoFund != address(0), "!_daoFund");
rewardPoolDistributed = true;
_mint(_genesisPool, INITIAL_GENESIS_POOL_DISTRIBUTION);
_mint(_daoFund, INITIAL_DAO_FUND_DISTRIBUTION);
}
// Utility Functions
function getCirculatingSupply() public view returns (uint256) {
return totalSupply() - balanceOf(taxCollector) - balanceOf(address(0));
}
function governanceRecoverUnsupported(IERC20 _token, uint256 _amount, address _to) external onlyOperator {
_token.transfer(_to, _amount);
}
// Add setter function for tax exemption
function setTaxExempt(address _address, bool _value) external onlyOwner {
require(_address != address(0), "Invalid address");
isTaxExempt[_address] = _value;
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
pragma solidity ^0.8.20;
import {Context} from "../utils/Context.sol";
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* The initial owner is set to the address provided by the deployer. This can
* later be changed with {transferOwnership}.
*
* This module is used through inheritance. It will make available the modifier
* `onlyOwner`, which can be applied to your functions to restrict their use to
* the owner.
*/
abstract contract Ownable is Context {
address private _owner;
/**
* @dev The caller account is not authorized to perform an operation.
*/
error OwnableUnauthorizedAccount(address account);
/**
* @dev The owner is not a valid owner account. (eg. `address(0)`)
*/
error OwnableInvalidOwner(address owner);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the address provided by the deployer as the initial owner.
*/
constructor(address initialOwner) {
if (initialOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(initialOwner);
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
_checkOwner();
_;
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if the sender is not the owner.
*/
function _checkOwner() internal view virtual {
if (owner() != _msgSender()) {
revert OwnableUnauthorizedAccount(_msgSender());
}
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby disabling any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
if (newOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(newOwner);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Internal function without access restriction.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/extensions/IERC20Metadata.sol)
pragma solidity ^0.8.20;
import {IERC20} from "../IERC20.sol";
/**
* @dev Interface for the optional metadata functions from the ERC-20 standard.
*/
interface IERC20Metadata is IERC20 {
/**
* @dev Returns the name of the token.
*/
function name() external view returns (string memory);
/**
* @dev Returns the symbol of the token.
*/
function symbol() external view returns (string memory);
/**
* @dev Returns the decimals places of the token.
*/
function decimals() external view returns (uint8);
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/IERC20.sol)
pragma solidity ^0.8.20;
/**
* @dev Interface of the ERC-20 standard as defined in the ERC.
*/
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 value of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the value of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves a `value` amount of 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 value) 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 a `value` amount of tokens 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 value) external returns (bool);
/**
* @dev Moves a `value` amount of tokens from `from` to `to` using the
* allowance mechanism. `value` 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 value) external returns (bool);
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)
pragma solidity ^0.8.20;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
interface ITaxOffice {
struct TaxTier {
uint256 threshold;
uint256 rate;
}
function calculateCanyonTax(uint256 amount, uint256 twapPrice, address to) external view returns (uint256);
function calculateFearTax(uint256 amount, uint256 twapPrice, address to) external view returns (uint256);
function setFearTaxTier(uint256 threshold, uint256 rate) external;
function updateFearTaxTier(uint256 index, uint256 threshold, uint256 rate) external;
function setManualCanyonTaxRate(uint256 rate) external;
function setGenesisTaxRate(uint256 rate) external;
function setCanyon(address _canyon) external;
function setFear(address _fear) external;
event TaxRateUpdated(string tokenType, uint256 threshold, uint256 rate);
event TaxCalculated(address token, address from, uint256 amount, uint256 taxAmount);
event CanyonSet(address canyonAddress);
event FearSet(address fearAddress);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
library SafeMath8 {
function add(uint8 a, uint8 b) internal pure returns (uint8) {
uint8 c = a + b;
require(c >= a, "SafeMath8: addition overflow");
return c;
}
function sub(uint8 a, uint8 b) internal pure returns (uint8) {
require(b <= a, "SafeMath8: subtraction overflow");
return a - b;
}
function mul(uint8 a, uint8 b) internal pure returns (uint8) {
if (a == 0) return 0;
uint8 c = a * b;
require(c / a == b, "SafeMath8: multiplication overflow");
return c;
}
function div(uint8 a, uint8 b) internal pure returns (uint8) {
require(b > 0, "SafeMath8: division by zero");
return a / b;
}
function mod(uint8 a, uint8 b) internal pure returns (uint8) {
require(b > 0, "SafeMath8: modulo by zero");
return a % b;
}
}// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/access/Ownable.sol"; // Ensure OpenZeppelin is installed
contract Operator is Ownable {
address private _operator;
event OperatorTransferred(address indexed previousOperator, address indexed newOperator);
constructor() Ownable(msg.sender) { // ✅ Pass msg.sender to Ownable
_operator = _msgSender();
emit OperatorTransferred(address(0), _operator);
}
function operator() public view returns (address) {
return _operator;
}
modifier onlyOperator() {
require(_operator == _msgSender(), "operator: caller is not the operator");
_;
}
function isOperator() public view returns (bool) {
return _msgSender() == _operator;
}
function transferOperator(address newOperator_) public onlyOwner {
_transferOperator(newOperator_);
}
function _transferOperator(address newOperator_) internal {
require(newOperator_ != address(0), "operator: zero address given for new operator");
emit OperatorTransferred(_operator, newOperator_);
_operator = newOperator_;
}
function _renounceOperator() public onlyOwner {
emit OperatorTransferred(_operator, address(0));
_operator = address(0);
}
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"evmVersion": "paris",
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_taxCollectorAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"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":"previousOperator","type":"address"},{"indexed":true,"internalType":"address","name":"newOperator","type":"address"}],"name":"OperatorTransferred","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":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TaxCollected","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newRate","type":"uint256"}],"name":"TaxRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"INITIAL_DAO_FUND_DISTRIBUTION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INITIAL_GENESIS_POOL_DISTRIBUTION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_renounceOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_genesisPool","type":"address"},{"internalType":"address","name":"_daoFund","type":"address"}],"name":"distributeReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"fixedTaxRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_to","type":"address"}],"name":"governanceRecoverUnsupported","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTaxExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"operator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardPoolDistributed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"setFixedTaxRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setRewardPoolDistributed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_taxCollector","type":"address"}],"name":"setTaxCollector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_value","type":"bool"}],"name":"setTaxExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_taxOffice","type":"address"}],"name":"setTaxOffice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxCollector","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxOffice","outputs":[{"internalType":"contract ITaxOffice","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOperator_","type":"address"}],"name":"transferOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60806040526064600a5534801561001557600080fd5b50604051611ebb380380611ebb83398101604081905261003491610353565b338061005b57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b61006481610208565b50600180546001600160a01b031916339081179091556040516000907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed908290a36001600160a01b0382166100fb5760405162461bcd60e51b815260206004820152601d60248201527f526f7574657220616464726573732063616e6e6f74206265207a65726f0000006044820152606401610052565b6001600160a01b03811661015d5760405162461bcd60e51b815260206004820152602360248201527f546178436f6c6c6563746f7220616464726573732063616e6e6f74206265207a60448201526265726f60e81b6064820152608401610052565b60408051808201909152600e81526d56616c6c65792046696e616e636560901b6020820152600c9061018f9082610425565b5060408051808201909152600681526521a0a72ca7a760d11b6020820152600d906101ba9082610425565b506101ce3368056bc75e2d63100000610258565b6006805442600b556001600160a81b0319166001600160a01b03938416179055600580546001600160a01b0319169190921617905561050a565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0382166102ae5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610052565b80600460008282546102c091906104e3565b90915550506001600160a01b038216600090815260026020526040812080548392906102ed9084906104e3565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b80516001600160a01b038116811461034e57600080fd5b919050565b6000806040838503121561036657600080fd5b61036f83610337565b915061037d60208401610337565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806103b057607f821691505b6020821081036103d057634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561042057806000526020600020601f840160051c810160208510156103fd5750805b601f840160051c820191505b8181101561041d5760008155600101610409565b50505b505050565b81516001600160401b0381111561043e5761043e610386565b6104528161044c845461039c565b846103d6565b6020601f821160018114610486576000831561046e5750848201515b600019600385901b1c1916600184901b17845561041d565b600084815260208120601f198516915b828110156104b65787850151825560209485019460019092019101610496565b50848210156104d45786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b8082018082111561050457634e487b7160e01b600052601160045260246000fd5b92915050565b6119a2806105196000396000f3fe608060405234801561001057600080fd5b50600436106102265760003560e01c80635291d41b116101305780639662676c116100b8578063bea1dcf81161007c578063bea1dcf81461049e578063dd62ed3e146104b1578063f2fde38b146104c4578063f4fd47cf146104d7578063f887ea40146104ea57600080fd5b80639662676c1461042e5780639a7a23d614610442578063a457c2d714610455578063a9059cbb14610468578063b62496f51461047b57600080fd5b8063715018a6116100ff578063715018a6146103fc57806378e97925146104045780638a27f1031461040d5780638da5cb5b1461041557806395d89b411461042657600080fd5b80635291d41b1461039c57806354575af4146103af578063570ca735146103c257806370a08231146103d357600080fd5b806329605e77116101b35780633a26ebde116101825780633a26ebde146103315780633e5f13d41461033a5780633f07d76a146103655780634456eda2146103785780634e20a02c1461038b57600080fd5b806329605e77146102f45780632b112e4914610307578063313ce5671461030f578063395093511461031e57600080fd5b806316c2be6b116101fa57806316c2be6b1461028957806318160ddd146102ac5780631c6f19ea146102be5780631dc61040146102ce57806323b872dd146102e157600080fd5b8062674ac21461022b57806306fdde031461023557806308695b4114610253578063095ea7b314610266575b600080fd5b6102336104fd565b005b61023d610545565b60405161024a9190611678565b60405180910390f35b6102336102613660046116db565b6105d7565b6102796102743660046116ff565b610685565b604051901515815260200161024a565b6102796102973660046116db565b60096020526000908152604090205460ff1681565b6004545b60405190815260200161024a565b6102b06856bc75e2d63100000081565b6102336102dc366004611739565b61069f565b6102796102ef366004611772565b61071a565b6102336103023660046116db565b61073e565b6102b0610752565b6040516012815260200161024a565b61027961032c3660046116ff565b6107ae565b6102b0600a5481565b60075461034d906001600160a01b031681565b6040516001600160a01b03909116815260200161024a565b6102336103733660046116db565b6107d0565b6001546001600160a01b03163314610279565b6102b06902f6f10780d22cc0000081565b6102336103aa3660046117b3565b6108a1565b6102336103bd3660046117cc565b61098e565b6001546001600160a01b031661034d565b6102b06103e13660046116db565b6001600160a01b031660009081526002602052604090205490565b610233610a31565b6102b0600b5481565b610233610a45565b6000546001600160a01b031661034d565b61023d610a97565b60065461027990600160a01b900460ff1681565b610233610450366004611739565b610aa6565b6102796104633660046116ff565b610b48565b6102796104763660046116ff565b610bc3565b6102796104893660046116db565b60086020526000908152604090205460ff1681565b60055461034d906001600160a01b031681565b6102b06104bf36600461180e565b610bd1565b6102336104d23660046116db565b610bfc565b6102336104e536600461180e565b610c37565b60065461034d906001600160a01b031681565b6001546001600160a01b031633146105305760405162461bcd60e51b81526004016105279061183c565b60405180910390fd5b6006805460ff60a01b1916600160a01b179055565b6060600c805461055490611880565b80601f016020809104026020016040519081016040528092919081815260200182805461058090611880565b80156105cd5780601f106105a2576101008083540402835291602001916105cd565b820191906000526020600020905b8154815290600101906020018083116105b057829003601f168201915b5050505050905090565b6001546001600160a01b031633146106015760405162461bcd60e51b81526004016105279061183c565b6001600160a01b0381166106635760405162461bcd60e51b815260206004820152602360248201527f546178436f6c6c6563746f7220616464726573732063616e6e6f74206265207a60448201526265726f60e81b6064820152608401610527565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600033610693818585610d81565b60019150505b92915050565b6106a7610ea5565b6001600160a01b0382166106ef5760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610527565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b600033610728858285610ed2565b610733858585610f46565b506001949350505050565b610746610ea5565b61074f81611171565b50565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b546005546001600160a01b03166000908152604081205460045491929161079f91906118d0565b6107a991906118d0565b905090565b6000336106938185856107c18383610bd1565b6107cb91906118e3565b610d81565b6107d8610ea5565b6001600160a01b03811661082e5760405162461bcd60e51b815260206004820181905260248201527f5461784f666669636520616464726573732063616e6e6f74206265207a65726f6044820152606401610527565b6007546001600160a01b03161561087f5760405162461bcd60e51b815260206004820152601560248201527415185e13d9999a58d948185b1c9958591e481cd95d605a1b6044820152606401610527565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314806108c457506007546001600160a01b031633145b6109015760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610527565b610fa08111156109535760405162461bcd60e51b815260206004820152601a60248201527f54617820726174652063616e6e6f7420657863656564203430250000000000006044820152606401610527565b600a8190556040518181527f82754e7bf8e3395ddb4a767c52b21ed0c3b9da843001b2e07ab46f25803234579060200160405180910390a150565b6001546001600160a01b031633146109b85760405162461bcd60e51b81526004016105279061183c565b60405163a9059cbb60e01b81526001600160a01b0382811660048301526024820184905284169063a9059cbb906044016020604051808303816000875af1158015610a07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2b91906118f6565b50505050565b610a39610ea5565b610a436000611239565b565b610a4d610ea5565b6001546040516000916001600160a01b0316907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed908390a3600180546001600160a01b0319169055565b6060600d805461055490611880565b6001546001600160a01b03163314610ad05760405162461bcd60e51b81526004016105279061183c565b6001600160a01b038216610b1d5760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642070616972206164647265737360601b6044820152606401610527565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b60003381610b568286610bd1565b905083811015610bb65760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610527565b6107338286868403610d81565b600033610693818585610f46565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b610c04610ea5565b6001600160a01b038116610c2e57604051631e4fbdf760e01b815260006004820152602401610527565b61074f81611239565b6001546001600160a01b03163314610c615760405162461bcd60e51b81526004016105279061183c565b600654600160a01b900460ff1615610cbb5760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616e2064697374726962757465206f6e636500000000000000006044820152606401610527565b6001600160a01b038216610d015760405162461bcd60e51b815260206004820152600d60248201526c0857d9d95b995cda5cd41bdbdb609a1b6044820152606401610527565b6001600160a01b038116610d435760405162461bcd60e51b81526020600482015260096024820152680857d9185bd19d5b9960ba1b6044820152606401610527565b6006805460ff60a01b1916600160a01b179055610d6a826902f6f10780d22cc00000611289565b610d7d816856bc75e2d631000000611289565b5050565b6001600160a01b038316610de35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610527565b6001600160a01b038216610e445760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610527565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03163314610a435760405163118cdaa760e01b8152336004820152602401610527565b6000610ede8484610bd1565b90506000198114610a2b5781811015610f395760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610527565b610a2b8484848403610d81565b6001600160a01b03831615801590610f6657506001600160a01b03821615155b8015610f725750600081115b610fb15760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b2103a3930b739b332b960811b6044820152606401610527565b6001600160a01b0383166000908152600260205260409020548111156110105760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610527565b6001600160a01b03821660009081526008602052604081205460ff168061104457506006546001600160a01b038481169116145b90508015611099576005546001600160a01b03166110995760405162461bcd60e51b815260206004820152601260248201527115185e081cde5cdd195b481b9bdd081cd95d60721b6044820152606401610527565b8015806110be57506001600160a01b03841660009081526009602052604090205460ff165b15611166576001600160a01b0384166000908152600260205260409020546110e79083906118d0565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546111179083906118e3565b6001600160a01b03808516600081815260026020526040908190209390935591519086169060008051602061194d833981519152906111599086815260200190565b60405180910390a3610a2b565b610a2b848484611356565b6001600160a01b0381166111dd5760405162461bcd60e51b815260206004820152602d60248201527f6f70657261746f723a207a65726f206164647265737320676976656e20666f7260448201526c103732bb9037b832b930ba37b960991b6064820152608401610527565b6001546040516001600160a01b038084169216907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0382166112df5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610527565b80600460008282546112f191906118e3565b90915550506001600160a01b0382166000908152600260205260408120805483929061131e9084906118e3565b90915550506040518181526001600160a01b0383169060009060008051602061194d8339815191529060200160405180910390a35050565b6001600160a01b0383166000908152600260205260409020548111156113cd5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610527565b6005546001600160a01b031661141d5760405162461bcd60e51b815260206004820152601560248201527415185e0818dbdb1b1958dd1bdc881b9bdd081cd95d605a1b6044820152606401610527565b6000612710600a54836114309190611913565b61143a919061192a565b9050600061144882846118d0565b6001600160a01b03851660009081526008602052604090205490915060ff16156114e75761271061147b84611770611913565b611485919061192a565b8110156114e75760405162461bcd60e51b815260206004820152602a60248201527f486967682074617820726174653a20496e63726561736520736c69707061676560448201526920746f6c6572616e636560b01b6064820152608401610527565b600081116115375760405162461bcd60e51b815260206004820152601960248201527f5472616e7366657220616d6f756e7420746f6f20736d616c6c000000000000006044820152606401610527565b6001600160a01b03851660009081526002602052604090205461155b9084906118d0565b6001600160a01b0380871660009081526002602052604080822093909355908616815290812080548392906115919084906118e3565b90915550506005546001600160a01b0316600090815260026020526040812080548492906115c09084906118e3565b90915550506040518281526001600160a01b038616907f7f1b726f82f7a14636a7a5932448f1bce683188520ba3150fd8423989353ebf29060200160405180910390a2836001600160a01b0316856001600160a01b031660008051602061194d8339815191528360405161163691815260200190565b60405180910390a36005546040518381526001600160a01b039182169187169060008051602061194d8339815191529060200160405180910390a35050505050565b602081526000825180602084015260005b818110156116a65760208186018101516040868401015201611689565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461074f57600080fd5b6000602082840312156116ed57600080fd5b81356116f8816116c6565b9392505050565b6000806040838503121561171257600080fd5b823561171d816116c6565b946020939093013593505050565b801515811461074f57600080fd5b6000806040838503121561174c57600080fd5b8235611757816116c6565b915060208301356117678161172b565b809150509250929050565b60008060006060848603121561178757600080fd5b8335611792816116c6565b925060208401356117a2816116c6565b929592945050506040919091013590565b6000602082840312156117c557600080fd5b5035919050565b6000806000606084860312156117e157600080fd5b83356117ec816116c6565b9250602084013591506040840135611803816116c6565b809150509250925092565b6000806040838503121561182157600080fd5b823561182c816116c6565b91506020830135611767816116c6565b60208082526024908201527f6f70657261746f723a2063616c6c6572206973206e6f7420746865206f70657260408201526330ba37b960e11b606082015260800190565b600181811c9082168061189457607f821691505b6020821081036118b457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610699576106996118ba565b80820180821115610699576106996118ba565b60006020828403121561190857600080fd5b81516116f88161172b565b8082028115828204841417610699576106996118ba565b60008261194757634e487b7160e01b600052601260045260246000fd5b50049056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220d893508c939f09a461fe969f8f31973cd69e2f91e4937bd88c7ecec63216ff0264736f6c634300081a00330000000000000000000000001d368773735ee1e678950b7a97bca2cafb330cdc000000000000000000000000a99fa2707ec6fe5ab4b14c88431c40f1ff3b9a98
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106102265760003560e01c80635291d41b116101305780639662676c116100b8578063bea1dcf81161007c578063bea1dcf81461049e578063dd62ed3e146104b1578063f2fde38b146104c4578063f4fd47cf146104d7578063f887ea40146104ea57600080fd5b80639662676c1461042e5780639a7a23d614610442578063a457c2d714610455578063a9059cbb14610468578063b62496f51461047b57600080fd5b8063715018a6116100ff578063715018a6146103fc57806378e97925146104045780638a27f1031461040d5780638da5cb5b1461041557806395d89b411461042657600080fd5b80635291d41b1461039c57806354575af4146103af578063570ca735146103c257806370a08231146103d357600080fd5b806329605e77116101b35780633a26ebde116101825780633a26ebde146103315780633e5f13d41461033a5780633f07d76a146103655780634456eda2146103785780634e20a02c1461038b57600080fd5b806329605e77146102f45780632b112e4914610307578063313ce5671461030f578063395093511461031e57600080fd5b806316c2be6b116101fa57806316c2be6b1461028957806318160ddd146102ac5780631c6f19ea146102be5780631dc61040146102ce57806323b872dd146102e157600080fd5b8062674ac21461022b57806306fdde031461023557806308695b4114610253578063095ea7b314610266575b600080fd5b6102336104fd565b005b61023d610545565b60405161024a9190611678565b60405180910390f35b6102336102613660046116db565b6105d7565b6102796102743660046116ff565b610685565b604051901515815260200161024a565b6102796102973660046116db565b60096020526000908152604090205460ff1681565b6004545b60405190815260200161024a565b6102b06856bc75e2d63100000081565b6102336102dc366004611739565b61069f565b6102796102ef366004611772565b61071a565b6102336103023660046116db565b61073e565b6102b0610752565b6040516012815260200161024a565b61027961032c3660046116ff565b6107ae565b6102b0600a5481565b60075461034d906001600160a01b031681565b6040516001600160a01b03909116815260200161024a565b6102336103733660046116db565b6107d0565b6001546001600160a01b03163314610279565b6102b06902f6f10780d22cc0000081565b6102336103aa3660046117b3565b6108a1565b6102336103bd3660046117cc565b61098e565b6001546001600160a01b031661034d565b6102b06103e13660046116db565b6001600160a01b031660009081526002602052604090205490565b610233610a31565b6102b0600b5481565b610233610a45565b6000546001600160a01b031661034d565b61023d610a97565b60065461027990600160a01b900460ff1681565b610233610450366004611739565b610aa6565b6102796104633660046116ff565b610b48565b6102796104763660046116ff565b610bc3565b6102796104893660046116db565b60086020526000908152604090205460ff1681565b60055461034d906001600160a01b031681565b6102b06104bf36600461180e565b610bd1565b6102336104d23660046116db565b610bfc565b6102336104e536600461180e565b610c37565b60065461034d906001600160a01b031681565b6001546001600160a01b031633146105305760405162461bcd60e51b81526004016105279061183c565b60405180910390fd5b6006805460ff60a01b1916600160a01b179055565b6060600c805461055490611880565b80601f016020809104026020016040519081016040528092919081815260200182805461058090611880565b80156105cd5780601f106105a2576101008083540402835291602001916105cd565b820191906000526020600020905b8154815290600101906020018083116105b057829003601f168201915b5050505050905090565b6001546001600160a01b031633146106015760405162461bcd60e51b81526004016105279061183c565b6001600160a01b0381166106635760405162461bcd60e51b815260206004820152602360248201527f546178436f6c6c6563746f7220616464726573732063616e6e6f74206265207a60448201526265726f60e81b6064820152608401610527565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600033610693818585610d81565b60019150505b92915050565b6106a7610ea5565b6001600160a01b0382166106ef5760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610527565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b600033610728858285610ed2565b610733858585610f46565b506001949350505050565b610746610ea5565b61074f81611171565b50565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b546005546001600160a01b03166000908152604081205460045491929161079f91906118d0565b6107a991906118d0565b905090565b6000336106938185856107c18383610bd1565b6107cb91906118e3565b610d81565b6107d8610ea5565b6001600160a01b03811661082e5760405162461bcd60e51b815260206004820181905260248201527f5461784f666669636520616464726573732063616e6e6f74206265207a65726f6044820152606401610527565b6007546001600160a01b03161561087f5760405162461bcd60e51b815260206004820152601560248201527415185e13d9999a58d948185b1c9958591e481cd95d605a1b6044820152606401610527565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314806108c457506007546001600160a01b031633145b6109015760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610527565b610fa08111156109535760405162461bcd60e51b815260206004820152601a60248201527f54617820726174652063616e6e6f7420657863656564203430250000000000006044820152606401610527565b600a8190556040518181527f82754e7bf8e3395ddb4a767c52b21ed0c3b9da843001b2e07ab46f25803234579060200160405180910390a150565b6001546001600160a01b031633146109b85760405162461bcd60e51b81526004016105279061183c565b60405163a9059cbb60e01b81526001600160a01b0382811660048301526024820184905284169063a9059cbb906044016020604051808303816000875af1158015610a07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2b91906118f6565b50505050565b610a39610ea5565b610a436000611239565b565b610a4d610ea5565b6001546040516000916001600160a01b0316907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed908390a3600180546001600160a01b0319169055565b6060600d805461055490611880565b6001546001600160a01b03163314610ad05760405162461bcd60e51b81526004016105279061183c565b6001600160a01b038216610b1d5760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642070616972206164647265737360601b6044820152606401610527565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b60003381610b568286610bd1565b905083811015610bb65760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610527565b6107338286868403610d81565b600033610693818585610f46565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b610c04610ea5565b6001600160a01b038116610c2e57604051631e4fbdf760e01b815260006004820152602401610527565b61074f81611239565b6001546001600160a01b03163314610c615760405162461bcd60e51b81526004016105279061183c565b600654600160a01b900460ff1615610cbb5760405162461bcd60e51b815260206004820152601860248201527f6f6e6c792063616e2064697374726962757465206f6e636500000000000000006044820152606401610527565b6001600160a01b038216610d015760405162461bcd60e51b815260206004820152600d60248201526c0857d9d95b995cda5cd41bdbdb609a1b6044820152606401610527565b6001600160a01b038116610d435760405162461bcd60e51b81526020600482015260096024820152680857d9185bd19d5b9960ba1b6044820152606401610527565b6006805460ff60a01b1916600160a01b179055610d6a826902f6f10780d22cc00000611289565b610d7d816856bc75e2d631000000611289565b5050565b6001600160a01b038316610de35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610527565b6001600160a01b038216610e445760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610527565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03163314610a435760405163118cdaa760e01b8152336004820152602401610527565b6000610ede8484610bd1565b90506000198114610a2b5781811015610f395760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610527565b610a2b8484848403610d81565b6001600160a01b03831615801590610f6657506001600160a01b03821615155b8015610f725750600081115b610fb15760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b2103a3930b739b332b960811b6044820152606401610527565b6001600160a01b0383166000908152600260205260409020548111156110105760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610527565b6001600160a01b03821660009081526008602052604081205460ff168061104457506006546001600160a01b038481169116145b90508015611099576005546001600160a01b03166110995760405162461bcd60e51b815260206004820152601260248201527115185e081cde5cdd195b481b9bdd081cd95d60721b6044820152606401610527565b8015806110be57506001600160a01b03841660009081526009602052604090205460ff165b15611166576001600160a01b0384166000908152600260205260409020546110e79083906118d0565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546111179083906118e3565b6001600160a01b03808516600081815260026020526040908190209390935591519086169060008051602061194d833981519152906111599086815260200190565b60405180910390a3610a2b565b610a2b848484611356565b6001600160a01b0381166111dd5760405162461bcd60e51b815260206004820152602d60248201527f6f70657261746f723a207a65726f206164647265737320676976656e20666f7260448201526c103732bb9037b832b930ba37b960991b6064820152608401610527565b6001546040516001600160a01b038084169216907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0382166112df5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610527565b80600460008282546112f191906118e3565b90915550506001600160a01b0382166000908152600260205260408120805483929061131e9084906118e3565b90915550506040518181526001600160a01b0383169060009060008051602061194d8339815191529060200160405180910390a35050565b6001600160a01b0383166000908152600260205260409020548111156113cd5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610527565b6005546001600160a01b031661141d5760405162461bcd60e51b815260206004820152601560248201527415185e0818dbdb1b1958dd1bdc881b9bdd081cd95d605a1b6044820152606401610527565b6000612710600a54836114309190611913565b61143a919061192a565b9050600061144882846118d0565b6001600160a01b03851660009081526008602052604090205490915060ff16156114e75761271061147b84611770611913565b611485919061192a565b8110156114e75760405162461bcd60e51b815260206004820152602a60248201527f486967682074617820726174653a20496e63726561736520736c69707061676560448201526920746f6c6572616e636560b01b6064820152608401610527565b600081116115375760405162461bcd60e51b815260206004820152601960248201527f5472616e7366657220616d6f756e7420746f6f20736d616c6c000000000000006044820152606401610527565b6001600160a01b03851660009081526002602052604090205461155b9084906118d0565b6001600160a01b0380871660009081526002602052604080822093909355908616815290812080548392906115919084906118e3565b90915550506005546001600160a01b0316600090815260026020526040812080548492906115c09084906118e3565b90915550506040518281526001600160a01b038616907f7f1b726f82f7a14636a7a5932448f1bce683188520ba3150fd8423989353ebf29060200160405180910390a2836001600160a01b0316856001600160a01b031660008051602061194d8339815191528360405161163691815260200190565b60405180910390a36005546040518381526001600160a01b039182169187169060008051602061194d8339815191529060200160405180910390a35050505050565b602081526000825180602084015260005b818110156116a65760208186018101516040868401015201611689565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461074f57600080fd5b6000602082840312156116ed57600080fd5b81356116f8816116c6565b9392505050565b6000806040838503121561171257600080fd5b823561171d816116c6565b946020939093013593505050565b801515811461074f57600080fd5b6000806040838503121561174c57600080fd5b8235611757816116c6565b915060208301356117678161172b565b809150509250929050565b60008060006060848603121561178757600080fd5b8335611792816116c6565b925060208401356117a2816116c6565b929592945050506040919091013590565b6000602082840312156117c557600080fd5b5035919050565b6000806000606084860312156117e157600080fd5b83356117ec816116c6565b9250602084013591506040840135611803816116c6565b809150509250925092565b6000806040838503121561182157600080fd5b823561182c816116c6565b91506020830135611767816116c6565b60208082526024908201527f6f70657261746f723a2063616c6c6572206973206e6f7420746865206f70657260408201526330ba37b960e11b606082015260800190565b600181811c9082168061189457607f821691505b6020821081036118b457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610699576106996118ba565b80820180821115610699576106996118ba565b60006020828403121561190857600080fd5b81516116f88161172b565b8082028115828204841417610699576106996118ba565b60008261194757634e487b7160e01b600052601260045260246000fd5b50049056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220d893508c939f09a461fe969f8f31973cd69e2f91e4937bd88c7ecec63216ff0264736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000001d368773735ee1e678950b7a97bca2cafb330cdc000000000000000000000000a99fa2707ec6fe5ab4b14c88431c40f1ff3b9a98
-----Decoded View---------------
Arg [0] : _router (address): 0x1D368773735ee1E678950B7A97bcA2CafB330CDc
Arg [1] : _taxCollectorAddress (address): 0xa99fa2707Ec6FE5Ab4b14C88431c40F1FF3B9A98
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000001d368773735ee1e678950b7a97bca2cafb330cdc
Arg [1] : 000000000000000000000000a99fa2707ec6fe5ab4b14c88431c40f1ff3b9a98
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in S
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.