using System; using System.Collections.Generic; using System.Runtime.InteropServices; using System.Text.Json; using System.Text.Json.Serialization; namespace Questionable.Model.Converter; public sealed class StringListOrValueConverter : JsonConverter> { public override List Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { int num = ((reader.TokenType != JsonTokenType.String) ? 2003232125 : 2003232123); List list = default(List); while (true) { int num2 = num; int num3 = 2003232122; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 5: num = 2003232123; break; case 1: { int num7 = 1; List list2 = new List(num7); CollectionsMarshal.SetCount(list2, num7); CollectionsMarshal.AsSpan(list2)[0] = reader.GetString(); return list2; } case 0: num = ((reader.TokenType != JsonTokenType.EndArray) ? 2003232120 : 2003232126); break; case 2: list.Add(reader.GetString()); reader.Read(); num = 2003232122; break; case 4: return list; case 6: throw _200D_200C_200E_206B_202E_200D_200E_202D_206B_206D_206F_202D_202C_200F_202E_206B_206E_200E_206D_202C_206F_206F_200B_206A_206C_200D_202D_206A_206A_200C_206D_200D_206F_206D_202A_202C_202B_202D_200F_202B_202E(); case 7: num = ((reader.TokenType == JsonTokenType.StartArray) ? 2003232121 : 2003232124); break; case 3: reader.Read(); list = new List(); num = 2003232122; break; } } } public override void Write(Utf8JsonWriter writer, List? value, JsonSerializerOptions options) { int num = ((value != null) ? (-1425131611) : (-1425131610)); while (true) { int num2 = num; int num3 = -1425131609; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 0: num = -1425131610; break; case 1: _202D_200D_202A_200D_206A_202A_206B_202C_202B_202C_202E_206E_206C_206C_206F_202C_200E_200C_202E_206C_202C_206F_206A_206F_206E_202A_206D_206A_200B_206C_206E_200C_206A_200E_202D_202D_200D_206F_206F_202E_202E(writer); return; case 4: _206A_206C_206B_206D_200B_206B_200B_200D_202A_206C_206E_202C_206E_206E_202E_202C_206A_206C_206A_200F_202E_206B_206E_200F_202A_200B_206D_200E_202E_202B_206B_202A_206B_202E_200E_206E_200B_200E_200D_200C_202E(writer, value[0]); return; case 2: num = ((value.Count != 1) ? (-1425131612) : (-1425131613)); break; case 3: { _200E_206C_202B_200C_206B_200B_200E_206F_200E_202A_206B_206C_200C_200D_200B_202C_200D_200C_200D_200E_206C_200B_202A_202D_202D_202D_202D_202C_206C_200C_200D_200B_200B_200B_200B_206E_206C_202A_206D_200F_202E(writer); using (List.Enumerator enumerator = value.GetEnumerator()) { num = -1381192088; while (true) { int num5 = num; num3 = -1381192088; num4 = num5; int num6 = num4 + num3; int num7 = num4 & num3; switch (num6 - (num7 + num7)) { case 2: num = -1381192088; break; case 1: { string current = enumerator.Current; _206A_206C_206B_206D_200B_206B_200B_200D_202A_206C_206E_202C_206E_206E_202E_202C_206A_206C_206A_200F_202E_206B_206E_200F_202A_200B_206D_200E_202E_202B_206B_202A_206B_202E_200E_206E_200B_200E_200D_200C_202E(writer, current); num = -1381192088; break; } case 0: num = (enumerator.MoveNext() ? (-1381192087) : (-1381192085)); break; case 3: goto end_IL_00a6; } continue; end_IL_00a6: break; } } _206B_202D_206B_200F_202C_206C_200C_206A_202C_202C_202D_200F_200E_200C_200D_200F_206C_200E_202E_206C_206F_202C_202E_200D_206C_206D_206A_200C_202B_206C_206D_202C_200E_202C_202B_206D_200B_200B_206B_202C_202E(writer); return; } } } } static JsonException _200D_200C_200E_206B_202E_200D_200E_202D_206B_206D_206F_202D_202C_200F_202E_206B_206E_200E_206D_202C_206F_206F_200B_206A_206C_200D_202D_206A_206A_200C_206D_200D_206F_206D_202A_202C_202B_202D_200F_202B_202E() { return new JsonException(); } static void _202D_200D_202A_200D_206A_202A_206B_202C_202B_202C_202E_206E_206C_206C_206F_202C_200E_200C_202E_206C_202C_206F_206A_206F_206E_202A_206D_206A_200B_206C_206E_200C_206A_200E_202D_202D_200D_206F_206F_202E_202E(Utf8JsonWriter P_0) { P_0.WriteNullValue(); } static void _206A_206C_206B_206D_200B_206B_200B_200D_202A_206C_206E_202C_206E_206E_202E_202C_206A_206C_206A_200F_202E_206B_206E_200F_202A_200B_206D_200E_202E_202B_206B_202A_206B_202E_200E_206E_200B_200E_200D_200C_202E(Utf8JsonWriter P_0, string P_1) { P_0.WriteStringValue(P_1); } static void _200E_206C_202B_200C_206B_200B_200E_206F_200E_202A_206B_206C_200C_200D_200B_202C_200D_200C_200D_200E_206C_200B_202A_202D_202D_202D_202D_202C_206C_200C_200D_200B_200B_200B_200B_206E_206C_202A_206D_200F_202E(Utf8JsonWriter P_0) { P_0.WriteStartArray(); } static void _206B_202D_206B_200F_202C_206C_200C_206A_202C_202C_202D_200F_200E_200C_200D_200F_206C_200E_202E_206C_206F_202C_202E_200D_206C_206D_206A_200C_202B_206C_206D_202C_200E_202C_202B_206D_200B_200B_206B_202C_202E(Utf8JsonWriter P_0) { P_0.WriteEndArray(); } }