From 64427f013eec1d17d2df56f2de9efd70ba761ae6 Mon Sep 17 00:00:00 2001
From: "yonatan.tesfu" <yonatan.tesfu@etu.hesge.ch>
Date: Sun, 27 Nov 2022 20:22:16 +0100
Subject: [PATCH] fichiers token

---
 myToken.sol | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)
 create mode 100644 myToken.sol

diff --git a/myToken.sol b/myToken.sol
new file mode 100644
index 00000000..368ff742
--- /dev/null
+++ b/myToken.sol
@@ -0,0 +1,40 @@
+// SPDX-License-Identifier: MIT
+pragma solidity ^0.8.7;
+
+import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
+import "@openzeppelin/contracts/access/Ownable.sol";
+import "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol";
+import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol";
+
+contract Yonken is ERC20, Ownable, ERC20Permit, ERC20Votes {
+    constructor() ERC20("Yonken", "YKE") ERC20Permit("Yonken") {
+        _mint(msg.sender, 1000 * 10 ** decimals());
+    }
+
+    function mint(address to, uint256 amount) public onlyOwner {
+        _mint(to, amount);
+    }
+
+    // The following functions are overrides required by Solidity.
+
+    function _afterTokenTransfer(address from, address to, uint256 amount)
+        internal
+        override(ERC20, ERC20Votes)
+    {
+        super._afterTokenTransfer(from, to, amount);
+    }
+
+    function _mint(address to, uint256 amount)
+        internal
+        override(ERC20, ERC20Votes)
+    {
+        super._mint(to, amount);
+    }
+
+    function _burn(address account, uint256 amount)
+        internal
+        override(ERC20, ERC20Votes)
+    {
+        super._burn(account, amount);
+    }
+}
-- 
GitLab