using System.Text.Json; namespace JsonCanonicalizer { class Program { static int Main(string[] args) { try { using var inputStream = Console.OpenStandardInput(); using var doc = JsonDocument.Parse(inputStream); var writerOptions = new JsonWriterOptions { Indented = true, Encoder = System.Text.Encodings.Web.JavaScriptEncoder.UnsafeRelaxedJsonEscaping }; using var outputStream = Console.OpenStandardOutput(); using var writer = new Utf8JsonWriter(outputStream, writerOptions); BL.Canonicalizer.WriteSorted(writer, doc.RootElement); writer.Flush(); Console.Out.WriteLine(); return 0; } catch (JsonException ex) { Console.Error.WriteLine($"Invalid JSON: {ex.Message}"); return 1; } catch (Exception ex) { Console.Error.WriteLine($"Error: {ex.Message}"); return 1; } } } }