Decompiled source of RuntimeMaterialInspector v1.0.1

MMHOOK_RuntimeInspector.Runtime.dll

Decompiled 2 months ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Reflection;
using MonoMod.Cil;
using MonoMod.RuntimeDetour.HookGen;
using On.RuntimeInspectorNamespace;
using RuntimeInspectorNamespace;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

[assembly: AssemblyVersion("0.0.0.0")]
namespace On.RuntimeInspectorNamespace
{
	public static class ColorWheelControl
	{
		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Awake(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Awake(orig_Awake orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnRectTransformDimensionsChange(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnRectTransformDimensionsChange(orig_OnRectTransformDimensionsChange orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UpdateProperties(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UpdateProperties(orig_UpdateProperties orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_PickColor(ColorWheelControl self, Color c);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_PickColor(orig_PickColor orig, ColorWheelControl self, Color c);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnPointerDown(ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnPointerDown(orig_OnPointerDown orig, ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnDrag(ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnDrag(orig_OnDrag orig, ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnPointerUp(ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnPointerUp(orig_OnPointerUp orig, ColorWheelControl self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_GetSelectedColor(ColorWheelControl self, Vector2 pointerPos);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_GetSelectedColor(orig_GetSelectedColor orig, ColorWheelControl self, Vector2 pointerPos);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UpdateColor(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UpdateColor(orig_UpdateColor orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate Color orig_GetCurrentBaseColor(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate Color hook_GetCurrentBaseColor(orig_GetCurrentBaseColor orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UpdateSelectors(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UpdateSelectors(orig_UpdateSelectors orig, ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_ctor(ColorWheelControl self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_ctor(orig_ctor orig, ColorWheelControl self);

		public static class OnColorChangedDelegate
		{
			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_ctor(OnColorChangedDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_ctor(orig_ctor orig, OnColorChangedDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_Invoke(OnColorChangedDelegate self, Color32 color);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_Invoke(orig_Invoke orig, OnColorChangedDelegate self, Color32 color);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult orig_BeginInvoke(OnColorChangedDelegate self, Color32 color, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult hook_BeginInvoke(orig_BeginInvoke orig, OnColorChangedDelegate self, Color32 color, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_EndInvoke(OnColorChangedDelegate self, IAsyncResult result);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_EndInvoke(orig_EndInvoke orig, OnColorChangedDelegate self, IAsyncResult result);

			public static event hook_ctor ctor
			{
				add
				{
					HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_Invoke Invoke
			{
				add
				{
					HookEndpointManager.Add<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_BeginInvoke BeginInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_EndInvoke EndInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}
		}

		public static event hook_Awake Awake
		{
			add
			{
				HookEndpointManager.Add<hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnRectTransformDimensionsChange OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Add<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UpdateProperties UpdateProperties
		{
			add
			{
				HookEndpointManager.Add<hook_UpdateProperties>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UpdateProperties>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_PickColor PickColor
		{
			add
			{
				HookEndpointManager.Add<hook_PickColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_PickColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnPointerDown OnPointerDown
		{
			add
			{
				HookEndpointManager.Add<hook_OnPointerDown>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnPointerDown>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnDrag OnDrag
		{
			add
			{
				HookEndpointManager.Add<hook_OnDrag>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnDrag>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnPointerUp OnPointerUp
		{
			add
			{
				HookEndpointManager.Add<hook_OnPointerUp>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnPointerUp>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_GetSelectedColor GetSelectedColor
		{
			add
			{
				HookEndpointManager.Add<hook_GetSelectedColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_GetSelectedColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UpdateColor UpdateColor
		{
			add
			{
				HookEndpointManager.Add<hook_UpdateColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UpdateColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_GetCurrentBaseColor GetCurrentBaseColor
		{
			add
			{
				HookEndpointManager.Add<hook_GetCurrentBaseColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_GetCurrentBaseColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UpdateSelectors UpdateSelectors
		{
			add
			{
				HookEndpointManager.Add<hook_UpdateSelectors>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UpdateSelectors>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_ctor ctor
		{
			add
			{
				HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}
	}
}
namespace IL.RuntimeInspectorNamespace
{
	public static class ColorWheelControl
	{
		public static class OnColorChangedDelegate
		{
			public static event Manipulator ctor
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator Invoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator BeginInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator EndInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.OnColorChangedDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}
		}

		public static event Manipulator Awake
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UpdateProperties
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateProperties>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateProperties>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator PickColor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_PickColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_PickColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnPointerDown
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnPointerDown>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnPointerDown>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnDrag
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnDrag>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnDrag>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnPointerUp
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnPointerUp>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_OnPointerUp>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator GetSelectedColor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_GetSelectedColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_GetSelectedColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UpdateColor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator GetCurrentBaseColor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_GetCurrentBaseColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_GetCurrentBaseColor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UpdateSelectors
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateSelectors>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_UpdateSelectors>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator ctor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.ColorWheelControl.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}
	}
}
namespace On.RuntimeInspectorNamespace
{
	public static class RuntimeHierarchy
	{
		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Awake(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Awake(orig_Awake orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Start(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Start(orig_Start orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnDestroy(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnDestroy(orig_OnDestroy orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnRectTransformDimensionsChange(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnRectTransformDimensionsChange(orig_OnRectTransformDimensionsChange orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnTransformParentChanged(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnTransformParentChanged(orig_OnTransformParentChanged orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Update(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Update(orig_Update orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Refresh(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Refresh(orig_Refresh orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RefreshListView(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RefreshListView(orig_RefreshListView orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_SetListViewDirty(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_SetListViewDirty(orig_SetListViewDirty orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RefreshSearchResults(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RefreshSearchResults(orig_RefreshSearchResults orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RefreshNameOf(RuntimeHierarchy self, Transform target);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RefreshNameOf(orig_RefreshNameOf orig, RuntimeHierarchy self, Transform target);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RefreshSkin(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RefreshSkin(orig_RefreshSkin orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent(RuntimeHierarchy self, RecycledListItem item);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent(orig_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent orig, RuntimeHierarchy self, RecycledListItem item);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked(RuntimeHierarchy self, RecycledListItem item);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked(orig_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked orig, RuntimeHierarchy self, RecycledListItem item);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyData orig_GetDataAt(RuntimeHierarchy self, int index);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyData hook_GetDataAt(orig_GetDataAt orig, RuntimeHierarchy self, int index);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnDrawerPointerEvent(RuntimeHierarchy self, HierarchyField drawer, PointerEventData eventData, bool isPointerDown);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnDrawerPointerEvent(orig_OnDrawerPointerEvent orig, RuntimeHierarchy self, HierarchyField drawer, PointerEventData eventData, bool isPointerDown);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate bool orig_Select(RuntimeHierarchy self, Transform selection, bool forceSelection);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate bool hook_Select(orig_Select orig, RuntimeHierarchy self, Transform selection, bool forceSelection);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Deselect(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Deselect(orig_Deselect orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnSearchTermChanged(RuntimeHierarchy self, string search);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnSearchTermChanged(orig_OnSearchTermChanged orig, RuntimeHierarchy self, string search);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnSceneLoaded(RuntimeHierarchy self, Scene arg0, LoadSceneMode arg1);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnSceneLoaded(orig_OnSceneLoaded orig, RuntimeHierarchy self, Scene arg0, LoadSceneMode arg1);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnSceneUnloaded(RuntimeHierarchy self, Scene arg0);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnSceneUnloaded(orig_OnSceneUnloaded orig, RuntimeHierarchy self, Scene arg0);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate Scene orig_GetDontDestroyOnLoadScene(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate Scene hook_GetDontDestroyOnLoadScene(orig_GetDontDestroyOnLoadScene orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_AddToPseudoScene_string_Transform(RuntimeHierarchy self, string scene, Transform transform);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_AddToPseudoScene_string_Transform(orig_AddToPseudoScene_string_Transform orig, RuntimeHierarchy self, string scene, Transform transform);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_AddToPseudoScene_string_IEnumerable1(RuntimeHierarchy self, string scene, IEnumerable<Transform> transforms);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_AddToPseudoScene_string_IEnumerable1(orig_AddToPseudoScene_string_IEnumerable1 orig, RuntimeHierarchy self, string scene, IEnumerable<Transform> transforms);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RemoveFromPseudoScene_string_Transform_bool(RuntimeHierarchy self, string scene, Transform transform, bool deleteSceneIfEmpty);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RemoveFromPseudoScene_string_Transform_bool(orig_RemoveFromPseudoScene_string_Transform_bool orig, RuntimeHierarchy self, string scene, Transform transform, bool deleteSceneIfEmpty);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RemoveFromPseudoScene_string_IEnumerable1_bool(RuntimeHierarchy self, string scene, IEnumerable<Transform> transforms, bool deleteSceneIfEmpty);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RemoveFromPseudoScene_string_IEnumerable1_bool(orig_RemoveFromPseudoScene_string_IEnumerable1_bool orig, RuntimeHierarchy self, string scene, IEnumerable<Transform> transforms, bool deleteSceneIfEmpty);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyDataRootPseudoScene orig_GetPseudoScene(RuntimeHierarchy self, string scene, bool createIfNotExists);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyDataRootPseudoScene hook_GetPseudoScene(orig_GetPseudoScene orig, RuntimeHierarchy self, string scene, bool createIfNotExists);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_CreatePseudoScene(RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_CreatePseudoScene(orig_CreatePseudoScene orig, RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyDataRootPseudoScene orig_CreatePseudoSceneInternal(RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate HierarchyDataRootPseudoScene hook_CreatePseudoSceneInternal(orig_CreatePseudoSceneInternal orig, RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_DeleteAllPseudoScenes(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_DeleteAllPseudoScenes(orig_DeleteAllPseudoScenes orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_DeletePseudoScene(RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_DeletePseudoScene(orig_DeletePseudoScene orig, RuntimeHierarchy self, string scene);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate RecycledListItem orig_RuntimeInspectorNamespace.IListViewAdapter.CreateItem(RuntimeHierarchy self, Transform parent);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate RecycledListItem hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem(orig_RuntimeInspectorNamespace.IListViewAdapter.CreateItem orig, RuntimeHierarchy self, Transform parent);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_ctor(RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_ctor(orig_ctor orig, RuntimeHierarchy self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_cctor();

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_cctor(orig_cctor orig);

		public static class SelectionChangedDelegate
		{
			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_ctor(SelectionChangedDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_ctor(orig_ctor orig, SelectionChangedDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_Invoke(SelectionChangedDelegate self, Transform selection);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_Invoke(orig_Invoke orig, SelectionChangedDelegate self, Transform selection);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult orig_BeginInvoke(SelectionChangedDelegate self, Transform selection, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult hook_BeginInvoke(orig_BeginInvoke orig, SelectionChangedDelegate self, Transform selection, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_EndInvoke(SelectionChangedDelegate self, IAsyncResult result);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_EndInvoke(orig_EndInvoke orig, SelectionChangedDelegate self, IAsyncResult result);

			public static event hook_ctor ctor
			{
				add
				{
					HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_Invoke Invoke
			{
				add
				{
					HookEndpointManager.Add<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_BeginInvoke BeginInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_EndInvoke EndInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}
		}

		public static class DoubleClickDelegate
		{
			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_ctor(DoubleClickDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_ctor(orig_ctor orig, DoubleClickDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_Invoke(DoubleClickDelegate self, Transform selection);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_Invoke(orig_Invoke orig, DoubleClickDelegate self, Transform selection);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult orig_BeginInvoke(DoubleClickDelegate self, Transform selection, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult hook_BeginInvoke(orig_BeginInvoke orig, DoubleClickDelegate self, Transform selection, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_EndInvoke(DoubleClickDelegate self, IAsyncResult result);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_EndInvoke(orig_EndInvoke orig, DoubleClickDelegate self, IAsyncResult result);

			public static event hook_ctor ctor
			{
				add
				{
					HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_Invoke Invoke
			{
				add
				{
					HookEndpointManager.Add<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_BeginInvoke BeginInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_EndInvoke EndInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}
		}

		public static class GameObjectFilterDelegate
		{
			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void orig_ctor(GameObjectFilterDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate void hook_ctor(orig_ctor orig, GameObjectFilterDelegate self, object @object, IntPtr method);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate bool orig_Invoke(GameObjectFilterDelegate self, Transform transform);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate bool hook_Invoke(orig_Invoke orig, GameObjectFilterDelegate self, Transform transform);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult orig_BeginInvoke(GameObjectFilterDelegate self, Transform transform, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate IAsyncResult hook_BeginInvoke(orig_BeginInvoke orig, GameObjectFilterDelegate self, Transform transform, AsyncCallback callback, object @object);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate bool orig_EndInvoke(GameObjectFilterDelegate self, IAsyncResult result);

			[EditorBrowsable(EditorBrowsableState.Never)]
			public delegate bool hook_EndInvoke(orig_EndInvoke orig, GameObjectFilterDelegate self, IAsyncResult result);

			public static event hook_ctor ctor
			{
				add
				{
					HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_Invoke Invoke
			{
				add
				{
					HookEndpointManager.Add<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_BeginInvoke BeginInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}

			public static event hook_EndInvoke EndInvoke
			{
				add
				{
					HookEndpointManager.Add<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
				remove
				{
					HookEndpointManager.Remove<hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
				}
			}
		}

		public static event hook_Awake Awake
		{
			add
			{
				HookEndpointManager.Add<hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Start Start
		{
			add
			{
				HookEndpointManager.Add<hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnDestroy OnDestroy
		{
			add
			{
				HookEndpointManager.Add<hook_OnDestroy>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnDestroy>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnRectTransformDimensionsChange OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Add<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnTransformParentChanged OnTransformParentChanged
		{
			add
			{
				HookEndpointManager.Add<hook_OnTransformParentChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnTransformParentChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Update Update
		{
			add
			{
				HookEndpointManager.Add<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Refresh Refresh
		{
			add
			{
				HookEndpointManager.Add<hook_Refresh>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Refresh>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RefreshListView RefreshListView
		{
			add
			{
				HookEndpointManager.Add<hook_RefreshListView>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RefreshListView>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_SetListViewDirty SetListViewDirty
		{
			add
			{
				HookEndpointManager.Add<hook_SetListViewDirty>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_SetListViewDirty>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RefreshSearchResults RefreshSearchResults
		{
			add
			{
				HookEndpointManager.Add<hook_RefreshSearchResults>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RefreshSearchResults>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RefreshNameOf RefreshNameOf
		{
			add
			{
				HookEndpointManager.Add<hook_RefreshNameOf>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RefreshNameOf>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RefreshSkin RefreshSkin
		{
			add
			{
				HookEndpointManager.Add<hook_RefreshSkin>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RefreshSkin>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent RuntimeInspectorNamespace.IListViewAdapter.SetItemContent
		{
			add
			{
				HookEndpointManager.Add<hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked
		{
			add
			{
				HookEndpointManager.Add<hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_GetDataAt GetDataAt
		{
			add
			{
				HookEndpointManager.Add<hook_GetDataAt>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_GetDataAt>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnDrawerPointerEvent OnDrawerPointerEvent
		{
			add
			{
				HookEndpointManager.Add<hook_OnDrawerPointerEvent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnDrawerPointerEvent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Select Select
		{
			add
			{
				HookEndpointManager.Add<hook_Select>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Select>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Deselect Deselect
		{
			add
			{
				HookEndpointManager.Add<hook_Deselect>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Deselect>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnSearchTermChanged OnSearchTermChanged
		{
			add
			{
				HookEndpointManager.Add<hook_OnSearchTermChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnSearchTermChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnSceneLoaded OnSceneLoaded
		{
			add
			{
				HookEndpointManager.Add<hook_OnSceneLoaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnSceneLoaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnSceneUnloaded OnSceneUnloaded
		{
			add
			{
				HookEndpointManager.Add<hook_OnSceneUnloaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnSceneUnloaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_GetDontDestroyOnLoadScene GetDontDestroyOnLoadScene
		{
			add
			{
				HookEndpointManager.Add<hook_GetDontDestroyOnLoadScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_GetDontDestroyOnLoadScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_AddToPseudoScene_string_Transform AddToPseudoScene_string_Transform
		{
			add
			{
				HookEndpointManager.Add<hook_AddToPseudoScene_string_Transform>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_AddToPseudoScene_string_Transform>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_AddToPseudoScene_string_IEnumerable1 AddToPseudoScene_string_IEnumerable1
		{
			add
			{
				HookEndpointManager.Add<hook_AddToPseudoScene_string_IEnumerable1>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_AddToPseudoScene_string_IEnumerable1>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RemoveFromPseudoScene_string_Transform_bool RemoveFromPseudoScene_string_Transform_bool
		{
			add
			{
				HookEndpointManager.Add<hook_RemoveFromPseudoScene_string_Transform_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RemoveFromPseudoScene_string_Transform_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RemoveFromPseudoScene_string_IEnumerable1_bool RemoveFromPseudoScene_string_IEnumerable1_bool
		{
			add
			{
				HookEndpointManager.Add<hook_RemoveFromPseudoScene_string_IEnumerable1_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RemoveFromPseudoScene_string_IEnumerable1_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_GetPseudoScene GetPseudoScene
		{
			add
			{
				HookEndpointManager.Add<hook_GetPseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_GetPseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_CreatePseudoScene CreatePseudoScene
		{
			add
			{
				HookEndpointManager.Add<hook_CreatePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_CreatePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_CreatePseudoSceneInternal CreatePseudoSceneInternal
		{
			add
			{
				HookEndpointManager.Add<hook_CreatePseudoSceneInternal>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_CreatePseudoSceneInternal>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_DeleteAllPseudoScenes DeleteAllPseudoScenes
		{
			add
			{
				HookEndpointManager.Add<hook_DeleteAllPseudoScenes>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_DeleteAllPseudoScenes>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_DeletePseudoScene DeletePseudoScene
		{
			add
			{
				HookEndpointManager.Add<hook_DeletePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_DeletePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem RuntimeInspectorNamespace.IListViewAdapter.CreateItem
		{
			add
			{
				HookEndpointManager.Add<hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_ctor ctor
		{
			add
			{
				HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_cctor cctor
		{
			add
			{
				HookEndpointManager.Add<hook_cctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_cctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}
	}
}
namespace IL.RuntimeInspectorNamespace
{
	public static class RuntimeHierarchy
	{
		public static class SelectionChangedDelegate
		{
			public static event Manipulator ctor
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator Invoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator BeginInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator EndInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.SelectionChangedDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}
		}

		public static class DoubleClickDelegate
		{
			public static event Manipulator ctor
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator Invoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator BeginInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator EndInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.DoubleClickDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}
		}

		public static class GameObjectFilterDelegate
		{
			public static event Manipulator ctor
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator Invoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_Invoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator BeginInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_BeginInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}

			public static event Manipulator EndInvoke
			{
				add
				{
					HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
				remove
				{
					HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.GameObjectFilterDelegate.hook_EndInvoke>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
				}
			}
		}

		public static event Manipulator Awake
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Awake>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Start
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnDestroy
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnDestroy>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnDestroy>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnTransformParentChanged
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnTransformParentChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnTransformParentChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Update
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Refresh
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Refresh>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Refresh>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RefreshListView
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshListView>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshListView>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator SetListViewDirty
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_SetListViewDirty>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_SetListViewDirty>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RefreshSearchResults
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshSearchResults>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshSearchResults>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RefreshNameOf
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshNameOf>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshNameOf>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RefreshSkin
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshSkin>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RefreshSkin>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RuntimeInspectorNamespace.IListViewAdapter.SetItemContent
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.SetItemContent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.OnItemClicked>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator GetDataAt
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetDataAt>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetDataAt>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnDrawerPointerEvent
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnDrawerPointerEvent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnDrawerPointerEvent>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Select
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Select>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Select>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Deselect
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Deselect>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_Deselect>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnSearchTermChanged
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSearchTermChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSearchTermChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnSceneLoaded
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSceneLoaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSceneLoaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnSceneUnloaded
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSceneUnloaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_OnSceneUnloaded>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator GetDontDestroyOnLoadScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetDontDestroyOnLoadScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetDontDestroyOnLoadScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator AddToPseudoScene_string_Transform
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_AddToPseudoScene_string_Transform>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_AddToPseudoScene_string_Transform>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator AddToPseudoScene_string_IEnumerable1
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_AddToPseudoScene_string_IEnumerable1>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_AddToPseudoScene_string_IEnumerable1>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RemoveFromPseudoScene_string_Transform_bool
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RemoveFromPseudoScene_string_Transform_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RemoveFromPseudoScene_string_Transform_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RemoveFromPseudoScene_string_IEnumerable1_bool
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RemoveFromPseudoScene_string_IEnumerable1_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RemoveFromPseudoScene_string_IEnumerable1_bool>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator GetPseudoScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetPseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_GetPseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator CreatePseudoScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_CreatePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_CreatePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator CreatePseudoSceneInternal
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_CreatePseudoSceneInternal>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_CreatePseudoSceneInternal>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator DeleteAllPseudoScenes
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_DeleteAllPseudoScenes>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_DeleteAllPseudoScenes>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator DeletePseudoScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_DeletePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_DeletePseudoScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RuntimeInspectorNamespace.IListViewAdapter.CreateItem
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_RuntimeInspectorNamespace.IListViewAdapter.CreateItem>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator ctor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator cctor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_cctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.RuntimeHierarchy.hook_cctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}
	}
}
namespace On.RuntimeInspectorNamespace
{
	public static class HierarchyDragDropListener
	{
		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Start(HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Start(orig_Start orig, HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnRectTransformDimensionsChange(HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnRectTransformDimensionsChange(orig_OnRectTransformDimensionsChange orig, HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Update(HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Update(orig_Update orig, HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UnityEngine.EventSystems.IDropHandler.OnDrop(HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UnityEngine.EventSystems.IDropHandler.OnDrop(orig_UnityEngine.EventSystems.IDropHandler.OnDrop orig, HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter(HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter(orig_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter orig, HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit(HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit(orig_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit orig, HierarchyDragDropListener self, PointerEventData eventData);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_ctor(HierarchyDragDropListener self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_ctor(orig_ctor orig, HierarchyDragDropListener self);

		public static event hook_Start Start
		{
			add
			{
				HookEndpointManager.Add<hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnRectTransformDimensionsChange OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Add<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Update Update
		{
			add
			{
				HookEndpointManager.Add<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UnityEngine.EventSystems.IDropHandler.OnDrop UnityEngine.EventSystems.IDropHandler.OnDrop
		{
			add
			{
				HookEndpointManager.Add<hook_UnityEngine.EventSystems.IDropHandler.OnDrop>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UnityEngine.EventSystems.IDropHandler.OnDrop>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter
		{
			add
			{
				HookEndpointManager.Add<hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit
		{
			add
			{
				HookEndpointManager.Add<hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_ctor ctor
		{
			add
			{
				HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}
	}
}
namespace IL.RuntimeInspectorNamespace
{
	public static class HierarchyDragDropListener
	{
		public static event Manipulator Start
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_Start>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnRectTransformDimensionsChange
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_OnRectTransformDimensionsChange>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Update
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UnityEngine.EventSystems.IDropHandler.OnDrop
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IDropHandler.OnDrop>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IDropHandler.OnDrop>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IPointerEnterHandler.OnPointerEnter>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_UnityEngine.EventSystems.IPointerExitHandler.OnPointerExit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator ctor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.HierarchyDragDropListener.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}
	}
}
namespace On.RuntimeInspectorNamespace
{
	public static class PseudoSceneSourceTransform
	{
		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnEnable(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnEnable(orig_OnEnable orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnDisable(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnDisable(orig_OnDisable orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnApplicationQuit(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnApplicationQuit(orig_OnApplicationQuit orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_OnTransformChildrenChanged(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_OnTransformChildrenChanged(orig_OnTransformChildrenChanged orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_Update(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_Update(orig_Update orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_AddChildrenToScene(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_AddChildrenToScene(orig_AddChildrenToScene orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_RemoveChildrenFromScene(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_RemoveChildrenFromScene(orig_RemoveChildrenFromScene orig, PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void orig_ctor(PseudoSceneSourceTransform self);

		[EditorBrowsable(EditorBrowsableState.Never)]
		public delegate void hook_ctor(orig_ctor orig, PseudoSceneSourceTransform self);

		public static event hook_OnEnable OnEnable
		{
			add
			{
				HookEndpointManager.Add<hook_OnEnable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnEnable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnDisable OnDisable
		{
			add
			{
				HookEndpointManager.Add<hook_OnDisable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnDisable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnApplicationQuit OnApplicationQuit
		{
			add
			{
				HookEndpointManager.Add<hook_OnApplicationQuit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnApplicationQuit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_OnTransformChildrenChanged OnTransformChildrenChanged
		{
			add
			{
				HookEndpointManager.Add<hook_OnTransformChildrenChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_OnTransformChildrenChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_Update Update
		{
			add
			{
				HookEndpointManager.Add<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_AddChildrenToScene AddChildrenToScene
		{
			add
			{
				HookEndpointManager.Add<hook_AddChildrenToScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_AddChildrenToScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_RemoveChildrenFromScene RemoveChildrenFromScene
		{
			add
			{
				HookEndpointManager.Add<hook_RemoveChildrenFromScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_RemoveChildrenFromScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}

		public static event hook_ctor ctor
		{
			add
			{
				HookEndpointManager.Add<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
			remove
			{
				HookEndpointManager.Remove<hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)value);
			}
		}
	}
}
namespace IL.RuntimeInspectorNamespace
{
	public static class PseudoSceneSourceTransform
	{
		public static event Manipulator OnEnable
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnEnable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnEnable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnDisable
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnDisable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnDisable>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnApplicationQuit
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnApplicationQuit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnApplicationQuit>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator OnTransformChildrenChanged
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnTransformChildrenChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_OnTransformChildrenChanged>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator Update
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_Update>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator AddChildrenToScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_AddChildrenToScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_AddChildrenToScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator RemoveChildrenFromScene
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_RemoveChildrenFromScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_RemoveChildrenFromScene>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}

		public static event Manipulator ctor
		{
			add
			{
				HookEndpointManager.Modify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
			remove
			{
				HookEndpointManager.Unmodify<On.RuntimeInspectorNamespace.PseudoSceneSourceTransform.hook_ctor>(MethodBase.GetMethodFromHandle((RuntimeMethodHandle)/*OpCode not supported: LdMemberToken*/), (Delegate)(object)value);
			}
		}
	}
}
namespace On.RuntimeInspectorNamespace
{
	public stati

ShaderInspector.dll

Decompiled 2 months ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using HG;
using IL.RuntimeInspectorNamespace;
using Mono.Cecil.Cil;
using MonoMod.Cil;
using On.RuntimeInspectorNamespace;
using RuntimeInspectorNamespace;
using UnityEngine;
using UnityEngine.Rendering;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETStandard,Version=v2.0", FrameworkDisplayName = "")]
[assembly: AssemblyCompany("ShaderInspector")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("ShaderInspector")]
[assembly: AssemblyTitle("ShaderInspector")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace ShaderInspector;

public enum MaterialPropertyType
{
	Color = 0,
	Vector4 = 1,
	Float = 2,
	Texture = 4,
	TextureScale = 5,
	TextureOffset = 6,
	Toggle = 7,
	Enum = 8
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("com.groovesalad.RuntimeMaterialInspector", "RuntimeMaterialInspector", "1.0.0")]
public class ShaderInspectorPlugin : BaseUnityPlugin
{
	public const string modName = "RuntimeMaterialInspector";

	public static ConfigFile config;

	public static HashSet<string> redundantPropertyNames = new HashSet<string> { "mainTexture", "mainTextureOffset", "mainTextureScale", "color" };

	public static Dictionary<Shader, ShaderPropertyInfo[]> shaderPropertiesCache = new Dictionary<Shader, ShaderPropertyInfo[]>();

	public static Stack<Material> targetMats = new Stack<Material>();

	public static ConfigEntry<string> nameFormat { get; private set; }

	public static ConfigEntry<string> scaleFormat { get; private set; }

	public static ConfigEntry<string> offsetFormat { get; private set; }

	public static ConfigEntry<bool> hideRedundantProperties { get; private set; }

	public static ConfigEntry<bool> hidePerRendererData { get; private set; }

	public static ShaderPropertyInfo[] GetShaderPropertyInfos(Shader shader)
	{
		if (shaderPropertiesCache.TryGetValue(shader, out var value))
		{
			return value;
		}
		int propertyCount = shader.GetPropertyCount();
		List<ShaderPropertyInfo> list = new List<ShaderPropertyInfo>(propertyCount);
		for (int i = 0; i < propertyCount; i++)
		{
			ShaderPropertyInfo shaderPropertyInfo = new ShaderPropertyInfo(shader, i);
			list.Add(shaderPropertyInfo);
			if (shaderPropertyInfo.propertyType == MaterialPropertyType.Texture && !shaderPropertyInfo.HasFlag((ShaderPropertyFlags)4))
			{
				list.AddRange(ShaderPropertyInfo.TextureScaleOffset(shaderPropertyInfo));
			}
		}
		value = list.ToArray();
		shaderPropertiesCache.Add(shader, value);
		return value;
	}

	public void Awake()
	{
		//IL_001d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0027: Expected O, but got Unknown
		//IL_00da: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e4: Expected O, but got Unknown
		//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
		//IL_00f6: Expected O, but got Unknown
		//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
		//IL_0108: Expected O, but got Unknown
		//IL_0110: Unknown result type (might be due to invalid IL or missing references)
		//IL_011a: Expected O, but got Unknown
		//IL_0122: Unknown result type (might be due to invalid IL or missing references)
		//IL_012c: Expected O, but got Unknown
		//IL_0134: Unknown result type (might be due to invalid IL or missing references)
		//IL_013e: Expected O, but got Unknown
		//IL_0146: Unknown result type (might be due to invalid IL or missing references)
		//IL_0150: Expected O, but got Unknown
		config = new ConfigFile(Utility.CombinePaths(new string[2]
		{
			Paths.ConfigPath,
			"RuntimeMaterialInspector.cfg"
		}), false);
		nameFormat = config.Bind<string>("RuntimeMaterialInspector", "Display Name Format", "{0}", "Format string for shader property names. {0} is the descriptive external name and {1} is the internal identifier name.");
		scaleFormat = config.Bind<string>("RuntimeMaterialInspector", "Texture Tiling Format", "Tiling", "Format string for texture tiling properties. {0} is external name of the texture.");
		offsetFormat = config.Bind<string>("RuntimeMaterialInspector", "Texture Offset Format", "Offset", "Format string for texture offset properties. {0} is external name of the texture.");
		hideRedundantProperties = config.Bind<bool>("RuntimeMaterialInspector", "Hide Redundant Properties", true, "Hide the Main Texture and Color material properties that are already represented in the shader properties.");
		hidePerRendererData = config.Bind<bool>("RuntimeMaterialInspector", "Hide Per Renderer Data", true, "Hide properties that are usually managed per renderer.");
		ExpandableInspectorField.CreateDrawerForVariable += new Manipulator(ExpandableInspectorField_CreateDrawerForVariable);
		EnumField.OnBound += new hook_OnBound(EnumField_OnBound);
		RuntimeInspectorUtils.GetAllVariables += new hook_GetAllVariables(RuntimeInspectorUtils_GetAllVariables);
		ObjectField.CreateDrawersForVariablesExcluding += new hook_CreateDrawersForVariablesExcluding(ObjectField_CreateDrawersForVariablesExcluding);
		ObjectField.CreateDrawersForVariables += new hook_CreateDrawersForVariables(ObjectField_CreateDrawersForVariables);
		InspectorField.BindTo_InspectorField_MemberInfo_string += new hook_BindTo_InspectorField_MemberInfo_string(InspectorField_BindTo_InspectorField_MemberInfo_string);
		ExposedVariablesEnumerator.ShouldExposeVariable += new hook_ShouldExposeVariable(ExposedVariablesEnumerator_ShouldExposeVariable);
	}

	private void ExpandableInspectorField_CreateDrawerForVariable(ILContext il)
	{
		//IL_0008: Unknown result type (might be due to invalid IL or missing references)
		//IL_000e: Expected O, but got Unknown
		//IL_00a0: 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_00c3: Unknown result type (might be due to invalid IL or missing references)
		//IL_00d1: Unknown result type (might be due to invalid IL or missing references)
		//IL_00de: 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)
		ILCursor val = new ILCursor(il);
		ILLabel breakLabel = null;
		if (val.TryGotoNext(new Func<Instruction, bool>[3]
		{
			(Instruction x) => ILPatternMatchingExt.MatchCastclass<PropertyInfo>(x),
			(Instruction x) => ILPatternMatchingExt.MatchCallOrCallvirt<PropertyInfo>(x, "get_PropertyType"),
			(Instruction x) => ILPatternMatchingExt.MatchBr(x, ref breakLabel)
		}))
		{
			val.Index = 0;
			ILLabel val2 = val.DefineLabel();
			val.MarkLabel(val2);
			val.Index = 0;
			val.Emit(OpCodes.Ldarg, 1);
			val.Emit(OpCodes.Isinst, typeof(ShaderPropertyInfo));
			val.Emit(OpCodes.Brfalse, (object)val2);
			val.Emit(OpCodes.Ldarg, 1);
			val.Emit(OpCodes.Castclass, typeof(ShaderPropertyInfo));
			val.EmitDelegate<Func<ShaderPropertyInfo, Type>>((Func<ShaderPropertyInfo, Type>)((ShaderPropertyInfo property) => property.GetPropertyType()));
			val.Emit(OpCodes.Br, (object)breakLabel);
		}
		else
		{
			((BaseUnityPlugin)this).Logger.LogError((object)"Failed to find IL!");
		}
	}

	private void EnumField_OnBound(orig_OnBound orig, EnumField self, MemberInfo variable)
	{
		if (variable is ShaderPropertyInfo shaderPropertyInfo && ((InspectorField)self).BoundVariableType == typeof(ShaderPropertyInfo.MaterialEnum))
		{
			EnumField.enumNames[typeof(ShaderPropertyInfo.MaterialEnum)] = shaderPropertyInfo.explicitEnumNames.ToList();
			EnumField.enumValues[typeof(ShaderPropertyInfo.MaterialEnum)] = shaderPropertyInfo.explicitEnumValues.ToList();
			try
			{
				orig.Invoke(self, variable);
				return;
			}
			finally
			{
				EnumField.enumNames.Remove(typeof(ShaderPropertyInfo.MaterialEnum));
				EnumField.enumValues.Remove(typeof(ShaderPropertyInfo.MaterialEnum));
			}
		}
		orig.Invoke(self, variable);
	}

	private MemberInfo[] RuntimeInspectorUtils_GetAllVariables(orig_GetAllVariables orig, Type type)
	{
		MemberInfo[] array = orig.Invoke(type);
		if (typeof(Material).IsAssignableFrom(type) && targetMats.Count > 0)
		{
			Material val = targetMats.Peek();
			if (Object.op_Implicit((Object)(object)val) && Object.op_Implicit((Object)(object)val.shader))
			{
				ShaderPropertyInfo[] shaderPropertyInfos = GetShaderPropertyInfos(val.shader);
				array = ArrayUtils.Join<MemberInfo>(array, shaderPropertyInfos.Cast<MemberInfo>().ToArray());
			}
		}
		return array;
	}

	private void ObjectField_CreateDrawersForVariablesExcluding(orig_CreateDrawersForVariablesExcluding orig, ObjectField self, string[] variablesToExclude)
	{
		object value = ((InspectorField)self).Value;
		Material val = (Material)((value is Material) ? value : null);
		if (val != null)
		{
			targetMats.Push(val);
			try
			{
				orig.Invoke(self, variablesToExclude);
				return;
			}
			finally
			{
				targetMats.Pop();
			}
		}
		orig.Invoke(self, variablesToExclude);
	}

	private void ObjectField_CreateDrawersForVariables(orig_CreateDrawersForVariables orig, ObjectField self, string[] variables)
	{
		object value = ((InspectorField)self).Value;
		Material val = (Material)((value is Material) ? value : null);
		if (val != null)
		{
			targetMats.Push(val);
			try
			{
				orig.Invoke(self, variables);
				return;
			}
			finally
			{
				targetMats.Pop();
			}
		}
		orig.Invoke(self, variables);
	}

	private void InspectorField_BindTo_InspectorField_MemberInfo_string(orig_BindTo_InspectorField_MemberInfo_string orig, InspectorField self, InspectorField parent, MemberInfo variable, string variableName)
	{
		//IL_00fd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0104: Expected O, but got Unknown
		//IL_0112: Unknown result type (might be due to invalid IL or missing references)
		//IL_011c: Expected O, but got Unknown
		if (variable is ShaderPropertyInfo shaderPropertyInfo && typeof(Material).IsAssignableFrom(parent.BoundVariableType))
		{
			string text = variableName ?? string.Format(nameFormat.Value, shaderPropertyInfo.description, shaderPropertyInfo.name);
			self.BindTo(shaderPropertyInfo.GetPropertyType(), text, shaderPropertyInfo.GetGetter(parent), shaderPropertyInfo.GetSetter(parent), variable);
			if (Object.op_Implicit((Object)(object)self.variableNameText))
			{
				self.variableNameText.text = text;
			}
			return;
		}
		orig.Invoke(self, parent, variable, variableName);
		if (!(variable != null) || !(variable.DeclaringType == typeof(Material)) || !(variable.Name == "shader"))
		{
			return;
		}
		Setter b = (Setter)delegate
		{
			InspectorField obj = parent;
			ExpandableInspectorField val = (ExpandableInspectorField)(object)((obj is ExpandableInspectorField) ? obj : null);
			if (val != null)
			{
				val.RegenerateElements();
			}
		};
		self.setter = (Setter)Delegate.Combine((Delegate?)(object)self.setter, (Delegate?)(object)b);
	}

	private bool ExposedVariablesEnumerator_ShouldExposeVariable(orig_ShouldExposeVariable orig, ExposedVariablesEnumerator self, MemberInfo variable)
	{
		if (variable is ShaderPropertyInfo shaderPropertyInfo)
		{
			return !shaderPropertyInfo.isHidden;
		}
		if (hideRedundantProperties.Value && variable != null && variable.DeclaringType == typeof(Material) && redundantPropertyNames.Contains(variable.Name))
		{
			return false;
		}
		return orig.Invoke(self, variable);
	}
}
public class ShaderPropertyInfo : MemberInfo
{
	public enum MaterialEnum
	{

	}

	public string description;

	public string name;

	public MaterialPropertyType propertyType;

	public ShaderPropertyFlags flags;

	public RangeAttribute rangeAttribute = null;

	public string toggleKeyword = null;

	public Type enumType = null;

	public string[] explicitEnumNames = null;

	public object[] explicitEnumValues = null;

	public override Type DeclaringType => typeof(Material);

	public override MemberTypes MemberType => MemberTypes.Custom;

	public override string Name => name;

	public override Type ReflectedType => typeof(Material);

	public bool isHidden => HasFlag((ShaderPropertyFlags)1) || (ShaderInspectorPlugin.hidePerRendererData.Value && HasFlag((ShaderPropertyFlags)2));

	public bool isRange => rangeAttribute != null;

	public override object[] GetCustomAttributes(bool inherit)
	{
		if (isRange)
		{
			return (object[])(object)new RangeAttribute[1] { rangeAttribute };
		}
		return Array.Empty<object>();
	}

	public override object[] GetCustomAttributes(Type attributeType, bool inherit)
	{
		if (isRange && attributeType == typeof(RangeAttribute))
		{
			return (object[])(object)new RangeAttribute[1] { rangeAttribute };
		}
		return Array.Empty<object>();
	}

	public override bool IsDefined(Type attributeType, bool inherit)
	{
		if (isRange && attributeType == typeof(RangeAttribute))
		{
			return true;
		}
		return false;
	}

	public ShaderPropertyInfo(Shader shader, int propertyIndex)
	{
		//IL_0047: Unknown result type (might be due to invalid IL or missing references)
		//IL_004c: Unknown result type (might be due to invalid IL or missing references)
		//IL_004e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0054: Expected I4, but got Unknown
		//IL_0054: Unknown result type (might be due to invalid IL or missing references)
		//IL_0056: Invalid comparison between Unknown and I4
		//IL_0087: Unknown result type (might be due to invalid IL or missing references)
		//IL_008c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0066: Unknown result type (might be due to invalid IL or missing references)
		//IL_006b: 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_0073: Unknown result type (might be due to invalid IL or missing references)
		//IL_0079: Unknown result type (might be due to invalid IL or missing references)
		//IL_0083: Expected O, but got Unknown
		//IL_0112: Unknown result type (might be due to invalid IL or missing references)
		//IL_0119: 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)
		name = shader.GetPropertyName(propertyIndex);
		description = shader.GetPropertyDescription(propertyIndex);
		ShaderPropertyType val = shader.GetPropertyType(propertyIndex);
		propertyType = (MaterialPropertyType)val;
		if ((int)val == 3)
		{
			propertyType = MaterialPropertyType.Float;
			Vector2 propertyRangeLimits = shader.GetPropertyRangeLimits(propertyIndex);
			rangeAttribute = new RangeAttribute(propertyRangeLimits.x, propertyRangeLimits.y);
		}
		flags = shader.GetPropertyFlags(propertyIndex);
		string[] propertyAttributes = shader.GetPropertyAttributes(propertyIndex);
		for (int i = 0; i < propertyAttributes.Length; i++)
		{
			HandleAttribute(this, propertyAttributes[i]);
		}
		if (propertyType != MaterialPropertyType.Enum && name.IndexOf("Blend", StringComparison.OrdinalIgnoreCase) >= 0 && name.IndexOf("Internal", StringComparison.OrdinalIgnoreCase) < 0)
		{
			enumType = typeof(BlendMode);
			propertyType = MaterialPropertyType.Enum;
			flags = (ShaderPropertyFlags)(flags & -2);
		}
	}

	private ShaderPropertyInfo()
	{
	}

	public static IEnumerable<ShaderPropertyInfo> TextureScaleOffset(ShaderPropertyInfo textureProperty)
	{
		yield return new ShaderPropertyInfo
		{
			name = textureProperty.name,
			description = string.Format(ShaderInspectorPlugin.scaleFormat.Value, textureProperty.description),
			propertyType = MaterialPropertyType.TextureScale
		};
		yield return new ShaderPropertyInfo
		{
			name = textureProperty.name,
			description = string.Format(ShaderInspectorPlugin.offsetFormat.Value, textureProperty.description),
			propertyType = MaterialPropertyType.TextureOffset
		};
	}

	public static void HandleAttribute(ShaderPropertyInfo prop, string attribute)
	{
		if (TryGetShaderAttribute(attribute, "Toggle", out var substring))
		{
			prop.toggleKeyword = substring;
			prop.propertyType = MaterialPropertyType.Toggle;
		}
		else
		{
			if (!TryGetShaderAttribute(attribute, "MaterialEnum", out var substring2) && !TryGetShaderAttribute(attribute, "Enum", out substring2))
			{
				return;
			}
			string[] array = substring2.Split(new char[1] { ',' });
			if (array.Length == 1)
			{
				Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
				for (int i = 0; i < assemblies.Length; i++)
				{
					Type type = assemblies[i].GetType(array[0]);
					if (type != null)
					{
						prop.enumType = type;
						prop.propertyType = MaterialPropertyType.Enum;
						break;
					}
				}
			}
			else
			{
				if (array.Length < 2)
				{
					return;
				}
				List<string> list = new List<string>();
				List<object> list2 = new List<object>();
				for (int j = 1; j < array.Length; j += 2)
				{
					if (int.TryParse(array[j], out var result))
					{
						list.Add(array[j - 1]);
						list2.Add((MaterialEnum)result);
					}
				}
				prop.explicitEnumNames = list.ToArray();
				prop.explicitEnumValues = list2.ToArray();
				prop.propertyType = MaterialPropertyType.Enum;
			}
		}
	}

	public static bool TryGetShaderAttribute(string attributeString, string name, out string substring)
	{
		if (attributeString.Trim().StartsWith(name))
		{
			int num = attributeString.IndexOf('(');
			int num2 = attributeString.IndexOf(')');
			if (num >= 0 && num2 >= 0)
			{
				substring = attributeString.Substring(num + 1, num2 - num - 1);
				return true;
			}
		}
		substring = null;
		return false;
	}

	public static void SetToggleKeyword(Material mat, string keyword, string name, bool enabled)
	{
		if (enabled != mat.IsKeywordEnabled(keyword))
		{
			if (enabled)
			{
				mat.EnableKeyword(keyword);
				mat.SetFloat(name, 1f);
			}
			else
			{
				mat.DisableKeyword(keyword);
				mat.SetFloat(name, 0f);
			}
		}
	}

	public Type GetPropertyType()
	{
		switch (propertyType)
		{
		case MaterialPropertyType.Color:
			return typeof(Color);
		case MaterialPropertyType.Vector4:
			return typeof(Vector4);
		case MaterialPropertyType.Float:
			return typeof(float);
		case MaterialPropertyType.Texture:
			return typeof(Texture);
		case MaterialPropertyType.TextureScale:
		case MaterialPropertyType.TextureOffset:
			return typeof(Vector2);
		case MaterialPropertyType.Toggle:
			return typeof(bool);
		case MaterialPropertyType.Enum:
			return enumType ?? typeof(MaterialEnum);
		default:
			return null;
		}
	}

	public Getter GetGetter(InspectorField parent)
	{
		//IL_0051: Unknown result type (might be due to invalid IL or missing references)
		//IL_0057: Expected O, but got Unknown
		//IL_0060: Unknown result type (might be due to invalid IL or missing references)
		//IL_0066: Expected O, but got Unknown
		//IL_006f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0075: Expected O, but got Unknown
		//IL_007e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0084: Expected O, but got Unknown
		//IL_008d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0093: Expected O, but got Unknown
		//IL_009c: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a2: Expected O, but got Unknown
		//IL_00ab: Unknown result type (might be due to invalid IL or missing references)
		//IL_00b1: Expected O, but got Unknown
		//IL_00ba: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c0: Expected O, but got Unknown
		return (Getter)(propertyType switch
		{
			MaterialPropertyType.Color => (object)(Getter)delegate
			{
				//IL_002b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0016: Unknown result type (might be due to invalid IL or missing references)
				//IL_001c: Unknown result type (might be due to invalid IL or missing references)
				object value8 = parent.Value;
				Material val8 = (Material)((value8 is Material) ? value8 : null);
				return (object)(Color)((val8 != null) ? val8.GetColor(name) : default(Color));
			}, 
			MaterialPropertyType.Vector4 => (object)(Getter)delegate
			{
				//IL_002b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0016: Unknown result type (might be due to invalid IL or missing references)
				//IL_001c: Unknown result type (might be due to invalid IL or missing references)
				object value7 = parent.Value;
				Material val7 = (Material)((value7 is Material) ? value7 : null);
				return (object)(Vector4)((val7 != null) ? val7.GetVector(name) : default(Vector4));
			}, 
			MaterialPropertyType.Float => (object)(Getter)delegate
			{
				object value6 = parent.Value;
				Material val6 = (Material)((value6 is Material) ? value6 : null);
				return (val6 != null) ? val6.GetFloat(name) : 0f;
			}, 
			MaterialPropertyType.Texture => (object)(Getter)delegate
			{
				object value5 = parent.Value;
				Material val5 = (Material)((value5 is Material) ? value5 : null);
				return (val5 != null) ? val5.GetTexture(name) : null;
			}, 
			MaterialPropertyType.TextureScale => (object)(Getter)delegate
			{
				//IL_002b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0016: Unknown result type (might be due to invalid IL or missing references)
				//IL_001c: Unknown result type (might be due to invalid IL or missing references)
				object value4 = parent.Value;
				Material val4 = (Material)((value4 is Material) ? value4 : null);
				return (object)(Vector2)((val4 != null) ? val4.GetTextureScale(name) : default(Vector2));
			}, 
			MaterialPropertyType.TextureOffset => (object)(Getter)delegate
			{
				//IL_002b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0016: Unknown result type (might be due to invalid IL or missing references)
				//IL_001c: Unknown result type (might be due to invalid IL or missing references)
				object value3 = parent.Value;
				Material val3 = (Material)((value3 is Material) ? value3 : null);
				return (object)(Vector2)((val3 != null) ? val3.GetTextureOffset(name) : default(Vector2));
			}, 
			MaterialPropertyType.Toggle => (object)(Getter)delegate
			{
				object value2 = parent.Value;
				Material val2 = (Material)((value2 is Material) ? value2 : null);
				return val2 != null && val2.IsKeywordEnabled(toggleKeyword);
			}, 
			MaterialPropertyType.Enum => (object)(Getter)delegate
			{
				object value = parent.Value;
				Material val = (Material)((value is Material) ? value : null);
				return (val != null) ? Enum.ToObject(enumType ?? typeof(MaterialEnum), val.GetInt(name)) : ((object)0);
			}, 
			_ => null, 
		});
	}

	public Setter GetSetter(InspectorField parent)
	{
		//IL_0051: Unknown result type (might be due to invalid IL or missing references)
		//IL_0057: Expected O, but got Unknown
		//IL_0060: Unknown result type (might be due to invalid IL or missing references)
		//IL_0066: Expected O, but got Unknown
		//IL_006f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0075: Expected O, but got Unknown
		//IL_007e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0084: Expected O, but got Unknown
		//IL_008d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0093: Expected O, but got Unknown
		//IL_009c: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a2: Expected O, but got Unknown
		//IL_00ab: Unknown result type (might be due to invalid IL or missing references)
		//IL_00b1: Expected O, but got Unknown
		//IL_00ba: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c0: Expected O, but got Unknown
		return (Setter)(propertyType switch
		{
			MaterialPropertyType.Color => (object)(Setter)delegate(object value)
			{
				//IL_0027: Unknown result type (might be due to invalid IL or missing references)
				object value9 = parent.Value;
				Material val8 = (Material)((value9 is Material) ? value9 : null);
				if (val8 != null)
				{
					val8.SetColor(name, (Color)value);
				}
			}, 
			MaterialPropertyType.Vector4 => (object)(Setter)delegate(object value)
			{
				//IL_0027: Unknown result type (might be due to invalid IL or missing references)
				object value8 = parent.Value;
				Material val7 = (Material)((value8 is Material) ? value8 : null);
				if (val7 != null)
				{
					val7.SetVector(name, (Vector4)value);
				}
			}, 
			MaterialPropertyType.Float => (object)(Setter)delegate(object value)
			{
				object value7 = parent.Value;
				Material val6 = (Material)((value7 is Material) ? value7 : null);
				if (val6 != null)
				{
					val6.SetFloat(name, (float)value);
				}
			}, 
			MaterialPropertyType.Texture => (object)(Setter)delegate(object value)
			{
				//IL_0027: Unknown result type (might be due to invalid IL or missing references)
				//IL_0031: Expected O, but got Unknown
				object value6 = parent.Value;
				Material val5 = (Material)((value6 is Material) ? value6 : null);
				if (val5 != null)
				{
					val5.SetTexture(name, (Texture)value);
				}
			}, 
			MaterialPropertyType.TextureScale => (object)(Setter)delegate(object value)
			{
				//IL_0027: Unknown result type (might be due to invalid IL or missing references)
				object value5 = parent.Value;
				Material val4 = (Material)((value5 is Material) ? value5 : null);
				if (val4 != null)
				{
					val4.SetTextureScale(name, (Vector2)value);
				}
			}, 
			MaterialPropertyType.TextureOffset => (object)(Setter)delegate(object value)
			{
				//IL_0027: Unknown result type (might be due to invalid IL or missing references)
				object value4 = parent.Value;
				Material val3 = (Material)((value4 is Material) ? value4 : null);
				if (val3 != null)
				{
					val3.SetTextureOffset(name, (Vector2)value);
				}
			}, 
			MaterialPropertyType.Toggle => (object)(Setter)delegate(object value)
			{
				object value3 = parent.Value;
				Material val2 = (Material)((value3 is Material) ? value3 : null);
				if (val2 != null)
				{
					SetToggleKeyword(val2, toggleKeyword, name, (bool)value);
				}
			}, 
			MaterialPropertyType.Enum => (object)(Setter)delegate(object value)
			{
				object value2 = parent.Value;
				Material val = (Material)((value2 is Material) ? value2 : null);
				if (val != null)
				{
					val.SetInt(name, (int)value);
				}
			}, 
			_ => null, 
		});
	}

	public bool HasFlag(ShaderPropertyFlags flag)
	{
		//IL_0002: Unknown result type (might be due to invalid IL or missing references)
		//IL_0007: Unknown result type (might be due to invalid IL or missing references)
		//IL_0008: Unknown result type (might be due to invalid IL or missing references)
		//IL_000a: Invalid comparison between Unknown and I4
		return (flags & flag) > 0;
	}
}