using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;
using Il2CppSystem.Collections;
using RootMotion.FinalIK;
using UnityEngine;

namespace RootMotion.Demos
{
	// Token: 0x020003D5 RID: 981
	public class MotionAbsorb : MonoBehaviour
	{
		// Token: 0x06007873 RID: 30835 RVA: 0x001EB60C File Offset: 0x001E980C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592541, XrefRangeEnd = 592547, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnCollisionEnter()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.NativeMethodInfoPtr_OnCollisionEnter_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007874 RID: 30836 RVA: 0x001EB650 File Offset: 0x001E9850
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592547, XrefRangeEnd = 592552, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IEnumerator AbsorbMotion()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.NativeMethodInfoPtr_AbsorbMotion_Private_IEnumerator_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new IEnumerator(intPtr3) : null;
		}

		// Token: 0x06007875 RID: 30837 RVA: 0x001EB6A8 File Offset: 0x001E98A8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592552, XrefRangeEnd = 592553, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe MotionAbsorb()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007876 RID: 30838 RVA: 0x001EB6F4 File Offset: 0x001E98F4
		// Note: this type is marked as 'beforefieldinit'.
		static MotionAbsorb()
		{
			Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.Demos", "MotionAbsorb");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr);
			MotionAbsorb.NativeFieldInfoPtr_ik = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "ik");
			MotionAbsorb.NativeFieldInfoPtr_absorbers = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "absorbers");
			MotionAbsorb.NativeFieldInfoPtr_weight = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "weight");
			MotionAbsorb.NativeFieldInfoPtr_falloff = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "falloff");
			MotionAbsorb.NativeFieldInfoPtr_falloffSpeed = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "falloffSpeed");
			MotionAbsorb.NativeFieldInfoPtr_timer = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "timer");
			MotionAbsorb.NativeMethodInfoPtr_OnCollisionEnter_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, 100672367);
			MotionAbsorb.NativeMethodInfoPtr_AbsorbMotion_Private_IEnumerator_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, 100672368);
			MotionAbsorb.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, 100672369);
		}

		// Token: 0x06007877 RID: 30839 RVA: 0x0000351C File Offset: 0x0000171C
		public MotionAbsorb(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17002928 RID: 10536
		// (get) Token: 0x06007878 RID: 30840 RVA: 0x001EB7D8 File Offset: 0x001E99D8
		// (set) Token: 0x06007879 RID: 30841 RVA: 0x001EB80C File Offset: 0x001E9A0C
		public unsafe FullBodyBipedIK ik
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_ik);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new FullBodyBipedIK(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_ik), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002929 RID: 10537
		// (get) Token: 0x0600787A RID: 30842 RVA: 0x001EB834 File Offset: 0x001E9A34
		// (set) Token: 0x0600787B RID: 30843 RVA: 0x001EB868 File Offset: 0x001E9A68
		public unsafe Il2CppReferenceArray<MotionAbsorb.Absorber> absorbers
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_absorbers);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<MotionAbsorb.Absorber>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_absorbers), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700292A RID: 10538
		// (get) Token: 0x0600787C RID: 30844 RVA: 0x001EB890 File Offset: 0x001E9A90
		// (set) Token: 0x0600787D RID: 30845 RVA: 0x001EB8B8 File Offset: 0x001E9AB8
		public unsafe float weight
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_weight);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_weight)) = value;
			}
		}

		// Token: 0x1700292B RID: 10539
		// (get) Token: 0x0600787E RID: 30846 RVA: 0x001EB8DC File Offset: 0x001E9ADC
		// (set) Token: 0x0600787F RID: 30847 RVA: 0x001EB910 File Offset: 0x001E9B10
		public unsafe AnimationCurve falloff
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_falloff);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new AnimationCurve(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_falloff), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700292C RID: 10540
		// (get) Token: 0x06007880 RID: 30848 RVA: 0x001EB938 File Offset: 0x001E9B38
		// (set) Token: 0x06007881 RID: 30849 RVA: 0x001EB960 File Offset: 0x001E9B60
		public unsafe float falloffSpeed
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_falloffSpeed);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_falloffSpeed)) = value;
			}
		}

		// Token: 0x1700292D RID: 10541
		// (get) Token: 0x06007882 RID: 30850 RVA: 0x001EB984 File Offset: 0x001E9B84
		// (set) Token: 0x06007883 RID: 30851 RVA: 0x001EB9AC File Offset: 0x001E9BAC
		public unsafe float timer
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_timer);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.NativeFieldInfoPtr_timer)) = value;
			}
		}

		// Token: 0x040050B0 RID: 20656
		private static readonly IntPtr NativeFieldInfoPtr_ik;

		// Token: 0x040050B1 RID: 20657
		private static readonly IntPtr NativeFieldInfoPtr_absorbers;

		// Token: 0x040050B2 RID: 20658
		private static readonly IntPtr NativeFieldInfoPtr_weight;

		// Token: 0x040050B3 RID: 20659
		private static readonly IntPtr NativeFieldInfoPtr_falloff;

		// Token: 0x040050B4 RID: 20660
		private static readonly IntPtr NativeFieldInfoPtr_falloffSpeed;

		// Token: 0x040050B5 RID: 20661
		private static readonly IntPtr NativeFieldInfoPtr_timer;

		// Token: 0x040050B6 RID: 20662
		private static readonly IntPtr NativeMethodInfoPtr_OnCollisionEnter_Private_Void_0;

		// Token: 0x040050B7 RID: 20663
		private static readonly IntPtr NativeMethodInfoPtr_AbsorbMotion_Private_IEnumerator_0;

		// Token: 0x040050B8 RID: 20664
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x020003D6 RID: 982
		[Serializable]
		public class Absorber : Il2CppSystem.Object
		{
			// Token: 0x06007884 RID: 30852 RVA: 0x001EB9D0 File Offset: 0x001E9BD0
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592513, XrefRangeEnd = 592519, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void SetToBone(IKSolverFullBodyBiped solver)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(solver);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.Absorber.NativeMethodInfoPtr_SetToBone_Public_Void_IKSolverFullBodyBiped_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06007885 RID: 30853 RVA: 0x001EBA2C File Offset: 0x001E9C2C
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592519, XrefRangeEnd = 592521, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void SetEffectorWeights(IKSolverFullBodyBiped solver, float w)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr;
				checked
				{
					ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(solver);
				}
				ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref w;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.Absorber.NativeMethodInfoPtr_SetEffectorWeights_Public_Void_IKSolverFullBodyBiped_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06007886 RID: 30854 RVA: 0x001EBA98 File Offset: 0x001E9C98
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592521, XrefRangeEnd = 592522, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe Absorber()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb.Absorber.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06007887 RID: 30855 RVA: 0x001EBAE4 File Offset: 0x001E9CE4
			// Note: this type is marked as 'beforefieldinit'.
			static Absorber()
			{
				Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "Absorber");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr);
				MotionAbsorb.Absorber.NativeFieldInfoPtr_effector = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr, "effector");
				MotionAbsorb.Absorber.NativeFieldInfoPtr_weight = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr, "weight");
				MotionAbsorb.Absorber.NativeMethodInfoPtr_SetToBone_Public_Void_IKSolverFullBodyBiped_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr, 100672370);
				MotionAbsorb.Absorber.NativeMethodInfoPtr_SetEffectorWeights_Public_Void_IKSolverFullBodyBiped_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr, 100672371);
				MotionAbsorb.Absorber.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb.Absorber>.NativeClassPtr, 100672372);
			}

			// Token: 0x06007888 RID: 30856 RVA: 0x0000A688 File Offset: 0x00008888
			public Absorber(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x1700292E RID: 10542
			// (get) Token: 0x06007889 RID: 30857 RVA: 0x001EBB74 File Offset: 0x001E9D74
			// (set) Token: 0x0600788A RID: 30858 RVA: 0x001EBB9C File Offset: 0x001E9D9C
			public unsafe FullBodyBipedEffector effector
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.Absorber.NativeFieldInfoPtr_effector);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.Absorber.NativeFieldInfoPtr_effector)) = value;
				}
			}

			// Token: 0x1700292F RID: 10543
			// (get) Token: 0x0600788B RID: 30859 RVA: 0x001EBBC0 File Offset: 0x001E9DC0
			// (set) Token: 0x0600788C RID: 30860 RVA: 0x001EBBE8 File Offset: 0x001E9DE8
			public unsafe float weight
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.Absorber.NativeFieldInfoPtr_weight);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb.Absorber.NativeFieldInfoPtr_weight)) = value;
				}
			}

			// Token: 0x040050B9 RID: 20665
			private static readonly IntPtr NativeFieldInfoPtr_effector;

			// Token: 0x040050BA RID: 20666
			private static readonly IntPtr NativeFieldInfoPtr_weight;

			// Token: 0x040050BB RID: 20667
			private static readonly IntPtr NativeMethodInfoPtr_SetToBone_Public_Void_IKSolverFullBodyBiped_0;

			// Token: 0x040050BC RID: 20668
			private static readonly IntPtr NativeMethodInfoPtr_SetEffectorWeights_Public_Void_IKSolverFullBodyBiped_Single_0;

			// Token: 0x040050BD RID: 20669
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}

		// Token: 0x020003D7 RID: 983
		[ObfuscatedName("RootMotion.Demos.MotionAbsorb/<AbsorbMotion>d__8")]
		public sealed class _AbsorbMotion_d__8 : Il2CppSystem.Object
		{
			// Token: 0x0600788D RID: 30861 RVA: 0x001EBC0C File Offset: 0x001E9E0C
			[CallerCount(323)]
			[CachedScanResults(RefRangeStart = 12254, RefRangeEnd = 12577, XrefRangeStart = 12254, XrefRangeEnd = 12577, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe _AbsorbMotion_d__8(int <>1__state)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref <>1__state;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x0600788E RID: 30862 RVA: 0x001EBC6C File Offset: 0x001E9E6C
			[CallerCount(5585)]
			[CachedScanResults(RefRangeStart = 24, RefRangeEnd = 5609, XrefRangeStart = 24, XrefRangeEnd = 5609, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void System_IDisposable_Dispose()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x0600788F RID: 30863 RVA: 0x001EBCB0 File Offset: 0x001E9EB0
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592522, XrefRangeEnd = 592536, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe bool MoveNext()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}

			// Token: 0x17002933 RID: 10547
			// (get) Token: 0x06007890 RID: 30864 RVA: 0x001EBD00 File Offset: 0x001E9F00
			public unsafe Il2CppSystem.Object Current
			{
				[CallerCount(10)]
				[CachedScanResults(RefRangeStart = 7233, RefRangeEnd = 7243, XrefRangeStart = 7233, XrefRangeEnd = 7243, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Object__get_Current_Private_Virtual_Final_New_get_Object_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					IntPtr intPtr3 = intPtr;
					return (intPtr3 != 0) ? new Il2CppSystem.Object(intPtr3) : null;
				}
			}

			// Token: 0x06007891 RID: 30865 RVA: 0x001EBD58 File Offset: 0x001E9F58
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 592536, XrefRangeEnd = 592541, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void System_Collections_IEnumerator_Reset()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x17002934 RID: 10548
			// (get) Token: 0x06007892 RID: 30866 RVA: 0x001EBD9C File Offset: 0x001E9F9C
			public unsafe Il2CppSystem.Object Current
			{
				[CallerCount(10)]
				[CachedScanResults(RefRangeStart = 7233, RefRangeEnd = 7243, XrefRangeStart = 7233, XrefRangeEnd = 7243, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					IntPtr intPtr3 = intPtr;
					return (intPtr3 != 0) ? new Il2CppSystem.Object(intPtr3) : null;
				}
			}

			// Token: 0x06007893 RID: 30867 RVA: 0x001EBDF4 File Offset: 0x001E9FF4
			// Note: this type is marked as 'beforefieldinit'.
			static _AbsorbMotion_d__8()
			{
				Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<MotionAbsorb>.NativeClassPtr, "<AbsorbMotion>d__8");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr);
				MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___1__state = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, "<>1__state");
				MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___2__current = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, "<>2__current");
				MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, "<>4__this");
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672373);
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672374);
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672375);
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Object__get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672376);
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672377);
				MotionAbsorb._AbsorbMotion_d__8.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MotionAbsorb._AbsorbMotion_d__8>.NativeClassPtr, 100672378);
			}

			// Token: 0x06007894 RID: 30868 RVA: 0x0000A688 File Offset: 0x00008888
			public _AbsorbMotion_d__8(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17002930 RID: 10544
			// (get) Token: 0x06007895 RID: 30869 RVA: 0x001EBED4 File Offset: 0x001EA0D4
			// (set) Token: 0x06007896 RID: 30870 RVA: 0x001EBEFC File Offset: 0x001EA0FC
			public unsafe int __1__state
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___1__state);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___1__state)) = value;
				}
			}

			// Token: 0x17002931 RID: 10545
			// (get) Token: 0x06007897 RID: 30871 RVA: 0x001EBF20 File Offset: 0x001EA120
			// (set) Token: 0x06007898 RID: 30872 RVA: 0x001EBF54 File Offset: 0x001EA154
			public unsafe Il2CppSystem.Object __2__current
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___2__current);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Il2CppSystem.Object(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___2__current), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17002932 RID: 10546
			// (get) Token: 0x06007899 RID: 30873 RVA: 0x001EBF7C File Offset: 0x001EA17C
			// (set) Token: 0x0600789A RID: 30874 RVA: 0x001EBFB0 File Offset: 0x001EA1B0
			public unsafe MotionAbsorb __4__this
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___4__this);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new MotionAbsorb(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MotionAbsorb._AbsorbMotion_d__8.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x040050BE RID: 20670
			private static readonly IntPtr NativeFieldInfoPtr___1__state;

			// Token: 0x040050BF RID: 20671
			private static readonly IntPtr NativeFieldInfoPtr___2__current;

			// Token: 0x040050C0 RID: 20672
			private static readonly IntPtr NativeFieldInfoPtr___4__this;

			// Token: 0x040050C1 RID: 20673
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

			// Token: 0x040050C2 RID: 20674
			private static readonly IntPtr NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0;

			// Token: 0x040050C3 RID: 20675
			private static readonly IntPtr NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0;

			// Token: 0x040050C4 RID: 20676
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Object__get_Current_Private_Virtual_Final_New_get_Object_0;

			// Token: 0x040050C5 RID: 20677
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0;

			// Token: 0x040050C6 RID: 20678
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0;
		}
	}
}
