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

namespace RootMotion.FinalIK
{
	// Token: 0x020004AE RID: 1198
	public class InteractionObject : MonoBehaviour
	{
		// Token: 0x06008D9E RID: 36254 RVA: 0x00244DCC File Offset: 0x00242FCC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634366, XrefRangeEnd = 634369, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenTutorial1()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenTutorial1_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D9F RID: 36255 RVA: 0x00244E10 File Offset: 0x00243010
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634369, XrefRangeEnd = 634372, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenTutorial2()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenTutorial2_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DA0 RID: 36256 RVA: 0x00244E54 File Offset: 0x00243054
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634372, XrefRangeEnd = 634375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenTutorial3()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenTutorial3_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DA1 RID: 36257 RVA: 0x00244E98 File Offset: 0x00243098
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634375, XrefRangeEnd = 634378, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenTutorial4()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenTutorial4_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DA2 RID: 36258 RVA: 0x00244EDC File Offset: 0x002430DC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634378, XrefRangeEnd = 634381, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void SupportGroup()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_SupportGroup_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DA3 RID: 36259 RVA: 0x00244F20 File Offset: 0x00243120
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634381, XrefRangeEnd = 634384, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void ASThread()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_ASThread_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x1700302A RID: 12330
		// (get) Token: 0x06008DA4 RID: 36260 RVA: 0x00244F64 File Offset: 0x00243164
		// (set) Token: 0x06008DA5 RID: 36261 RVA: 0x00244FB4 File Offset: 0x002431B4
		public unsafe float length
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_get_length_Public_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 225977, RefRangeEnd = 225978, XrefRangeStart = 225977, XrefRangeEnd = 225978, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			set
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref value;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_set_length_Private_set_Void_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x1700302B RID: 12331
		// (get) Token: 0x06008DA6 RID: 36262 RVA: 0x00245008 File Offset: 0x00243208
		// (set) Token: 0x06008DA7 RID: 36263 RVA: 0x00245060 File Offset: 0x00243260
		public unsafe InteractionSystem lastUsedInteractionSystem
		{
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 11374, RefRangeEnd = 11375, XrefRangeStart = 11374, XrefRangeEnd = 11375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_get_lastUsedInteractionSystem_Public_get_InteractionSystem_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new InteractionSystem(intPtr3) : null;
			}
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			set
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_set_lastUsedInteractionSystem_Private_set_Void_InteractionSystem_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x06008DA8 RID: 36264 RVA: 0x002450BC File Offset: 0x002432BC
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 634413, RefRangeEnd = 634414, XrefRangeStart = 634384, XrefRangeEnd = 634413, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Initiate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_Initiate_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x1700302C RID: 12332
		// (get) Token: 0x06008DA9 RID: 36265 RVA: 0x00245100 File Offset: 0x00243300
		public unsafe Transform lookAtTarget
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634414, XrefRangeEnd = 634419, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_get_lookAtTarget_Public_get_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Transform(intPtr3) : null;
			}
		}

		// Token: 0x06008DAA RID: 36266 RVA: 0x00245158 File Offset: 0x00243358
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 634431, RefRangeEnd = 634433, XrefRangeStart = 634419, XrefRangeEnd = 634431, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe InteractionTarget GetTarget(FullBodyBipedEffector effectorType, InteractionSystem interactionSystem)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref effectorType;
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(interactionSystem);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetTarget_Public_InteractionTarget_FullBodyBipedEffector_InteractionSystem_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new InteractionTarget(intPtr3) : null;
		}

		// Token: 0x06008DAB RID: 36267 RVA: 0x002451D8 File Offset: 0x002433D8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634433, XrefRangeEnd = 634435, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool CurveUsed(InteractionObject.WeightCurve.Type type)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref type;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_CurveUsed_Public_Boolean_Type_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008DAC RID: 36268 RVA: 0x0024523C File Offset: 0x0024343C
		[CallerCount(0)]
		public unsafe Il2CppReferenceArray<InteractionTarget> GetTargets()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetTargets_Public_Il2CppReferenceArray_1_InteractionTarget_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new Il2CppReferenceArray<InteractionTarget>(intPtr3) : null;
		}

		// Token: 0x06008DAD RID: 36269 RVA: 0x00245294 File Offset: 0x00243494
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 634454, RefRangeEnd = 634455, XrefRangeStart = 634435, XrefRangeEnd = 634454, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe Transform GetTarget(FullBodyBipedEffector effectorType, string tag)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref effectorType;
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.ManagedStringToIl2Cpp(tag);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetTarget_Public_Transform_FullBodyBipedEffector_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new Transform(intPtr3) : null;
		}

		// Token: 0x06008DAE RID: 36270 RVA: 0x00245314 File Offset: 0x00243514
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnStartInteraction(InteractionSystem interactionSystem)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(interactionSystem);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OnStartInteraction_Public_Void_InteractionSystem_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06008DAF RID: 36271 RVA: 0x00245370 File Offset: 0x00243570
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 634498, RefRangeEnd = 634499, XrefRangeStart = 634455, XrefRangeEnd = 634498, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Apply(IKSolverFullBodyBiped solver, FullBodyBipedEffector effector, InteractionTarget target, float timer, float weight)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)5) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(solver);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref effector;
			ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(target);
			ptr[checked(unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref timer;
			ptr[checked(unchecked((UIntPtr)4) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref weight;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_Apply_Public_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_InteractionTarget_Single_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DB0 RID: 36272 RVA: 0x0024541C File Offset: 0x0024361C
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 634507, RefRangeEnd = 634509, XrefRangeStart = 634499, XrefRangeEnd = 634507, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe float GetValue(InteractionObject.WeightCurve.Type weightCurveType, InteractionTarget target, float timer)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref weightCurveType;
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(target);
			ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref timer;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetValue_Public_Single_Type_InteractionTarget_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x1700302D RID: 12333
		// (get) Token: 0x06008DB1 RID: 36273 RVA: 0x002454AC File Offset: 0x002436AC
		public unsafe Transform targetsRoot
		{
			[CallerCount(3)]
			[CachedScanResults(RefRangeStart = 634514, RefRangeEnd = 634517, XrefRangeStart = 634509, XrefRangeEnd = 634514, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_get_targetsRoot_Public_get_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Transform(intPtr3) : null;
			}
		}

		// Token: 0x06008DB2 RID: 36274 RVA: 0x00245504 File Offset: 0x00243704
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634517, XrefRangeEnd = 634518, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Awake()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_Awake_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DB3 RID: 36275 RVA: 0x00245548 File Offset: 0x00243748
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 634522, RefRangeEnd = 634524, XrefRangeStart = 634518, XrefRangeEnd = 634522, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Apply(IKSolverFullBodyBiped solver, FullBodyBipedEffector effector, InteractionObject.WeightCurve.Type type, float value, float weight)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)5) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(solver);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref effector;
			ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref type;
			ptr[checked(unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref value;
			ptr[checked(unchecked((UIntPtr)4) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref weight;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_Apply_Private_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_Type_Single_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DB4 RID: 36276 RVA: 0x002455F0 File Offset: 0x002437F0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634524, XrefRangeEnd = 634530, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe Transform GetTarget(FullBodyBipedEffector effectorType)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref effectorType;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetTarget_Private_Transform_FullBodyBipedEffector_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Transform(intPtr3) : null;
			}
		}

		// Token: 0x06008DB5 RID: 36277 RVA: 0x00245658 File Offset: 0x00243858
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 634531, RefRangeEnd = 634532, XrefRangeStart = 634530, XrefRangeEnd = 634531, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe int GetWeightCurveIndex(InteractionObject.WeightCurve.Type weightCurveType)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref weightCurveType;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetWeightCurveIndex_Private_Int32_Type_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008DB6 RID: 36278 RVA: 0x002456BC File Offset: 0x002438BC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634532, XrefRangeEnd = 634533, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe int GetMultiplierIndex(InteractionObject.WeightCurve.Type weightCurveType)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref weightCurveType;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_GetMultiplierIndex_Private_Int32_Type_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008DB7 RID: 36279 RVA: 0x00245720 File Offset: 0x00243920
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634533, XrefRangeEnd = 634536, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenUserManual()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenUserManual_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DB8 RID: 36280 RVA: 0x00245764 File Offset: 0x00243964
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634536, XrefRangeEnd = 634539, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OpenScriptReference()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr_OpenScriptReference_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DB9 RID: 36281 RVA: 0x002457A8 File Offset: 0x002439A8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634539, XrefRangeEnd = 634544, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe InteractionObject()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008DBA RID: 36282 RVA: 0x002457F4 File Offset: 0x002439F4
		// Note: this type is marked as 'beforefieldinit'.
		static InteractionObject()
		{
			Il2CppClassPointerStore<InteractionObject>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "InteractionObject");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr);
			InteractionObject.NativeFieldInfoPtr_otherLookAtTarget = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "otherLookAtTarget");
			InteractionObject.NativeFieldInfoPtr_otherTargetsRoot = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "otherTargetsRoot");
			InteractionObject.NativeFieldInfoPtr_positionOffsetSpace = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "positionOffsetSpace");
			InteractionObject.NativeFieldInfoPtr_weightCurves = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "weightCurves");
			InteractionObject.NativeFieldInfoPtr_multipliers = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "multipliers");
			InteractionObject.NativeFieldInfoPtr_events = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "events");
			InteractionObject.NativeFieldInfoPtr__length_k__BackingField = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "<length>k__BackingField");
			InteractionObject.NativeFieldInfoPtr__lastUsedInteractionSystem_k__BackingField = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "<lastUsedInteractionSystem>k__BackingField");
			InteractionObject.NativeFieldInfoPtr_targets = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "targets");
			InteractionObject.NativeMethodInfoPtr_OpenTutorial1_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674136);
			InteractionObject.NativeMethodInfoPtr_OpenTutorial2_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674137);
			InteractionObject.NativeMethodInfoPtr_OpenTutorial3_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674138);
			InteractionObject.NativeMethodInfoPtr_OpenTutorial4_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674139);
			InteractionObject.NativeMethodInfoPtr_SupportGroup_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674140);
			InteractionObject.NativeMethodInfoPtr_ASThread_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674141);
			InteractionObject.NativeMethodInfoPtr_get_length_Public_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674142);
			InteractionObject.NativeMethodInfoPtr_set_length_Private_set_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674143);
			InteractionObject.NativeMethodInfoPtr_get_lastUsedInteractionSystem_Public_get_InteractionSystem_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674144);
			InteractionObject.NativeMethodInfoPtr_set_lastUsedInteractionSystem_Private_set_Void_InteractionSystem_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674145);
			InteractionObject.NativeMethodInfoPtr_Initiate_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674146);
			InteractionObject.NativeMethodInfoPtr_get_lookAtTarget_Public_get_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674147);
			InteractionObject.NativeMethodInfoPtr_GetTarget_Public_InteractionTarget_FullBodyBipedEffector_InteractionSystem_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674148);
			InteractionObject.NativeMethodInfoPtr_CurveUsed_Public_Boolean_Type_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674149);
			InteractionObject.NativeMethodInfoPtr_GetTargets_Public_Il2CppReferenceArray_1_InteractionTarget_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674150);
			InteractionObject.NativeMethodInfoPtr_GetTarget_Public_Transform_FullBodyBipedEffector_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674151);
			InteractionObject.NativeMethodInfoPtr_OnStartInteraction_Public_Void_InteractionSystem_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674152);
			InteractionObject.NativeMethodInfoPtr_Apply_Public_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_InteractionTarget_Single_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674153);
			InteractionObject.NativeMethodInfoPtr_GetValue_Public_Single_Type_InteractionTarget_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674154);
			InteractionObject.NativeMethodInfoPtr_get_targetsRoot_Public_get_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674155);
			InteractionObject.NativeMethodInfoPtr_Awake_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674156);
			InteractionObject.NativeMethodInfoPtr_Apply_Private_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_Type_Single_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674157);
			InteractionObject.NativeMethodInfoPtr_GetTarget_Private_Transform_FullBodyBipedEffector_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674158);
			InteractionObject.NativeMethodInfoPtr_GetWeightCurveIndex_Private_Int32_Type_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674159);
			InteractionObject.NativeMethodInfoPtr_GetMultiplierIndex_Private_Int32_Type_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674160);
			InteractionObject.NativeMethodInfoPtr_OpenUserManual_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674161);
			InteractionObject.NativeMethodInfoPtr_OpenScriptReference_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674162);
			InteractionObject.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, 100674163);
		}

		// Token: 0x06008DBB RID: 36283 RVA: 0x0000351C File Offset: 0x0000171C
		public InteractionObject(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003021 RID: 12321
		// (get) Token: 0x06008DBC RID: 36284 RVA: 0x00245B08 File Offset: 0x00243D08
		// (set) Token: 0x06008DBD RID: 36285 RVA: 0x00245B3C File Offset: 0x00243D3C
		public unsafe Transform otherLookAtTarget
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_otherLookAtTarget);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Transform(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_otherLookAtTarget), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003022 RID: 12322
		// (get) Token: 0x06008DBE RID: 36286 RVA: 0x00245B64 File Offset: 0x00243D64
		// (set) Token: 0x06008DBF RID: 36287 RVA: 0x00245B98 File Offset: 0x00243D98
		public unsafe Transform otherTargetsRoot
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_otherTargetsRoot);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Transform(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_otherTargetsRoot), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003023 RID: 12323
		// (get) Token: 0x06008DC0 RID: 36288 RVA: 0x00245BC0 File Offset: 0x00243DC0
		// (set) Token: 0x06008DC1 RID: 36289 RVA: 0x00245BF4 File Offset: 0x00243DF4
		public unsafe Transform positionOffsetSpace
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_positionOffsetSpace);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Transform(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_positionOffsetSpace), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003024 RID: 12324
		// (get) Token: 0x06008DC2 RID: 36290 RVA: 0x00245C1C File Offset: 0x00243E1C
		// (set) Token: 0x06008DC3 RID: 36291 RVA: 0x00245C50 File Offset: 0x00243E50
		public unsafe Il2CppReferenceArray<InteractionObject.WeightCurve> weightCurves
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_weightCurves);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionObject.WeightCurve>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_weightCurves), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003025 RID: 12325
		// (get) Token: 0x06008DC4 RID: 36292 RVA: 0x00245C78 File Offset: 0x00243E78
		// (set) Token: 0x06008DC5 RID: 36293 RVA: 0x00245CAC File Offset: 0x00243EAC
		public unsafe Il2CppReferenceArray<InteractionObject.Multiplier> multipliers
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_multipliers);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionObject.Multiplier>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_multipliers), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003026 RID: 12326
		// (get) Token: 0x06008DC6 RID: 36294 RVA: 0x00245CD4 File Offset: 0x00243ED4
		// (set) Token: 0x06008DC7 RID: 36295 RVA: 0x00245D08 File Offset: 0x00243F08
		public unsafe Il2CppReferenceArray<InteractionObject.InteractionEvent> events
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_events);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionObject.InteractionEvent>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_events), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003027 RID: 12327
		// (get) Token: 0x06008DC8 RID: 36296 RVA: 0x00245D30 File Offset: 0x00243F30
		// (set) Token: 0x06008DC9 RID: 36297 RVA: 0x00245D58 File Offset: 0x00243F58
		public unsafe float _length_k__BackingField
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr__length_k__BackingField);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr__length_k__BackingField)) = value;
			}
		}

		// Token: 0x17003028 RID: 12328
		// (get) Token: 0x06008DCA RID: 36298 RVA: 0x00245D7C File Offset: 0x00243F7C
		// (set) Token: 0x06008DCB RID: 36299 RVA: 0x00245DB0 File Offset: 0x00243FB0
		public unsafe InteractionSystem _lastUsedInteractionSystem_k__BackingField
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr__lastUsedInteractionSystem_k__BackingField);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new InteractionSystem(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr__lastUsedInteractionSystem_k__BackingField), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003029 RID: 12329
		// (get) Token: 0x06008DCC RID: 36300 RVA: 0x00245DD8 File Offset: 0x00243FD8
		// (set) Token: 0x06008DCD RID: 36301 RVA: 0x00245E0C File Offset: 0x0024400C
		public unsafe Il2CppReferenceArray<InteractionTarget> targets
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_targets);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionTarget>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.NativeFieldInfoPtr_targets), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x04005EAE RID: 24238
		private static readonly IntPtr NativeFieldInfoPtr_otherLookAtTarget;

		// Token: 0x04005EAF RID: 24239
		private static readonly IntPtr NativeFieldInfoPtr_otherTargetsRoot;

		// Token: 0x04005EB0 RID: 24240
		private static readonly IntPtr NativeFieldInfoPtr_positionOffsetSpace;

		// Token: 0x04005EB1 RID: 24241
		private static readonly IntPtr NativeFieldInfoPtr_weightCurves;

		// Token: 0x04005EB2 RID: 24242
		private static readonly IntPtr NativeFieldInfoPtr_multipliers;

		// Token: 0x04005EB3 RID: 24243
		private static readonly IntPtr NativeFieldInfoPtr_events;

		// Token: 0x04005EB4 RID: 24244
		private static readonly IntPtr NativeFieldInfoPtr__length_k__BackingField;

		// Token: 0x04005EB5 RID: 24245
		private static readonly IntPtr NativeFieldInfoPtr__lastUsedInteractionSystem_k__BackingField;

		// Token: 0x04005EB6 RID: 24246
		private static readonly IntPtr NativeFieldInfoPtr_targets;

		// Token: 0x04005EB7 RID: 24247
		private static readonly IntPtr NativeMethodInfoPtr_OpenTutorial1_Private_Void_0;

		// Token: 0x04005EB8 RID: 24248
		private static readonly IntPtr NativeMethodInfoPtr_OpenTutorial2_Private_Void_0;

		// Token: 0x04005EB9 RID: 24249
		private static readonly IntPtr NativeMethodInfoPtr_OpenTutorial3_Private_Void_0;

		// Token: 0x04005EBA RID: 24250
		private static readonly IntPtr NativeMethodInfoPtr_OpenTutorial4_Private_Void_0;

		// Token: 0x04005EBB RID: 24251
		private static readonly IntPtr NativeMethodInfoPtr_SupportGroup_Private_Void_0;

		// Token: 0x04005EBC RID: 24252
		private static readonly IntPtr NativeMethodInfoPtr_ASThread_Private_Void_0;

		// Token: 0x04005EBD RID: 24253
		private static readonly IntPtr NativeMethodInfoPtr_get_length_Public_get_Single_0;

		// Token: 0x04005EBE RID: 24254
		private static readonly IntPtr NativeMethodInfoPtr_set_length_Private_set_Void_Single_0;

		// Token: 0x04005EBF RID: 24255
		private static readonly IntPtr NativeMethodInfoPtr_get_lastUsedInteractionSystem_Public_get_InteractionSystem_0;

		// Token: 0x04005EC0 RID: 24256
		private static readonly IntPtr NativeMethodInfoPtr_set_lastUsedInteractionSystem_Private_set_Void_InteractionSystem_0;

		// Token: 0x04005EC1 RID: 24257
		private static readonly IntPtr NativeMethodInfoPtr_Initiate_Public_Void_0;

		// Token: 0x04005EC2 RID: 24258
		private static readonly IntPtr NativeMethodInfoPtr_get_lookAtTarget_Public_get_Transform_0;

		// Token: 0x04005EC3 RID: 24259
		private static readonly IntPtr NativeMethodInfoPtr_GetTarget_Public_InteractionTarget_FullBodyBipedEffector_InteractionSystem_0;

		// Token: 0x04005EC4 RID: 24260
		private static readonly IntPtr NativeMethodInfoPtr_CurveUsed_Public_Boolean_Type_0;

		// Token: 0x04005EC5 RID: 24261
		private static readonly IntPtr NativeMethodInfoPtr_GetTargets_Public_Il2CppReferenceArray_1_InteractionTarget_0;

		// Token: 0x04005EC6 RID: 24262
		private static readonly IntPtr NativeMethodInfoPtr_GetTarget_Public_Transform_FullBodyBipedEffector_String_0;

		// Token: 0x04005EC7 RID: 24263
		private static readonly IntPtr NativeMethodInfoPtr_OnStartInteraction_Public_Void_InteractionSystem_0;

		// Token: 0x04005EC8 RID: 24264
		private static readonly IntPtr NativeMethodInfoPtr_Apply_Public_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_InteractionTarget_Single_Single_0;

		// Token: 0x04005EC9 RID: 24265
		private static readonly IntPtr NativeMethodInfoPtr_GetValue_Public_Single_Type_InteractionTarget_Single_0;

		// Token: 0x04005ECA RID: 24266
		private static readonly IntPtr NativeMethodInfoPtr_get_targetsRoot_Public_get_Transform_0;

		// Token: 0x04005ECB RID: 24267
		private static readonly IntPtr NativeMethodInfoPtr_Awake_Private_Void_0;

		// Token: 0x04005ECC RID: 24268
		private static readonly IntPtr NativeMethodInfoPtr_Apply_Private_Void_IKSolverFullBodyBiped_FullBodyBipedEffector_Type_Single_Single_0;

		// Token: 0x04005ECD RID: 24269
		private static readonly IntPtr NativeMethodInfoPtr_GetTarget_Private_Transform_FullBodyBipedEffector_0;

		// Token: 0x04005ECE RID: 24270
		private static readonly IntPtr NativeMethodInfoPtr_GetWeightCurveIndex_Private_Int32_Type_0;

		// Token: 0x04005ECF RID: 24271
		private static readonly IntPtr NativeMethodInfoPtr_GetMultiplierIndex_Private_Int32_Type_0;

		// Token: 0x04005ED0 RID: 24272
		private static readonly IntPtr NativeMethodInfoPtr_OpenUserManual_Private_Void_0;

		// Token: 0x04005ED1 RID: 24273
		private static readonly IntPtr NativeMethodInfoPtr_OpenScriptReference_Private_Void_0;

		// Token: 0x04005ED2 RID: 24274
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x020004AF RID: 1199
		[Serializable]
		public class InteractionEvent : Il2CppSystem.Object
		{
			// Token: 0x06008DCE RID: 36302 RVA: 0x00245E34 File Offset: 0x00244034
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 634312, RefRangeEnd = 634313, XrefRangeStart = 634298, XrefRangeEnd = 634312, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Activate(Transform t)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.InteractionEvent.NativeMethodInfoPtr_Activate_Public_Void_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008DCF RID: 36303 RVA: 0x00245E90 File Offset: 0x00244090
			[CallerCount(1664)]
			[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe InteractionEvent()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.InteractionEvent.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008DD0 RID: 36304 RVA: 0x00245EDC File Offset: 0x002440DC
			// Note: this type is marked as 'beforefieldinit'.
			static InteractionEvent()
			{
				Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "InteractionEvent");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr);
				InteractionObject.InteractionEvent.NativeFieldInfoPtr_time = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, "time");
				InteractionObject.InteractionEvent.NativeFieldInfoPtr_pause = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, "pause");
				InteractionObject.InteractionEvent.NativeFieldInfoPtr_pickUp = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, "pickUp");
				InteractionObject.InteractionEvent.NativeFieldInfoPtr_animations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, "animations");
				InteractionObject.InteractionEvent.NativeFieldInfoPtr_messages = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, "messages");
				InteractionObject.InteractionEvent.NativeMethodInfoPtr_Activate_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, 100674164);
				InteractionObject.InteractionEvent.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.InteractionEvent>.NativeClassPtr, 100674165);
			}

			// Token: 0x06008DD1 RID: 36305 RVA: 0x0000A74C File Offset: 0x0000894C
			public InteractionEvent(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x1700302E RID: 12334
			// (get) Token: 0x06008DD2 RID: 36306 RVA: 0x00245F94 File Offset: 0x00244194
			// (set) Token: 0x06008DD3 RID: 36307 RVA: 0x00245FBC File Offset: 0x002441BC
			public unsafe float time
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_time);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_time)) = value;
				}
			}

			// Token: 0x1700302F RID: 12335
			// (get) Token: 0x06008DD4 RID: 36308 RVA: 0x00245FE0 File Offset: 0x002441E0
			// (set) Token: 0x06008DD5 RID: 36309 RVA: 0x00246008 File Offset: 0x00244208
			public unsafe bool pause
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_pause);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_pause)) = value;
				}
			}

			// Token: 0x17003030 RID: 12336
			// (get) Token: 0x06008DD6 RID: 36310 RVA: 0x0024602C File Offset: 0x0024422C
			// (set) Token: 0x06008DD7 RID: 36311 RVA: 0x00246054 File Offset: 0x00244254
			public unsafe bool pickUp
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_pickUp);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_pickUp)) = value;
				}
			}

			// Token: 0x17003031 RID: 12337
			// (get) Token: 0x06008DD8 RID: 36312 RVA: 0x00246078 File Offset: 0x00244278
			// (set) Token: 0x06008DD9 RID: 36313 RVA: 0x002460AC File Offset: 0x002442AC
			public unsafe Il2CppReferenceArray<InteractionObject.AnimatorEvent> animations
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_animations);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionObject.AnimatorEvent>(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_animations), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17003032 RID: 12338
			// (get) Token: 0x06008DDA RID: 36314 RVA: 0x002460D4 File Offset: 0x002442D4
			// (set) Token: 0x06008DDB RID: 36315 RVA: 0x00246108 File Offset: 0x00244308
			public unsafe Il2CppReferenceArray<InteractionObject.Message> messages
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_messages);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Il2CppReferenceArray<InteractionObject.Message>(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.InteractionEvent.NativeFieldInfoPtr_messages), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x04005ED3 RID: 24275
			private static readonly IntPtr NativeFieldInfoPtr_time;

			// Token: 0x04005ED4 RID: 24276
			private static readonly IntPtr NativeFieldInfoPtr_pause;

			// Token: 0x04005ED5 RID: 24277
			private static readonly IntPtr NativeFieldInfoPtr_pickUp;

			// Token: 0x04005ED6 RID: 24278
			private static readonly IntPtr NativeFieldInfoPtr_animations;

			// Token: 0x04005ED7 RID: 24279
			private static readonly IntPtr NativeFieldInfoPtr_messages;

			// Token: 0x04005ED8 RID: 24280
			private static readonly IntPtr NativeMethodInfoPtr_Activate_Public_Void_Transform_0;

			// Token: 0x04005ED9 RID: 24281
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}

		// Token: 0x020004B0 RID: 1200
		[Serializable]
		public class Message : Il2CppSystem.Object
		{
			// Token: 0x06008DDC RID: 36316 RVA: 0x00246130 File Offset: 0x00244330
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634313, XrefRangeEnd = 634324, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Send(Transform t)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.Message.NativeMethodInfoPtr_Send_Public_Void_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008DDD RID: 36317 RVA: 0x0024618C File Offset: 0x0024438C
			[CallerCount(1664)]
			[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe Message()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.Message.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008DDE RID: 36318 RVA: 0x002461D8 File Offset: 0x002443D8
			// Note: this type is marked as 'beforefieldinit'.
			static Message()
			{
				Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "Message");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr);
				InteractionObject.Message.NativeFieldInfoPtr_function = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr, "function");
				InteractionObject.Message.NativeFieldInfoPtr_recipient = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr, "recipient");
				InteractionObject.Message.NativeFieldInfoPtr_empty = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr, "empty");
				InteractionObject.Message.NativeMethodInfoPtr_Send_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr, 100674166);
				InteractionObject.Message.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.Message>.NativeClassPtr, 100674167);
			}

			// Token: 0x06008DDF RID: 36319 RVA: 0x0000A74C File Offset: 0x0000894C
			public Message(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003033 RID: 12339
			// (get) Token: 0x06008DE0 RID: 36320 RVA: 0x00246268 File Offset: 0x00244468
			// (set) Token: 0x06008DE1 RID: 36321 RVA: 0x00246291 File Offset: 0x00244491
			public unsafe string function
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Message.NativeFieldInfoPtr_function);
					return IL2CPP.Il2CppStringToManaged(*intPtr);
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Message.NativeFieldInfoPtr_function), IL2CPP.ManagedStringToIl2Cpp(value));
				}
			}

			// Token: 0x17003034 RID: 12340
			// (get) Token: 0x06008DE2 RID: 36322 RVA: 0x002462B8 File Offset: 0x002444B8
			// (set) Token: 0x06008DE3 RID: 36323 RVA: 0x002462EC File Offset: 0x002444EC
			public unsafe GameObject recipient
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Message.NativeFieldInfoPtr_recipient);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new GameObject(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Message.NativeFieldInfoPtr_recipient), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17003035 RID: 12341
			// (get) Token: 0x06008DE4 RID: 36324 RVA: 0x00246314 File Offset: 0x00244514
			// (set) Token: 0x06008DE5 RID: 36325 RVA: 0x00246334 File Offset: 0x00244534
			public unsafe static string empty
			{
				get
				{
					IntPtr intPtr;
					IL2CPP.il2cpp_field_static_get_value(InteractionObject.Message.NativeFieldInfoPtr_empty, (void*)(&intPtr));
					return IL2CPP.Il2CppStringToManaged(intPtr);
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(InteractionObject.Message.NativeFieldInfoPtr_empty, IL2CPP.ManagedStringToIl2Cpp(value));
				}
			}

			// Token: 0x04005EDA RID: 24282
			private static readonly IntPtr NativeFieldInfoPtr_function;

			// Token: 0x04005EDB RID: 24283
			private static readonly IntPtr NativeFieldInfoPtr_recipient;

			// Token: 0x04005EDC RID: 24284
			private static readonly IntPtr NativeFieldInfoPtr_empty;

			// Token: 0x04005EDD RID: 24285
			private static readonly IntPtr NativeMethodInfoPtr_Send_Public_Void_Transform_0;

			// Token: 0x04005EDE RID: 24286
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}

		// Token: 0x020004B1 RID: 1201
		[Serializable]
		public class AnimatorEvent : Il2CppSystem.Object
		{
			// Token: 0x06008DE6 RID: 36326 RVA: 0x0024634C File Offset: 0x0024454C
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 634346, RefRangeEnd = 634347, XrefRangeStart = 634324, XrefRangeEnd = 634346, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Activate(bool pickUp)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref pickUp;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Public_Void_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008DE7 RID: 36327 RVA: 0x002463A0 File Offset: 0x002445A0
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634347, XrefRangeEnd = 634351, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Activate(Animator animator)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(animator);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Private_Void_Animator_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008DE8 RID: 36328 RVA: 0x002463FC File Offset: 0x002445FC
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634351, XrefRangeEnd = 634359, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Activate(Animation animation)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(animation);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Private_Void_Animation_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008DE9 RID: 36329 RVA: 0x00246458 File Offset: 0x00244658
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634359, XrefRangeEnd = 634360, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe AnimatorEvent()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.AnimatorEvent.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008DEA RID: 36330 RVA: 0x002464A4 File Offset: 0x002446A4
			// Note: this type is marked as 'beforefieldinit'.
			static AnimatorEvent()
			{
				Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "AnimatorEvent");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr);
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animator = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "animator");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "animation");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animationState = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "animationState");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_crossfadeTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "crossfadeTime");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_layer = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "layer");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_resetNormalizedTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "resetNormalizedTime");
				InteractionObject.AnimatorEvent.NativeFieldInfoPtr_empty = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, "empty");
				InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Public_Void_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, 100674168);
				InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Private_Void_Animator_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, 100674169);
				InteractionObject.AnimatorEvent.NativeMethodInfoPtr_Activate_Private_Void_Animation_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, 100674170);
				InteractionObject.AnimatorEvent.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.AnimatorEvent>.NativeClassPtr, 100674171);
			}

			// Token: 0x06008DEB RID: 36331 RVA: 0x0000A74C File Offset: 0x0000894C
			public AnimatorEvent(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003036 RID: 12342
			// (get) Token: 0x06008DEC RID: 36332 RVA: 0x002465AC File Offset: 0x002447AC
			// (set) Token: 0x06008DED RID: 36333 RVA: 0x002465E0 File Offset: 0x002447E0
			public unsafe Animator animator
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animator);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Animator(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animator), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17003037 RID: 12343
			// (get) Token: 0x06008DEE RID: 36334 RVA: 0x00246608 File Offset: 0x00244808
			// (set) Token: 0x06008DEF RID: 36335 RVA: 0x0024663C File Offset: 0x0024483C
			public unsafe Animation animation
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animation);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Animation(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animation), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17003038 RID: 12344
			// (get) Token: 0x06008DF0 RID: 36336 RVA: 0x00246664 File Offset: 0x00244864
			// (set) Token: 0x06008DF1 RID: 36337 RVA: 0x0024668D File Offset: 0x0024488D
			public unsafe string animationState
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animationState);
					return IL2CPP.Il2CppStringToManaged(*intPtr);
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_animationState), IL2CPP.ManagedStringToIl2Cpp(value));
				}
			}

			// Token: 0x17003039 RID: 12345
			// (get) Token: 0x06008DF2 RID: 36338 RVA: 0x002466B4 File Offset: 0x002448B4
			// (set) Token: 0x06008DF3 RID: 36339 RVA: 0x002466DC File Offset: 0x002448DC
			public unsafe float crossfadeTime
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_crossfadeTime);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_crossfadeTime)) = value;
				}
			}

			// Token: 0x1700303A RID: 12346
			// (get) Token: 0x06008DF4 RID: 36340 RVA: 0x00246700 File Offset: 0x00244900
			// (set) Token: 0x06008DF5 RID: 36341 RVA: 0x00246728 File Offset: 0x00244928
			public unsafe int layer
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_layer);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_layer)) = value;
				}
			}

			// Token: 0x1700303B RID: 12347
			// (get) Token: 0x06008DF6 RID: 36342 RVA: 0x0024674C File Offset: 0x0024494C
			// (set) Token: 0x06008DF7 RID: 36343 RVA: 0x00246774 File Offset: 0x00244974
			public unsafe bool resetNormalizedTime
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_resetNormalizedTime);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_resetNormalizedTime)) = value;
				}
			}

			// Token: 0x1700303C RID: 12348
			// (get) Token: 0x06008DF8 RID: 36344 RVA: 0x00246798 File Offset: 0x00244998
			// (set) Token: 0x06008DF9 RID: 36345 RVA: 0x002467B8 File Offset: 0x002449B8
			public unsafe static string empty
			{
				get
				{
					IntPtr intPtr;
					IL2CPP.il2cpp_field_static_get_value(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_empty, (void*)(&intPtr));
					return IL2CPP.Il2CppStringToManaged(intPtr);
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(InteractionObject.AnimatorEvent.NativeFieldInfoPtr_empty, IL2CPP.ManagedStringToIl2Cpp(value));
				}
			}

			// Token: 0x04005EDF RID: 24287
			private static readonly IntPtr NativeFieldInfoPtr_animator;

			// Token: 0x04005EE0 RID: 24288
			private static readonly IntPtr NativeFieldInfoPtr_animation;

			// Token: 0x04005EE1 RID: 24289
			private static readonly IntPtr NativeFieldInfoPtr_animationState;

			// Token: 0x04005EE2 RID: 24290
			private static readonly IntPtr NativeFieldInfoPtr_crossfadeTime;

			// Token: 0x04005EE3 RID: 24291
			private static readonly IntPtr NativeFieldInfoPtr_layer;

			// Token: 0x04005EE4 RID: 24292
			private static readonly IntPtr NativeFieldInfoPtr_resetNormalizedTime;

			// Token: 0x04005EE5 RID: 24293
			private static readonly IntPtr NativeFieldInfoPtr_empty;

			// Token: 0x04005EE6 RID: 24294
			private static readonly IntPtr NativeMethodInfoPtr_Activate_Public_Void_Boolean_0;

			// Token: 0x04005EE7 RID: 24295
			private static readonly IntPtr NativeMethodInfoPtr_Activate_Private_Void_Animator_0;

			// Token: 0x04005EE8 RID: 24296
			private static readonly IntPtr NativeMethodInfoPtr_Activate_Private_Void_Animation_0;

			// Token: 0x04005EE9 RID: 24297
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}

		// Token: 0x020004B2 RID: 1202
		[Serializable]
		public class WeightCurve : Il2CppSystem.Object
		{
			// Token: 0x06008DFA RID: 36346 RVA: 0x002467D0 File Offset: 0x002449D0
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 634362, RefRangeEnd = 634364, XrefRangeStart = 634360, XrefRangeEnd = 634362, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe float GetValue(float timer)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref timer;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.WeightCurve.NativeMethodInfoPtr_GetValue_Public_Single_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06008DFB RID: 36347 RVA: 0x00246834 File Offset: 0x00244A34
			[CallerCount(1664)]
			[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe WeightCurve()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.WeightCurve.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008DFC RID: 36348 RVA: 0x00246880 File Offset: 0x00244A80
			// Note: this type is marked as 'beforefieldinit'.
			static WeightCurve()
			{
				Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "WeightCurve");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr);
				InteractionObject.WeightCurve.NativeFieldInfoPtr_type = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr, "type");
				InteractionObject.WeightCurve.NativeFieldInfoPtr_curve = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr, "curve");
				InteractionObject.WeightCurve.NativeMethodInfoPtr_GetValue_Public_Single_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr, 100674172);
				InteractionObject.WeightCurve.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.WeightCurve>.NativeClassPtr, 100674173);
			}

			// Token: 0x06008DFD RID: 36349 RVA: 0x0000A74C File Offset: 0x0000894C
			public WeightCurve(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x1700303D RID: 12349
			// (get) Token: 0x06008DFE RID: 36350 RVA: 0x002468FC File Offset: 0x00244AFC
			// (set) Token: 0x06008DFF RID: 36351 RVA: 0x00246924 File Offset: 0x00244B24
			public unsafe InteractionObject.WeightCurve.Type type
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.WeightCurve.NativeFieldInfoPtr_type);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.WeightCurve.NativeFieldInfoPtr_type)) = value;
				}
			}

			// Token: 0x1700303E RID: 12350
			// (get) Token: 0x06008E00 RID: 36352 RVA: 0x00246948 File Offset: 0x00244B48
			// (set) Token: 0x06008E01 RID: 36353 RVA: 0x0024697C File Offset: 0x00244B7C
			public unsafe AnimationCurve curve
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.WeightCurve.NativeFieldInfoPtr_curve);
					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(InteractionObject.WeightCurve.NativeFieldInfoPtr_curve), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x04005EEA RID: 24298
			private static readonly IntPtr NativeFieldInfoPtr_type;

			// Token: 0x04005EEB RID: 24299
			private static readonly IntPtr NativeFieldInfoPtr_curve;

			// Token: 0x04005EEC RID: 24300
			private static readonly IntPtr NativeMethodInfoPtr_GetValue_Public_Single_Single_0;

			// Token: 0x04005EED RID: 24301
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

			// Token: 0x020004B3 RID: 1203
			[Serializable]
			public enum Type
			{
				// Token: 0x04005EEF RID: 24303
				PositionWeight,
				// Token: 0x04005EF0 RID: 24304
				RotationWeight,
				// Token: 0x04005EF1 RID: 24305
				PositionOffsetX,
				// Token: 0x04005EF2 RID: 24306
				PositionOffsetY,
				// Token: 0x04005EF3 RID: 24307
				PositionOffsetZ,
				// Token: 0x04005EF4 RID: 24308
				Pull,
				// Token: 0x04005EF5 RID: 24309
				Reach,
				// Token: 0x04005EF6 RID: 24310
				RotateBoneWeight,
				// Token: 0x04005EF7 RID: 24311
				Push,
				// Token: 0x04005EF8 RID: 24312
				PushParent,
				// Token: 0x04005EF9 RID: 24313
				PoserWeight
			}
		}

		// Token: 0x020004B4 RID: 1204
		[Serializable]
		public class Multiplier : Il2CppSystem.Object
		{
			// Token: 0x06008E02 RID: 36354 RVA: 0x002469A4 File Offset: 0x00244BA4
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 634365, RefRangeEnd = 634366, XrefRangeStart = 634364, XrefRangeEnd = 634365, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe float GetValue(InteractionObject.WeightCurve weightCurve, float timer)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr;
				checked
				{
					ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(weightCurve);
				}
				ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref timer;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.Multiplier.NativeMethodInfoPtr_GetValue_Public_Single_WeightCurve_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}

			// Token: 0x06008E03 RID: 36355 RVA: 0x00246A20 File Offset: 0x00244C20
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe Multiplier()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionObject.Multiplier.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008E04 RID: 36356 RVA: 0x00246A6C File Offset: 0x00244C6C
			// Note: this type is marked as 'beforefieldinit'.
			static Multiplier()
			{
				Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<InteractionObject>.NativeClassPtr, "Multiplier");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr);
				InteractionObject.Multiplier.NativeFieldInfoPtr_curve = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr, "curve");
				InteractionObject.Multiplier.NativeFieldInfoPtr_multiplier = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr, "multiplier");
				InteractionObject.Multiplier.NativeFieldInfoPtr_result = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr, "result");
				InteractionObject.Multiplier.NativeMethodInfoPtr_GetValue_Public_Single_WeightCurve_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr, 100674174);
				InteractionObject.Multiplier.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionObject.Multiplier>.NativeClassPtr, 100674175);
			}

			// Token: 0x06008E05 RID: 36357 RVA: 0x0000A74C File Offset: 0x0000894C
			public Multiplier(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x1700303F RID: 12351
			// (get) Token: 0x06008E06 RID: 36358 RVA: 0x00246AFC File Offset: 0x00244CFC
			// (set) Token: 0x06008E07 RID: 36359 RVA: 0x00246B24 File Offset: 0x00244D24
			public unsafe InteractionObject.WeightCurve.Type curve
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_curve);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_curve)) = value;
				}
			}

			// Token: 0x17003040 RID: 12352
			// (get) Token: 0x06008E08 RID: 36360 RVA: 0x00246B48 File Offset: 0x00244D48
			// (set) Token: 0x06008E09 RID: 36361 RVA: 0x00246B70 File Offset: 0x00244D70
			public unsafe float multiplier
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_multiplier);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_multiplier)) = value;
				}
			}

			// Token: 0x17003041 RID: 12353
			// (get) Token: 0x06008E0A RID: 36362 RVA: 0x00246B94 File Offset: 0x00244D94
			// (set) Token: 0x06008E0B RID: 36363 RVA: 0x00246BBC File Offset: 0x00244DBC
			public unsafe InteractionObject.WeightCurve.Type result
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_result);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionObject.Multiplier.NativeFieldInfoPtr_result)) = value;
				}
			}

			// Token: 0x04005EFA RID: 24314
			private static readonly IntPtr NativeFieldInfoPtr_curve;

			// Token: 0x04005EFB RID: 24315
			private static readonly IntPtr NativeFieldInfoPtr_multiplier;

			// Token: 0x04005EFC RID: 24316
			private static readonly IntPtr NativeFieldInfoPtr_result;

			// Token: 0x04005EFD RID: 24317
			private static readonly IntPtr NativeMethodInfoPtr_GetValue_Public_Single_WeightCurve_Single_0;

			// Token: 0x04005EFE RID: 24318
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}
	}
}
