Using this post to define the format of a transaction: Create Output with a bunch of input
Why is the previous utxo index (also called the previous output index) 4 bytes?
The maximum output index should be equivalent to the maximum number of outputs that could fit into a transaction which would be constrained by block size. So is 2 bytes not enough? (2 bytes --> max index of 65,535)
Which mined transaction on mainnet has created the highest number of outputs so far?
What is the largest previous output index that has been mined into a block so far?
Related code: https://github.com/bitcoin/bitcoin/blob/master/src/primitives/transaction.h#L30
Related question: Maximum number of inputs per transaction