StateInit; we only populate the key field. This makes it easy to locate the required contract later.
Consider NFTs: the collection serves as the Parent contract, and the NFT items are the child contracts. The key in this case is the index, and only a message from the collection can set the initial owner.
For Jettons, the Parent is the minter and the Children are user wallets. The key is the user’s smart contract address, and the value is the user’s token balance.
In general, jettons and NFTs share this principle, but broadly speaking, jetton protocols have a unique contract per user, while NFTs have a single contract per item (by index) that is shared across all users.
Unbounded data structures
An interesting property of this pattern is that the number of potential children is unbounded! We can have an infinite number of children. In general, infinite data structures that can actually scale to billions are very difficult to implement on blockchain efficiently. This pattern showcases the power of TON.Tact