using System; using System.Collections.Generic; using System.Numerics; using System.Text.Json; using System.Text.Json.Serialization; using SmartNav.Model.Converter; namespace Questionable.Model.Converter; public sealed class VectorListConverter : JsonConverter> { private static readonly VectorConverter ItemConverter = _206C_200C_200D_206E_202A_200E_206F_200E_206F_200B_200C_202E_200D_206F_206B_202E_200D_206C_202C_206A_200E_200C_202D_206E_202D_206A_202C_200C_206D_202D_202C_206F_206C_202B_200C_200C_206B_202C_202C_202C_202E(); public override List Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { int num = ((reader.TokenType == JsonTokenType.StartArray) ? 1775411337 : 1775411336); List list = default(List); while (true) { int num2 = num; int num3 = 1775411340; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 3: throw _202B_206F_202B_202E_206E_200D_206B_200B_202A_202B_200D_206A_202A_200E_200C_202E_200F_206F_200F_202B_206A_206B_202E_202D_200C_200B_202A_206B_200F_206A_202B_206B_206E_202E_200D_206C_206C_202B_200D_200D_202E(); case 0: list.Add(ItemConverter.Read(ref reader, _206C_206A_202A_206E_206D_202D_206D_200C_206B_206C_200C_206E_206C_202A_200C_206F_200F_206F_206B_200B_206A_200F_206B_206C_200C_202E_206B_206D_202A_202C_206B_206E_206B_202C_202C_202C_206F_200F_200F_200E_202E(typeof(Vector3).TypeHandle), options)); num = 1775411338; break; case 6: num = (reader.Read() ? 1775411339 : 1775411343); break; case 4: throw _202B_206F_202B_202E_206E_200D_206B_200B_202A_202B_200D_206A_202A_200E_200C_202E_200F_206F_200F_202B_206A_206B_202E_202D_200C_200B_202A_206B_200F_206A_202B_206B_206E_202E_200D_206C_206C_202B_200D_200D_202E(); case 2: num = 1775411336; break; case 7: num = ((reader.TokenType != JsonTokenType.EndArray) ? 1775411340 : 1775411341); break; case 1: return list; case 5: list = new List(); num = 1775411338; break; } } } public override void Write(Utf8JsonWriter writer, List value, JsonSerializerOptions options) { _200B_200D_206A_206E_202B_202B_200D_206A_202A_202A_200B_206D_202D_206D_200F_206B_206C_202C_202B_200D_202C_200B_206A_200D_202A_206A_202C_202C_200F_200F_200D_202A_206B_200F_200E_206D_200E_206A_202D_202E_202E(writer); using (List.Enumerator enumerator = value.GetEnumerator()) { int num = -1222196604; while (true) { int num2 = num; int num3 = -1222196603; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 3: num = -1222196604; break; case 1: num = (enumerator.MoveNext() ? (-1222196601) : (-1222196603)); break; case 2: { Vector3 current = enumerator.Current; ItemConverter.Write(writer, current, options); num = -1222196604; break; } case 0: goto end_IL_0018; } continue; end_IL_0018: break; } } _200F_206C_202B_200F_206B_206F_206B_200B_200C_202A_202D_202B_200C_202E_206B_206D_202B_200B_206D_200D_206B_200D_202D_200F_206F_202B_200F_206A_202C_206F_202E_200B_202A_202D_206E_202C_200F_202C_206C_206E_202E(writer); } static JsonException _202B_206F_202B_202E_206E_200D_206B_200B_202A_202B_200D_206A_202A_200E_200C_202E_200F_206F_200F_202B_206A_206B_202E_202D_200C_200B_202A_206B_200F_206A_202B_206B_206E_202E_200D_206C_206C_202B_200D_200D_202E() { return new JsonException(); } static Type _206C_206A_202A_206E_206D_202D_206D_200C_206B_206C_200C_206E_206C_202A_200C_206F_200F_206F_206B_200B_206A_200F_206B_206C_200C_202E_206B_206D_202A_202C_206B_206E_206B_202C_202C_202C_206F_200F_200F_200E_202E(RuntimeTypeHandle P_0) { return System.Type.GetTypeFromHandle(P_0); } static void _200B_200D_206A_206E_202B_202B_200D_206A_202A_202A_200B_206D_202D_206D_200F_206B_206C_202C_202B_200D_202C_200B_206A_200D_202A_206A_202C_202C_200F_200F_200D_202A_206B_200F_200E_206D_200E_206A_202D_202E_202E(Utf8JsonWriter P_0) { P_0.WriteStartArray(); } static void _200F_206C_202B_200F_206B_206F_206B_200B_200C_202A_202D_202B_200C_202E_206B_206D_202B_200B_206D_200D_206B_200D_202D_200F_206F_202B_200F_206A_202C_206F_202E_200B_202A_202D_206E_202C_200F_202C_206C_206E_202E(Utf8JsonWriter P_0) { P_0.WriteEndArray(); } static VectorConverter _206C_200C_200D_206E_202A_200E_206F_200E_206F_200B_200C_202E_200D_206F_206B_202E_200D_206C_202C_206A_200E_200C_202D_206E_202D_206A_202C_200C_206D_202D_202C_206F_206C_202B_200C_200C_206B_202C_202C_202C_202E() { return new VectorConverter(); } }