Maybe this should use a Boolean instead (the object wrapper) and only write it if not null.

I know the other integers are not doing it, but I think this one is different since `true` is a valid value while `-1` is an invalid value for the other fields.