ETH Price: $3,502.77 (-0.19%)
Gas: 2 Gwei

Token

Olive Oil ($OLIVE)
 

Overview

Max Total Supply

420,690,000,000 $OLIVE

Holders

49

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000031158010749 $OLIVE

Value
$0.00
0x85bd58ed23331f2d2f13bf91b517f4704b53f821
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
OliveOilToken

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
constantinople EvmVersion
File 1 of 4 : OliveOilToken.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";

/**


X: https://twitter.com/olivecoineth
Telegram: https://t.me/OliveCoin
Website: https://www.olivecoin.club/

**/

//                                                                                
//                                                                                
//                                    .   ....,                                   
//                                       .....,                                   
//                                    .  .....,                                   
//                                       ......                                   
//                                    .   ....,                                   
//                                    .  .....,                                   
//                                    . .,,..,,                                   
//                                   .* ..,,,,*                                   
//                                  .///*,***///                                  
//                                 ,///*******///,                                
//                               ./.,************,/                               
//                               * .**************,*                              
//                               * .,*,,,,,,,,,,,*.*                              
//                               * .*,,,,,,,,,,,,*.*                              
//                               * .**,,,,,,,,,,,*.*                              
//                               * .**,,,,,,,,,,,*,*                              
//                               * .**,,,,,,,,,,,*,*                              
//                               * .**,,,,,,,,,,,*,/                              
//                               * .***,,,,,,,,,,*,/                              
//                               * .****,,,,,,,,,*,/                              
//                               / .***,,,,,,,,,,*,/                              
//                               / .****,,,,,,,,,*,/                              
//                               / .****,,,,,,,,,*,/                              
//                               /..*****,,,,,,,,*,/                              
//                               /..******,,,,,,,*,/                              
//                               /..******,,,,,,,*,/                              
//                               /../*********,,,/,/                              
//                               /../************/,/                              
//                               /..//***********/,/                              
//                               /.,//***********/,/                              
//                               /.,/////********/,/                              
//                               /.,////////*//*//,/                              
//                               /.,//////////////,/                              
//                               (.,//////////////,(...........                   
//                               /..,*****,**,*/**,/*,,,,......                   
//                               .(.,*,,,,,,,,,,,,#/,..                           
//                                                            

contract OliveOilToken is Context, IERC20, Ownable {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;

    string private _symbol;
    
    uint8 private constant _decimals = 18;

    bool public transferDelay = true;
    bool public transferEnabled;
    uint32 public sellTax;
    uint32 public buyTax;
    address private _receiptAddress;

    mapping(address => uint256) private _lastTransfersPerAddr;

    mapping(address => bool) private _isExcludedFromFee;

    address private _poolUniV2Address;


    modifier onlyOwnerOrReceiptAddress() {
        require(_msgSender() == owner() || _msgSender() == _receiptAddress, "OliveOilToken: Not owner or receipt address");
        _;
    }

    constructor(string memory _n, string memory _s, uint256 _ts, address _receiptAddr, uint32 _sTax, uint32 _bTax) payable {
        _receiptAddress = _receiptAddr;
        _name = _n;
        _symbol = _s;
        sellTax = _sTax;
        buyTax = _bTax;

        // Transfer all supply to owner
        _totalSupply = _ts;
        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);

        _isExcludedFromFee[owner()] = true;

    }

    // ERC20 functions
    function name() public view returns (string memory) {
        return _name;
    }

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

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

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

    function transferFrom(address from, address to, uint256 amount) public override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public 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;
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        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 {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "OliveOilToken: Transfer amount must be greater than zero");

        uint256 taxAmount;

        if (from != owner() && to != owner() && to != address(0) && to != address(0xdead)) {
            // handle trading activated
            require(transferEnabled, "OliveOilToken: Transfer not enabled");

            // handle transfer delay
            if (transferDelay) {
                require(_lastTransfersPerAddr[tx.origin] < block.number, "OliveOilToken: Transfer delay");
                 _lastTransfersPerAddr[tx.origin] = block.number;
            }

            // handle buy/sell taxes
            if (!_isExcludedFromFee[from] || !_isExcludedFromFee[to] || from != _receiptAddress || to != _receiptAddress) {
                // sell
                if (sellTax != 0 && to == _poolUniV2Address && from != address(this)) {
                    unchecked {
                        taxAmount = (amount * sellTax) / 100;
                    }
                }

                // buy
                if (buyTax != 0 && from == _poolUniV2Address && from != address(this)) {
                    unchecked {
                        taxAmount = (amount * buyTax) / 100;
                    }
                }
            }
        }

        require(_balances[from] >= amount, "ERC20: transfer amount exceeds balance");

        if (taxAmount == 0) {
            unchecked {
                _balances[from] -= amount;
                _balances[to] += amount;
            }

            emit Transfer(from, to, amount);
            return;
        }

        unchecked {
            _balances[from] -= amount;
            _balances[to] += amount - taxAmount;
            _balances[_receiptAddress] += taxAmount;
        }


        emit Transfer(from, to, amount - taxAmount);
        emit Transfer(from, _receiptAddress, taxAmount);
    }

    // *********

    function flipTransferDelay() external payable onlyOwner {
        transferDelay = !transferDelay;
    }

    function flipTransferEnabled() external payable onlyOwner {
        transferEnabled = !transferEnabled;
    }

    function setReceiptAddress(address _addr) external payable onlyOwnerOrReceiptAddress {
        _receiptAddress = _addr;
    }

    function addExcludedFeeWallet(address _addr) external payable onlyOwner {
        _isExcludedFromFee[_addr] = true;
    }

    function removeExcludedFeeWallet(address _addr) external payable onlyOwner {
        _isExcludedFromFee[_addr] = false;
    }

    function setPoolAddress(address _poolAddr) external onlyOwner {
        _poolUniV2Address = _poolAddr;
    }
}

File 2 of 4 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @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;
    }
}

File 3 of 4 : IERC20.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.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);
}

File 4 of 4 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)

pragma solidity ^0.8.0;

import "../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.
 *
 * By default, the owner account will be the one that deploys the contract. 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;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @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 {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @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 {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _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);
    }
}

Settings
{
  "remappings": [],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "constantinople",
  "libraries": {},
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_n","type":"string"},{"internalType":"string","name":"_s","type":"string"},{"internalType":"uint256","name":"_ts","type":"uint256"},{"internalType":"address","name":"_receiptAddr","type":"address"},{"internalType":"uint32","name":"_sTax","type":"uint32"},{"internalType":"uint32","name":"_bTax","type":"uint32"}],"stateMutability":"payable","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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"addExcludedFeeWallet","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"flipTransferDelay","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"flipTransferEnabled","outputs":[],"stateMutability":"payable","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"removeExcludedFeeWallet","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_poolAddr","type":"address"}],"name":"setPoolAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"setReceiptAddress","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"transferDelay","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transferEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060408190526006805460ff19166001179055620016b4388190039081908339810160408190526200003291620002d8565b6200003d3362000190565b60068054600160501b600160f01b0319166a01000000000000000000006001600160a01b03861602179055600462000076878262000439565b50600562000085868262000439565b506006805463ffffffff83811666010000000000000263ffffffff60301b1991861662010000029190911662010000600160501b03199092169190911717905560038490558360016000620000d73390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516200013a91815260200190565b60405180910390a36001600860006200015b6000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790555062000505945050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126200022157600080fd5b81516001600160401b03808211156200023e576200023e620001e0565b604051601f8301601f19908116603f01168101908282118183101715620002695762000269620001e0565b816040528381526020925086838588010111156200028657600080fd5b600091505b83821015620002aa57858201830151818301840152908201906200028b565b600093810190920192909252949350505050565b805163ffffffff81168114620002d357600080fd5b919050565b60008060008060008060c08789031215620002f257600080fd5b86516001600160401b03808211156200030a57600080fd5b620003188a838b016200020f565b975060208901519150808211156200032f57600080fd5b506200033e89828a016200020f565b604089015160608a0151919750955090506001600160a01b03811681146200036557600080fd5b92506200037560808801620002be565b91506200038560a08801620002be565b90509295509295509295565b600181811c90821680620003a657607f821691505b602082108103620003e0577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f8211156200043457600081815260208120601f850160051c810160208610156200040f5750805b601f850160051c820191505b8181101562000430578281556001016200041b565b5050505b505050565b81516001600160401b03811115620004555762000455620001e0565b6200046d8162000466845462000391565b84620003e6565b602080601f831160018114620004a557600084156200048c5750858301515b600019600386901b1c1916600185901b17855562000430565b600085815260208120601f198616915b82811015620004d657888601518255948401946001909101908401620004b5565b5085821015620004f55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61119f80620005156000396000f3fe60806040526004361061014b5760003560e01c806370a08231116100b6578063b2ac4ea81161006f578063b2ac4ea814610390578063cc1776d3146103a3578063dd62ed3e146103c6578063e6fc63f9146103e6578063e9e15b4f146103ee578063f2fde38b1461040e57600080fd5b806370a08231146102c8578063715018a6146102fe5780638da5cb5b1461031357806395d89b411461033b578063a457c2d714610350578063a9059cbb1461037057600080fd5b806323b872dd1161010857806323b872dd14610201578063313ce56714610221578063395093511461023d57806345b1b0081461025d5780634cd412d5146102705780634f7041a51461028f57600080fd5b806306fdde0314610150578063095ea7b31461017b5780630a702e8d146101ab57806315d5990f146101c557806318160ddd146101da5780632190cc6d146101f9575b600080fd5b34801561015c57600080fd5b5061016561042e565b6040516101729190610fce565b60405180910390f35b34801561018757600080fd5b5061019b610196366004611038565b6104c0565b6040519015158152602001610172565b3480156101b757600080fd5b5060065461019b9060ff1681565b6101d86101d3366004611062565b6104d7565b005b3480156101e657600080fd5b506003545b604051908152602001610172565b6101d8610503565b34801561020d57600080fd5b5061019b61021c366004611084565b61051f565b34801561022d57600080fd5b5060405160128152602001610172565b34801561024957600080fd5b5061019b610258366004611038565b610543565b6101d861026b366004611062565b61056f565b34801561027c57600080fd5b5060065461019b90610100900460ff1681565b34801561029b57600080fd5b506006546102b390600160301b900463ffffffff1681565b60405163ffffffff9091168152602001610172565b3480156102d457600080fd5b506101eb6102e3366004611062565b6001600160a01b031660009081526001602052604090205490565b34801561030a57600080fd5b506101d8610648565b34801561031f57600080fd5b506000546040516001600160a01b039091168152602001610172565b34801561034757600080fd5b5061016561065c565b34801561035c57600080fd5b5061019b61036b366004611038565b61066b565b34801561037c57600080fd5b5061019b61038b366004611038565b6106e6565b6101d861039e366004611062565b6106f3565b3480156103af57600080fd5b506006546102b39062010000900463ffffffff1681565b3480156103d257600080fd5b506101eb6103e13660046110c0565b61071c565b6101d8610747565b3480156103fa57600080fd5b506101d8610409366004611062565b61076c565b34801561041a57600080fd5b506101d8610429366004611062565b610796565b60606004805461043d906110f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610469906110f3565b80156104b65780601f1061048b576101008083540402835291602001916104b6565b820191906000526020600020905b81548152906001019060200180831161049957829003601f168201915b5050505050905090565b60006104cd33848461080f565b5060015b92915050565b6104df610933565b6001600160a01b03166000908152600860205260409020805460ff19166001179055565b61050b610933565b6006805460ff19811660ff90911615179055565b60003361052d85828561098d565b610538858585610a07565b506001949350505050565b600033610565818585610556838361071c565b6105609190611143565b61080f565b5060019392505050565b6000546001600160a01b03163314806105a25750600654600160501b90046001600160a01b0316336001600160a01b0316145b6106075760405162461bcd60e51b815260206004820152602b60248201527f4f6c6976654f696c546f6b656e3a204e6f74206f776e6572206f72207265636560448201526a697074206164647265737360a81b60648201526084015b60405180910390fd5b600680546001600160a01b03909216600160501b027fffff0000000000000000000000000000000000000000ffffffffffffffffffff909216919091179055565b610650610933565b61065a6000610f7e565b565b60606005805461043d906110f3565b60003381610679828661071c565b9050838110156106d95760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105fe565b610538828686840361080f565b60006104cd338484610a07565b6106fb610933565b6001600160a01b03166000908152600860205260409020805460ff19169055565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b61074f610933565b6006805461ff001981166101009182900460ff1615909102179055565b610774610933565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b61079e610933565b6001600160a01b0381166108035760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105fe565b61080c81610f7e565b50565b6001600160a01b0383166108715760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105fe565b6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105fe565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0316331461065a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105fe565b6000610999848461071c565b90506000198114610a0157818110156109f45760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105fe565b610a01848484840361080f565b50505050565b6001600160a01b038316610a6b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105fe565b6001600160a01b038216610acd5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105fe565b60008111610b435760405162461bcd60e51b815260206004820152603860248201527f4f6c6976654f696c546f6b656e3a205472616e7366657220616d6f756e74206d60448201527f7573742062652067726561746572207468616e207a65726f000000000000000060648201526084016105fe565b600080546001600160a01b03858116911614801590610b7057506000546001600160a01b03848116911614155b8015610b8457506001600160a01b03831615155b8015610b9b57506001600160a01b03831661dead14155b15610dbf57600654610100900460ff16610c035760405162461bcd60e51b815260206004820152602360248201527f4f6c6976654f696c546f6b656e3a205472616e73666572206e6f7420656e61626044820152621b195960ea1b60648201526084016105fe565b60065460ff1615610c7f57326000908152600760205260409020544311610c6c5760405162461bcd60e51b815260206004820152601d60248201527f4f6c6976654f696c546f6b656e3a205472616e736665722064656c617900000060448201526064016105fe565b3260009081526007602052604090204390555b6001600160a01b03841660009081526008602052604090205460ff161580610cc057506001600160a01b03831660009081526008602052604090205460ff16155b80610ce057506006546001600160a01b03858116600160501b9092041614155b80610d0057506006546001600160a01b03848116600160501b9092041614155b15610dbf5760065462010000900463ffffffff1615801590610d2f57506009546001600160a01b038481169116145b8015610d4457506001600160a01b0384163014155b15610d615760065460649062010000900463ffffffff1683020490505b600654600160301b900463ffffffff1615801590610d8c57506009546001600160a01b038581169116145b8015610da157506001600160a01b0384163014155b15610dbf57600654606490600160301b900463ffffffff1683020490505b6001600160a01b038416600090815260016020526040902054821115610e365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105fe565b80600003610eae576001600160a01b03808516600081815260016020526040808220805487900390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea09086815260200190565b60405180910390a350505050565b6001600160a01b03808516600081815260016020526040808220805487900390558684168083528183208054878903019055600654600160501b9004909416825290208054840190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f228486611156565b60405190815260200160405180910390a36006546040516001600160a01b03600160501b9092048216918616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea09085815260200190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208083528351808285015260005b81811015610ffb57858101830151858201604001528201610fdf565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461103357600080fd5b919050565b6000806040838503121561104b57600080fd5b6110548361101c565b946020939093013593505050565b60006020828403121561107457600080fd5b61107d8261101c565b9392505050565b60008060006060848603121561109957600080fd5b6110a28461101c565b92506110b06020850161101c565b9150604084013590509250925092565b600080604083850312156110d357600080fd5b6110dc8361101c565b91506110ea6020840161101c565b90509250929050565b600181811c9082168061110757607f821691505b60208210810361112757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104d1576104d161112d565b818103818111156104d1576104d161112d56fea2646970667358221220a7f2e2d13a6c9ad6718ed5167bb20a7b53e60daaba225ed1cabff59d96ff6eb364736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000054f529ca52576bc68920000000000000000000000000000005fab13c7d5dbd59897f452b792a5432609e1b7350000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000094f6c697665204f696c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006244f4c4956450000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361061014b5760003560e01c806370a08231116100b6578063b2ac4ea81161006f578063b2ac4ea814610390578063cc1776d3146103a3578063dd62ed3e146103c6578063e6fc63f9146103e6578063e9e15b4f146103ee578063f2fde38b1461040e57600080fd5b806370a08231146102c8578063715018a6146102fe5780638da5cb5b1461031357806395d89b411461033b578063a457c2d714610350578063a9059cbb1461037057600080fd5b806323b872dd1161010857806323b872dd14610201578063313ce56714610221578063395093511461023d57806345b1b0081461025d5780634cd412d5146102705780634f7041a51461028f57600080fd5b806306fdde0314610150578063095ea7b31461017b5780630a702e8d146101ab57806315d5990f146101c557806318160ddd146101da5780632190cc6d146101f9575b600080fd5b34801561015c57600080fd5b5061016561042e565b6040516101729190610fce565b60405180910390f35b34801561018757600080fd5b5061019b610196366004611038565b6104c0565b6040519015158152602001610172565b3480156101b757600080fd5b5060065461019b9060ff1681565b6101d86101d3366004611062565b6104d7565b005b3480156101e657600080fd5b506003545b604051908152602001610172565b6101d8610503565b34801561020d57600080fd5b5061019b61021c366004611084565b61051f565b34801561022d57600080fd5b5060405160128152602001610172565b34801561024957600080fd5b5061019b610258366004611038565b610543565b6101d861026b366004611062565b61056f565b34801561027c57600080fd5b5060065461019b90610100900460ff1681565b34801561029b57600080fd5b506006546102b390600160301b900463ffffffff1681565b60405163ffffffff9091168152602001610172565b3480156102d457600080fd5b506101eb6102e3366004611062565b6001600160a01b031660009081526001602052604090205490565b34801561030a57600080fd5b506101d8610648565b34801561031f57600080fd5b506000546040516001600160a01b039091168152602001610172565b34801561034757600080fd5b5061016561065c565b34801561035c57600080fd5b5061019b61036b366004611038565b61066b565b34801561037c57600080fd5b5061019b61038b366004611038565b6106e6565b6101d861039e366004611062565b6106f3565b3480156103af57600080fd5b506006546102b39062010000900463ffffffff1681565b3480156103d257600080fd5b506101eb6103e13660046110c0565b61071c565b6101d8610747565b3480156103fa57600080fd5b506101d8610409366004611062565b61076c565b34801561041a57600080fd5b506101d8610429366004611062565b610796565b60606004805461043d906110f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610469906110f3565b80156104b65780601f1061048b576101008083540402835291602001916104b6565b820191906000526020600020905b81548152906001019060200180831161049957829003601f168201915b5050505050905090565b60006104cd33848461080f565b5060015b92915050565b6104df610933565b6001600160a01b03166000908152600860205260409020805460ff19166001179055565b61050b610933565b6006805460ff19811660ff90911615179055565b60003361052d85828561098d565b610538858585610a07565b506001949350505050565b600033610565818585610556838361071c565b6105609190611143565b61080f565b5060019392505050565b6000546001600160a01b03163314806105a25750600654600160501b90046001600160a01b0316336001600160a01b0316145b6106075760405162461bcd60e51b815260206004820152602b60248201527f4f6c6976654f696c546f6b656e3a204e6f74206f776e6572206f72207265636560448201526a697074206164647265737360a81b60648201526084015b60405180910390fd5b600680546001600160a01b03909216600160501b027fffff0000000000000000000000000000000000000000ffffffffffffffffffff909216919091179055565b610650610933565b61065a6000610f7e565b565b60606005805461043d906110f3565b60003381610679828661071c565b9050838110156106d95760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105fe565b610538828686840361080f565b60006104cd338484610a07565b6106fb610933565b6001600160a01b03166000908152600860205260409020805460ff19169055565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b61074f610933565b6006805461ff001981166101009182900460ff1615909102179055565b610774610933565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b61079e610933565b6001600160a01b0381166108035760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105fe565b61080c81610f7e565b50565b6001600160a01b0383166108715760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105fe565b6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105fe565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0316331461065a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105fe565b6000610999848461071c565b90506000198114610a0157818110156109f45760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105fe565b610a01848484840361080f565b50505050565b6001600160a01b038316610a6b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105fe565b6001600160a01b038216610acd5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105fe565b60008111610b435760405162461bcd60e51b815260206004820152603860248201527f4f6c6976654f696c546f6b656e3a205472616e7366657220616d6f756e74206d60448201527f7573742062652067726561746572207468616e207a65726f000000000000000060648201526084016105fe565b600080546001600160a01b03858116911614801590610b7057506000546001600160a01b03848116911614155b8015610b8457506001600160a01b03831615155b8015610b9b57506001600160a01b03831661dead14155b15610dbf57600654610100900460ff16610c035760405162461bcd60e51b815260206004820152602360248201527f4f6c6976654f696c546f6b656e3a205472616e73666572206e6f7420656e61626044820152621b195960ea1b60648201526084016105fe565b60065460ff1615610c7f57326000908152600760205260409020544311610c6c5760405162461bcd60e51b815260206004820152601d60248201527f4f6c6976654f696c546f6b656e3a205472616e736665722064656c617900000060448201526064016105fe565b3260009081526007602052604090204390555b6001600160a01b03841660009081526008602052604090205460ff161580610cc057506001600160a01b03831660009081526008602052604090205460ff16155b80610ce057506006546001600160a01b03858116600160501b9092041614155b80610d0057506006546001600160a01b03848116600160501b9092041614155b15610dbf5760065462010000900463ffffffff1615801590610d2f57506009546001600160a01b038481169116145b8015610d4457506001600160a01b0384163014155b15610d615760065460649062010000900463ffffffff1683020490505b600654600160301b900463ffffffff1615801590610d8c57506009546001600160a01b038581169116145b8015610da157506001600160a01b0384163014155b15610dbf57600654606490600160301b900463ffffffff1683020490505b6001600160a01b038416600090815260016020526040902054821115610e365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105fe565b80600003610eae576001600160a01b03808516600081815260016020526040808220805487900390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea09086815260200190565b60405180910390a350505050565b6001600160a01b03808516600081815260016020526040808220805487900390558684168083528183208054878903019055600654600160501b9004909416825290208054840190557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f228486611156565b60405190815260200160405180910390a36006546040516001600160a01b03600160501b9092048216918616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ea09085815260200190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208083528351808285015260005b81811015610ffb57858101830151858201604001528201610fdf565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461103357600080fd5b919050565b6000806040838503121561104b57600080fd5b6110548361101c565b946020939093013593505050565b60006020828403121561107457600080fd5b61107d8261101c565b9392505050565b60008060006060848603121561109957600080fd5b6110a28461101c565b92506110b06020850161101c565b9150604084013590509250925092565b600080604083850312156110d357600080fd5b6110dc8361101c565b91506110ea6020840161101c565b90509250929050565b600181811c9082168061110757607f821691505b60208210810361112757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104d1576104d161112d565b818103818111156104d1576104d161112d56fea2646970667358221220a7f2e2d13a6c9ad6718ed5167bb20a7b53e60daaba225ed1cabff59d96ff6eb364736f6c63430008140033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000054f529ca52576bc68920000000000000000000000000000005fab13c7d5dbd59897f452b792a5432609e1b7350000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000094f6c697665204f696c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006244f4c4956450000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _n (string): Olive Oil
Arg [1] : _s (string): $OLIVE
Arg [2] : _ts (uint256): 420690000000000000000000000000
Arg [3] : _receiptAddr (address): 0x5fab13c7D5DbD59897F452b792A5432609e1b735
Arg [4] : _sTax (uint32): 1
Arg [5] : _bTax (uint32): 1

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [2] : 00000000000000000000000000000000000000054f529ca52576bc6892000000
Arg [3] : 0000000000000000000000005fab13c7d5dbd59897f452b792a5432609e1b735
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [7] : 4f6c697665204f696c0000000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [9] : 244f4c4956450000000000000000000000000000000000000000000000000000


Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.