Many token IDs in one contract.
balanceOf[id][to] += amountemit TransferSinglebalanceOf[id][msg.sender] -=// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
contract Items {
mapping(uint256 => mapping(address => uint256)) public balanceOf;
event TransferSingle(address indexed op, address indexed from, address indexed to, uint256 id, uint256 value);
function mint(address to, uint256 id, uint256 amount) external { /* TODO */ }
function transfer(address to, uint256 id, uint256 amount) external { /* TODO */ }
}