According to the Slow Fog Safety Team, TRC10 is the technical token standard supported by the TRON blockchain itself, without the TRON Virtual Machine (TVM). TRC10 & TRC20 Detailed comparison: https://developers.tron.network/docs/trc10-token#section-trc10-trc20-comparisonTRC10 provides 2 new parameters: tokenValue, tokenId, msg.tokenvalue indicating the tag in the current msg call Value, the default is 0. Msg.tokenid represents the tag id in the current msg call. The default value is 0. tokenId is also a new feature in Odyssey_v3.2. It can be found in the new map field named assetV2 in the account. Use GetAccount(Account) to get the tokenId and its value. TokenId is set by the system starting with the number 1_000_001. When creating a new TRC10 token, add 1 to the number and set the ID of the token. Official documentation: https://developers.tron.network/docs/trc10-transfer-in-smart-contractsTronBank The contract does not determine msg.tokenid in the invest function, causing any tokens (counterfeit) to be transferred, the contract is considered true Currency BTT. The attacker then calls withdraw to extract the real money BTT from the contract.