using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Runtime.CompilerServices; namespace Questionable.Model.Questing; public abstract class ElementId : IComparable, IEquatable { public ushort Value { get; } protected ElementId(ushort value) { Value = value; } public int CompareTo(ElementId? other) { int num = (((object)this != other) ? 1197187714 : 1197187715); while (true) { int num2 = num; int num3 = 1197187714; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 2: num = 1197187715; break; case 1: return 0; case 4: return 1; case 3: return Value.CompareTo(other.Value); case 0: num = (((object)other != null) ? 1197187713 : 1197187718); break; } } } int IComparable.CompareTo(ElementId? other) { //ILSpy generated this explicit interface implementation from .override directive in CompareTo return this.CompareTo(other); } public bool Equals(ElementId? other) { int num = (((object)other != null) ? (-1056496819) : (-1056496824)); while (true) { int num2 = num; int num3 = -1056496820; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 3: num = -1056496824; break; case 1: num = (((object)this != other) ? (-1056496818) : (-1056496823)); break; case 6: return Value == other.Value; case 0: return false; case 5: return true; case 4: return false; case 2: num = ((!_200C_200B_200B_202C_206F_206A_206E_206A_206F_202A_200F_202B_200D_206C_206D_206B_206D_206C_202B_202A_202C_206C_206D_206A_206B_200C_206B_200D_206E_200F_206A_202D_206A_202D_202E_200E_200B_200E_206D_202D_202E(_202C_206B_200C_206A_206E_202B_200E_200D_206A_206F_202E_206F_206C_206D_200C_200C_206A_200F_202B_202C_202A_200C_202B_202A_206F_206B_200D_200E_206C_206E_206D_206B_200C_206E_200D_200E_200D_206C_206F_206A_202E((object?)other), _202E_202E_200B_202E_202A_202C_206B_202C_200D_200C_206E_206C_206E_200E_206C_202B_206C_200C_202D_202A_200C_200F_200C_200E_206C_200D_200B_206E_206A_200D_206B_206B_206E_202D_202B_202D_200F_200D_202B_202D_202E((object?)this))) ? (-1056496822) : (-1056496820)); break; } } } bool IEquatable.Equals(ElementId? other) { //ILSpy generated this explicit interface implementation from .override directive in Equals return this.Equals(other); } public override bool Equals(object? obj) { int num = ((obj != null) ? (-1614624425) : (-1614624428)); while (true) { int num2 = num; int num3 = -1614624426; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 4: return Equals((ElementId)obj); case 1: num = ((this != obj) ? (-1614624429) : (-1614624432)); break; case 3: return false; case 6: return true; case 0: num = -1614624428; break; case 2: return false; case 5: num = ((!_200C_200B_200B_202C_206F_206A_206E_206A_206F_202A_200F_202B_200D_206C_206D_206B_206D_206C_202B_202A_202C_206C_206D_206A_206B_200C_206B_200D_206E_200F_206A_202D_206A_202D_202E_200E_200B_200E_206D_202D_202E(_202C_206B_200C_206A_206E_202B_200E_200D_206A_206F_202E_206F_206C_206D_200C_200C_206A_200F_202B_202C_202A_200C_202B_202A_206F_206B_200D_200E_206C_206E_206D_206B_200C_206E_200D_200E_200D_206C_206F_206A_202E(obj), _202E_202E_200B_202E_202A_202C_206B_202C_200D_200C_206E_206C_206E_200E_206C_202B_206C_200C_202D_202A_200C_200F_200C_200E_206C_200D_200B_206E_206A_200D_206B_206B_206E_202D_202B_202D_200F_200D_202B_202D_202E((object?)this))) ? (-1614624430) : (-1614624427)); break; } } } public override int GetHashCode() { return Value.GetHashCode(); } public static bool operator ==(ElementId? left, ElementId? right) { return _206F_202B_202B_200B_200C_200E_206F_206B_206A_206D_202B_206E_206C_200B_202B_200D_202C_206A_200F_206F_200D_206A_200E_206B_200F_206F_206E_200B_206C_202D_202A_202E_206F_202B_206A_206E_200F_206A_206C_206D_202E((object?)left, (object?)right); } public static bool operator !=(ElementId? left, ElementId? right) { return !_206F_202B_202B_200B_200C_200E_206F_206B_206A_206D_202B_206E_206C_200B_202B_200D_202C_206A_200F_206F_200D_206A_200E_206B_200F_206F_206E_200B_206C_202D_202A_202E_206F_202B_206A_206E_200F_206A_206C_206D_202E((object?)left, (object?)right); } [MethodImpl(MethodImplOptions.NoInlining)] public static ElementId FromString(string value) { int num = ((!_200B_202C_206E_200D_200E_202D_200E_206E_200B_200F_206B_200E_206B_200E_202C_200F_200F_202A_200B_206C_200F_202C_200E_202D_202B_206E_206F_206E_200D_202E_200F_206B_206B_202A_200E_200E_200B_202A_202D_206B_202E(value, global::_003CModule_003E._200C_206E_206A_202B_206D_200F_202D_206C_200B_202E_202A_200F_202B_206F_206E_206F_206A_206D_200F_206A_202B_200E_206A_206E_206F_206C_206A_202D_200B_200C_206B_202A_206E_200D_202C_200B_200E_200C_202A_206E_202E(2047666330))) ? (-1593570026) : (-1593570027)); while (true) { int num2 = num; int num3 = -1593570025; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 1: num = ((!_200B_202C_206E_200D_200E_202D_200E_206E_200B_200F_206B_200E_206B_200E_202C_200F_200F_202A_200B_206C_200F_202C_200E_202D_202B_206E_206F_206E_200D_202E_200F_206B_206B_202A_200E_200E_200B_202A_202D_206B_202E(value, global::_003CModule_003E._200F_206E_206A_200F_202A_206C_206C_202C_200E_206C_202B_200D_206C_200C_202E_200F_202B_200C_206E_202D_200D_206D_206D_200C_206D_206D_206F_206D_200F_200E_200E_206A_206D_206C_202E_206E_202E_202A_206A_206B_202E(1969362176))) ? (-1593570028) : (-1593570029)); break; case 2: return new SatisfactionSupplyNpcId(ushort.Parse(_206E_206D_202D_202E_200E_200D_206B_200D_200B_202A_200E_206A_206B_202A_206F_202E_206C_206D_200B_206B_206A_206F_202D_206B_202C_206D_206D_202D_206E_206B_206A_200D_200B_206B_206F_202B_206A_206C_206A_200F_202E(value, 1), _206F_200B_206F_206A_206C_202D_200C_206F_200C_206E_202A_202C_206A_206B_206E_202B_206F_206F_200B_200C_202E_200C_202A_200B_200B_202A_202C_206D_202A_206F_200D_200C_202A_206F_200D_202D_206B_202E())); case 0: num = -1593570027; break; case 3: return new QuestId(ushort.Parse(value, _206F_200B_206F_206A_206C_202D_200C_206F_200C_206E_202A_202C_206A_206B_206E_202B_206F_206F_200B_200C_202E_200C_202A_200B_200B_202A_202C_206D_202A_206F_200D_200C_202A_206F_200D_202D_206B_202E())); case 4: return new UnlockLinkId(ushort.Parse(_206E_206D_202D_202E_200E_200D_206B_200D_200B_202A_200E_206A_206B_202A_206F_202E_206C_206D_200B_206B_206A_206F_202D_206B_202C_206D_206D_202D_206E_206B_206A_200D_200B_206B_206F_202B_206A_206C_206A_200F_202E(value, 1), _206F_200B_206F_206A_206C_202D_200C_206F_200C_206E_202A_202C_206A_206B_206E_202B_206F_206F_200B_200C_202E_200C_202A_200B_200B_202A_202C_206D_202A_206F_200D_200C_202A_206F_200D_202D_206B_202E())); } } } public static List FromStrings(IEnumerable values, out int skippedCount) { List list = new List(); skippedCount = 0; IEnumerator enumerator = values.GetEnumerator(); try { int num = 1723974477; ElementId elementId = default(ElementId); while (true) { int num2 = num; int num3 = 1723974478; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 5: num = 1723974477; break; case 1: num = ((!(elementId != null)) ? 1723974476 : 1723974478); break; case 0: list.Add(elementId); num = 1723974477; break; case 3: num = (_206A_202C_206C_202A_202C_206E_206C_202D_200B_200B_202D_202C_200B_200E_200E_202E_206D_202D_206A_202E_206E_206A_202B_206C_202C_202D_206D_206C_200D_206D_200B_200C_202A_206D_206C_206B_200E_200E_200C_206A_202E((IEnumerator?)enumerator) ? 1723974474 : 1723974472); break; case 2: skippedCount++; num = 1723974477; break; case 4: num = ((!TryFromString(enumerator.Current, out elementId)) ? 1723974476 : 1723974479); break; case 6: return list; } } } finally { int num = ((enumerator == null) ? (-1730205036) : (-1730205035)); while (true) { int num7 = num; int num3 = -1730205036; int num4 = num7; switch ((num4 | num3) - (num4 & num3)) { case 2: num = -1730205035; break; case 1: _202C_202B_206B_206D_206B_206E_200B_206B_202E_202D_206A_206C_202E_206D_206C_202D_206B_206B_202B_200F_206F_206C_200F_200F_200D_206E_202E_200F_206B_200C_200F_200E_206D_202B_200F_200D_200C_206D_202C_202D_202E((IDisposable?)enumerator); num = -1730205036; break; case 0: goto end_IL_0112; } continue; end_IL_0112: break; } } } public static bool TryFromString(string value, out ElementId? elementId) { try { elementId = FromString(value); return true; } catch (Exception) { elementId = null; return false; } } public abstract override string ToString(); static Type? _202C_206B_200C_206A_206E_202B_200E_200D_206A_206F_202E_206F_206C_206D_200C_200C_206A_200F_202B_202C_202A_200C_202B_202A_206F_206B_200D_200E_206C_206E_206D_206B_200C_206E_200D_200E_200D_206C_206F_206A_202E(object? P_0) { return P_0.GetType(); } static Type? _202E_202E_200B_202E_202A_202C_206B_202C_200D_200C_206E_206C_206E_200E_206C_202B_206C_200C_202D_202A_200C_200F_200C_200E_206C_200D_200B_206E_206A_200D_206B_206B_206E_202D_202B_202D_200F_200D_202B_202D_202E(object? P_0) { return P_0.GetType(); } static bool _200C_200B_200B_202C_206F_206A_206E_206A_206F_202A_200F_202B_200D_206C_206D_206B_206D_206C_202B_202A_202C_206C_206D_206A_206B_200C_206B_200D_206E_200F_206A_202D_206A_202D_202E_200E_200B_200E_206D_202D_202E(Type? P_0, Type? P_1) { return P_0 != P_1; } static bool _206F_202B_202B_200B_200C_200E_206F_206B_206A_206D_202B_206E_206C_200B_202B_200D_202C_206A_200F_206F_200D_206A_200E_206B_200F_206F_206E_200B_206C_202D_202A_202E_206F_202B_206A_206E_200F_206A_206C_206D_202E(object? P_0, object? P_1) { return object.Equals(P_0, P_1); } static bool _200B_202C_206E_200D_200E_202D_200E_206E_200B_200F_206B_200E_206B_200E_202C_200F_200F_202A_200B_206C_200F_202C_200E_202D_202B_206E_206F_206E_200D_202E_200F_206B_206B_202A_200E_200E_200B_202A_202D_206B_202E(string? P_0, string? P_1) { return P_0.StartsWith(P_1); } static string? _206E_206D_202D_202E_200E_200D_206B_200D_200B_202A_200E_206A_206B_202A_206F_202E_206C_206D_200B_206B_206A_206F_202D_206B_202C_206D_206D_202D_206E_206B_206A_200D_200B_206B_206F_202B_206A_206C_206A_200F_202E(string? P_0, int P_1) { return P_0.Substring(P_1); } static CultureInfo? _206F_200B_206F_206A_206C_202D_200C_206F_200C_206E_202A_202C_206A_206B_206E_202B_206F_206F_200B_200C_202E_200C_202A_200B_200B_202A_202C_206D_202A_206F_200D_200C_202A_206F_200D_202D_206B_202E() { return CultureInfo.InvariantCulture; } static bool _206A_202C_206C_202A_202C_206E_206C_202D_200B_200B_202D_202C_200B_200E_200E_202E_206D_202D_206A_202E_206E_206A_202B_206C_202C_202D_206D_206C_200D_206D_200B_200C_202A_206D_206C_206B_200E_200E_200C_206A_202E(IEnumerator? P_0) { return P_0.MoveNext(); } static void _202C_202B_206B_206D_206B_206E_200B_206B_202E_202D_206A_206C_202E_206D_206C_202D_206B_206B_202B_200F_206F_206C_200F_200F_200D_206E_202E_200F_206B_200C_200F_200E_206D_202B_200F_200D_200C_206D_202C_202D_202E(IDisposable? P_0) { P_0.Dispose(); } }