Decompiled source of Rei Solar Ash v0.9.10

plugins/ReiMod/ReiMod.dll

Decompiled 17 hours 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.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Bootstrap;
using BepInEx.Configuration;
using BepInEx.Logging;
using EntityStates;
using EntityStates.AI.Walker;
using EntityStates.Commando;
using EntityStates.Commando.CommandoWeapon;
using EntityStates.Loader;
using HG;
using HG.BlendableTypes;
using HenryMod.Modules;
using HenryMod.Modules.Achievements;
using HenryMod.Modules.BaseStates;
using HenryMod.Modules.Characters;
using HenryMod.Survivors.Henry;
using HenryMod.Survivors.Henry.Components;
using HenryMod.Survivors.Henry.SkillStates;
using HenryMod.Survivors.Rei;
using HenryMod.Survivors.Rei.SkillStates;
using KinematicCharacterController;
using On.RoR2;
using R2API;
using R2API.Networking;
using R2API.Networking.Interfaces;
using R2API.Utils;
using RoR2;
using RoR2.Achievements;
using RoR2.Audio;
using RoR2.CharacterAI;
using RoR2.ContentManagement;
using RoR2.Orbs;
using RoR2.Projectile;
using RoR2.Skills;
using RoR2.UI;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.Networking;
using UnityEngine.Rendering;
using UnityEngine.UI;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.0.0")]
[module: UnverifiableCode]
[module: UnverifiableCode]
namespace HenryMod
{
	internal static class Log
	{
		internal static ManualLogSource _logSource;

		internal static void Init(ManualLogSource logSource)
		{
			_logSource = logSource;
		}

		internal static void Debug(object data)
		{
			_logSource.LogDebug(data);
		}

		internal static void Error(object data)
		{
			_logSource.LogError(data);
		}

		internal static void ErrorAssetBundle(string assetName, string bundleName)
		{
			Error("failed to load asset, " + assetName + ", because it does not exist in asset bundle, " + bundleName);
		}

		internal static void Fatal(object data)
		{
			_logSource.LogFatal(data);
		}

		internal static void Info(object data)
		{
			_logSource.LogInfo(data);
		}

		internal static void Message(object data)
		{
			_logSource.LogMessage(data);
		}

		internal static void Warning(object data)
		{
			_logSource.LogWarning(data);
		}
	}
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[NetworkCompatibility(/*Could not decode attribute arguments.*/)]
	[BepInPlugin("com.Friend.ReiSolarAsh", "Rei - Solar Ash", "0.9.10")]
	public class HenryPlugin : BaseUnityPlugin
	{
		public const string MODUID = "com.Friend.ReiSolarAsh";

		public const string MODNAME = "Rei - Solar Ash";

		public const string MODVERSION = "0.9.10";

		public const string DEVELOPER_PREFIX = "ELI";

		public static HenryPlugin instance;

		private void Awake()
		{
			instance = this;
			Log.Init(((BaseUnityPlugin)this).Logger);
			Language.Init();
			string text = Path.Combine(Path.GetDirectoryName(((BaseUnityPlugin)this).Info.Location), "Soundbanks", "ReiBank.sound");
			if (File.Exists(text))
			{
				SoundBanks.Add(text);
			}
			else
			{
				Log.Warning("ReiBank.sound not found at " + text);
			}
			ReiNet.Register();
			new HenrySurvivor().Initialize();
			new ContentPacks().Initialize();
		}
	}
}
namespace HenryMod.Survivors.Henry
{
	public class HenrySurvivor : SurvivorBase<HenrySurvivor>
	{
		public const string HENRY_PREFIX = "ELI_REI_";

		public override string assetBundleName => "reibundle";

		public override string bodyName => "ReiBody";

		public override string masterName => "ReiMonsterMaster";

		public override string modelPrefabName => "mdlRei";

		public override string displayPrefabName => "ReiDisplay";

		public override string survivorTokenPrefix => "ELI_REI_";

		public override BodyInfo bodyInfo => new BodyInfo
		{
			bodyName = bodyName,
			bodyNameToken = "ELI_REI_NAME",
			subtitleNameToken = "ELI_REI_SUBTITLE",
			characterPortrait = (Texture)(((object)ReiIcons.Tex("texReiIcon")) ?? ((object)assetBundle.LoadAsset<Texture>("texHenryIcon"))),
			bodyColor = new Color(0f, 0.85f, 1f),
			sortPosition = 100f,
			crosshair = Asset.LoadCrosshair("Standard"),
			podPrefab = LegacyResourcesAPI.Load<GameObject>("Prefabs/NetworkedObjects/SurvivorPod"),
			maxHealth = 110f,
			healthRegen = 1.5f,
			armor = 0f,
			moveSpeed = 6.5f,
			jumpCount = 2
		};

		public override CustomRendererInfo[] customRendererInfos => new CustomRendererInfo[7]
		{
			new CustomRendererInfo
			{
				childName = "ReiBody"
			},
			new CustomRendererInfo
			{
				childName = "ReiHead"
			},
			new CustomRendererInfo
			{
				childName = "ReiHair"
			},
			new CustomRendererInfo
			{
				childName = "ReiCape"
			},
			new CustomRendererInfo
			{
				childName = "ReiSuitLights"
			},
			new CustomRendererInfo
			{
				childName = "ReiEnergy"
			},
			new CustomRendererInfo
			{
				childName = "ReiMultitoolStatic"
			}
		};

		public override UnlockableDef characterUnlockableDef => HenryUnlockables.characterUnlockableDef;

		public override ItemDisplaysBase itemDisplays => new HenryItemDisplays();

		public override AssetBundle assetBundle { get; protected set; }

		public override GameObject bodyPrefab { get; protected set; }

		public override CharacterBody prefabCharacterBody { get; protected set; }

		public override GameObject characterModelObject { get; protected set; }

		public override CharacterModel prefabCharacterModel { get; protected set; }

		public override GameObject displayPrefab { get; protected set; }

		public override void Initialize()
		{
			base.Initialize();
		}

		public override void InitializeCharacter()
		{
			HenryUnlockables.Init();
			base.InitializeCharacter();
			HenryConfig.Init();
			HenryStates.Init();
			HenryTokens.Init();
			HenryAssets.Init(assetBundle);
			ReiConfig.Init(((BaseUnityPlugin)HenryPlugin.instance).Config);
			ReiAssets.Init(assetBundle);
			try
			{
				ReiMarks.InitVisual();
			}
			catch (Exception ex)
			{
				Log.Error("[Rei] mark visual failed: " + ex);
			}
			Content.AddEntityState(typeof(ReiMain));
			Content.AddEntityState(typeof(ReiCombo));
			Content.AddEntityState(typeof(ReiFireHook));
			Content.AddEntityState(typeof(ReiGrapple));
			Content.AddEntityState(typeof(NeedleStab));
			Content.AddEntityState(typeof(BoostDash));
			Content.AddEntityState(typeof(SpeedGear));
			Content.AddEntityState(typeof(ReiVolley));
			Content.AddEntityState(typeof(ReiCrescentWave));
			Content.AddEntityState(typeof(ReiCrescentWaveThrow));
			Content.AddEntityState(typeof(GooNeedle));
			Content.AddEntityState(typeof(GooBoost));
			Content.AddEntityState(typeof(RemnantRushStart));
			Content.AddEntityState(typeof(RemnantFinale));
			HenryBuffs.Init(assetBundle);
			InitializeEntityStateMachines();
			InitializeSkills();
			InitializeSkins();
			InitializeCharacterMaster();
			AdditionalBodySetup();
			AddHooks();
		}

		private void AdditionalBodySetup()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0030: Unknown result type (might be due to invalid IL or missing references)
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			AddHitboxes();
			bodyPrefab.AddComponent<HenryWeaponComponent>();
			bodyPrefab.AddComponent<ReiSkateController>();
			CharacterBody component = bodyPrefab.GetComponent<CharacterBody>();
			component.bodyFlags = (BodyFlags)(component.bodyFlags | 1);
			bodyPrefab.AddComponent<ReiReactions>();
			bodyPrefab.AddComponent<ReiChatter>();
			bodyPrefab.AddComponent<ReiMarks>();
			bodyPrefab.AddComponent<ReiGoo>();
			bodyPrefab.AddComponent<ReiRemnantRush>();
			HuntressTracker obj = bodyPrefab.AddComponent<HuntressTracker>();
			obj.maxTrackingDistance = 50f;
			obj.maxTrackingAngle = 25f;
			obj.trackerUpdateFrequency = 10f;
			obj.trackingPrefab = (Object.op_Implicit((Object)(object)ReiAssets.trackingIndicator) ? ReiAssets.trackingIndicator : LegacyResourcesAPI.Load<GameObject>("Prefabs/HuntressTrackingIndicator"));
			((Component)prefabCharacterModel).gameObject.AddComponent<ReiSmokeHair>();
			((Component)prefabCharacterModel).gameObject.AddComponent<ReiBlade>();
			((Component)prefabCharacterModel).gameObject.AddComponent<ReiCapePhysics>();
			if (Object.op_Implicit((Object)(object)displayPrefab))
			{
				displayPrefab.AddComponent<ReiSmokeHair>();
			}
			if (Object.op_Implicit((Object)(object)displayPrefab))
			{
				displayPrefab.AddComponent<ReiCapePhysics>();
			}
		}

		public void AddHitboxes()
		{
			Prefabs.SetupHitBoxGroup(characterModelObject, "SwordGroup", "SwordHitbox");
		}

		public override void InitializeEntityStateMachines()
		{
			Prefabs.ClearEntityStateMachines(bodyPrefab);
			Prefabs.AddMainEntityStateMachine(bodyPrefab, "Body", typeof(ReiMain), typeof(SpawnTeleporterState));
			Prefabs.AddEntityStateMachine(bodyPrefab, "Weapon");
			Prefabs.AddEntityStateMachine(bodyPrefab, "Weapon2");
			Prefabs.AddEntityStateMachine(bodyPrefab, "Hook");
			Prefabs.AddEntityStateMachine(bodyPrefab, "GooBoost");
		}

		public override void InitializeSkills()
		{
			//IL_0018: Unknown result type (might be due to invalid IL or missing references)
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0060: Unknown result type (might be due to invalid IL or missing references)
			Skills.ClearGenericSkills(bodyPrefab);
			bodyPrefab.GetComponent<SkillLocator>().passiveSkill = new PassiveSkill
			{
				enabled = true,
				skillNameToken = "ELI_REI_PASSIVE_NAME",
				skillDescriptionToken = "ELI_REI_PASSIVE_DESCRIPTION",
				icon = ReiIcons.Sprite("texReiPassive", assetBundle.LoadAsset<Sprite>("texPassiveIcon"))
			};
			AddPrimarySkills();
			AddSecondarySkills();
			AddUtiitySkills();
			AddSpecialSkills();
		}

		private void AddPassiveSkill()
		{
			//IL_000d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0056: Unknown result type (might be due to invalid IL or missing references)
			//IL_0057: Unknown result type (might be due to invalid IL or missing references)
			bodyPrefab.GetComponent<SkillLocator>().passiveSkill = new PassiveSkill
			{
				enabled = true,
				skillNameToken = "ELI_REI_PASSIVE_NAME",
				skillDescriptionToken = "ELI_REI_PASSIVE_DESCRIPTION",
				keywordToken = "KEYWORD_STUNNING",
				icon = assetBundle.LoadAsset<Sprite>("texPassiveIcon")
			};
			GenericSkill val = Skills.CreateGenericSkillWithSkillFamily(bodyPrefab, "PassiveSkill");
			SkillDefInfo skillDefInfo = new SkillDefInfo();
			skillDefInfo.skillName = "HenryPassive";
			skillDefInfo.skillNameToken = "ELI_REI_PASSIVE_NAME";
			skillDefInfo.skillDescriptionToken = "ELI_REI_PASSIVE_DESCRIPTION";
			skillDefInfo.keywordTokens = new string[1] { "KEYWORD_AGILE" };
			skillDefInfo.skillIcon = assetBundle.LoadAsset<Sprite>("texPassiveIcon");
			SkillDef val2 = Skills.CreateSkillDef(skillDefInfo);
			Skills.AddSkillsToFamily(val.skillFamily, val2);
		}

		private void AddPrimarySkills()
		{
			//IL_0041: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			Skills.CreateGenericSkillWithSkillFamily(bodyPrefab, (SkillSlot)0);
			SteppedSkillDef val = Skills.CreateSkillDef<SteppedSkillDef>(new SkillDefInfo("ReiCombo", "ELI_REI_PRIMARY_SLASH_NAME", "ELI_REI_PRIMARY_SLASH_DESCRIPTION", ReiIcons.Sprite("texReiPrimary", assetBundle.LoadAsset<Sprite>("texPrimaryIcon")), new SerializableEntityStateType(typeof(ReiCombo)), "Weapon", agile: true));
			val.stepCount = 3;
			val.stepGraceDuration = 0.25f;
			SteppedSkillDef val2 = Skills.CreateSkillDef<SteppedSkillDef>(new SkillDefInfo("ReiVolley", "ELI_REI_PRIMARY_VOLLEY_NAME", "ELI_REI_PRIMARY_VOLLEY_DESCRIPTION", ReiIcons.Sprite("texReiPrimaryAlt", ReiIcons.Sprite("texReiPrimary", assetBundle.LoadAsset<Sprite>("texPrimaryIcon"))), new SerializableEntityStateType(typeof(ReiVolley)), "Weapon", agile: true));
			val2.stepCount = 3;
			val2.stepGraceDuration = 0.4f;
			Skills.AddPrimarySkills(bodyPrefab, (SkillDef)val, (SkillDef)val2);
		}

		private void AddSecondarySkills()
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_0076: Unknown result type (might be due to invalid IL or missing references)
			//IL_0142: Unknown result type (might be due to invalid IL or missing references)
			//IL_0147: Unknown result type (might be due to invalid IL or missing references)
			//IL_0159: Unknown result type (might be due to invalid IL or missing references)
			Skills.CreateGenericSkillWithSkillFamily(bodyPrefab, (SkillSlot)1);
			SkillDef val = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiGrapple",
				skillNameToken = "ELI_REI_SECONDARY_GUN_NAME",
				skillDescriptionToken = "ELI_REI_SECONDARY_GUN_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiSecondary", assetBundle.LoadAsset<Sprite>("texSecondaryIcon")),
				activationState = new SerializableEntityStateType(typeof(ReiGrapple)),
				activationStateMachineName = "Body",
				interruptPriority = (InterruptPriority)2,
				baseRechargeInterval = 4f,
				baseMaxStock = 1,
				rechargeStock = 1,
				requiredStock = 1,
				stockToConsume = 1,
				resetCooldownTimerOnUse = false,
				fullRestockOnAssign = true,
				dontAllowPastMaxStocks = false,
				mustKeyPress = true,
				beginSkillCooldownOnSkillEnd = false,
				isCombatSkill = true,
				canceledFromSprinting = false,
				cancelSprintingOnActivation = false,
				forceSprintDuringState = false
			});
			SkillDef val2 = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiCrescentWave",
				skillNameToken = "ELI_REI_SECONDARY_WAVE_NAME",
				skillDescriptionToken = "ELI_REI_SECONDARY_WAVE_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiSecondaryAlt", ReiIcons.Sprite("texReiSecondary", assetBundle.LoadAsset<Sprite>("texSecondaryIcon"))),
				activationState = new SerializableEntityStateType(typeof(ReiCrescentWave)),
				activationStateMachineName = "Weapon2",
				interruptPriority = (InterruptPriority)1,
				baseRechargeInterval = 5f,
				baseMaxStock = 1,
				rechargeStock = 1,
				requiredStock = 1,
				stockToConsume = 1,
				fullRestockOnAssign = true,
				mustKeyPress = true,
				isCombatSkill = true,
				canceledFromSprinting = false,
				cancelSprintingOnActivation = false,
				forceSprintDuringState = false
			});
			Skills.AddSecondarySkills(bodyPrefab, val, val2);
		}

		private void AddUtiitySkills()
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_0076: Unknown result type (might be due to invalid IL or missing references)
			//IL_0142: Unknown result type (might be due to invalid IL or missing references)
			//IL_0147: Unknown result type (might be due to invalid IL or missing references)
			//IL_0159: Unknown result type (might be due to invalid IL or missing references)
			Skills.CreateGenericSkillWithSkillFamily(bodyPrefab, (SkillSlot)2);
			SkillDef val = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiBoostDash",
				skillNameToken = "ELI_REI_UTILITY_ROLL_NAME",
				skillDescriptionToken = "ELI_REI_UTILITY_ROLL_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiUtility", assetBundle.LoadAsset<Sprite>("texUtilityIcon")),
				activationState = new SerializableEntityStateType(typeof(BoostDash)),
				activationStateMachineName = "Body",
				interruptPriority = (InterruptPriority)2,
				baseRechargeInterval = 7f,
				baseMaxStock = 3,
				rechargeStock = 1,
				requiredStock = 1,
				stockToConsume = 1,
				resetCooldownTimerOnUse = false,
				fullRestockOnAssign = true,
				dontAllowPastMaxStocks = false,
				mustKeyPress = false,
				beginSkillCooldownOnSkillEnd = false,
				isCombatSkill = false,
				canceledFromSprinting = false,
				cancelSprintingOnActivation = false,
				forceSprintDuringState = true
			});
			SkillDef val2 = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiGooBoost",
				skillNameToken = "ELI_REI_UTILITY_GOOBOOST_NAME",
				skillDescriptionToken = "ELI_REI_UTILITY_GOOBOOST_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiUtilityAlt", ReiIcons.Sprite("texReiUtility", assetBundle.LoadAsset<Sprite>("texUtilityIcon"))),
				activationState = new SerializableEntityStateType(typeof(GooBoost)),
				activationStateMachineName = "GooBoost",
				interruptPriority = (InterruptPriority)0,
				baseRechargeInterval = 0.5f,
				baseMaxStock = 1,
				rechargeStock = 1,
				requiredStock = 0,
				stockToConsume = 0,
				fullRestockOnAssign = true,
				mustKeyPress = true,
				isCombatSkill = false,
				canceledFromSprinting = false,
				cancelSprintingOnActivation = false,
				forceSprintDuringState = true
			});
			Skills.AddUtilitySkills(bodyPrefab, val, val2);
		}

		private void AddSpecialSkills()
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_0076: Unknown result type (might be due to invalid IL or missing references)
			//IL_0103: Unknown result type (might be due to invalid IL or missing references)
			//IL_0108: Unknown result type (might be due to invalid IL or missing references)
			//IL_011a: Unknown result type (might be due to invalid IL or missing references)
			Skills.CreateGenericSkillWithSkillFamily(bodyPrefab, (SkillSlot)3);
			SkillDef val = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiNeedle",
				skillNameToken = "ELI_REI_SPECIAL_BOMB_NAME",
				skillDescriptionToken = "ELI_REI_SPECIAL_BOMB_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiSpecial", assetBundle.LoadAsset<Sprite>("texSpecialIcon")),
				activationState = new SerializableEntityStateType(typeof(NeedleStab)),
				activationStateMachineName = "Body",
				interruptPriority = (InterruptPriority)2,
				baseMaxStock = 1,
				baseRechargeInterval = 9f,
				isCombatSkill = true,
				mustKeyPress = false,
				cancelSprintingOnActivation = false
			});
			SkillDef val2 = Skills.CreateSkillDef(new SkillDefInfo
			{
				skillName = "ReiRemnantRush",
				skillNameToken = "ELI_REI_SPECIAL_RUSH_NAME",
				skillDescriptionToken = "ELI_REI_SPECIAL_RUSH_DESCRIPTION",
				skillIcon = ReiIcons.Sprite("texReiSpecialRush", ReiIcons.Sprite("texReiSpecial", assetBundle.LoadAsset<Sprite>("texSpecialIcon"))),
				activationState = new SerializableEntityStateType(typeof(RemnantRushStart)),
				activationStateMachineName = "Weapon2",
				interruptPriority = (InterruptPriority)0,
				baseMaxStock = 1,
				baseRechargeInterval = 1f,
				isCombatSkill = true,
				mustKeyPress = true,
				cancelSprintingOnActivation = false,
				canceledFromSprinting = false
			});
			Skills.AddSpecialSkills(bodyPrefab, val, val2);
		}

		public override void InitializeSkins()
		{
			ModelSkinController val = ((Component)prefabCharacterModel).gameObject.AddComponent<ModelSkinController>();
			ChildLocator component = ((Component)prefabCharacterModel).GetComponent<ChildLocator>();
			RendererInfo[] baseRendererInfos = prefabCharacterModel.baseRendererInfos;
			List<SkinDef> list = new List<SkinDef>();
			SkinDef val2 = Skins.CreateSkinDef("DEFAULT_SKIN", assetBundle.LoadAsset<Sprite>("texMainSkin"), baseRendererInfos, ((Component)prefabCharacterModel).gameObject);
			list.Add(val2);
			try
			{
				ReiSkins.Add(list, prefabCharacterModel, component, val2);
			}
			catch (Exception ex)
			{
				Log.Error("[Rei] skins failed: " + ex);
			}
			ReiSkins.Tokens();
			val.skins = list.ToArray();
			if (!Object.op_Implicit((Object)(object)displayPrefab))
			{
				return;
			}
			CharacterModel component2 = displayPrefab.GetComponent<CharacterModel>();
			if (Object.op_Implicit((Object)(object)component2))
			{
				Renderer[] componentsInChildren = displayPrefab.GetComponentsInChildren<Renderer>(true);
				RendererInfo[] baseRendererInfos2 = component2.baseRendererInfos;
				for (int i = 0; i < baseRendererInfos2.Length; i++)
				{
					string n = (Object.op_Implicit((Object)(object)baseRendererInfos2[i].renderer) ? ((Object)baseRendererInfos2[i].renderer).name : null);
					Renderer val3 = ((n == null) ? null : Array.Find(componentsInChildren, (Renderer r) => ((Object)r).name == n));
					if (Object.op_Implicit((Object)(object)val3))
					{
						baseRendererInfos2[i].renderer = val3;
					}
				}
				component2.baseRendererInfos = baseRendererInfos2;
			}
			ModelSkinController val4 = displayPrefab.GetComponent<ModelSkinController>();
			if (!Object.op_Implicit((Object)(object)val4))
			{
				val4 = displayPrefab.AddComponent<ModelSkinController>();
			}
			val4.skins = val.skins;
		}

		public override void InitializeCharacterMaster()
		{
			HenryAI.Init(bodyPrefab, masterName);
		}

		private void AddHooks()
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_0011: Expected O, but got Unknown
			RecalculateStatsAPI.GetStatCoefficients += new StatHookEventHandler(RecalculateStatsAPI_GetStatCoefficients);
			ReiSkateController.HookStats();
			ReiReactions.Hook();
			ReiChatter.Hook();
			ReiMarks.HookKills();
			ReiGoo.Hook();
		}

		private void RecalculateStatsAPI_GetStatCoefficients(CharacterBody sender, StatHookEventArgs args)
		{
			ReiSkateController component = ((Component)sender).GetComponent<ReiSkateController>();
			if (Object.op_Implicit((Object)(object)component))
			{
				args.moveSpeedMultAdd += component.Bonus;
			}
			if (Object.op_Implicit((Object)(object)component) && component.Amped)
			{
				args.attackSpeedMultAdd += 0.4f;
			}
			if (Object.op_Implicit((Object)(object)component) && component.gooBoosting)
			{
				args.armorAdd += 50f;
				args.attackSpeedMultAdd += 0.5f;
			}
			if (Object.op_Implicit((Object)(object)ReiAssets.speedGearBuff) && sender.HasBuff(ReiAssets.speedGearBuff))
			{
				args.moveSpeedMultAdd += 0.4f;
				args.attackSpeedMultAdd += 0.4f;
			}
			if (Object.op_Implicit((Object)(object)ReiAssets.speedGearSlow) && sender.HasBuff(ReiAssets.speedGearSlow))
			{
				args.moveSpeedReductionMultAdd += 3f;
				args.attackSpeedReductionMultAdd += 3f;
			}
			if (sender.HasBuff(HenryBuffs.armorBuff))
			{
				args.armorAdd += 300f;
			}
		}
	}
	public static class HenryTokens
	{
		public static void Init()
		{
			AddHenryTokens();
		}

		public static void AddHenryTokens()
		{
			string text = "ELI_REI_";
			string text2 = "Rei is a Voidrunner who skates through the world at speed, cutting down anything in her path.<color=#CCD3E0>" + Environment.NewLine + Environment.NewLine + "< ! > Keep moving. Rei is at her best when she never stops." + Environment.NewLine + Environment.NewLine + "< ! > (Work in progress: her real abilities are coming soon.)" + Environment.NewLine + Environment.NewLine;
			string text3 = "..and so she left, still searching for a way home.";
			string text4 = "..and so she vanished into the Ultravoid.";
			Language.Add(text + "NAME", "Rei");
			Language.Add(text + "DESCRIPTION", text2);
			Language.Add(text + "SUBTITLE", "The Last Voidrunner");
			Language.Add(text + "LORE", "A Voidrunner who dove into the Ultravoid to save her world.");
			Language.Add(text + "OUTRO_FLAVOR", text3);
			Language.Add(text + "OUTRO_FAILURE", text4);
			Language.Add(text + "MASTERY_SKIN_NAME", "Alternate");
			Language.Add(text + "PASSIVE_NAME", "Voidrunner");
			Language.Add(text + "PASSIVE_DESCRIPTION", "Rei <style=cIsUtility>skates</style> whenever she moves, building <style=cIsUtility>momentum</style> over a few seconds up to <style=cIsUtility>+65% movement speed</style>. <style=cIsUtility>Downhill</style> pushes past it, uphill drains it. Let go and she <style=cIsUtility>glides</style>. Skate along <style=cIsUtility>walls</style> at speed. <style=cIsUtility>Immune to fall damage</style>. She can <style=cIsUtility>double jump</style>.");
			Language.Add(text + "PRIMARY_SLASH_NAME", "Multitool Combo");
			Language.Add(text + "PRIMARY_SLASH_DESCRIPTION", "<style=cIsUtility>Agile.</style>" + $"Slash where you aim for <style=cIsDamage>{240.00002f}%</style>, <style=cIsDamage>{240.00002f}%</style> and <style=cIsDamage>{380f}% damage</style>. Rei <style=cIsUtility>zips to the enemy</style> you face. Hits <style=cIsUtility>recharge Boost and Grapple</style>. The 3rd hit <style=cIsDamage>pops</style> any Glint mark for <style=cIsDamage>250%</style> and leaves a new one.");
			Language.Add(text + "PRIMARY_VOLLEY_NAME", "Glint Volley");
			Language.Add(text + "PRIMARY_VOLLEY_DESCRIPTION", "<style=cIsUtility>Agile.</style>" + $"Flick hard-light needles that <style=cIsUtility>always seek</style> the enemy nearest your crosshair (60m) for <style=cIsDamage>{170f}% damage</style>. The 3rd swing throws <style=cIsDamage>3 needles</style> that <style=cIsDamage>shatter</style> for <style=cIsDamage>{104.99999f}% (+50% in a small blast)</style>. Needles <style=cIsDamage>pop Glint marks</style> for <style=cIsDamage>+50%</style>.");
			Language.Add(text + "SECONDARY_WAVE_NAME", "Crescent Wave");
			Language.Add(text + "SECONDARY_WAVE_DESCRIPTION", "<style=cIsUtility>Hold</style> to draw back a blade of wind and light, then release to hurl it: <style=cIsDamage>200%</style>, up to <style=cIsDamage>500%</style> and twice the size at full charge. Where it lands it leaves a storm of cuts that hits each enemy inside <style=cIsDamage>3 times</style> for half the throw each. <style=cIsDamage>Attack speed</style> adds up to 3 follow-up blades (one per +50%) for half damage each. Everything it cuts is <style=cIsDamage>marked</style>; anything it cut that dies within 4s <style=cIsDamage>shatters</style> into slashes for <style=cIsDamage>300%</style>.");
			Language.Add(text + "SECONDARY_GUN_NAME", "Grapple");
			Language.Add(text + "SECONDARY_GUN_DESCRIPTION", $"Fire your tether. At an <style=cIsDamage>enemy</style>: zip in and strike for <style=cIsDamage>{400f}% damage</style>, then hang beside it. At a <style=cIsUtility>surface</style>: hold to be hauled toward it (steer to swing), let go to fly on with all your speed. <style=cIsUtility>Kills refresh the Grapple, up to 3 times in a row.</style>");
			Language.Add(text + "UTILITY_ROLL_NAME", "Boost");
			Language.Add(text + "UTILITY_ROLL_DESCRIPTION", "<style=cIsUtility>Burst forward</style> on top of your current speed, cutting through enemies for <style=cIsDamage>250% damage</style>. Gain a <style=cIsHealing>barrier</style> that grows with your speed, <style=cIsUtility>Overdrive</style> speed, and <style=cIsDamage>Amp</style>: your slashes deal <style=cIsDamage>+50% damage</style> with <style=cIsDamage>+50% reach</style> and <style=cIsDamage>+40% attack speed</style> for 3s.");
			Language.Add(text + "SPECIAL_BOMB_NAME", "Needle");
			Language.Add(text + "SPECIAL_BOMB_DESCRIPTION", $"Lunge at the targeted enemy and drive the needle through it for <style=cIsDamage>{1800f}% damage</style>, <style=cIsHealth>doubled</style> against enemies under 30% health. Popping a <style=cIsDamage>Glint mark</style> adds <style=cIsDamage>+50%</style>. <style=cIsUtility>Kills and mark pops refund the Needle, up to 3 stabs in a row.</style> Kills <style=cIsHealing>heal</style> for 10% of the damage dealt (25% on a chained stab).");
			Language.Add(text + "UTILITY_GOOBOOST_NAME", "Goo Boost");
			Language.Add(text + "UTILITY_GOOBOOST_DESCRIPTION", $"<style=cIsUtility>Hold</style> to burn goo and boost: full speed and <style=cIsUtility>+{60.000004f}% past her cap</style>, <style=cIsUtility>+{50f} armor</style>, <style=cIsDamage>+{50f}% attack speed</style>, and anything she rams takes <style=cIsDamage>{200f}% damage</style>. Lasts as long as you hold it and have goo. <style=cIsHealth>Its own goo meter</style> fills from kills, mark pops, hits and skating.");
			Language.Add(text + "SPECIAL_RUSH_NAME", "Remnant Rush");
			Language.Add(text + "SPECIAL_RUSH_DESCRIPTION", $"Needs a full <style=cIsUtility>Remnant meter</style> (filled by <style=cIsDamage>popping Glint marks</style>, kills and hits). Nearby enemies light up with <style=cIsDamage>{5} weak points</style>, and you have <style=cIsUtility>{6f}s</style> to hit them all. Each hit lands a bonus slash for <style=cIsDamage>{300f}%</style> and buys time. Break them all and she unleashes a flurry of slashes around the last one (<style=cIsDamage>{150f}%</style> each; <style=cIsDamage>more slashes with attack speed and crit chance</style>), then leaps up and drives her lance down for <style=cIsDamage>{1000f}% per weak point</style> in a huge blast that pops every mark and <style=cIsUtility>resets all your cooldowns</style>. <style=cIsHealing>Kills heal.</style>");
			Language.Add(text + "SPECIAL_GOO_NAME", "Goo Needle");
			Language.Add(text + "SPECIAL_GOO_DESCRIPTION", $"Throw a seeking needle of red goo at the targeted enemy for <style=cIsDamage>{300f}% damage</style>, <style=cIsHealth>doubled</style> against enemies under 30% health. Popping a <style=cIsDamage>Glint mark</style> adds <style=cIsDamage>+50%</style> and <style=cIsUtility>resets the cooldown</style>. Kills <style=cIsHealing>heal</style> for 10% of the damage dealt (25% on a full throw). Kills, mark pops, hits and skating fill her <style=cIsHealth>goo meter</style>; when it's full, the next throw drains it for <style=cIsDamage>{8f}x damage</style> and bursts for <style=cIsDamage>{600f}%</style> around the target.");
			Language.Add(Tokens.GetAchievementNameToken("ELI_REI_masteryAchievement"), "Rei: Mastery");
			Language.Add(Tokens.GetAchievementDescriptionToken("ELI_REI_masteryAchievement"), "As Rei, beat the game or obliterate on Monsoon.");
		}
	}
	public static class HenryBuffs
	{
		public static BuffDef armorBuff;

		public static void Init(AssetBundle assetBundle)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			armorBuff = Content.CreateAndAddBuff("HenryArmorBuff", LegacyResourcesAPI.Load<BuffDef>("BuffDefs/HiddenInvincibility").iconSprite, Color.white, canStack: false, isDebuff: false);
		}
	}
	public static class HenryUnlockables
	{
		public static UnlockableDef characterUnlockableDef;

		public static UnlockableDef masterySkinUnlockableDef;

		public static void Init()
		{
			masterySkinUnlockableDef = Content.CreateAndAddUnlockbleDef("ELI_REI_masteryUnlockable", Tokens.GetAchievementNameToken("ELI_REI_masteryAchievement"), CharacterBase<HenrySurvivor>.instance.assetBundle.LoadAsset<Sprite>("texMasteryAchievement"));
		}
	}
	public static class HenryAI
	{
		public static void Init(GameObject bodyPrefab, string masterName)
		{
			//IL_0035: Unknown result type (might be due to invalid IL or missing references)
			//IL_00af: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0130: Unknown result type (might be due to invalid IL or missing references)
			//IL_0170: Unknown result type (might be due to invalid IL or missing references)
			//IL_018c: Unknown result type (might be due to invalid IL or missing references)
			//IL_019e: Unknown result type (might be due to invalid IL or missing references)
			//IL_01a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_01bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_01fc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0218: Unknown result type (might be due to invalid IL or missing references)
			//IL_022a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0230: Unknown result type (might be due to invalid IL or missing references)
			//IL_0248: Unknown result type (might be due to invalid IL or missing references)
			//IL_0288: Unknown result type (might be due to invalid IL or missing references)
			//IL_02a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_02bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_02d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_02f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0313: Unknown result type (might be due to invalid IL or missing references)
			//IL_0325: Unknown result type (might be due to invalid IL or missing references)
			//IL_032b: Unknown result type (might be due to invalid IL or missing references)
			GameObject obj = Prefabs.CreateBlankMasterPrefab(bodyPrefab, masterName);
			BaseAI component = obj.GetComponent<BaseAI>();
			component.aimVectorDampTime = 0.1f;
			component.aimVectorMaxSpeed = 360f;
			AISkillDriver obj2 = obj.AddComponent<AISkillDriver>();
			obj2.customName = "Use Primary Swing";
			obj2.skillSlot = (SkillSlot)0;
			obj2.requiredSkill = null;
			obj2.requireSkillReady = false;
			obj2.requireEquipmentReady = false;
			obj2.minUserHealthFraction = float.NegativeInfinity;
			obj2.maxUserHealthFraction = float.PositiveInfinity;
			obj2.minTargetHealthFraction = float.NegativeInfinity;
			obj2.maxTargetHealthFraction = float.PositiveInfinity;
			obj2.minDistance = 0f;
			obj2.maxDistance = 8f;
			obj2.selectionRequiresTargetLoS = false;
			obj2.selectionRequiresOnGround = false;
			obj2.selectionRequiresAimTarget = false;
			obj2.maxTimesSelected = -1;
			obj2.moveTargetType = (TargetType)0;
			obj2.activationRequiresTargetLoS = false;
			obj2.activationRequiresAimTargetLoS = false;
			obj2.activationRequiresAimConfirmation = false;
			obj2.movementType = (MovementType)1;
			obj2.moveInputScale = 1f;
			obj2.aimType = (AimType)1;
			obj2.ignoreNodeGraph = false;
			obj2.shouldSprint = false;
			obj2.shouldFireEquipment = false;
			obj2.buttonPressType = (ButtonPressType)0;
			obj2.driverUpdateTimerOverride = -1f;
			obj2.resetCurrentEnemyOnNextDriverSelection = false;
			obj2.noRepeat = false;
			obj2.nextHighPriorityOverride = null;
			AISkillDriver obj3 = obj.AddComponent<AISkillDriver>();
			obj3.customName = "Use Secondary Shoot";
			obj3.skillSlot = (SkillSlot)1;
			obj3.requireSkillReady = true;
			obj3.minDistance = 0f;
			obj3.maxDistance = 25f;
			obj3.selectionRequiresTargetLoS = false;
			obj3.selectionRequiresOnGround = false;
			obj3.selectionRequiresAimTarget = false;
			obj3.maxTimesSelected = -1;
			obj3.moveTargetType = (TargetType)0;
			obj3.activationRequiresTargetLoS = false;
			obj3.activationRequiresAimTargetLoS = false;
			obj3.activationRequiresAimConfirmation = true;
			obj3.movementType = (MovementType)1;
			obj3.moveInputScale = 1f;
			obj3.aimType = (AimType)1;
			obj3.buttonPressType = (ButtonPressType)0;
			AISkillDriver obj4 = obj.AddComponent<AISkillDriver>();
			obj4.customName = "Use Utility Roll";
			obj4.skillSlot = (SkillSlot)2;
			obj4.requireSkillReady = true;
			obj4.minDistance = 8f;
			obj4.maxDistance = 20f;
			obj4.selectionRequiresTargetLoS = true;
			obj4.selectionRequiresOnGround = false;
			obj4.selectionRequiresAimTarget = false;
			obj4.maxTimesSelected = -1;
			obj4.moveTargetType = (TargetType)0;
			obj4.activationRequiresTargetLoS = false;
			obj4.activationRequiresAimTargetLoS = false;
			obj4.activationRequiresAimConfirmation = false;
			obj4.movementType = (MovementType)2;
			obj4.moveInputScale = 1f;
			obj4.aimType = (AimType)1;
			obj4.buttonPressType = (ButtonPressType)0;
			AISkillDriver obj5 = obj.AddComponent<AISkillDriver>();
			obj5.customName = "Use Special bomb";
			obj5.skillSlot = (SkillSlot)3;
			obj5.requireSkillReady = true;
			obj5.minDistance = 0f;
			obj5.maxDistance = 20f;
			obj5.selectionRequiresTargetLoS = false;
			obj5.selectionRequiresOnGround = false;
			obj5.selectionRequiresAimTarget = false;
			obj5.maxTimesSelected = -1;
			obj5.moveTargetType = (TargetType)0;
			obj5.activationRequiresTargetLoS = false;
			obj5.activationRequiresAimTargetLoS = false;
			obj5.activationRequiresAimConfirmation = false;
			obj5.movementType = (MovementType)1;
			obj5.moveInputScale = 1f;
			obj5.aimType = (AimType)1;
			obj5.buttonPressType = (ButtonPressType)0;
			AISkillDriver obj6 = obj.AddComponent<AISkillDriver>();
			obj6.customName = "Chase";
			obj6.skillSlot = (SkillSlot)(-1);
			obj6.requireSkillReady = false;
			obj6.minDistance = 0f;
			obj6.maxDistance = float.PositiveInfinity;
			obj6.moveTargetType = (TargetType)0;
			obj6.activationRequiresTargetLoS = false;
			obj6.activationRequiresAimTargetLoS = false;
			obj6.activationRequiresAimConfirmation = false;
			obj6.movementType = (MovementType)1;
			obj6.moveInputScale = 1f;
			obj6.aimType = (AimType)1;
			obj6.buttonPressType = (ButtonPressType)0;
		}
	}
	public static class HenryStaticValues
	{
		public const float swordDamageCoefficient = 2.8f;

		public const float gunDamageCoefficient = 4.2f;

		public const float bombDamageCoefficient = 16f;
	}
	public static class HenryAssets
	{
		public static GameObject swordSwingEffect;

		public static GameObject swordHitImpactEffect;

		public static GameObject bombExplosionEffect;

		public static NetworkSoundEventDef swordHitSoundEvent;

		public static GameObject bombProjectilePrefab;

		private static AssetBundle _assetBundle;

		public static void Init(AssetBundle assetBundle)
		{
			_assetBundle = assetBundle;
			swordHitSoundEvent = Content.CreateAndAddNetworkSoundEventDef("HenrySwordHit");
			CreateEffects();
			CreateProjectiles();
		}

		private static void CreateEffects()
		{
			CreateBombExplosionEffect();
			swordSwingEffect = _assetBundle.LoadEffect("HenrySwordSwingEffect", parentToTransform: true);
			swordHitImpactEffect = _assetBundle.LoadEffect("ImpactHenrySlash");
		}

		private static void CreateBombExplosionEffect()
		{
			//IL_0057: Unknown result type (might be due to invalid IL or missing references)
			//IL_0081: Unknown result type (might be due to invalid IL or missing references)
			//IL_0082: Unknown result type (might be due to invalid IL or missing references)
			bombExplosionEffect = _assetBundle.LoadEffect("BombExplosionEffect", "HenryBombExplosion");
			if (Object.op_Implicit((Object)(object)bombExplosionEffect))
			{
				ShakeEmitter obj = bombExplosionEffect.AddComponent<ShakeEmitter>();
				obj.amplitudeTimeDecay = true;
				obj.duration = 0.5f;
				obj.radius = 200f;
				obj.scaleShakeRadiusWithLocalScale = false;
				obj.wave = new Wave
				{
					amplitude = 1f,
					frequency = 40f,
					cycleOffset = 0f
				};
			}
		}

		private static void CreateProjectiles()
		{
			CreateBombProjectile();
			Content.AddProjectilePrefab(bombProjectilePrefab);
		}

		private static void CreateBombProjectile()
		{
			//IL_0045: Unknown result type (might be due to invalid IL or missing references)
			bombProjectilePrefab = Asset.CloneProjectilePrefab("CommandoGrenadeProjectile", "HenryBombProjectile");
			Object.Destroy((Object)(object)bombProjectilePrefab.GetComponent<ProjectileImpactExplosion>());
			ProjectileImpactExplosion obj = bombProjectilePrefab.AddComponent<ProjectileImpactExplosion>();
			((ProjectileExplosion)obj).blastRadius = 16f;
			((ProjectileExplosion)obj).blastDamageCoefficient = 1f;
			((ProjectileExplosion)obj).falloffModel = (FalloffModel)0;
			obj.destroyOnEnemy = true;
			obj.lifetime = 12f;
			obj.impactEffect = bombExplosionEffect;
			obj.lifetimeExpiredSound = Content.CreateAndAddNetworkSoundEventDef("HenryBombExplosion");
			obj.timerAfterImpact = true;
			obj.lifetimeAfterImpact = 0.1f;
			ProjectileController component = bombProjectilePrefab.GetComponent<ProjectileController>();
			if ((Object)(object)_assetBundle.LoadAsset<GameObject>("HenryBombGhost") != (Object)null)
			{
				component.ghostPrefab = _assetBundle.CreateProjectileGhostPrefab("HenryBombGhost");
			}
			component.startSound = "";
		}
	}
	public static class HenryStates
	{
		public static void Init()
		{
			Content.AddEntityState(typeof(SlashCombo));
			Content.AddEntityState(typeof(Shoot));
			Content.AddEntityState(typeof(Roll));
			Content.AddEntityState(typeof(ThrowBomb));
		}
	}
	public class HenryItemDisplays : ItemDisplaysBase
	{
		protected override void SetItemDisplayRules(List<KeyAssetRuleGroup> itemDisplayRules)
		{
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			//IL_004a: Unknown result type (might be due to invalid IL or missing references)
			//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_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_006d: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ad: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00da: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0124: Unknown result type (might be due to invalid IL or missing references)
			//IL_0138: Unknown result type (might be due to invalid IL or missing references)
			//IL_014c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0151: Unknown result type (might be due to invalid IL or missing references)
			//IL_0156: Unknown result type (might be due to invalid IL or missing references)
			//IL_015b: Unknown result type (might be due to invalid IL or missing references)
			//IL_019b: Unknown result type (might be due to invalid IL or missing references)
			//IL_01af: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c3: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_01cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0212: Unknown result type (might be due to invalid IL or missing references)
			//IL_0226: Unknown result type (might be due to invalid IL or missing references)
			//IL_023a: Unknown result type (might be due to invalid IL or missing references)
			//IL_023f: 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_0249: Unknown result type (might be due to invalid IL or missing references)
			//IL_0289: Unknown result type (might be due to invalid IL or missing references)
			//IL_029d: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_02bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_02c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0300: Unknown result type (might be due to invalid IL or missing references)
			//IL_0314: Unknown result type (might be due to invalid IL or missing references)
			//IL_0328: Unknown result type (might be due to invalid IL or missing references)
			//IL_032d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0332: Unknown result type (might be due to invalid IL or missing references)
			//IL_0337: Unknown result type (might be due to invalid IL or missing references)
			//IL_0377: Unknown result type (might be due to invalid IL or missing references)
			//IL_038b: Unknown result type (might be due to invalid IL or missing references)
			//IL_039f: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ee: 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_0416: Unknown result type (might be due to invalid IL or missing references)
			//IL_041b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0420: Unknown result type (might be due to invalid IL or missing references)
			//IL_0425: Unknown result type (might be due to invalid IL or missing references)
			//IL_0465: Unknown result type (might be due to invalid IL or missing references)
			//IL_0479: Unknown result type (might be due to invalid IL or missing references)
			//IL_048d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0492: Unknown result type (might be due to invalid IL or missing references)
			//IL_0497: Unknown result type (might be due to invalid IL or missing references)
			//IL_049c: 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_04f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0504: Unknown result type (might be due to invalid IL or missing references)
			//IL_0509: Unknown result type (might be due to invalid IL or missing references)
			//IL_050e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0513: Unknown result type (might be due to invalid IL or missing references)
			//IL_0553: Unknown result type (might be due to invalid IL or missing references)
			//IL_0567: Unknown result type (might be due to invalid IL or missing references)
			//IL_057b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0580: Unknown result type (might be due to invalid IL or missing references)
			//IL_0585: Unknown result type (might be due to invalid IL or missing references)
			//IL_058a: Unknown result type (might be due to invalid IL or missing references)
			//IL_05ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_05de: Unknown result type (might be due to invalid IL or missing references)
			//IL_05f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_05f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_05fc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0601: Unknown result type (might be due to invalid IL or missing references)
			//IL_0641: Unknown result type (might be due to invalid IL or missing references)
			//IL_0655: Unknown result type (might be due to invalid IL or missing references)
			//IL_0669: Unknown result type (might be due to invalid IL or missing references)
			//IL_066e: 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_0678: Unknown result type (might be due to invalid IL or missing references)
			//IL_06b8: Unknown result type (might be due to invalid IL or missing references)
			//IL_06cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_06e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_06e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_06ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_06ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_072f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0743: Unknown result type (might be due to invalid IL or missing references)
			//IL_0757: Unknown result type (might be due to invalid IL or missing references)
			//IL_075c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0761: Unknown result type (might be due to invalid IL or missing references)
			//IL_0766: 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_07ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_07d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_07d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_07dd: 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_0831: Unknown result type (might be due to invalid IL or missing references)
			//IL_0845: Unknown result type (might be due to invalid IL or missing references)
			//IL_084a: Unknown result type (might be due to invalid IL or missing references)
			//IL_084f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0854: Unknown result type (might be due to invalid IL or missing references)
			//IL_0894: Unknown result type (might be due to invalid IL or missing references)
			//IL_08a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_08bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_08c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_08c6: Unknown result type (might be due to invalid IL or missing references)
			//IL_08cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_090b: Unknown result type (might be due to invalid IL or missing references)
			//IL_091f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0933: Unknown result type (might be due to invalid IL or missing references)
			//IL_0938: Unknown result type (might be due to invalid IL or missing references)
			//IL_093d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0942: Unknown result type (might be due to invalid IL or missing references)
			//IL_0982: Unknown result type (might be due to invalid IL or missing references)
			//IL_0996: Unknown result type (might be due to invalid IL or missing references)
			//IL_09aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_09af: Unknown result type (might be due to invalid IL or missing references)
			//IL_09b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_09b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_09f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a0d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a21: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a26: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a2b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a30: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a70: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a84: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a98: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a9d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aa2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aa7: 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_0b0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b14: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b19: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b5e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b72: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b86: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b90: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b95: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bd5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0be9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bfd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c02: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c07: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c0c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c4c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c60: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c74: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c79: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c7e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c83: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cc3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cd7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ceb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cf0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cf5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cfa: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d3a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d4e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d62: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d67: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d6c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d71: Unknown result type (might be due to invalid IL or missing references)
			//IL_0db1: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dc5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dd9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dde: Unknown result type (might be due to invalid IL or missing references)
			//IL_0de3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0de8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e28: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e3c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e50: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e55: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e5a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e5f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e82: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e87: Unknown result type (might be due to invalid IL or missing references)
			//IL_0eac: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ec0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ed4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ed9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ede: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f03: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f17: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f2b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f30: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f35: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f3a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f7a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f8e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fa2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fa7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fac: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fb1: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ff1: 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_101e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1023: Unknown result type (might be due to invalid IL or missing references)
			//IL_1028: Unknown result type (might be due to invalid IL or missing references)
			//IL_1068: Unknown result type (might be due to invalid IL or missing references)
			//IL_107c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1090: Unknown result type (might be due to invalid IL or missing references)
			//IL_1095: Unknown result type (might be due to invalid IL or missing references)
			//IL_109a: Unknown result type (might be due to invalid IL or missing references)
			//IL_109f: Unknown result type (might be due to invalid IL or missing references)
			//IL_10df: Unknown result type (might be due to invalid IL or missing references)
			//IL_10f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_1107: Unknown result type (might be due to invalid IL or missing references)
			//IL_110c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1111: Unknown result type (might be due to invalid IL or missing references)
			//IL_1116: Unknown result type (might be due to invalid IL or missing references)
			//IL_1156: Unknown result type (might be due to invalid IL or missing references)
			//IL_116a: Unknown result type (might be due to invalid IL or missing references)
			//IL_117e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1183: 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_118d: Unknown result type (might be due to invalid IL or missing references)
			//IL_11cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_11e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_11f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_11fa: Unknown result type (might be due to invalid IL or missing references)
			//IL_11ff: Unknown result type (might be due to invalid IL or missing references)
			//IL_1204: Unknown result type (might be due to invalid IL or missing references)
			//IL_1244: Unknown result type (might be due to invalid IL or missing references)
			//IL_1258: Unknown result type (might be due to invalid IL or missing references)
			//IL_126c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1271: Unknown result type (might be due to invalid IL or missing references)
			//IL_1276: Unknown result type (might be due to invalid IL or missing references)
			//IL_127b: Unknown result type (might be due to invalid IL or missing references)
			//IL_12bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_12cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_12e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_12e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_12ed: Unknown result type (might be due to invalid IL or missing references)
			//IL_12f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_1332: Unknown result type (might be due to invalid IL or missing references)
			//IL_1346: Unknown result type (might be due to invalid IL or missing references)
			//IL_135a: Unknown result type (might be due to invalid IL or missing references)
			//IL_135f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1364: Unknown result type (might be due to invalid IL or missing references)
			//IL_1389: Unknown result type (might be due to invalid IL or missing references)
			//IL_139d: 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_13b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_13bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_13c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1400: Unknown result type (might be due to invalid IL or missing references)
			//IL_1414: Unknown result type (might be due to invalid IL or missing references)
			//IL_1428: 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_1432: Unknown result type (might be due to invalid IL or missing references)
			//IL_1437: Unknown result type (might be due to invalid IL or missing references)
			//IL_1477: Unknown result type (might be due to invalid IL or missing references)
			//IL_148b: Unknown result type (might be due to invalid IL or missing references)
			//IL_149f: Unknown result type (might be due to invalid IL or missing references)
			//IL_14a4: 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_14ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_14ee: Unknown result type (might be due to invalid IL or missing references)
			//IL_1502: Unknown result type (might be due to invalid IL or missing references)
			//IL_1516: Unknown result type (might be due to invalid IL or missing references)
			//IL_151b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1520: Unknown result type (might be due to invalid IL or missing references)
			//IL_1525: Unknown result type (might be due to invalid IL or missing references)
			//IL_1565: Unknown result type (might be due to invalid IL or missing references)
			//IL_1579: Unknown result type (might be due to invalid IL or missing references)
			//IL_158d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1592: Unknown result type (might be due to invalid IL or missing references)
			//IL_1597: Unknown result type (might be due to invalid IL or missing references)
			//IL_159c: Unknown result type (might be due to invalid IL or missing references)
			//IL_15dc: Unknown result type (might be due to invalid IL or missing references)
			//IL_15f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1604: Unknown result type (might be due to invalid IL or missing references)
			//IL_1609: Unknown result type (might be due to invalid IL or missing references)
			//IL_160e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1613: Unknown result type (might be due to invalid IL or missing references)
			//IL_1653: Unknown result type (might be due to invalid IL or missing references)
			//IL_1667: Unknown result type (might be due to invalid IL or missing references)
			//IL_167b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1680: Unknown result type (might be due to invalid IL or missing references)
			//IL_1685: Unknown result type (might be due to invalid IL or missing references)
			//IL_168a: Unknown result type (might be due to invalid IL or missing references)
			//IL_16ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_16de: Unknown result type (might be due to invalid IL or missing references)
			//IL_16f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_16f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_16fc: Unknown result type (might be due to invalid IL or missing references)
			//IL_1701: Unknown result type (might be due to invalid IL or missing references)
			//IL_1741: Unknown result type (might be due to invalid IL or missing references)
			//IL_1755: Unknown result type (might be due to invalid IL or missing references)
			//IL_1769: Unknown result type (might be due to invalid IL or missing references)
			//IL_176e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1773: Unknown result type (might be due to invalid IL or missing references)
			//IL_1778: Unknown result type (might be due to invalid IL or missing references)
			//IL_17b8: Unknown result type (might be due to invalid IL or missing references)
			//IL_17cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_17e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_17e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_17ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_17ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_182f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1843: Unknown result type (might be due to invalid IL or missing references)
			//IL_1857: 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_1861: Unknown result type (might be due to invalid IL or missing references)
			//IL_1866: Unknown result type (might be due to invalid IL or missing references)
			//IL_18a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_18ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_18ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_18d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_18d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_18dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_191d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1931: Unknown result type (might be due to invalid IL or missing references)
			//IL_1945: Unknown result type (might be due to invalid IL or missing references)
			//IL_194a: Unknown result type (might be due to invalid IL or missing references)
			//IL_194f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1954: Unknown result type (might be due to invalid IL or missing references)
			//IL_1994: Unknown result type (might be due to invalid IL or missing references)
			//IL_19a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_19bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_19c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_19c6: Unknown result type (might be due to invalid IL or missing references)
			//IL_19cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a0b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a1f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a33: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a38: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a3d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a42: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a82: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a96: Unknown result type (might be due to invalid IL or missing references)
			//IL_1aaa: Unknown result type (might be due to invalid IL or missing references)
			//IL_1aaf: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ab4: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ab9: Unknown result type (might be due to invalid IL or missing references)
			//IL_1af9: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b0d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b21: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b26: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b2b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b30: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b70: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b84: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b98: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b9d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ba2: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ba7: Unknown result type (might be due to invalid IL or missing references)
			//IL_1be7: Unknown result type (might be due to invalid IL or missing references)
			//IL_1bfb: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c14: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c19: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c21: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c26: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c2b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c6b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c7f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c93: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c98: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c9d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ca2: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ce2: Unknown result type (might be due to invalid IL or missing references)
			//IL_1cf6: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d0a: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d14: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d19: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d59: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d6d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d81: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d86: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1d90: Unknown result type (might be due to invalid IL or missing references)
			//IL_1dd0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1de4: Unknown result type (might be due to invalid IL or missing references)
			//IL_1df8: Unknown result type (might be due to invalid IL or missing references)
			//IL_1dfd: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e02: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e07: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e47: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e5b: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e6f: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e74: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e79: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e9e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1eb2: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ec6: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ecb: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ed0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ed5: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f15: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f29: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f3d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f42: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f47: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f4c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f8c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fa0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fb4: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fb9: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fbe: Unknown result type (might be due to invalid IL or missing references)
			//IL_1fc3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2003: Unknown result type (might be due to invalid IL or missing references)
			//IL_2017: Unknown result type (might be due to invalid IL or missing references)
			//IL_202b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2030: Unknown result type (might be due to invalid IL or missing references)
			//IL_2035: Unknown result type (might be due to invalid IL or missing references)
			//IL_203a: Unknown result type (might be due to invalid IL or missing references)
			//IL_207a: Unknown result type (might be due to invalid IL or missing references)
			//IL_208e: Unknown result type (might be due to invalid IL or missing references)
			//IL_20a2: Unknown result type (might be due to invalid IL or missing references)
			//IL_20a7: Unknown result type (might be due to invalid IL or missing references)
			//IL_20ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_20b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_20f1: Unknown result type (might be due to invalid IL or missing references)
			//IL_2105: Unknown result type (might be due to invalid IL or missing references)
			//IL_2119: Unknown result type (might be due to invalid IL or missing references)
			//IL_211e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2123: Unknown result type (might be due to invalid IL or missing references)
			//IL_2128: Unknown result type (might be due to invalid IL or missing references)
			//IL_2168: Unknown result type (might be due to invalid IL or missing references)
			//IL_217c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2190: Unknown result type (might be due to invalid IL or missing references)
			//IL_2195: Unknown result type (might be due to invalid IL or missing references)
			//IL_219a: Unknown result type (might be due to invalid IL or missing references)
			//IL_219f: Unknown result type (might be due to invalid IL or missing references)
			//IL_21df: Unknown result type (might be due to invalid IL or missing references)
			//IL_21f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2207: Unknown result type (might be due to invalid IL or missing references)
			//IL_220c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2211: 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_2256: Unknown result type (might be due to invalid IL or missing references)
			//IL_226a: Unknown result type (might be due to invalid IL or missing references)
			//IL_227e: 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_2288: Unknown result type (might be due to invalid IL or missing references)
			//IL_228d: Unknown result type (might be due to invalid IL or missing references)
			//IL_22cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_22e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_22f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_22fa: Unknown result type (might be due to invalid IL or missing references)
			//IL_22ff: Unknown result type (might be due to invalid IL or missing references)
			//IL_2304: Unknown result type (might be due to invalid IL or missing references)
			//IL_2344: Unknown result type (might be due to invalid IL or missing references)
			//IL_2358: Unknown result type (might be due to invalid IL or missing references)
			//IL_236c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2371: Unknown result type (might be due to invalid IL or missing references)
			//IL_2376: Unknown result type (might be due to invalid IL or missing references)
			//IL_237b: Unknown result type (might be due to invalid IL or missing references)
			//IL_23bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_23cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_23e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_23e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_23ed: 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_2432: Unknown result type (might be due to invalid IL or missing references)
			//IL_2446: Unknown result type (might be due to invalid IL or missing references)
			//IL_245a: 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_2464: Unknown result type (might be due to invalid IL or missing references)
			//IL_2469: Unknown result type (might be due to invalid IL or missing references)
			//IL_24a9: Unknown result type (might be due to invalid IL or missing references)
			//IL_24bd: Unknown result type (might be due to invalid IL or missing references)
			//IL_24d1: Unknown result type (might be due to invalid IL or missing references)
			//IL_24d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_24db: Unknown result type (might be due to invalid IL or missing references)
			//IL_24e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_2520: Unknown result type (might be due to invalid IL or missing references)
			//IL_2534: Unknown result type (might be due to invalid IL or missing references)
			//IL_2548: Unknown result type (might be due to invalid IL or missing references)
			//IL_254d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2552: Unknown result type (might be due to invalid IL or missing references)
			//IL_2557: Unknown result type (might be due to invalid IL or missing references)
			//IL_2597: Unknown result type (might be due to invalid IL or missing references)
			//IL_25ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_25bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_25c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_25c9: Unknown result type (might be due to invalid IL or missing references)
			//IL_25ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_260e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2622: Unknown result type (might be due to invalid IL or missing references)
			//IL_2636: Unknown result type (might be due to invalid IL or missing references)
			//IL_263b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2640: Unknown result type (might be due to invalid IL or missing references)
			//IL_2645: Unknown result type (might be due to invalid IL or missing references)
			//IL_2685: Unknown result type (might be due to invalid IL or missing references)
			//IL_2699: Unknown result type (might be due to invalid IL or missing references)
			//IL_26ad: Unknown result type (might be due to invalid IL or missing references)
			//IL_26b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_26b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_26bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_26fc: Unknown result type (might be due to invalid IL or missing references)
			//IL_2710: Unknown result type (might be due to invalid IL or missing references)
			//IL_2724: Unknown result type (might be due to invalid IL or missing references)
			//IL_2729: Unknown result type (might be due to invalid IL or missing references)
			//IL_272e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2733: Unknown result type (might be due to invalid IL or missing references)
			//IL_2773: Unknown result type (might be due to invalid IL or missing references)
			//IL_2787: Unknown result type (might be due to invalid IL or missing references)
			//IL_279b: Unknown result type (might be due to invalid IL or missing references)
			//IL_27a0: Unknown result type (might be due to invalid IL or missing references)
			//IL_27a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_27aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_27ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_27fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_2812: Unknown result type (might be due to invalid IL or missing references)
			//IL_2817: Unknown result type (might be due to invalid IL or missing references)
			//IL_281c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2821: Unknown result type (might be due to invalid IL or missing references)
			//IL_2861: Unknown result type (might be due to invalid IL or missing references)
			//IL_2875: Unknown result type (might be due to invalid IL or missing references)
			//IL_2889: 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_2893: Unknown result type (might be due to invalid IL or missing references)
			//IL_2898: Unknown result type (might be due to invalid IL or missing references)
			//IL_28d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_28ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_2900: Unknown result type (might be due to invalid IL or missing references)
			//IL_2905: Unknown result type (might be due to invalid IL or missing references)
			//IL_290a: Unknown result type (might be due to invalid IL or missing references)
			//IL_290f: Unknown result type (might be due to invalid IL or missing references)
			//IL_294f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2963: Unknown result type (might be due to invalid IL or missing references)
			//IL_2977: Unknown result type (might be due to invalid IL or missing references)
			//IL_297c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2981: Unknown result type (might be due to invalid IL or missing references)
			//IL_2986: Unknown result type (might be due to invalid IL or missing references)
			//IL_29c6: Unknown result type (might be due to invalid IL or missing references)
			//IL_29da: Unknown result type (might be due to invalid IL or missing references)
			//IL_29ee: Unknown result type (might be due to invalid IL or missing references)
			//IL_29f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_29f8: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a1d: 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_2a45: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a4a: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a4f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a54: Unknown result type (might be due to invalid IL or missing references)
			//IL_2a94: Unknown result type (might be due to invalid IL or missing references)
			//IL_2aa8: Unknown result type (might be due to invalid IL or missing references)
			//IL_2abc: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ac1: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ac6: Unknown result type (might be due to invalid IL or missing references)
			//IL_2acb: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b0b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b1f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b33: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b38: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b3d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b42: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b82: Unknown result type (might be due to invalid IL or missing references)
			//IL_2b96: Unknown result type (might be due to invalid IL or missing references)
			//IL_2baa: Unknown result type (might be due to invalid IL or missing references)
			//IL_2baf: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bb4: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bb9: Unknown result type (might be due to invalid IL or missing references)
			//IL_2bf9: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c0d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c21: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c26: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c2b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c30: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c70: Unknown result type (might be due to invalid IL or missing references)
			//IL_2c84: 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_2c9d: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ca2: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ca7: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ce7: Unknown result type (might be due to invalid IL or missing references)
			//IL_2cfb: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d14: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d19: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d5e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d72: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d86: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d90: Unknown result type (might be due to invalid IL or missing references)
			//IL_2d95: Unknown result type (might be due to invalid IL or missing references)
			//IL_2dd5: Unknown result type (might be due to invalid IL or missing references)
			//IL_2de9: Unknown result type (might be due to invalid IL or missing references)
			//IL_2dfd: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e02: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e07: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e0c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e4c: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e60: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e74: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e79: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e7e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2e83: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ec3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ed7: Unknown result type (might be due to invalid IL or missing references)
			//IL_2eeb: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ef0: Unknown result type (might be due to invalid IL or missing references)
			//IL_2ef5: Unknown result type (might be due to invalid IL or missing references)
			//IL_2efa: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f3a: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f4e: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f62: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f67: Unknown result type (might be due to invalid IL or missing references)
			//IL_2f6c: 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_2fb1: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fc5: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fd9: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fde: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fe3: Unknown result type (might be due to invalid IL or missing references)
			//IL_2fe8: Unknown result type (might be due to invalid IL or missing references)
			//IL_3028: Unknown result type (might be due to invalid IL or missing references)
			//IL_303c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3050: Unknown result type (might be due to invalid IL or missing references)
			//IL_3055: Unknown result type (might be due to invalid IL or missing references)
			//IL_305a: Unknown result type (might be due to invalid IL or missing references)
			//IL_305f: Unknown result type (might be due to invalid IL or missing references)
			//IL_309f: Unknown result type (might be due to invalid IL or missing references)
			//IL_30b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_30c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_30cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_30d1: Unknown result type (might be due to invalid IL or missing references)
			//IL_30d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_3116: 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_313e: Unknown result type (might be due to invalid IL or missing references)
			//IL_3143: Unknown result type (might be due to invalid IL or missing references)
			//IL_3148: Unknown result type (might be due to invalid IL or missing references)
			//IL_314d: Unknown result type (might be due to invalid IL or missing references)
			//IL_318d: Unknown result type (might be due to invalid IL or missing references)
			//IL_31a1: Unknown result type (might be due to invalid IL or missing references)
			//IL_31b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_31ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_31bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_31c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_3204: Unknown result type (might be due to invalid IL or missing references)
			//IL_3218: Unknown result type (might be due to invalid IL or missing references)
			//IL_322c: Unknown result type (might be due to invalid IL or missing references)
			//IL_3231: Unknown result type (might be due to invalid IL or missing references)
			//IL_3236: Unknown result type (might be due to invalid IL or missing references)
			//IL_325b: Unknown result type (might be due to invalid IL or missing references)
			//IL_326f: Unknown result type (might be due to invalid IL or missing references)
			//IL_3283: Unknown result type (might be due to invalid IL or missing references)
			//IL_3288: Unknown result type (might be due to invalid IL or missing references)
			//IL_328d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3292: Unknown result type (might be due to invalid IL or missing references)
			//IL_32d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_32e6: Unknown result type (might be due to invalid IL or missing references)
			//IL_32fa: Unknown result type (might be due to invalid IL or missing references)
			//IL_32ff: Unknown result type (might be due to invalid IL or missing references)
			//IL_3304: Unknown result type (might be due to invalid IL or missing references)
			//IL_3309: Unknown result type (might be due to invalid IL or missing references)
			//IL_3349: Unknown result type (might be due to invalid IL or missing references)
			//IL_335d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3371: Unknown result type (might be due to invalid IL or missing references)
			//IL_3376: Unknown result type (might be due to invalid IL or missing references)
			//IL_337b: Unknown result type (might be due to invalid IL or missing references)
			//IL_3380: Unknown result type (might be due to invalid IL or missing references)
			//IL_33c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_33d4: 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_33ed: Unknown result type (might be due to invalid IL or missing references)
			//IL_33f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_33f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_3437: Unknown result type (might be due to invalid IL or missing references)
			//IL_344b: Unknown result type (might be due to invalid IL or missing references)
			//IL_345f: Unknown result type (might be due to invalid IL or missing references)
			//IL_3464: Unknown result type (might be due to invalid IL or missing references)
			//IL_3469: Unknown result type (might be due to invalid IL or missing references)
			//IL_346e: Unknown result type (might be due to invalid IL or missing references)
			//IL_34ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_34c2: Unknown result type (might be due to invalid IL or missing references)
			//IL_34d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_34db: Unknown result type (might be due to invalid IL or missing references)
			//IL_34e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_34e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_3525: Unknown result type (might be due to invalid IL or missing references)
			//IL_3539: Unknown result type (might be due to invalid IL or missing references)
			//IL_354d: Unknown result type (might be due to invalid IL or missing references)
			//IL_3552: Unknown result type (might be due to invalid IL or missing references)
			//IL_3557: Unknown result type (might be due to invalid IL or missing references)
			//IL_355c: Unknown result type (might be due to invalid IL or missing references)
			//IL_359c: Unknown result type (might be due to invalid IL or missing references)
			//IL_35b0: Unknown result type (might be due to invalid IL or missing references)
			//IL_35c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_35c9: Unknown result type (might be due to invalid IL or missing references)
			//IL_35ce: Unknown result type (might be due to invalid IL or missing references)
			//IL_35d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_3613: Unknown result type (might be due to invalid IL or missing references)
			//IL_3627: Unknown result type (might be due to invalid IL or missing references)
			//IL_363b: Unknown result type (might be due to invalid IL or missing references)
			//IL_3640: Unknown result type (might be due to invalid IL or missing references)
			//IL_3645: Unknown result type (might be due to invalid IL or missing references)
			//IL_364a: Unknown result type (might be due to invalid IL or missing references)
			//IL_368a: Unknown result type (might be due to invalid IL or missing references)
			//IL_369e: Unknown result type (might be due to invalid IL or missing references)
			//IL_36b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_36b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_36bc: 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_3701: Unknown result type (might be due to invalid IL or missing references)
			//IL_3715: Unknown result type (might be due to invalid IL or missing references)
			//IL_3729: Unknown result type (might be due to invalid IL or missing references)
			//IL_372e: Unknown result type (might be due to invalid IL or missing references)
			//IL_3733: Unknown result type (might be due to invalid IL or missing references)
			//IL_3738: Unknown result type (might be due to invalid IL or missing references)
			//IL_3