Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 961 Bytes

solution-2.md

File metadata and controls

30 lines (24 loc) · 961 Bytes

// SPDX-License-Identifier: MIT pragma solidity ^0.8.9;

import "@openzeppelin/[email protected]/token/ERC20/ERC20.sol"; import "@openzeppelin/[email protected]/token/ERC20/extensions/ERC20Snapshot.sol"; import "@openzeppelin/[email protected]/access/Ownable.sol"; import "@openzeppelin/[email protected]/token/ERC20/extensions/ERC20FlashMint.sol";

contract AnoopGhlot is ERC20, ERC20Snapshot, Ownable, ERC20FlashMint { constructor() ERC20("anoop ghlot", "ANOOP") { _mint(msg.sender, 10000 * 10 ** decimals()); }

function snapshot() public onlyOwner {
    _snapshot();
}

function mint(address to, uint256 amount) public onlyOwner {
    _mint(to, amount);
}

// The following functions are overrides required by Solidity.

function _beforeTokenTransfer(address from, address to, uint256 amount)
    internal
    override(ERC20, ERC20Snapshot)
{
    super._beforeTokenTransfer(from, to, amount);
}

}