Maybe empty strings could be decoded into NaN or something better than an io.EOF? Just an idea.
Problem is when decoding JSON, which fails with an io.EOF error, which usually means that a Reader was already read. Funny to debug :)
Looks like the io.EOF comes from reading the sign at the start of UnmarslaText(...).