منصة النشر الذكي
أطلق عقودك على Polygon Mainnet
انشر عقد NRAT Token وعقد Marketplace اللامركزي مباشرة من محفظتك بنقرة واحدة
NRAT Token
100M إجمالي
معدل الحرق
1% لكل معاملة
رسوم السوق
2% فقط
النشر بنقرة واحدة
انشر العقدين معاً مباشرة من MetaMask
غير متصل
المتطلبات:
- • MetaMask متصلة بشبكة Polygon Mainnet
- • رصيد لا يقل عن 0.1 MATIC لرسوم الغاز
- • ستصبح المالك الأول لجميع العقود
دليل النشر اليدوي (للمطورين)
انشر العقود عبر Hardhat CLI أو Remix IDE
عقد NRAT Token
عملة NRAT الأساسية (ERC-20) مع آلية الحرق التلقائي 1%
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract NRATToken is ERC20, ERC20Burnable, Ownable {
uint256 public constant MAX_SUPPLY = 100_000_000 * 10**18;
uint256 public constant BURN_RATE = 100; // 1%
uint256 public constant BASIS_POINTS = 10_000;
mapping(address => bool) public burnExempt;
constructor(address initialOwner)
ERC20("NRAT Token", "NRAT")
Ownable(initialOwner)
{
_mint(initialOwner, MAX_SUPPLY);
}
function _update(address from, address to, uint256 value) internal override {
if (from == address(0) || to == address(0) || burnExempt[from] || burnExempt[to]) {
super._update(from, to, value);
return;
}
uint256 burnAmount = (value * BURN_RATE) / BASIS_POINTS;
super._update(from, address(0), burnAmount);
super._update(from, to, value - burnAmount);
}
function setBurnExempt(address account, bool exempt) external onlyOwner {
burnExempt[account] = exempt;
}
}