Decompiled source of PlantholderOverhaul v0.1.9

plugins/Murka124.PlantholderOverhaul.dll

Decompiled a day ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using System.Text;
using BepInEx;
using BepInEx.Configuration;
using BepInEx.Logging;
using ExitGames.Client.Photon;
using HarmonyLib;
using Microsoft.CodeAnalysis;
using Newtonsoft.Json;
using Peak;
using Peak.Island;
using Photon.Pun;
using Photon.Realtime;
using PlantholderOverhaul;
using PlantholderOverhaul.InGameUI;
using Portningsbolaget;
using Sirenix.Utilities;
using TMPro;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using Zorro.Core;
using Zorro.Core.Editor;
using pworld.Scripts.Extensions;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: IgnoresAccessChecksTo("Assembly-CSharp")]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("Murka124.PlantholderOverhaul")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("0.1.9.0")]
[assembly: AssemblyInformationalVersion("0.1.9+419d3b36e969d6380496152342c8d964a075e6df")]
[assembly: AssemblyProduct("Murka124.PlantholderOverhaul")]
[assembly: AssemblyTitle("Plantholder Overhaul")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.1.9.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableAttribute : Attribute
	{
		public readonly byte[] NullableFlags;

		public NullableAttribute(byte P_0)
		{
			NullableFlags = new byte[1] { P_0 };
		}

		public NullableAttribute(byte[] P_0)
		{
			NullableFlags = P_0;
		}
	}
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableContextAttribute : Attribute
	{
		public readonly byte Flag;

		public NullableContextAttribute(byte P_0)
		{
			Flag = P_0;
		}
	}
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
public static class MenuBuilder
{
	public static GameObject CreatePage(GameObject menu, string pageName, UnityAction<MenuPage>? onUpdate = null)
	{
		//IL_000e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0014: Expected O, but got Unknown
		//IL_002c: Unknown result type (might be due to invalid IL or missing references)
		//IL_003c: Unknown result type (might be due to invalid IL or missing references)
		//IL_004c: Unknown result type (might be due to invalid IL or missing references)
		//IL_007c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0086: Expected O, but got Unknown
		GameObject val = new GameObject(pageName);
		val.transform.SetParent(menu.transform, false);
		val.transform.localPosition = Vector3.zero;
		val.transform.localRotation = Quaternion.identity;
		val.transform.localScale = Vector3.one;
		MenuPage menupage = val.AddComponent<MenuPage>();
		if (onUpdate != null)
		{
			menupage.onUpdate.AddListener((UnityAction)delegate
			{
				onUpdate.Invoke(menupage);
			});
		}
		val.SetActive(false);
		return val;
	}

	public static MenuButton CreateButton(GameObject page, string buttonName, Vector3 localPos, Vector3 size, Color color, Action<MenuButton>? onCreated = null)
	{
		//IL_0026: Unknown result type (might be due to invalid IL or missing references)
		//IL_0032: Unknown result type (might be due to invalid IL or missing references)
		//IL_0042: Unknown result type (might be due to invalid IL or missing references)
		//IL_0065: Unknown result type (might be due to invalid IL or missing references)
		//IL_006f: Expected O, but got Unknown
		//IL_0075: Unknown result type (might be due to invalid IL or missing references)
		GameObject val = GameObject.CreatePrimitive((PrimitiveType)3);
		((Object)val).name = buttonName;
		val.transform.SetParent(page.transform, false);
		val.transform.localPosition = localPos;
		val.transform.localRotation = Quaternion.identity;
		val.transform.localScale = size;
		Object.DestroyImmediate((Object)(object)val.GetComponent<Collider>());
		Renderer component = val.GetComponent<Renderer>();
		component.material = new Material(Shader.Find("Universal Render Pipeline/Lit"));
		component.material.color = color;
		if (!MenuManager.debugRender)
		{
			Object.Destroy((Object)(object)component);
		}
		MenuButton menuButton = val.AddComponent<MenuButton>();
		onCreated?.Invoke(menuButton);
		return menuButton;
	}

	public static MenuText CreateText(GameObject page, string textName, Vector3 localPos, string content, Color color, TextAlignmentOptions alignment, float fontSize = 10f, float scale = 0.1f)
	{
		//IL_0002: Unknown result type (might be due to invalid IL or missing references)
		//IL_0003: Unknown result type (might be due to invalid IL or missing references)
		//IL_000a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0010: Unknown result type (might be due to invalid IL or missing references)
		//IL_0012: Unknown result type (might be due to invalid IL or missing references)
		return CreateText(page, textName, localPos, Vector3.one * scale, content, color, alignment, fontSize);
	}

	public static MenuText CreateText(GameObject page, string textName, Vector3 localPos, Vector3 size, string content, Color color, TextAlignmentOptions alignment, float fontSize = 10f)
	{
		//IL_0001: Unknown result type (might be due to invalid IL or missing references)
		//IL_0007: Expected O, but got Unknown
		//IL_001f: Unknown result type (might be due to invalid IL or missing references)
		//IL_002b: Unknown result type (might be due to invalid IL or missing references)
		//IL_003b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0051: Unknown result type (might be due to invalid IL or missing references)
		//IL_0059: Unknown result type (might be due to invalid IL or missing references)
		GameObject val = new GameObject(textName);
		val.transform.SetParent(page.transform, false);
		val.transform.localPosition = localPos;
		val.transform.localRotation = Quaternion.identity;
		val.transform.localScale = size;
		TextMeshPro val2 = val.AddComponent<TextMeshPro>();
		((TMP_Text)val2).text = content;
		((Graphic)val2).color = color;
		((TMP_Text)val2).alignment = alignment;
		((TMP_Text)val2).fontSize = fontSize;
		((TMP_Text)val2).font = Plugin.Font;
		((TMP_Text)val2).outlineWidth = 0.05f;
		((TMP_Text)val2).lineSpacing = -20f;
		((TMP_Text)val2).textWrappingMode = (TextWrappingModes)1;
		MenuText menuText = val.AddComponent<MenuText>();
		MenuText menuText2 = (page.GetComponent<MenuPage>().texts[textName] = menuText);
		MenuText menuText4 = menuText2;
		return menuText;
	}

	public static MenuToggle CreateToggle(GameObject page, string toggleName, Vector3 localPos, Vector3 size, Color offColor, Color onColor, bool defaultValue = false, Action<MenuToggle>? onCreated = null)
	{
		//IL_0026: Unknown result type (might be due to invalid IL or missing references)
		//IL_0032: Unknown result type (might be due to invalid IL or missing references)
		//IL_0042: Unknown result type (might be due to invalid IL or missing references)
		//IL_0065: Unknown result type (might be due to invalid IL or missing references)
		//IL_006f: Expected O, but got Unknown
		//IL_0084: Unknown result type (might be due to invalid IL or missing references)
		//IL_0086: Unknown result type (might be due to invalid IL or missing references)
		//IL_008c: Unknown result type (might be due to invalid IL or missing references)
		//IL_008e: Unknown result type (might be due to invalid IL or missing references)
		GameObject val = GameObject.CreatePrimitive((PrimitiveType)3);
		((Object)val).name = toggleName;
		val.transform.SetParent(page.transform, false);
		val.transform.localPosition = localPos;
		val.transform.localRotation = Quaternion.identity;
		val.transform.localScale = size;
		Object.DestroyImmediate((Object)(object)val.GetComponent<Collider>());
		Renderer component = val.GetComponent<Renderer>();
		component.material = new Material(Shader.Find("Universal Render Pipeline/Lit"));
		if (!MenuManager.debugRender)
		{
			Object.Destroy((Object)(object)component);
		}
		MenuToggle menuToggle = val.AddComponent<MenuToggle>();
		menuToggle.offColor = offColor;
		menuToggle.onColor = onColor;
		menuToggle.isOn = defaultValue;
		menuToggle.UpdateVisual();
		onCreated?.Invoke(menuToggle);
		return menuToggle;
	}
}
public class MenuText : MonoBehaviour
{
	[SerializeField]
	private TextMeshPro? textMesh;

	private void Awake()
	{
		if ((Object)(object)textMesh == (Object)null)
		{
			textMesh = ((Component)this).GetComponent<TextMeshPro>();
		}
	}

	public void SetText(string text)
	{
		if ((Object)(object)textMesh != (Object)null)
		{
			((TMP_Text)textMesh).text = text;
		}
	}

	public void SetAlignment(TextAlignmentOptions alignment)
	{
		//IL_0014: Unknown result type (might be due to invalid IL or missing references)
		if ((Object)(object)textMesh != (Object)null)
		{
			((TMP_Text)textMesh).alignment = alignment;
		}
	}

	public void SetColor(Color color)
	{
		//IL_0014: Unknown result type (might be due to invalid IL or missing references)
		if ((Object)(object)textMesh != (Object)null)
		{
			((Graphic)textMesh).color = color;
		}
	}
}
public class MenuClickableText : MenuButton
{
	[SerializeField]
	private TextMeshPro? textMesh;

	private void Awake()
	{
		if ((Object)(object)textMesh == (Object)null)
		{
			textMesh = ((Component)this).GetComponent<TextMeshPro>();
		}
	}

	public void SetText(string text)
	{
		TextMeshPro? obj = textMesh;
		if (obj != null)
		{
			((TMP_Text)obj).text = text;
		}
	}

	public void SetAlignment(TextAlignmentOptions alignment)
	{
		//IL_000b: Unknown result type (might be due to invalid IL or missing references)
		TextMeshPro? obj = textMesh;
		if (obj != null)
		{
			((TMP_Text)obj).alignment = alignment;
		}
	}

	public void SetColor(Color color)
	{
		//IL_000b: Unknown result type (might be due to invalid IL or missing references)
		TextMeshPro? obj = textMesh;
		if (obj != null)
		{
			((Graphic)obj).color = color;
		}
	}
}
public class MenuToggle : MenuButton
{
	public bool isOn;

	public Color onColor = Color.green;

	public Color offColor = Color.gray;

	public UnityEvent<bool> onToggle = new UnityEvent<bool>();

	private Renderer? targetRenderer;

	private void Start()
	{
		targetRenderer = ((Component)this).GetComponent<Renderer>();
		UpdateVisual();
		onPress?.AddListener((UnityAction<Vector3>)OnToggle);
	}

	private void OnToggle(Vector3 point)
	{
		isOn = !isOn;
		onToggle?.Invoke(isOn);
		UpdateVisual();
	}

	public void UpdateVisual()
	{
		//IL_002a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0022: Unknown result type (might be due to invalid IL or missing references)
		if ((Object)(object)targetRenderer != (Object)null)
		{
			targetRenderer.material.color = (isOn ? onColor : offColor);
		}
	}
}
namespace BepInEx
{
	[AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
	[Conditional("CodeGeneration")]
	internal sealed class BepInAutoPluginAttribute : Attribute
	{
		public BepInAutoPluginAttribute(string? id = null, string? name = null, string? version = null)
		{
		}
	}
}
namespace BepInEx.Preloader.Core.Patching
{
	[AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
	[Conditional("CodeGeneration")]
	internal sealed class PatcherAutoPluginAttribute : Attribute
	{
		public PatcherAutoPluginAttribute(string? id = null, string? name = null, string? version = null)
		{
		}
	}
}
namespace PlantholderOverhaul
{
	internal class AirportPatcher
	{
		public static MenuManager? menu;

		public static GameObject? plantholder_overhaul;

		public static GameObject? plantholder_TR_root;

		public static GameObject? plantholder_AM_root;

		public static GameObject? plantholder_VC_root;

		public static GameObject? plantholder_S_root;

		public static GameObject? plantholder_TR;

		public static GameObject? plantholder_AM;

		public static GameObject? plantholder_VC;

		public static GameObject? plantholder_S;

		public static GameObject? trash_1_4;

		public static GameObject? board;

		public static GameObject? text_TR;

		public static GameObject? text_AM;

		public static GameObject? text_VC;

		public static GameObject? text_S;

		public static Dictionary<string, GameObject> gbs = new Dictionary<string, GameObject>();

		public static bool validated = false;

		public static bool patched = false;

		public static readonly Dictionary<string, string> AVAILABLE_BIOMES = new Dictionary<string, string>
		{
			{ "S", "Shore" },
			{ "T", "Tropics" },
			{ "R", "Roots" },
			{ "A", "Alpine" },
			{ "M", "Mesa" },
			{ "V", "Volcano" },
			{ "C", "Citadel" },
			{ "?", "Unknown" }
		};

		private static readonly string TITLE = global::<PrivateImplementationDetails>.<S>F5DB83F7E68C23FF021AEF28332143D2.s + Plugin.Version;

		private static readonly List<string> alpine_trees = new List<string>(4) { "Ice_DeadTree", "Ice_Pine 1", "Ice_Pine 2", "Ice_Pine 3" };

		private static readonly List<string> alpine_shrubs = new List<string>(3) { "Ice_DeadShrub 1", "Ice_DeadShrub 2", "Ice_DeadShrub 3" };

		private static readonly List<string> mesa_cacti = new List<string>(4) { "Short Cactus", "Short Cactus Variant_Dry", "Tall Cactus", "Tall Cactus Variant_Dry" };

		private static readonly List<string> tropics_palms = new List<string>(3) { "Jungle_PalmTree_Crook", "Jungle_PalmTree_Thin", "Jungle_PalmTree_Thick" };

		private static readonly List<string> tropics_willows = new List<string>(4) { "Jungle_Willow_Big", "Jungle_Willow_Medium", "Jungle_Willow_Small", "Jungle_Willow_Tall" };

		private static readonly List<string> tropics_sporeshrooms = new List<string>(2) { "Jungle_SporeMushroom", "Jungle_SporeMushroomExplo" };

		private static readonly List<string> tropics_thorns = new List<string>(2) { "Jungle_Thorns", "Jungle_Thorns_Nice" };

		private static readonly List<string> tropics_vegetation = new List<string>(6) { "Jungle_Monstera", "Jungle_Monstera_Thick", "Jungle_Aleo", "Jungle_PoisonIvy", "Jungle_SharpPlant", "Jungle_MiniBanana" };

		private static readonly List<string> roots_trees_n_trunks = new List<string>(4) { "Redwood", "Redwood Massive", "Redwood Trunk", "Redwood Trunk Holow" };

		private static readonly List<string> roots_trunks = new List<string>(2) { "Redwood Trunk", "Redwood Trunk Holow" };

		private static readonly List<string> roots_vegetation = new List<string>(2) { "Fern", "Fern Old" };

		private static readonly List<string> roots_mushrooms = new List<string>(4) { "Mushroom tree Round Variant", "Mushroom tree Dome Variant", "Mushroom tree Flat", "Mushroom tree Flat tall" };

		private static readonly List<string> roots_mushrooms_and_evil = new List<string>(6) { "Mushroom tree Dome Variant", "Mushroom tree Flat", "Mushroom tree Flat tall", "Mushroom tree Dome Evil Variant", "Mushroom tree Flat_Evil Variant", "Mushroom tree Flat tall_Evil Variant" };

		public static void OnSceneLoad(Scene scene, LoadSceneMode mode)
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0069: Expected O, but got Unknown
			//IL_00a7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d3: Unknown result type (might be due to invalid IL or missing references)
			menu = null;
			plantholder_TR_root = null;
			plantholder_AM_root = null;
			plantholder_VC_root = null;
			plantholder_S_root = null;
			plantholder_TR = null;
			plantholder_AM = null;
			plantholder_VC = null;
			plantholder_S = null;
			trash_1_4 = null;
			board = null;
			text_TR = null;
			text_AM = null;
			text_VC = null;
			text_S = null;
			plantholder_overhaul = new GameObject("Plantholder Overhaul");
			validated = false;
			patched = false;
			gbs.Clear();
			Plugin.DestroySpawnedInstances();
			if (!(((Scene)(ref scene)).name != "Airport"))
			{
				Plugin.Log.LogInfo((object)"Validating Airport...");
				validated = ValidateAirport(scene);
				if (!validated)
				{
					throw new Exception("Can't validate the Airport: the mod is outdated or there is a mod that changes airport!");
				}
				Plugin.Log.LogInfo((object)"Patching Airport...");
				patched = PatchAirport(scene);
				if (!patched)
				{
					Plugin.DestroySpawnedInstances();
					throw new Exception("Can't patch the Airport: something is broken");
				}
				Plugin.Log.LogInfo((object)"Creating menu...");
				CreateMenu();
				string todaysMap = Plugin.GetTodaysMap();
				Plugin.Log.LogInfo((object)("Switching biomes to " + todaysMap + "..."));
				SwitchBiomes(todaysMap);
				Plugin.Log.LogInfo((object)"Done.");
			}
		}

		public static void CreateMenu()
		{
			//IL_0013: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: Expected O, but got Unknown
			//IL_0090: Unknown result type (might be due to invalid IL or missing references)
			//IL_009a: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_013b: Unknown result type (might be due to invalid IL or missing references)
			//IL_014f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0154: Unknown result type (might be due to invalid IL or missing references)
			//IL_0193: Unknown result type (might be due to invalid IL or missing references)
			//IL_019d: Unknown result type (might be due to invalid IL or missing references)
			//IL_01cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_01e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_01e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0224: Unknown result type (might be due to invalid IL or missing references)
			//IL_022e: Unknown result type (might be due to invalid IL or missing references)
			//IL_025d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0271: Unknown result type (might be due to invalid IL or missing references)
			//IL_0276: Unknown result type (might be due to invalid IL or missing references)
			//IL_02e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_02ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_0319: Unknown result type (might be due to invalid IL or missing references)
			//IL_0323: Unknown result type (might be due to invalid IL or missing references)
			//IL_0352: Unknown result type (might be due to invalid IL or missing references)
			//IL_0366: Unknown result type (might be due to invalid IL or missing references)
			//IL_036b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0370: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_03e9: Unknown result type (might be due to invalid IL or missing references)
			//IL_03fd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0402: Unknown result type (might be due to invalid IL or missing references)
			//IL_0441: Unknown result type (might be due to invalid IL or missing references)
			//IL_044b: Unknown result type (might be due to invalid IL or missing references)
			//IL_047a: Unknown result type (might be due to invalid IL or missing references)
			//IL_048e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0493: Unknown result type (might be due to invalid IL or missing references)
			//IL_04d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_04dc: Unknown result type (might be due to invalid IL or missing references)
			//IL_050b: Unknown result type (might be due to invalid IL or missing references)
			//IL_051f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0524: Unknown result type (might be due to invalid IL or missing references)
			//IL_0563: Unknown result type (might be due to invalid IL or missing references)
			//IL_0582: Unknown result type (might be due to invalid IL or missing references)
			if ((Object)(object)plantholder_overhaul == (Object)null)
			{
				return;
			}
			GameObject val = new GameObject("Menu");
			val.transform.parent = plantholder_overhaul.transform;
			menu = val.AddComponent<MenuManager>();
			MenuManagerHelper.currentLevel = Plugin.GetTodaysMapIndex() % SingletonAsset<MapBaker>.Instance.ScenePaths.Length;
			GameObject page = MenuBuilder.CreatePage(val, "MainPage", delegate(MenuPage menuPage)
			{
				string text = "";
				string text2 = Plugin.GetAllMaps()[MenuManagerHelper.currentLevel];
				text = text + Plugin.GetText("UI_TODAYS_MAP") + ": " + Plugin.GetTodaysMap() + ", ";
				text = text + Plugin.GetText("UI_DISPLAYED_MAP") + ": " + text2 + "\n";
				MapsInfo mapsInfo = Plugin.maps_data.GameVersions[Plugin.GetGameVersion()];
				MapInfo mapInfo = null;
				if (mapsInfo.Maps.ContainsKey(text2))
				{
					mapInfo = mapsInfo.Maps[text2];
				}
				bool flag = false;
				if (mapInfo == null)
				{
					mapInfo = new MapInfo(Plugin.GetMapsBiomes(text2));
					flag = true;
				}
				string text3 = "";
				string text4 = "";
				string text5 = "";
				string text6 = "";
				bool flag2 = false;
				if (mapInfo.BiomeString.Contains("S"))
				{
					text3 = FormatBiomeText(GetBiomeTexts("Shore", "ffee60", "ccbf4e", mapInfo), ": ");
				}
				if (mapInfo.BiomeString.Contains("T"))
				{
					text4 = FormatBiomeText(GetBiomeTexts("Tropics", "008040", "006633", mapInfo), ": ");
				}
				if (mapInfo.BiomeString.Contains("R"))
				{
					text4 = FormatBiomeText(GetBiomeTexts("Roots", "66cc00", "4d9900", mapInfo), ": ");
				}
				if (mapInfo.BiomeString.Contains("A"))
				{
					text5 = FormatBiomeText(GetBiomeTexts("Alpine", "4de1ff", "33ddff", mapInfo), ": ");
				}
				if (mapInfo.BiomeString.Contains("M"))
				{
					text5 = FormatBiomeText(GetBiomeTexts("Mesa", "b38600", "997300", mapInfo, showtomb: false), ": ");
					flag2 = true;
				}
				if (mapInfo.BiomeString.Contains("V"))
				{
					text6 = FormatBiomeText(GetBiomeTexts("Volcano", "ff6640", "737373", mapInfo, showtomb: false, showvariant: false), "");
				}
				if (mapInfo.BiomeString.Contains("C"))
				{
					text6 = FormatBiomeText(GetBiomeTexts("Citadel", "a37ab8", "737373", mapInfo, showtomb: false, showvariant: false), "");
				}
				if (mapInfo.BiomeString.Contains("?"))
				{
					text6 = FormatBiomeText(GetBiomeTexts("Unknown", "ff00ff", "bf00bf", mapInfo), ": ");
				}
				if (flag2 && !flag)
				{
					text5 = text5 + "\n" + Plugin.GetText("MESA_TOMB") + " " + (mapInfo.Mesa_IsTombOpen ? ("<#7fff22>" + Plugin.GetText("MESA_TOMB_OPEN")) : ("<#ff7f22>" + Plugin.GetText("MESA_TOMB_CLOSED"))) + "</color>";
				}
				text = text + text3 + "\n" + text4 + "\n" + text5 + "\n" + text6;
				if (flag)
				{
					text = text + "\n<#ffff22>" + Plugin.GetText("UI_VISIT_LEVEL") + "</color>\n";
				}
				menuPage.texts["sInfo"]?.SetText(text);
				menuPage.texts["sSettings"]?.SetText("[" + Plugin.GetText("UI_SETTINGS") + "]");
				menuPage.texts["sPrev"]?.SetText("[" + Plugin.GetText("UI_PREV") + "]");
				menuPage.texts["sNext"]?.SetText("[" + Plugin.GetText("UI_NEXT") + "]");
			});
			MenuBuilder.CreateText(page, "sTitle", new Vector3(0f, 0f, 0f), TITLE, Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateText(page, "sInfo", new Vector3(0f, -2.1f, 0f), "Current map: idk", Color.white, (TextAlignmentOptions)257, 50f, 0.039f);
			MenuBuilder.CreateText(page, "sSettings", new Vector3(-1.33f, -2.1f, 0f), "[Settings?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page, "bSettings", new Vector3(-1.33f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.blue, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					menu.ShowPage("SettingsPage");
				});
			});
			MenuBuilder.CreateText(page, "sPrev", new Vector3(0f, -2.1f, 0f), "[LevelPrev?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page, "bPrev", new Vector3(0f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.green, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					TurnThePage(-1);
				});
			});
			MenuBuilder.CreateText(page, "sNext", new Vector3(1.33f, -2.1f, 0f), "[LevelNext?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page, "bNext", new Vector3(1.33f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.red, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					TurnThePage(1);
				});
			});
			GameObject page2 = MenuBuilder.CreatePage(val, "SettingsPage", delegate(MenuPage menuPage)
			{
				string text = "";
				string text2 = MenuManagerHelper.settings[MenuManagerHelper.currentSetting];
				ConfigEntry<bool> val2 = MenuManagerHelper.configs[MenuManagerHelper.currentSetting];
				if (val2 != null)
				{
					bool flag = MenuManagerHelper.settingRequiresRestart[MenuManagerHelper.currentSetting];
					text = text + Plugin.GetText("UI_SETTING_" + text2) + "\n";
					text = text + "<#999999>" + Plugin.GetText("UI_DESC_" + text2) + "</color>\n";
					text = text + Plugin.GetText("UI_VALUE") + ": " + (val2.Value ? ("<#7fff22>" + Plugin.GetText("UI_ENABLED")) : ("<#ff7f22>" + Plugin.GetText("UI_DISABLED"))) + "</color>\n";
					if (flag)
					{
						text = text + "<#ffff22>" + Plugin.GetText("UI_REQUIRES_RESTART") + "</color>\n";
					}
					menuPage.texts["sTitle"]?.SetText(string.Format("{0}: {1} {2}/{3}\n", TITLE, Plugin.GetText("UI_SETTINGS"), MenuManagerHelper.currentSetting + 1, MenuManagerHelper.settings.Length));
					menuPage.texts["sConfigInfo"]?.SetText(text);
					menuPage.texts["sBack"]?.SetText("[" + Plugin.GetText("UI_BACK") + "]");
					menuPage.texts["sPrev"]?.SetText("[" + Plugin.GetText("UI_PREV") + "]");
					menuPage.texts["sNext"]?.SetText("[" + Plugin.GetText("UI_NEXT") + "]");
				}
			});
			MenuBuilder.CreateText(page2, "sTitle", new Vector3(0f, 0f, 0f), "Plantholder overhaul: Settings", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateText(page2, "sConfigInfo", new Vector3(0f, -2.1f, 0f), "localization issue", Color.white, (TextAlignmentOptions)257, 40f, 0.039f);
			MenuBuilder.CreateToggle(page2, "tFeatureToggle", new Vector3(0f, -0.75f, 0f), new Vector3(4f, 2f, 0.2f), Color.gray, Color.green, defaultValue: false, delegate(MenuToggle tgl)
			{
				tgl.onToggle.AddListener((UnityAction<bool>)delegate
				{
					ConfigEntry<bool> val2 = MenuManagerHelper.configs[MenuManagerHelper.currentSetting];
					if (val2 != null)
					{
						val2.Value = !val2.Value;
					}
					MenuManagerHelper.lastUpdate = 0f;
				});
			});
			MenuBuilder.CreateText(page2, "sBack", new Vector3(-1.33f, -2.1f, 0f), "[MenuBack?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page2, "bBack", new Vector3(-1.33f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.gray, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					menu.ShowPage("MainPage");
				});
			});
			MenuBuilder.CreateText(page2, "sPrev", new Vector3(0f, -2.1f, 0f), "[SettingPrev?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page2, "bSettingPrev", new Vector3(0f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.yellow, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					MenuManagerHelper.currentSetting--;
					if (MenuManagerHelper.currentSetting < 0)
					{
						MenuManagerHelper.currentSetting = MenuManagerHelper.settings.Length - 1;
					}
					MenuManagerHelper.lastUpdate = 0f;
				});
			});
			MenuBuilder.CreateText(page2, "sNext", new Vector3(1.33f, -2.1f, 0f), "[SettingNext?]", Color.white, (TextAlignmentOptions)514, 20f);
			MenuBuilder.CreateButton(page2, "bSettingNext", new Vector3(1.33f, -2f, 0f), new Vector3(1.33f, 0.5f, 0.2f), Color.magenta, delegate(MenuButton btn)
			{
				btn.onPress.AddListener((UnityAction<Vector3>)delegate
				{
					MenuManagerHelper.currentSetting++;
					if (MenuManagerHelper.currentSetting > MenuManagerHelper.settings.Length - 1)
					{
						MenuManagerHelper.currentSetting = 0;
					}
					MenuManagerHelper.lastUpdate = 0f;
				});
			});
			val.transform.eulerAngles = new Vector3(0f, 270f, 0f);
			val.transform.position = new Vector3(-21.52f, 4.375f, 73.84f);
		}

		public static void TurnThePage(int amount, bool force = false)
		{
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: Unknown result type (might be due to invalid IL or missing references)
			//IL_0065: Unknown result type (might be due to invalid IL or missing references)
			//IL_006a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0074: Expected O, but got Unknown
			object[] array = new object[3] { "Murka124.PlantholderOverhaul", "TurnThePage", amount };
			if (!force)
			{
				ConfigEntry<bool>? cfg_syncMap = Plugin.cfg_syncMap;
				if (cfg_syncMap != null && cfg_syncMap.Value && !PhotonNetwork.LocalPlayer.IsMasterClient && ((Dictionary<object, object>)(object)PhotonNetwork.MasterClient.CustomProperties).ContainsKey((object)"PlantholderOverhaul"))
				{
					PhotonNetwork.RaiseEvent((byte)199, (object)array, new RaiseEventOptions
					{
						Receivers = (ReceiverGroup)2
					}, SendOptions.SendReliable);
					return;
				}
			}
			MenuManagerHelper.currentLevel += amount;
			if (MenuManagerHelper.currentLevel < 0)
			{
				MenuManagerHelper.currentLevel = Plugin.GetAllMaps().Length - 1;
			}
			else if (MenuManagerHelper.currentLevel > Plugin.GetAllMaps().Length - 1)
			{
				MenuManagerHelper.currentLevel = 0;
			}
			SwitchBiomes(Plugin.GetAllMaps()[MenuManagerHelper.currentLevel]);
			MenuManagerHelper.lastUpdate = 0f - MenuManagerHelper.updateTreshold;
		}

		public static void EventCallback(EventData ed)
		{
			if (ed == null || ed.Code != 199 || !(ed.CustomData is object[] array))
			{
				return;
			}
			string text = (string)array[1];
			if ((string)array[0] != "Murka124.PlantholderOverhaul")
			{
				return;
			}
			if (text == "TurnThePage")
			{
				if (PhotonNetwork.LocalPlayer.IsMasterClient)
				{
					ConfigEntry<bool>? cfg_allowInteractOthers = Plugin.cfg_allowInteractOthers;
					if (cfg_allowInteractOthers != null && cfg_allowInteractOthers.Value)
					{
						goto IL_007d;
					}
				}
				if (ed.Sender != PhotonNetwork.MasterClient.ActorNumber)
				{
					return;
				}
				goto IL_007d;
			}
			if (text == "IAmOnThePage" && ed.Sender == PhotonNetwork.MasterClient.ActorNumber)
			{
				ConfigEntry<bool>? cfg_syncMap = Plugin.cfg_syncMap;
				if ((cfg_syncMap == null || cfg_syncMap.Value) && MenuManagerHelper.currentLevel != (int)array[2])
				{
					MenuManagerHelper.currentLevel = (int)array[2];
					TurnThePage(0, force: true);
				}
			}
			return;
			IL_007d:
			TurnThePage((int)array[2], force: true);
		}

		public static bool ValidateAirport(Scene scene)
		{
			if (((Scene)(ref scene)).name != "Airport")
			{
				return false;
			}
			int num = 0;
			GameObject[] rootGameObjects = ((Scene)(ref scene)).GetRootGameObjects();
			foreach (GameObject val in rootGameObjects)
			{
				if (((Object)val).name == "Map")
				{
					num++;
					foreach (GameObject item in ExtTransform.PGetChildGameObjects(val))
					{
						if (((Object)item).name == "BL_Airport")
						{
							num++;
							foreach (GameObject item2 in ExtTransform.PGetChildGameObjects(item))
							{
								if (((Object)item2).name == "Vegetation")
								{
									num++;
									foreach (GameObject item3 in ExtTransform.PGetChildGameObjects(item2))
									{
										if (((Object)item3).name == "Curved Planter")
										{
											num++;
											plantholder_AM_root = item3;
											foreach (GameObject item4 in ExtTransform.PGetChildGameObjects(item3))
											{
												if (((Object)item4).name == "Desert Tree")
												{
													num++;
												}
											}
										}
										if (((Object)item3).name == "Curved Planter (1)")
										{
											num++;
											plantholder_TR_root = item3;
											foreach (GameObject item5 in ExtTransform.PGetChildGameObjects(item3))
											{
												if (((Object)item5).name == "CurvedPlanter-Roots")
												{
													num++;
												}
											}
										}
										if (((Object)item3).name == "Planter")
										{
											num++;
											plantholder_VC_root = item3;
										}
										if (((Object)item3).name == "Planter (2)")
										{
											num++;
											plantholder_S_root = item3;
										}
									}
								}
								else
								{
									if (!(((Object)item2).name == "Misc"))
									{
										continue;
									}
									num++;
									foreach (GameObject item6 in ExtTransform.PGetChildGameObjects(item2))
									{
										if (((Object)item6).name == "Trash 1 (4)")
										{
											num++;
											trash_1_4 = item6;
										}
									}
								}
							}
						}
						else if (((Object)item).name == "Flight Board (2)")
						{
							board = item;
							num++;
						}
					}
				}
				else if (((Object)val).name == "Desert_Rock 9")
				{
					num++;
				}
			}
			if (num != 13)
			{
				return false;
			}
			if ((Object)(object)plantholder_AM_root == (Object)null || (Object)(object)plantholder_TR_root == (Object)null || (Object)(object)plantholder_VC_root == (Object)null || (Object)(object)plantholder_S_root == (Object)null)
			{
				return false;
			}
			return true;
		}

		public static bool PatchAirport(Scene scene)
		{
			//IL_012b: Unknown result type (might be due to invalid IL or missing references)
			//IL_016c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0197: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0203: Unknown result type (might be due to invalid IL or missing references)
			//IL_0244: Unknown result type (might be due to invalid IL or missing references)
			//IL_026f: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0568: Unknown result type (might be due to invalid IL or missing references)
			//IL_0572: Expected O, but got Unknown
			//IL_05a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_05ae: Expected O, but got Unknown
			//IL_0603: Unknown result type (might be due to invalid IL or missing references)
			//IL_0617: Unknown result type (might be due to invalid IL or missing references)
			//IL_063b: Unknown result type (might be due to invalid IL or missing references)
			//IL_064f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0673: Unknown result type (might be due to invalid IL or missing references)
			//IL_0687: Unknown result type (might be due to invalid IL or missing references)
			//IL_06ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_06bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_06e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_06f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0792: Unknown result type (might be due to invalid IL or missing references)
			//IL_07a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_07de: Unknown result type (might be due to invalid IL or missing references)
			//IL_0802: Unknown result type (might be due to invalid IL or missing references)
			//IL_081d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0841: Unknown result type (might be due to invalid IL or missing references)
			//IL_085c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0880: Unknown result type (might be due to invalid IL or missing references)
			//IL_089b: Unknown result type (might be due to invalid IL or missing references)
			//IL_08bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_08da: Unknown result type (might be due to invalid IL or missing references)
			//IL_08fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0912: Unknown result type (might be due to invalid IL or missing references)
			//IL_0941: Unknown result type (might be due to invalid IL or missing references)
			//IL_0955: Unknown result type (might be due to invalid IL or missing references)
			//IL_0984: Unknown result type (might be due to invalid IL or missing references)
			//IL_0998: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a33: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a47: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a6b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a7f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aaa: Unknown result type (might be due to invalid IL or missing references)
			//IL_0abe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ae7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0afb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b24: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b38: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b68: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ba5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bb9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0be2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bf6: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c1f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c33: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c5c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c70: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c99: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cad: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cde: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cf2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d1b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d2f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d54: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d5e: Expected O, but got Unknown
			//IL_0db3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dc7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0deb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dff: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e23: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e37: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e5b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e6f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e8e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e98: Expected O, but got Unknown
			//IL_0eed: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f01: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f25: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f39: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f5d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f71: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f95: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fa9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fcd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fe1: Unknown result type (might be due to invalid IL or missing references)
			//IL_1005: Unknown result type (might be due to invalid IL or missing references)
			//IL_1019: Unknown result type (might be due to invalid IL or missing references)
			//IL_103d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1051: Unknown result type (might be due to invalid IL or missing references)
			//IL_1075: Unknown result type (might be due to invalid IL or missing references)
			//IL_1089: Unknown result type (might be due to invalid IL or missing references)
			//IL_10ad: Unknown result type (might be due to invalid IL or missing references)
			//IL_10c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_10e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_10f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_111d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1131: Unknown result type (might be due to invalid IL or missing references)
			//IL_1155: Unknown result type (might be due to invalid IL or missing references)
			//IL_1169: Unknown result type (might be due to invalid IL or missing references)
			//IL_1188: Unknown result type (might be due to invalid IL or missing references)
			//IL_1192: Expected O, but got Unknown
			//IL_11e9: Unknown result type (might be due to invalid IL or missing references)
			//IL_11fd: Unknown result type (might be due to invalid IL or missing references)
			//IL_1227: Unknown result type (might be due to invalid IL or missing references)
			//IL_123b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1263: Unknown result type (might be due to invalid IL or missing references)
			//IL_1277: Unknown result type (might be due to invalid IL or missing references)
			//IL_1296: Unknown result type (might be due to invalid IL or missing references)
			//IL_12a0: Expected O, but got Unknown
			//IL_12f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_130b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1335: Unknown result type (might be due to invalid IL or missing references)
			//IL_1349: Unknown result type (might be due to invalid IL or missing references)
			//IL_1373: Unknown result type (might be due to invalid IL or missing references)
			//IL_1387: Unknown result type (might be due to invalid IL or missing references)
			//IL_13b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_13c5: Unknown result type (might be due to invalid IL or missing references)
			//IL_13ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_1403: Unknown result type (might be due to invalid IL or missing references)
			//IL_142d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1441: Unknown result type (might be due to invalid IL or missing references)
			//IL_146b: Unknown result type (might be due to invalid IL or missing references)
			//IL_147f: Unknown result type (might be due to invalid IL or missing references)
			//IL_14a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_14bd: Unknown result type (might be due to invalid IL or missing references)
			//IL_14e7: Unknown result type (might be due to invalid IL or missing references)
			//IL_14fb: Unknown result type (might be due to invalid IL or missing references)
			//IL_1663: Unknown result type (might be due to invalid IL or missing references)
			//IL_166d: Expected O, but got Unknown
			//IL_169f: Unknown result type (might be due to invalid IL or missing references)
			//IL_16a9: Expected O, but got Unknown
			//IL_16e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_16ef: Expected O, but got Unknown
			//IL_1744: Unknown result type (might be due to invalid IL or missing references)
			//IL_1758: Unknown result type (might be due to invalid IL or missing references)
			//IL_177c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1790: Unknown result type (might be due to invalid IL or missing references)
			//IL_17b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_17c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_17ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_1800: Unknown result type (might be due to invalid IL or missing references)
			//IL_1824: Unknown result type (might be due to invalid IL or missing references)
			//IL_1838: Unknown result type (might be due to invalid IL or missing references)
			//IL_185c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1870: Unknown result type (might be due to invalid IL or missing references)
			//IL_188f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1899: Expected O, but got Unknown
			//IL_18f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_190e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1937: Unknown result type (might be due to invalid IL or missing references)
			//IL_1952: Unknown result type (might be due to invalid IL or missing references)
			//IL_197b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1996: Unknown result type (might be due to invalid IL or missing references)
			//IL_19bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_19da: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a03: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a47: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a62: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1aa6: Unknown result type (might be due to invalid IL or missing references)
			//IL_1acf: Unknown result type (might be due to invalid IL or missing references)
			//IL_1aea: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b13: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b2e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b52: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b66: Unknown result type (might be due to invalid IL or missing references)
			//IL_1bf1: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c0c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c35: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c50: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c79: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c94: Unknown result type (might be due to invalid IL or missing references)
			//IL_1cb3: Unknown result type (might be due to invalid IL or missing references)
			//IL_1cbd: Expected O, but got Unknown
			//IL_1d20: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d3b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d73: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d8e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1dc6: Unknown result type (might be due to invalid IL or missing references)
			//IL_1de1: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e19: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e34: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e6c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e87: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ebf: Unknown result type (might be due to invalid IL or missing references)
			//IL_1eda: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f12: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f2d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f65: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f80: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fb8: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fd3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2005: Unknown result type (might be due to invalid IL or missing references)
			//IL_200f: Expected O, but got Unknown
			//IL_206c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2095: Unknown result type (might be due to invalid IL or missing references)
			//IL_20be: Unknown result type (might be due to invalid IL or missing references)
			//IL_20e7: Unknown result type (might be due to invalid IL or missing references)
			//IL_210f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2119: Expected O, but got Unknown
			//IL_2173: Unknown result type (might be due to invalid IL or missing references)
			//IL_218e: Unknown result type (might be due to invalid IL or missing references)
			//IL_21b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_21d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_21fb: Unknown result type (might be due to invalid IL or missing references)
			//IL_2216: Unknown result type (might be due to invalid IL or missing references)
			//IL_223f: Unknown result type (might be due to invalid IL or missing references)
			//IL_225a: Unknown result type (might be due to invalid IL or missing references)
			//IL_2283: Unknown result type (might be due to invalid IL or missing references)
			//IL_229e: Unknown result type (might be due to invalid IL or missing references)
			//IL_22c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_22e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_230b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2326: Unknown result type (might be due to invalid IL or missing references)
			//IL_234f: Unknown result type (might be due to invalid IL or missing references)
			//IL_236a: Unknown result type (might be due to invalid IL or missing references)
			//IL_2393: Unknown result type (might be due to invalid IL or missing references)
			//IL_23ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_23d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_23f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_241b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2436: Unknown result type (might be due to invalid IL or missing references)
			//IL_245f: Unknown result type (might be due to invalid IL or missing references)
			//IL_247a: Unknown result type (might be due to invalid IL or missing references)
			//IL_24a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_24be: Unknown result type (might be due to invalid IL or missing references)
			//IL_24e7: Unknown result type (might be due to invalid IL or missing references)
			//IL_2502: Unknown result type (might be due to invalid IL or missing references)
			//IL_252b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2546: Unknown result type (might be due to invalid IL or missing references)
			//IL_256f: Unknown result type (might be due to invalid IL or missing references)
			//IL_258a: Unknown result type (might be due to invalid IL or missing references)
			//IL_25a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_25b3: Expected O, but got Unknown
			//IL_25ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_25f9: Expected O, but got Unknown
			//IL_2655: Unknown result type (might be due to invalid IL or missing references)
			//IL_2669: Unknown result type (might be due to invalid IL or missing references)
			//IL_2692: Unknown result type (might be due to invalid IL or missing references)
			//IL_26a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_2712: Unknown result type (might be due to invalid IL or missing references)
			//IL_27b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_27de: Unknown result type (might be due to invalid IL or missing references)
			//IL_27f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_2801: Expected O, but got Unknown
			//IL_2856: Unknown result type (might be due to invalid IL or missing references)
			//IL_286a: Unknown result type (might be due to invalid IL or missing references)
			//IL_288e: Unknown result type (might be due to invalid IL or missing references)
			//IL_28a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_28d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_28f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_2925: Unknown result type (might be due to invalid IL or missing references)
			//IL_2940: Unknown result type (might be due to invalid IL or missing references)
			//IL_2969: Unknown result type (might be due to invalid IL or missing references)
			//IL_2984: Unknown result type (might be due to invalid IL or missing references)
			//IL_29a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_29ad: Expected O, but got Unknown
			//IL_2a08: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a31: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a5f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a88: Unknown result type (might be due to invalid IL or missing references)
			//IL_2aab: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ab5: Expected O, but got Unknown
			//IL_2b12: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b2d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b60: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b7b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bae: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bc9: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bfc: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c17: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c4a: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c65: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c98: Unknown result type (might be due to invalid IL or missing references)
			//IL_2cb3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ce6: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d01: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d34: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d4f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d82: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d9d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2dd0: Unknown result type (might be due to invalid IL or missing references)
			//IL_2deb: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e39: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e6c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e87: Unknown result type (might be due to invalid IL or missing references)
			//IL_2eba: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ed5: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f08: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f23: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f56: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f71: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fa4: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fbf: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ff2: Unknown result type (might be due to invalid IL or missing references)
			//IL_300d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3040: Unknown result type (might be due to invalid IL or missing references)
			//IL_305b: Unknown result type (might be due to invalid IL or missing references)
			//IL_308e: Unknown result type (might be due to invalid IL or missing references)
			//IL_30a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_30dc: Unknown result type (might be due to invalid IL or missing references)
			//IL_30f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_312a: Unknown result type (might be due to invalid IL or missing references)
			//IL_3145: Unknown result type (might be due to invalid IL or missing references)
			//IL_3178: Unknown result type (might be due to invalid IL or missing references)
			//IL_3193: Unknown result type (might be due to invalid IL or missing references)
			//IL_31c6: Unknown result type (might be due to invalid IL or missing references)
			//IL_31e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_3214: Unknown result type (might be due to invalid IL or missing references)
			//IL_322f: Unknown result type (might be due to invalid IL or missing references)
			//IL_3262: Unknown result type (might be due to invalid IL or missing references)
			//IL_327d: Unknown result type (might be due to invalid IL or missing references)
			//IL_32b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_32cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_32fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_3319: Unknown result type (might be due to invalid IL or missing references)
			//IL_334c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3367: Unknown result type (might be due to invalid IL or missing references)
			//IL_339a: Unknown result type (might be due to invalid IL or missing references)
			//IL_33b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_33e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_3403: Unknown result type (might be due to invalid IL or missing references)
			//IL_3436: Unknown result type (might be due to invalid IL or missing references)
			//IL_3451: Unknown result type (might be due to invalid IL or missing references)
			//IL_3484: Unknown result type (might be due to invalid IL or missing references)
			//IL_349f: Unknown result type (might be due to invalid IL or missing references)
			//IL_34d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_34ed: Unknown result type (might be due to invalid IL or missing references)
			//IL_3520: Unknown result type (might be due to invalid IL or missing references)
			//IL_353b: Unknown result type (might be due to invalid IL or missing references)
			//IL_356e: Unknown result type (might be due to invalid IL or missing references)
			//IL_3589: Unknown result type (might be due to invalid IL or missing references)
			//IL_35bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_35d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_360a: Unknown result type (might be due to invalid IL or missing references)
			//IL_3625: Unknown result type (might be due to invalid IL or missing references)
			//IL_3658: Unknown result type (might be due to invalid IL or missing references)
			//IL_3673: Unknown result type (might be due to invalid IL or missing references)
			//IL_36a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_36c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_36f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_370f: Unknown result type (might be due to invalid IL or missing references)
			//IL_3742: Unknown result type (might be due to invalid IL or missing references)
			//IL_375d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3790: Unknown result type (might be due to invalid IL or missing references)
			//IL_37ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_37de: Unknown result type (might be due to invalid IL or missing references)
			//IL_37f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_382c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3847: Unknown result type (might be due to invalid IL or missing references)
			//IL_387a: Unknown result type (might be due to invalid IL or missing references)
			//IL_3895: Unknown result type (might be due to invalid IL or missing references)
			//IL_38c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_38e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_3916: Unknown result type (might be due to invalid IL or missing references)
			//IL_3931: Unknown result type (might be due to invalid IL or missing references)
			//IL_3964: Unknown result type (might be due to invalid IL or missing references)
			//IL_397f: Unknown result type (might be due to invalid IL or missing references)
			//IL_39b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_39cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_3a0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_3a19: Expected O, but got Unknown
			//IL_3a77: Unknown result type (might be due to invalid IL or missing references)
			//IL_3a92: Unknown result type (might be due to invalid IL or missing references)
			//IL_3ac5: Unknown result type (might be due to invalid IL or missing references)
			//IL_3ae0: Unknown result type (might be due to invalid IL or missing references)
			//IL_3b13: Unknown result type (might be due to invalid IL or missing references)
			//IL_3b2e: Unknown result type (might be due to invalid IL or missing references)
			//IL_3b61: Unknown result type (might be due to invalid IL or missing references)
			//IL_3b7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3baf: Unknown result type (might be due to invalid IL or missing references)
			//IL_3bca: Unknown result type (might be due to invalid IL or missing references)
			//IL_3bfd: Unknown result type (might be due to invalid IL or missing references)
			//IL_3c18: Unknown result type (might be due to invalid IL or missing references)
			//IL_3c4b: Unknown result type (might be due to invalid IL or missing references)
			//IL_3c66: Unknown result type (might be due to invalid IL or missing references)
			//IL_3c99: Unknown result type (might be due to invalid IL or missing references)
			//IL_3cb4: Unknown result type (might be due to invalid IL or missing references)
			//IL_3ce7: Unknown result type (might be due to invalid IL or missing references)
			//IL_3d02: Unknown result type (might be due to invalid IL or missing references)
			//IL_3d35: Unknown result type (might be due to invalid IL or missing references)
			//IL_3d50: Unknown result type (might be due to invalid IL or missing references)
			//IL_3d83: Unknown result type (might be due to invalid IL or missing references)
			//IL_3d9e: Unknown result type (might be due to invalid IL or missing references)
			//IL_3de2: Unknown result type (might be due to invalid IL or missing references)
			//IL_3e0b: Unknown result type (might be due to invalid IL or missing references)
			//IL_3e39: Unknown result type (might be due to invalid IL or missing references)
			//IL_3e62: Unknown result type (might be due to invalid IL or missing references)
			//IL_3ebf: Unknown result type (might be due to invalid IL or missing references)
			//IL_3eda: Unknown result type (might be due to invalid IL or missing references)
			//IL_3efe: Unknown result type (might be due to invalid IL or missing references)
			//IL_3f19: Unknown result type (might be due to invalid IL or missing references)
			//IL_3f3d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3f58: Unknown result type (might be due to invalid IL or missing references)
			//IL_3f7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3f97: Unknown result type (might be due to invalid IL or missing references)
			//IL_3fbb: Unknown result type (might be due to invalid IL or missing references)
			//IL_3fd6: Unknown result type (might be due to invalid IL or missing references)
			//IL_3ffa: Unknown result type (might be due to invalid IL or missing references)
			//IL_4015: Unknown result type (might be due to invalid IL or missing references)
			//IL_4039: Unknown result type (might be due to invalid IL or missing references)
			//IL_4054: Unknown result type (might be due to invalid IL or missing references)
			//IL_4078: Unknown result type (might be due to invalid IL or missing references)
			//IL_4093: Unknown result type (might be due to invalid IL or missing references)
			//IL_40b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_40d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_40f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_4111: Unknown result type (might be due to invalid IL or missing references)
			//IL_4135: Unknown result type (might be due to invalid IL or missing references)
			//IL_4150: Unknown result type (might be due to invalid IL or missing references)
			//IL_4174: Unknown result type (might be due to invalid IL or missing references)
			//IL_418f: Unknown result type (might be due to invalid IL or missing references)
			//IL_41b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_41ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_41f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_420d: Unknown result type (might be due to invalid IL or missing references)
			//IL_4231: Unknown result type (might be due to invalid IL or missing references)
			//IL_424c: Unknown result type (might be due to invalid IL or missing references)
			//IL_426b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4275: Expected O, but got Unknown
			//IL_42ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_42de: Unknown result type (might be due to invalid IL or missing references)
			//IL_4302: Unknown result type (might be due to invalid IL or missing references)
			//IL_4316: Unknown result type (might be due to invalid IL or missing references)
			//IL_433a: Unknown result type (might be due to invalid IL or missing references)
			//IL_434e: Unknown result type (might be due to invalid IL or missing references)
			//IL_4372: Unknown result type (might be due to invalid IL or missing references)
			//IL_4386: Unknown result type (might be due to invalid IL or missing references)
			//IL_43aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_43be: Unknown result type (might be due to invalid IL or missing references)
			//IL_43e7: Unknown result type (might be due to invalid IL or missing references)
			//IL_4402: Unknown result type (might be due to invalid IL or missing references)
			//IL_442b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4446: Unknown result type (might be due to invalid IL or missing references)
			//IL_446f: Unknown result type (might be due to invalid IL or missing references)
			//IL_448a: Unknown result type (might be due to invalid IL or missing references)
			//IL_44b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_44ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_44f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_4512: Unknown result type (might be due to invalid IL or missing references)
			//IL_453b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4556: Unknown result type (might be due to invalid IL or missing references)
			//IL_457f: Unknown result type (might be due to invalid IL or missing references)
			//IL_459a: Unknown result type (might be due to invalid IL or missing references)
			//IL_45c3: Unknown result type (might be due to invalid IL or missing references)
			//IL_45de: Unknown result type (might be due to invalid IL or missing references)
			//IL_4607: Unknown result type (might be due to invalid IL or missing references)
			//IL_4622: Unknown result type (might be due to invalid IL or missing references)
			//IL_4733: Unknown result type (might be due to invalid IL or missing references)
			//IL_473d: Expected O, but got Unknown
			//IL_476f: Unknown result type (might be due to invalid IL or missing references)
			//IL_4779: Expected O, but got Unknown
			//IL_47b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_47bf: Expected O, but got Unknown
			//IL_4814: Unknown result type (might be due to invalid IL or missing references)
			//IL_4828: Unknown result type (might be due to invalid IL or missing references)
			//IL_484c: Unknown result type (might be due to invalid IL or missing references)
			//IL_4860: Unknown result type (might be due to invalid IL or missing references)
			//IL_4884: Unknown result type (might be due to invalid IL or missing references)
			//IL_4898: Unknown result type (might be due to invalid IL or missing references)
			//IL_48bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_48d0: Unknown result type (might be due to invalid IL or missing references)
			//IL_48f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_4908: Unknown result type (might be due to invalid IL or missing references)
			//IL_4927: Unknown result type (might be due to invalid IL or missing references)
			//IL_4931: Expected O, but got Unknown
			//IL_4986: Unknown result type (might be due to invalid IL or missing references)
			//IL_499a: Unknown result type (might be due to invalid IL or missing references)
			//IL_49be: Unknown result type (might be due to invalid IL or missing references)
			//IL_49d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_49f1: Unknown result type (might be due to invalid IL or missing references)
			//IL_49fb: Expected O, but got Unknown
			//IL_4a57: Unknown result type (might be due to invalid IL or missing references)
			//IL_4a72: Unknown result type (might be due to invalid IL or missing references)
			//IL_4a9b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ab6: Unknown result type (might be due to invalid IL or missing references)
			//IL_4adf: Unknown result type (might be due to invalid IL or missing references)
			//IL_4afa: Unknown result type (might be due to invalid IL or missing references)
			//IL_4b23: Unknown result type (might be due to invalid IL or missing references)
			//IL_4b3e: Unknown result type (might be due to invalid IL or missing references)
			//IL_4b67: Unknown result type (might be due to invalid IL or missing references)
			//IL_4b82: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ba7: Unknown result type (might be due to invalid IL or missing references)
			//IL_4bb1: Expected O, but got Unknown
			//IL_4c12: Unknown result type (might be due to invalid IL or missing references)
			//IL_4c2d: Unknown result type (might be due to invalid IL or missing references)
			//IL_4c5b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4c76: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ca4: Unknown result type (might be due to invalid IL or missing references)
			//IL_4cbf: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ce4: Unknown result type (might be due to invalid IL or missing references)
			//IL_4cee: Expected O, but got Unknown
			//IL_4d48: Unknown result type (might be due to invalid IL or missing references)
			//IL_4d63: Unknown result type (might be due to invalid IL or missing references)
			//IL_4d96: Unknown result type (might be due to invalid IL or missing references)
			//IL_4db1: Unknown result type (might be due to invalid IL or missing references)
			//IL_4de4: Unknown result type (might be due to invalid IL or missing references)
			//IL_4dff: Unknown result type (might be due to invalid IL or missing references)
			//IL_4e32: Unknown result type (might be due to invalid IL or missing references)
			//IL_4e4d: Unknown result type (might be due to invalid IL or missing references)
			//IL_4e80: Unknown result type (might be due to invalid IL or missing references)
			//IL_4e9b: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ece: Unknown result type (might be due to invalid IL or missing references)
			//IL_4ee9: Unknown result type (might be due to invalid IL or missing references)
			//IL_4f1c: Unknown result type (might be due to invalid IL or missing references)
			//IL_4f37: Unknown result type (might be due to invalid IL or missing references)
			//IL_4f6a: Unknown result type (might be due to invalid IL or missing references)
			//IL_4f85: Unknown result type (might be due to invalid IL or missing references)
			//IL_4fb8: Unknown result type (might be due to invalid IL or missing references)
			//IL_4fd3: Unknown result type (might be due to invalid IL or missing references)
			//IL_5001: Unknown result type (might be due to invalid IL or missing references)
			//IL_5015: Unknown result type (might be due to invalid IL or missing references)
			//IL_5039: Unknown result type (might be due to invalid IL or missing references)
			//IL_504d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5071: Unknown result type (might be due to invalid IL or missing references)
			//IL_5085: Unknown result type (might be due to invalid IL or missing references)
			//IL_50a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_50bd: Unknown result type (might be due to invalid IL or missing references)
			//IL_50e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_50f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_5119: Unknown result type (might be due to invalid IL or missing references)
			//IL_512d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5151: Unknown result type (might be due to invalid IL or missing references)
			//IL_5165: Unknown result type (might be due to invalid IL or missing references)
			//IL_5189: Unknown result type (might be due to invalid IL or missing references)
			//IL_519d: Unknown result type (might be due to invalid IL or missing references)
			//IL_51bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_51c6: Expected O, but got Unknown
			//IL_5227: Unknown result type (might be due to invalid IL or missing references)
			//IL_523b: Unknown result type (might be due to invalid IL or missing references)
			//IL_5269: Unknown result type (might be due to invalid IL or missing references)
			//IL_527d: Unknown result type (might be due to invalid IL or missing references)
			//IL_52a2: Unknown result type (might be due to invalid IL or missing references)
			//IL_52ac: Expected O, but got Unknown
			//IL_5308: Unknown result type (might be due to invalid IL or missing references)
			//IL_531c: Unknown result type (might be due to invalid IL or missing references)
			//IL_5345: Unknown result type (might be due to invalid IL or missing references)
			//IL_5359: Unknown result type (might be due to invalid IL or missing references)
			//IL_537e: Unknown result type (might be due to invalid IL or missing references)
			//IL_5388: Expected O, but got Unknown
			//IL_53e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_53f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_5429: Unknown result type (might be due to invalid IL or missing references)
			//IL_543d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5470: Unknown result type (might be due to invalid IL or missing references)
			//IL_5484: Unknown result type (might be due to invalid IL or missing references)
			//IL_54b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_54cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_54fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_5512: Unknown result type (might be due to invalid IL or missing references)
			//IL_5545: Unknown result type (might be due to invalid IL or missing references)
			//IL_5559: Unknown result type (might be due to invalid IL or missing references)
			//IL_558c: Unknown result type (might be due to invalid IL or missing references)
			//IL_55a0: Unknown result type (might be due to invalid IL or missing references)
			//IL_55d5: Unknown result type (might be due to invalid IL or missing references)
			//IL_55f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_561f: Unknown result type (might be due to invalid IL or missing references)
			//IL_563a: Unknown result type (might be due to invalid IL or missing references)
			//IL_5669: Unknown result type (might be due to invalid IL or missing references)
			//IL_5684: Unknown result type (might be due to invalid IL or missing references)
			//IL_56b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_56ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_56fd: Unknown result type (might be due to invalid IL or missing references)
			//IL_5718: Unknown result type (might be due to invalid IL or missing references)
			//IL_5747: Unknown result type (might be due to invalid IL or missing references)
			//IL_5762: Unknown result type (might be due to invalid IL or missing references)
			//IL_5791: Unknown result type (might be due to invalid IL or missing references)
			//IL_57ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_57db: Unknown result type (might be due to invalid IL or missing references)
			//IL_57f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_5820: Unknown result type (might be due to invalid IL or missing references)
			//IL_583b: Unknown result type (might be due to invalid IL or missing references)
			//IL_5865: Unknown result type (might be due to invalid IL or missing references)
			//IL_5880: Unknown result type (might be due to invalid IL or missing references)
			//IL_58aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_58c5: Unknown result type (might be due to invalid IL or missing references)
			//IL_58ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_590a: Unknown result type (might be due to invalid IL or missing references)
			//IL_592d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5937: Expected O, but got Unknown
			//IL_5991: Unknown result type (might be due to invalid IL or missing references)
			//IL_59a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_59ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_59e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a0b: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a1f: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a48: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a5c: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a85: Unknown result type (might be due to invalid IL or missing references)
			//IL_5a99: Unknown result type (might be due to invalid IL or missing references)
			//IL_5ac2: Unknown result type (might be due to invalid IL or missing references)
			//IL_5ad6: Unknown result type (might be due to invalid IL or missing references)
			//IL_5aff: Unknown result type (might be due to invalid IL or missing references)
			//IL_5b13: Unknown result type (might be due to invalid IL or missing references)
			//IL_5b3c: Unknown result type (might be due to invalid IL or missing references)
			//IL_5b50: Unknown result type (might be due to invalid IL or missing references)
			//IL_5b79: Unknown result type (might be due to invalid IL or missing references)
			//IL_5b8d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5bb6: Unknown result type (might be due to invalid IL or missing references)
			//IL_5bca: Unknown result type (might be due to invalid IL or missing references)
			//IL_5bf3: Unknown result type (might be due to invalid IL or missing references)
			//IL_5c07: Unknown result type (might be due to invalid IL or missing references)
			//IL_5c30: Unknown result type (might be due to invalid IL or missing references)
			//IL_5c44: Unknown result type (might be due to invalid IL or missing references)
			//IL_5c68: Unknown result type (might be due to invalid IL or missing references)
			//IL_5c7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_5ca0: Unknown result type (might be due to invalid IL or missing references)
			//IL_5cb4: Unknown result type (might be due to invalid IL or missing references)
			//IL_5cd8: Unknown result type (might be due to invalid IL or missing references)
			//IL_5cec: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d10: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d24: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d48: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d5c: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d80: Unknown result type (might be due to invalid IL or missing references)
			//IL_5d94: Unknown result type (might be due to invalid IL or missing references)
			//IL_5db8: Unknown result type (might be due to invalid IL or missing references)
			//IL_5dcc: Unknown result type (might be due to invalid IL or missing references)
			//IL_5df0: Unknown result type (might be due to invalid IL or missing references)
			//IL_5e04: Unknown result type (might be due to invalid IL or missing references)
			//IL_5e2f: Unknown result type (might be due to invalid IL or missing references)
			//IL_5e4a: Unknown result type (might be due to invalid IL or missing references)
			//IL_5e79: Unknown result type (might be due to invalid IL or missing references)
			//IL_5e94: Unknown result type (might be due to invalid IL or missing references)
			//IL_5ec3: Unknown result type (might be due to invalid IL or missing references)
			//IL_5ede: Unknown result type (might be due to invalid IL or missing references)
			//IL_5f0d: Unknown result type (might be due to invalid IL or missing references)
			//IL_5f28: Unknown result type (might be due to invalid IL or missing references)
			//IL_5f57: Unknown result type (might be due to invalid IL or missing references)
			//IL_5f72: Unknown result type (might be due to invalid IL or missing references)
			//IL_5fa1: Unknown result type (might be due to invalid IL or missing references)
			//IL_5fbc: Unknown result type (might be due to invalid IL or missing references)
			//IL_5feb: Unknown result type (might be due to invalid IL or missing references)
			//IL_6006: Unknown result type (might be due to invalid IL or missing references)
			//IL_6035: Unknown result type (might be due to invalid IL or missing references)
			//IL_6050: Unknown result type (might be due to invalid IL or missing references)
			//IL_607f: Unknown result type (might be due to invalid IL or missing references)
			//IL_609a: Unknown result type (might be due to invalid IL or missing references)
			//IL_60c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_60d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_6102: Unknown result type (might be due to invalid IL or missing references)
			//IL_6116: Unknown result type (might be due to invalid IL or missing references)
			//IL_6140: Unknown result type (might be due to invalid IL or missing references)
			//IL_6154: Unknown result type (might be due to invalid IL or missing references)
			//IL_617e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6192: Unknown result type (might be due to invalid IL or missing references)
			//IL_61bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_61d0: Unknown result type (might be due to invalid IL or missing references)
			//IL_61fa: Unknown result type (might be due to invalid IL or missing references)
			//IL_620e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6238: Unknown result type (might be due to invalid IL or missing references)
			//IL_624c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6276: Unknown result type (might be due to invalid IL or missing references)
			//IL_628a: Unknown result type (might be due to invalid IL or missing references)
			//IL_62b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_62c6: Unknown result type (might be due to invalid IL or missing references)
			//IL_62ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_62fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_6322: Unknown result type (might be due to invalid IL or missing references)
			//IL_6336: Unknown result type (might be due to invalid IL or missing references)
			//IL_635a: Unknown result type (might be due to invalid IL or missing references)
			//IL_636e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6392: Unknown result type (might be due to invalid IL or missing references)
			//IL_63a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_63ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_63de: Unknown result type (might be due to invalid IL or missing references)
			//IL_6402: Unknown result type (might be due to invalid IL or missing references)
			//IL_6416: Unknown result type (might be due to invalid IL or missing references)
			//IL_6435: Unknown result type (might be due to invalid IL or missing references)
			//IL_643f: Expected O, but got Unknown
			//IL_6496: Unknown result type (might be due to invalid IL or missing references)
			//IL_64b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_64db: Unknown result type (might be due to invalid IL or missing references)
			//IL_64f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_6520: Unknown result type (might be due to invalid IL or missing references)
			//IL_653b: Unknown result type (might be due to invalid IL or missing references)
			//IL_656a: Unknown result type (might be due to invalid IL or missing references)
			//IL_6585: Unknown result type (might be due to invalid IL or missing references)
			//IL_65b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_65cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_65fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_6619: Unknown result type (might be due to invalid IL or missing references)
			//IL_6648: Unknown result type (might be due to invalid IL or missing references)
			//IL_6663: Unknown result type (might be due to invalid IL or missing references)
			//IL_6692: Unknown result type (might be due to invalid IL or missing references)
			//IL_66ad: Unknown result type (might be due to invalid IL or missing references)
			//IL_66da: Unknown result type (might be due to invalid IL or missing references)
			//IL_66ee: Unknown result type (might be due to invalid IL or missing references)
			//IL_6717: Unknown result type (might be due to invalid IL or missing references)
			//IL_672b: Unknown result type (might be due to invalid IL or missing references)
			//IL_6754: Unknown result type (might be due to invalid IL or missing references)
			//IL_6768: Unknown result type (might be due to invalid IL or missing references)
			//IL_6791: Unknown result type (might be due to invalid IL or missing references)
			//IL_67a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_67ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_67e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_680b: Unknown result type (might be due to invalid IL or missing references)
			//IL_681f: Unknown result type (might be due to invalid IL or missing references)
			//IL_6848: Unknown result type (might be due to invalid IL or missing references)
			//IL_685c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6882: Unknown result type (might be due to invalid IL or missing references)
			//IL_6896: Unknown result type (might be due to invalid IL or missing references)
			//IL_68c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_68d4: Unknown result type (might be due to invalid IL or missing references)
			//IL_68fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_6912: Unknown result type (might be due to invalid IL or missing references)
			//IL_693c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6950: Unknown result type (might be due to invalid IL or missing references)
			//IL_6973: Unknown result type (might be due to invalid IL or missing references)
			//IL_697d: Expected O, but got Unknown
			//IL_69d9: Unknown result type (might be due to invalid IL or missing references)
			//IL_69f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_6a23: Unknown result type (might be due to invalid IL or missing references)
			//IL_6a3e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6a68: Unknown result type (might be due to invalid IL or missing references)
			//IL_6a7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6aa6: Unknown result type (might be due to invalid IL or missing references)
			//IL_6aba: Unknown result type (might be due to invalid IL or missing references)
			//IL_6ae4: Unknown result type (might be due to invalid IL or missing references)
			//IL_6af8: Unknown result type (might be due to invalid IL or missing references)
			//IL_6b22: Unknown result type (might be due to invalid IL or missing references)
			//IL_6b36: Unknown result type (might be due to invalid IL or missing references)
			//IL_6b60: Unknown result type (might be due to invalid IL or missing references)
			//IL_6b74: Unknown result type (might be due to invalid IL or missing references)
			//IL_6b9e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6bb2: Unknown result type (might be due to invalid IL or missing references)
			//IL_6bdc: Unknown result type (might be due to invalid IL or missing references)
			//IL_6bf0: Unknown result type (might be due to invalid IL or missing references)
			//IL_6c1a: Unknown result type (might be due to invalid IL or missing references)
			//IL_6c2e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6c58: Unknown result type (might be due to invalid IL or missing references)
			//IL_6c6c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6c96: Unknown result type (might be due to invalid IL or missing references)
			//IL_6caa: Unknown result type (might be due to invalid IL or missing references)
			//IL_6cd4: Unknown result type (might be due to invalid IL or missing references)
			//IL_6ce8: Unknown result type (might be due to invalid IL or missing references)
			//IL_6d12: Unknown result type (might be due to invalid IL or missing references)
			//IL_6d26: Unknown result type (might be due to invalid IL or missing references)
			//IL_6d50: Unknown result type (might be due to invalid IL or missing references)
			//IL_6d64: Unknown result type (might be due to invalid IL or missing references)
			//IL_6d8e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6da2: Unknown result type (might be due to invalid IL or missing references)
			//IL_6dcc: Unknown result type (might be due to invalid IL or missing references)
			//IL_6de0: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e0a: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e48: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e5c: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e86: Unknown result type (might be due to invalid IL or missing references)
			//IL_6e9a: Unknown result type (might be due to invalid IL or missing references)
			//IL_6ec4: Unknown result type (might be due to invalid IL or missing references)
			//IL_6ed8: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f02: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f16: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f40: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f54: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f7e: Unknown result type (might be due to invalid IL or missing references)
			//IL_6f92: Unknown result type (might be due to invalid IL or missing references)
			//IL_6fbc: Unknown result type (might be due to invalid IL or missing references)
			//IL_6fd0: Unknown result type (might be due to invalid IL or missing references)
			//IL_6ffd: Unknown result type (might be due to invalid IL or missing references)
			//IL_7011: Unknown result type (might be due to invalid IL or missing references)
			//IL_703a: Unknown result type (might be due to invalid IL or missing references)
			//IL_704e: Unknown result type (might be due to invalid IL or missing references)
			//IL_7077: Unknown result type (might be due to invalid IL or missing references)
			//IL_708b: Unknown result type (might be due to invalid IL or missing references)
			//IL_70b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_70c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_70f1: Unknown result type (might be due to invalid IL or missing references)
			//IL_7105: Unknown result type (might be due to invalid IL or missing references)
			//IL_712e: Unknown result type (might be due to invalid IL or missing references)
			//IL_7142: Unknown result type (might be due to invalid IL or missing references)
			//IL_716b: Unknown result type (might be due to invalid IL or missing references)
			//IL_717f: Unknown result type (might be due to invalid IL or missing references)
			//IL_71a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_71bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_71e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_71f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_721f: Unknown result type (might be due to invalid IL or missing references)
			//IL_723a: Unknown result type (might be due to invalid IL or missing references)
			//IL_7264: Unknown result type (might be due to invalid IL or missing references)
			//IL_727f: Unknown result type (might be due to invalid IL or missing references)
			//IL_72a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_72c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_72ee: Unknown result type (might be due to invalid IL or missing references)
			//IL_7309: Unknown result type (might be due to invalid IL or missing references)
			//IL_7333: Unknown result type (might be due to invalid IL or missing references)
			//IL_734e: Unknown result type (might be due to invalid IL or missing references)
			//IL_7378: Unknown result type (might be due to invalid IL or missing references)
			//IL_738c: Unknown result type (might be due to invalid IL or missing references)
			//IL_73b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_73ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_73f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_7408: Unknown result type (might be due to invalid IL or missing references)
			//IL_7432: Unknown result type (might be due to invalid IL or missing references)
			//IL_7446: Unknown result type (might be due to invalid IL or missing references)
			//IL_7470: Unknown result type (might be due to invalid IL or missing references)
			//IL_748b: Unknown result type (might be due to invalid IL or missing references)
			//IL_74ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_74ce: Unknown result type (might be due to invalid IL or missing references)