In NEO 2.x, we have two different ways to create assets, the first is to create a global asset based on UTXO, and the other is to create a NEP-5 token that is stored in a contract. For a long time, the biggest challenge in the development of smart contracts on NEO is to handle global assets in contracts.
Why don’t we put the global assets into the smart contract in NEO 3.0? As a result, the development of smart contracts will become very easy.
For system assets (*neo* and *gas*), we can use the functionality of native contracts to turn them into NEP-5 tokens.