public byte[] AnalyzeJsonBuffer(ReadOnlySpan <byte> bytes, JsonWriterOptions options = default, int minBufferSize = 8096) { byte[] buffer = JT809ArrayPool.Rent(minBufferSize); try { JT809MessagePackReader jT809MessagePackReader = new JT809MessagePackReader(bytes); jT809MessagePackReader.Decode(buffer); using (MemoryStream memoryStream = new MemoryStream()) using (Utf8JsonWriter utf8JsonWriter = new Utf8JsonWriter(memoryStream, options)) { jT809Package.Analyze(ref jT809MessagePackReader, utf8JsonWriter, jT809Config); utf8JsonWriter.Flush(); return(memoryStream.ToArray()); } } finally { JT809ArrayPool.Return(buffer); } }