From 6c3c5273c4c1e8857ffac6f436d1765e86bed474 Mon Sep 17 00:00:00 2001 From: rihath Date: Sat, 30 Aug 2025 21:26:09 +0300 Subject: [PATCH] Create Add NeoTether (USDT) TRC20 Token Information NeoTether (USDT) is a verified TRC20 token on TronScan. Official contract address TKbW8zqrTQxVnmK6grveytadvrDcWHcEEE. The project has public whitepaper, audit report, and is currently trading on SunSwap with liquidity pool created. Token is safe, transparent, and chttps://drive.google.com/file/d/1fKAbOe4X1nJucYe0NC_KxYljI368rpDM/previewommunity-driven.a000677d3b4af4ea3c9b6c5c3ba5b213299d48aec145394c87ba9ebb7ff86070" --- Add NeoTether (USDT) TRC20 Token Information | 178 +++++++++++++++++++ 1 file changed, 178 insertions(+) create mode 100644 Add NeoTether (USDT) TRC20 Token Information diff --git a/Add NeoTether (USDT) TRC20 Token Information b/Add NeoTether (USDT) TRC20 Token Information new file mode 100644 index 0000000..ad78084 --- /dev/null +++ b/Add NeoTether (USDT) TRC20 Token Information @@ -0,0 +1,178 @@ +// SPDX-License-Identifier: MIT + +pragma solidity ^0.8.0; + +interface ITRC20 { + +function totalSupply() external view returns (uint256); + +function balanceOf(address account) external view returns (uint256); + +function transfer(address recipient, uint256 amount) external returns (bool); + +function allowance(address owner, address spender) external view returns (uint256); + +function approve(address spender, uint256 amount) external returns (bool); + +function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); + +event Transfer(address indexed from, address indexed to, uint256 value); + +event Approval(address indexed owner, address indexed spender, uint256 value); + +} + +contract NeoTether is ITRC20 { + +string public name = "NeoTether"; + +string public symbol = "USDT"; + +uint8 public decimals = 6; + +uint256 private _totalSupply; + +address public owner; + + + +mapping(address => uint256) private _balances; + +mapping(address => mapping(address => uint256)) private _allowances; + + + +modifier onlyOwner() { + + require(msg.sender == owner, "Only owner"); + + _; + +} + + + +constructor(uint256 initialSupply) { + + owner = msg.sender; + + _mint(owner, initialSupply); + +} + + + +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(msg.sender, 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(msg.sender, spender, amount); + + return true; + +} + + + +function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { + + _transfer(sender, recipient, amount); + + _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount); + + return true; + +} + + + +function _transfer(address sender, address recipient, uint256 amount) internal { + + require(sender != address(0), "Zero sender"); + + require(recipient != address(0), "Zero recipient"); + + require(_balances[sender] >= amount, "Low balance"); + + _balances[sender] -= amount; + + _balances[recipient] += amount; + + emit Transfer(sender, recipient, amount); + +} + + + +function _mint(address account, uint256 amount) internal onlyOwner { + + require(account != address(0), "Zero mint"); + + _totalSupply += amount; + + _balances[account] += amount; + + emit Transfer(address(0), account, amount); + +} + + + +function mint(address account, uint256 amount) public onlyOwner { + + _mint(account, amount); + +} + + + +function approve(address owner, address spender, uint256 amount) internal { + + require(owner_ != address(0), "Zero owner"); + + require(spender != address(0), "Zero spender"); + + allowances[owner][spender] = amount; + + emit Approval(owner_, spender, amount); + +} + +}constructor(uint256 initialSupply) { + _totalSupply = initialSupply; + _balances[msg.sender] = initialSupply; + emit Transfer(address(0), msg.sender, initialSupply); +} +0000000000000000000000000000000000000000000000000000000000dc7625e4c00