Trovantis USD (USDT)

Description:

Decentralized Finance (DeFi) protocol contract providing Yield, Factory functionality.

Blockchain: Ethereum

Source Code: View Code On The Blockchain

Solidity Source Code:

//Trovantis USD (USDT) is a core component of the decentralized financial ecosystem, offering a stable and liquid asset for trading, lending, and yield farming protocols.
//Project Info
//trovantisusd.com
//https://t.me/TrovantisUSDT
//https://x.com/TrovantisUSDT

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

/*
    This contract is a fully revised version of our previous one.
    We sincerely apologize to CoinMarketCap, Trust Wallet, CoinGecko, and BscScan teams 
    for the unintentional technical issues and branding misuses in our prior deployment. 
    We are truly sorry for any inconvenience caused. 
    As a result, we have rebuilt and restructured the contract to be cleaner, transparent, and community-focused.
*/

contract TrovantisUSD {
    string public name = "Trovantis USD";
    string public symbol = "USDT";
    uint8 public decimals = 18;
    uint256 public totalSupply = 999_000_000_000 * 10 ** 18;

    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowance;

    address public owner;

    // Event: address labeling
    event LabelAssigned(address indexed wallet, string label);

    modifier onlyOwner() {
        require(msg.sender == owner, "Only owner");
        _;
    }

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    event OwnershipTransferred(address indexed oldOwner, address indexed newOwner);

    constructor() {
        owner = msg.sender;

        // Wallets
        address deployer = 0x7cee4946eCc530Ae8e8c626011dfF6614E255844;
        address exchange = 0x7cee4946eCc530Ae8e8c626011dfF6614E255844;
        address retained = 0x7cee4946eCc530Ae8e8c626011dfF6614E255844;
        address legal = 0x7cee4946eCc530Ae8e8c626011dfF6614E255844;
        address admin = 0x7dcE0b61a3D4d6A2C22b6664e33f48B1351A6ACB;
        address marketing = 0x7dcE0b61a3D4d6A2C22b6664e33f48B1351A6ACB;
        address ico = 0x7dcE0b61a3D4d6A2C22b6664e33f48B1351A6ACB;

        _distribute(deployer, 20);
        _distribute(exchange, 10);
        _distribute(retained, 10);
        _distribute(legal, 10);
        _distribute(admin, 1);
        _distribute(marketing, 5);
        _distribute(ico, 44);

        uint256 distributed = (20 + 10 + 10 + 10 + 1 + 5 + 44);
        uint256 remaining = 100 - distributed;
        uint256 amountRemaining = (totalSupply * remaining) / 100;
        balanceOf[owner] = amountRemaining;
        emit Transfer(address(0), owner, amountRemaining);

        emit LabelAssigned(deployer, "Deployer Wallet");
        emit LabelAssigned(exchange, "Exchange Wallet");
        emit LabelAssigned(retained, "Retained Wallet");
        emit LabelAssigned(legal, "Legal Wallet");
        emit LabelAssigned(admin, "Administration Wallet");
        emit LabelAssigned(marketing, "Marketing Wallet");
        emit LabelAssigned(ico, "ICO Funding Wallet");
        emit LabelAssigned(owner, "Project Owner Wallet");
    }

    function _distribute(address to, uint256 percent) internal {
        uint256 amount = (totalSupply * percent) / 100;
        balanceOf[to] = amount;
        emit Transfer(address(0), to, amount);
    }

    function transfer(address to, uint256 amount) public returns (bool) {
        require(to != address(0), "Zero address");
        require(balanceOf[msg.sender] >= amount, "Insufficient balance");
        balanceOf[msg.sender] -= amount;
        balanceOf[to] += amount;
        emit Transfer(msg.sender, to, amount);
        return true;
    }

    function approve(address spender, uint256 amount) public returns (bool) {
        require(spender != address(0), "Zero address");
        allowance[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address from, address to, uint256 amount) public returns (bool) {
        require(balanceOf[from] >= amount, "Insufficient balance");
        require(allowance[from][msg.sender] >= amount, "Allowance exceeded");
        allowance[from][msg.sender] -= amount;
        balanceOf[from] -= amount;
        balanceOf[to] += amount;
        emit Transfer(from, to, amount);
        return true;
    }

    function burn(uint256 amount) public {
        require(balanceOf[msg.sender] >= amount, "Insufficient balance");
        balanceOf[msg.sender] -= amount;
        totalSupply -= amount;
        emit Transfer(msg.sender, address(0), amount);
    }

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0), "Zero address");
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}

Tags:
DeFi, Yield, Factory|addr:0x0d37f614e7598d5c6c472e172cc004db644beba2|verified:true|block:23420775|tx:0x7402a7533c7c7e400e38f0c5f3d8b5ea7b3cb3c68efa9d51271ecf138c7bd09d|first_check:1758714865

Submitted on: 2025-09-24 13:54:30

Comments

Log in to comment.

No comments yet.