Actually omit empty values when omitempty is specified