Parsing strings (keys) containing '_' results in an premature end of the string (and then in a subsequent parsing error). Is JsonParser::isLetterOrNumber() missing a `|| c == '_'`?