Store an Array in a compact way

I have a “mobile” app that requires storing 450 values with each value being “1”,“2” or “3”, if stored in an array then the “key” is the index.

Here is the kicker… they MUST be stored in User.Defaults … one of the versions is for AppleTV and that is about the only viable option for persistent storage.

I could store it as a 450 character long string or as 450 key/pair values. or???

I also need to be flexible in the event the current 450 needs to be increased.

You say ‘compact’. Is there a limitation that applies?

Array to Json or Array Serialized?

AppleTV is very strict about used storage… so if there a a way to make it small…

How about simply using byte buffer as bitmap? It takes 113 bytes to store 450 2-bit values.