I'm developing a contract whose storage is very large.
I have exactly 23 fields in a struct, that is the value part of a mapping.
All the data must be included at once, but given the stack size limit, I can't have all of them declared in the function signature.
So I was thinking about "compressing" most of the parameters into a serialized string (JSON, maybe), but I really need this data to be stored as independent fields. Therefore, I'd need to unserialize this big chunk of data.
Another possibility is to consider everything a big byte array, with fixed size fields, and then split it up in a predefined order.
Is any of these possible?