Blockwell

Tether USD

ERC20

This contract is an ERC20 token.

Name Tether USD
Symbol USDT
Decimals 6
Total Supply 6,877,479,172 USDT

About link description

Tether (USDT) is a cryptocurrency with a value meant to mirror the value of the U.S. dollar. The idea was to create a stable cryptocurrency that can be used like digital dollars. Coins that serve this purpose of being a stable dollar substitute are called “stable coins.” According to their site, Tether converts cash into digital currency, to anchor or “tether” the value of the coin to the price of national currencies like the US dollar, the Euro, and the Yen. Tether (USDT) is issued on the Omni, TRON, and ETH blockchains. For details on the issuance across the different chains, please refer to: https://wallet.tether.to/transparency

Stats

Public Functions 18
Event Types 11
Code Size 14,888 bytes

AddedBlackList Event

Parameters help
_user
address help

Approval Event

Parameters help
owner
address help
spender
address help
value
uint help

Deprecate Event

Parameters help
newAddress
address help

DestroyedBlackFunds Event

Parameters help
_blackListedUser
address help
_balance
uint help

Issue Event

Parameters help
amount
uint help

Params Event

Parameters help
feeBasisPoints
uint help
maxFee
uint help

Pause Event

Parameters help

Redeem Event

Parameters help
amount
uint help

RemovedBlackList Event

Parameters help
_user
address help

Transfer Event

Parameters help
from
address help
to
address help
value
uint help

Unpause Event

Parameters help

Functions Expand All Collapse All

totalSupply keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function totalSupply() public constant returns (uint) {
        if (deprecated) {
            return StandardToken(upgradedAddress).totalSupply();
        } else {
            return _totalSupply;
        }
    }

balanceOf keyboard_arrow_up

Parameters help

Name Type
who
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function balanceOf(address who) public constant returns (uint) {
        if (deprecated) {
            return UpgradedStandardToken(upgradedAddress).balanceOf(who);
        } else {
            return super.balanceOf(who);
        }
    }

transfer keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
    function transfer(address _to, uint _value) public whenNotPaused {
        require(!isBlackListed[msg.sender]);
        if (deprecated) {
            return UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value);
        } else {
            return super.transfer(_to, _value);
        }
    }

transferOwnership keyboard_arrow_up

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferOwnership(address newOwner) public onlyOwner {
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }

getBlackListStatus keyboard_arrow_up

Parameters help

Name Type
_maker
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function getBlackListStatus(address _maker) external constant returns (bool) {
        return isBlackListed[_maker];
    }

getOwner keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function getOwner() external constant returns (address) {
        return owner;
    }

addBlackList keyboard_arrow_up

Parameters help

Name Type
_evilUser
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function addBlackList (address _evilUser) public onlyOwner {
        isBlackListed[_evilUser] = true;
        AddedBlackList(_evilUser);
    }

removeBlackList keyboard_arrow_up

Parameters help

Name Type
_clearedUser
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function removeBlackList (address _clearedUser) public onlyOwner {
        isBlackListed[_clearedUser] = false;
        RemovedBlackList(_clearedUser);
    }

destroyBlackFunds keyboard_arrow_up

Parameters help

Name Type
_blackListedUser
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function destroyBlackFunds (address _blackListedUser) public onlyOwner {
        require(isBlackListed[_blackListedUser]);
        uint dirtyFunds = balanceOf(_blackListedUser);
        balances[_blackListedUser] = 0;
        _totalSupply -= dirtyFunds;
        DestroyedBlackFunds(_blackListedUser, dirtyFunds);
    }

allowance keyboard_arrow_up

Parameters help

Name Type
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function allowance(address _owner, address _spender) public constant returns (uint remaining) {
        if (deprecated) {
            return StandardToken(upgradedAddress).allowance(_owner, _spender);
        } else {
            return super.allowance(_owner, _spender);
        }
    }

transferFrom keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
    function transferFrom(address _from, address _to, uint _value) public whenNotPaused {
        require(!isBlackListed[_from]);
        if (deprecated) {
            return UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value);
        } else {
            return super.transferFrom(_from, _to, _value);
        }
    }

approve keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyPayloadSize checks for the following:
UNKNOWN VALUE must not be true
Source Code
    function approve(address _spender, uint _value) public onlyPayloadSize(2 * 32) {
        if (deprecated) {
            return UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value);
        } else {
            return super.approve(_spender, _value);
        }
    }

pause keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
  function pause() onlyOwner whenNotPaused public {
    paused = true;
    Pause();
  }

unpause keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
  function unpause() onlyOwner whenPaused public {
    paused = false;
    Unpause();
  }

deprecate keyboard_arrow_up

Parameters help

Name Type
_upgradedAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function deprecate(address _upgradedAddress) public onlyOwner {
        deprecated = true;
        upgradedAddress = _upgradedAddress;
        Deprecate(_upgradedAddress);
    }

issue keyboard_arrow_up

Parameters help

Name Type
amount
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function issue(uint amount) public onlyOwner {
        require(_totalSupply + amount > _totalSupply);
        require(balances[owner] + amount > balances[owner]);

        balances[owner] += amount;
        _totalSupply += amount;
        Issue(amount);
    }

redeem keyboard_arrow_up

Parameters help

Name Type
amount
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function redeem(uint amount) public onlyOwner {
        require(_totalSupply >= amount);
        require(balances[owner] >= amount);

        _totalSupply -= amount;
        balances[owner] -= amount;
        Redeem(amount);
    }

setParams keyboard_arrow_up

Parameters help

Name Type
newBasisPoints
uint help
newMaxFee
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner {
        // Ensure transparency by hardcoding limit beyond which fees can never be added
        require(newBasisPoints < 20);
        require(newMaxFee < 50);

        basisPointsRate = newBasisPoints;
        maximumFee = newMaxFee.mul(10**decimals);

        Params(basisPointsRate, maximumFee);
    }