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

namespace Obi
{
	// Token: 0x020004D5 RID: 1237
	public class ObiMeshTopology : ScriptableObject
	{
		// Token: 0x1700307B RID: 12411
		// (get) Token: 0x06008EAE RID: 36526 RVA: 0x0024B1CC File Offset: 0x002493CC
		public unsafe bool Initialized
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_Initialized_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x1700307C RID: 12412
		// (get) Token: 0x06008EAF RID: 36527 RVA: 0x0024B21C File Offset: 0x0024941C
		public unsafe IntPtr HalfEdgeMesh
		{
			[CallerCount(16)]
			[CachedScanResults(RefRangeStart = 11042, RefRangeEnd = 11058, XrefRangeStart = 11042, XrefRangeEnd = 11058, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_HalfEdgeMesh_Public_get_IntPtr_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x1700307D RID: 12413
		// (get) Token: 0x06008EB1 RID: 36529 RVA: 0x0024B2C8 File Offset: 0x002494C8
		// (set) Token: 0x06008EB0 RID: 36528 RVA: 0x0024B26C File Offset: 0x0024946C
		public unsafe Mesh InputMesh
		{
			[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(ObiMeshTopology.NativeMethodInfoPtr_get_InputMesh_Public_get_Mesh_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Mesh(intPtr3) : null;
			}
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 610734, RefRangeEnd = 610735, XrefRangeStart = 610709, XrefRangeEnd = 610734, 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(ObiMeshTopology.NativeMethodInfoPtr_set_InputMesh_Public_set_Void_Mesh_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x1700307E RID: 12414
		// (get) Token: 0x06008EB2 RID: 36530 RVA: 0x0024B320 File Offset: 0x00249520
		public unsafe float MeshVolume
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_MeshVolume_Public_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x1700307F RID: 12415
		// (get) Token: 0x06008EB3 RID: 36531 RVA: 0x0024B370 File Offset: 0x00249570
		public unsafe float MeshArea
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_MeshArea_Public_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17003080 RID: 12416
		// (get) Token: 0x06008EB4 RID: 36532 RVA: 0x0024B3C0 File Offset: 0x002495C0
		public unsafe int VertexCount
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_VertexCount_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17003081 RID: 12417
		// (get) Token: 0x06008EB5 RID: 36533 RVA: 0x0024B410 File Offset: 0x00249610
		public unsafe int BorderEdgeCount
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_BorderEdgeCount_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17003082 RID: 12418
		// (get) Token: 0x06008EB6 RID: 36534 RVA: 0x0024B460 File Offset: 0x00249660
		public unsafe bool IsClosed
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_IsClosed_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17003083 RID: 12419
		// (get) Token: 0x06008EB7 RID: 36535 RVA: 0x0024B4B0 File Offset: 0x002496B0
		public unsafe bool IsModified
		{
			[CallerCount(87)]
			[CachedScanResults(RefRangeStart = 20818, RefRangeEnd = 20905, XrefRangeStart = 20818, XrefRangeEnd = 20905, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_IsModified_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17003084 RID: 12420
		// (get) Token: 0x06008EB8 RID: 36536 RVA: 0x0024B500 File Offset: 0x00249700
		public unsafe bool IsNonManifold
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_get_IsNonManifold_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008EB9 RID: 36537 RVA: 0x0024B550 File Offset: 0x00249750
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610735, XrefRangeEnd = 610789, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnEnable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_OnEnable_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EBA RID: 36538 RVA: 0x0024B594 File Offset: 0x00249794
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610849, RefRangeEnd = 610850, XrefRangeStart = 610789, XrefRangeEnd = 610849, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void CopyDataFrom(ObiMeshTopology source)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_CopyDataFrom_Public_Void_ObiMeshTopology_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06008EBB RID: 36539 RVA: 0x0024B5F0 File Offset: 0x002497F0
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610885, RefRangeEnd = 610886, XrefRangeStart = 610850, XrefRangeEnd = 610885, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void SetVertexCapacity(int maxVertices, int maxVisualVertices)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref maxVertices;
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref maxVisualVertices;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_SetVertexCapacity_Public_Void_Int32_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EBC RID: 36540 RVA: 0x0024B658 File Offset: 0x00249858
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610886, XrefRangeEnd = 610887, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_OnDisable_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EBD RID: 36541 RVA: 0x0024B69C File Offset: 0x0024989C
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610888, RefRangeEnd = 610889, XrefRangeStart = 610887, XrefRangeEnd = 610888, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void UpdateVertexCount()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_UpdateVertexCount_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EBE RID: 36542 RVA: 0x0024B6E0 File Offset: 0x002498E0
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610939, RefRangeEnd = 610940, XrefRangeStart = 610889, XrefRangeEnd = 610939, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Generate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_Generate_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EBF RID: 36543 RVA: 0x0024B724 File Offset: 0x00249924
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610940, RefRangeEnd = 610941, XrefRangeStart = 610940, XrefRangeEnd = 610940, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe int GetHalfEdgeStartVertex(Oni.HalfEdge edge)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref edge;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetHalfEdgeStartVertex_Public_Int32_HalfEdge_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008EC0 RID: 36544 RVA: 0x0024B788 File Offset: 0x00249988
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610941, XrefRangeEnd = 610943, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe float GetFaceArea(Oni.Face face)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref face;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetFaceArea_Public_Single_Face_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008EC1 RID: 36545 RVA: 0x0024B7EC File Offset: 0x002499EC
		[CallerCount(4)]
		[CachedScanResults(RefRangeStart = 610948, RefRangeEnd = 610952, XrefRangeStart = 610943, XrefRangeEnd = 610948, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IEnumerable<Oni.Vertex> GetNeighbourVerticesEnumerator(Oni.Vertex vertex)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref vertex;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourVerticesEnumerator_Public_IEnumerable_1_Vertex_Vertex_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerable<Oni.Vertex>(intPtr3) : null;
			}
		}

		// Token: 0x06008EC2 RID: 36546 RVA: 0x0024B854 File Offset: 0x00249A54
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610952, XrefRangeEnd = 610957, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IEnumerable<Oni.HalfEdge> GetNeighbourEdgesEnumerator(Oni.Vertex vertex)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref vertex;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourEdgesEnumerator_Public_IEnumerable_1_HalfEdge_Vertex_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerable<Oni.HalfEdge>(intPtr3) : null;
			}
		}

		// Token: 0x06008EC3 RID: 36547 RVA: 0x0024B8BC File Offset: 0x00249ABC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610957, XrefRangeEnd = 610962, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IEnumerable<Oni.Face> GetNeighbourFacesEnumerator(Oni.Vertex vertex)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref vertex;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourFacesEnumerator_Public_IEnumerable_1_Face_Vertex_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerable<Oni.Face>(intPtr3) : null;
			}
		}

		// Token: 0x06008EC4 RID: 36548 RVA: 0x0024B924 File Offset: 0x00249B24
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610962, XrefRangeEnd = 610965, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe Il2CppStructArray<int> GetFaceEdges(Oni.Face face)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref face;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetFaceEdges_Public_Il2CppStructArray_1_Int32_Face_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Il2CppStructArray<int>(intPtr3) : null;
			}
		}

		// Token: 0x06008EC5 RID: 36549 RVA: 0x0024B98C File Offset: 0x00249B8C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610965, XrefRangeEnd = 610982, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe List<ObiMeshTopology.HEEdge> GetEdgeList()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_GetEdgeList_Public_List_1_HEEdge_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new List<ObiMeshTopology.HEEdge>(intPtr3) : null;
		}

		// Token: 0x06008EC6 RID: 36550 RVA: 0x0024B9E4 File Offset: 0x00249BE4
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 610982, RefRangeEnd = 610983, XrefRangeStart = 610982, XrefRangeEnd = 610982, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool IsSplit(int halfEdgeIndex)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref halfEdgeIndex;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr_IsSplit_Public_Boolean_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008EC7 RID: 36551 RVA: 0x0024BA48 File Offset: 0x00249C48
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610983, XrefRangeEnd = 610985, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ObiMeshTopology()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008EC8 RID: 36552 RVA: 0x0024BA94 File Offset: 0x00249C94
		// Note: this type is marked as 'beforefieldinit'.
		static ObiMeshTopology()
		{
			Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi", "ObiMeshTopology");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr);
			ObiMeshTopology.NativeFieldInfoPtr_input = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "input");
			ObiMeshTopology.NativeFieldInfoPtr_scale = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "scale");
			ObiMeshTopology.NativeFieldInfoPtr_initialized = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "initialized");
			ObiMeshTopology.NativeFieldInfoPtr_halfEdgeMesh = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "halfEdgeMesh");
			ObiMeshTopology.NativeFieldInfoPtr_vertexCount = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "vertexCount");
			ObiMeshTopology.NativeFieldInfoPtr_heFaces = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "heFaces");
			ObiMeshTopology.NativeFieldInfoPtr_heHalfEdges = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "heHalfEdges");
			ObiMeshTopology.NativeFieldInfoPtr_heVertices = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "heVertices");
			ObiMeshTopology.NativeFieldInfoPtr_heOrientations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "heOrientations");
			ObiMeshTopology.NativeFieldInfoPtr_normals = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "normals");
			ObiMeshTopology.NativeFieldInfoPtr_tangents = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "tangents");
			ObiMeshTopology.NativeFieldInfoPtr_visualMap = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "visualMap");
			ObiMeshTopology.NativeFieldInfoPtr_meshInfo = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "meshInfo");
			ObiMeshTopology.NativeFieldInfoPtr_facesHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "facesHandle");
			ObiMeshTopology.NativeFieldInfoPtr_halfEdgesHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "halfEdgesHandle");
			ObiMeshTopology.NativeFieldInfoPtr_verticesHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "verticesHandle");
			ObiMeshTopology.NativeFieldInfoPtr_orientationsHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "orientationsHandle");
			ObiMeshTopology.NativeFieldInfoPtr_visualMapHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "visualMapHandle");
			ObiMeshTopology.NativeFieldInfoPtr_normalsHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "normalsHandle");
			ObiMeshTopology.NativeFieldInfoPtr_tangentsHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "tangentsHandle");
			ObiMeshTopology.NativeMethodInfoPtr_get_Initialized_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674340);
			ObiMeshTopology.NativeMethodInfoPtr_get_HalfEdgeMesh_Public_get_IntPtr_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674341);
			ObiMeshTopology.NativeMethodInfoPtr_set_InputMesh_Public_set_Void_Mesh_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674342);
			ObiMeshTopology.NativeMethodInfoPtr_get_InputMesh_Public_get_Mesh_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674343);
			ObiMeshTopology.NativeMethodInfoPtr_get_MeshVolume_Public_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674344);
			ObiMeshTopology.NativeMethodInfoPtr_get_MeshArea_Public_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674345);
			ObiMeshTopology.NativeMethodInfoPtr_get_VertexCount_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674346);
			ObiMeshTopology.NativeMethodInfoPtr_get_BorderEdgeCount_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674347);
			ObiMeshTopology.NativeMethodInfoPtr_get_IsClosed_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674348);
			ObiMeshTopology.NativeMethodInfoPtr_get_IsModified_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674349);
			ObiMeshTopology.NativeMethodInfoPtr_get_IsNonManifold_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674350);
			ObiMeshTopology.NativeMethodInfoPtr_OnEnable_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674351);
			ObiMeshTopology.NativeMethodInfoPtr_CopyDataFrom_Public_Void_ObiMeshTopology_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674352);
			ObiMeshTopology.NativeMethodInfoPtr_SetVertexCapacity_Public_Void_Int32_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674353);
			ObiMeshTopology.NativeMethodInfoPtr_OnDisable_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674354);
			ObiMeshTopology.NativeMethodInfoPtr_UpdateVertexCount_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674355);
			ObiMeshTopology.NativeMethodInfoPtr_Generate_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674356);
			ObiMeshTopology.NativeMethodInfoPtr_GetHalfEdgeStartVertex_Public_Int32_HalfEdge_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674357);
			ObiMeshTopology.NativeMethodInfoPtr_GetFaceArea_Public_Single_Face_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674358);
			ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourVerticesEnumerator_Public_IEnumerable_1_Vertex_Vertex_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674359);
			ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourEdgesEnumerator_Public_IEnumerable_1_HalfEdge_Vertex_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674360);
			ObiMeshTopology.NativeMethodInfoPtr_GetNeighbourFacesEnumerator_Public_IEnumerable_1_Face_Vertex_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674361);
			ObiMeshTopology.NativeMethodInfoPtr_GetFaceEdges_Public_Il2CppStructArray_1_Int32_Face_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674362);
			ObiMeshTopology.NativeMethodInfoPtr_GetEdgeList_Public_List_1_HEEdge_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674363);
			ObiMeshTopology.NativeMethodInfoPtr_IsSplit_Public_Boolean_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674364);
			ObiMeshTopology.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, 100674365);
		}

		// Token: 0x06008EC9 RID: 36553 RVA: 0x00009DEC File Offset: 0x00007FEC
		public ObiMeshTopology(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003067 RID: 12391
		// (get) Token: 0x06008ECA RID: 36554 RVA: 0x0024BE5C File Offset: 0x0024A05C
		// (set) Token: 0x06008ECB RID: 36555 RVA: 0x0024BE90 File Offset: 0x0024A090
		public unsafe Mesh input
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_input);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Mesh(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_input), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003068 RID: 12392
		// (get) Token: 0x06008ECC RID: 36556 RVA: 0x0024BEB8 File Offset: 0x0024A0B8
		// (set) Token: 0x06008ECD RID: 36557 RVA: 0x0024BEE0 File Offset: 0x0024A0E0
		public unsafe Vector3 scale
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_scale);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_scale)) = value;
			}
		}

		// Token: 0x17003069 RID: 12393
		// (get) Token: 0x06008ECE RID: 36558 RVA: 0x0024BF04 File Offset: 0x0024A104
		// (set) Token: 0x06008ECF RID: 36559 RVA: 0x0024BF2C File Offset: 0x0024A12C
		public unsafe bool initialized
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_initialized);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_initialized)) = value;
			}
		}

		// Token: 0x1700306A RID: 12394
		// (get) Token: 0x06008ED0 RID: 36560 RVA: 0x0024BF50 File Offset: 0x0024A150
		// (set) Token: 0x06008ED1 RID: 36561 RVA: 0x0024BF78 File Offset: 0x0024A178
		public unsafe IntPtr halfEdgeMesh
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_halfEdgeMesh);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_halfEdgeMesh)) = value;
			}
		}

		// Token: 0x1700306B RID: 12395
		// (get) Token: 0x06008ED2 RID: 36562 RVA: 0x0024BF9C File Offset: 0x0024A19C
		// (set) Token: 0x06008ED3 RID: 36563 RVA: 0x0024BFC4 File Offset: 0x0024A1C4
		public unsafe int vertexCount
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_vertexCount);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_vertexCount)) = value;
			}
		}

		// Token: 0x1700306C RID: 12396
		// (get) Token: 0x06008ED4 RID: 36564 RVA: 0x0024BFE8 File Offset: 0x0024A1E8
		// (set) Token: 0x06008ED5 RID: 36565 RVA: 0x0024C01C File Offset: 0x0024A21C
		public unsafe Il2CppStructArray<Oni.Face> heFaces
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heFaces);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Oni.Face>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heFaces), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700306D RID: 12397
		// (get) Token: 0x06008ED6 RID: 36566 RVA: 0x0024C044 File Offset: 0x0024A244
		// (set) Token: 0x06008ED7 RID: 36567 RVA: 0x0024C078 File Offset: 0x0024A278
		public unsafe Il2CppStructArray<Oni.HalfEdge> heHalfEdges
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heHalfEdges);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Oni.HalfEdge>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heHalfEdges), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700306E RID: 12398
		// (get) Token: 0x06008ED8 RID: 36568 RVA: 0x0024C0A0 File Offset: 0x0024A2A0
		// (set) Token: 0x06008ED9 RID: 36569 RVA: 0x0024C0D4 File Offset: 0x0024A2D4
		public unsafe Il2CppStructArray<Oni.Vertex> heVertices
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heVertices);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Oni.Vertex>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heVertices), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700306F RID: 12399
		// (get) Token: 0x06008EDA RID: 36570 RVA: 0x0024C0FC File Offset: 0x0024A2FC
		// (set) Token: 0x06008EDB RID: 36571 RVA: 0x0024C130 File Offset: 0x0024A330
		public unsafe Il2CppStructArray<Quaternion> heOrientations
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heOrientations);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Quaternion>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_heOrientations), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003070 RID: 12400
		// (get) Token: 0x06008EDC RID: 36572 RVA: 0x0024C158 File Offset: 0x0024A358
		// (set) Token: 0x06008EDD RID: 36573 RVA: 0x0024C18C File Offset: 0x0024A38C
		public unsafe Il2CppStructArray<Vector3> normals
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_normals);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Vector3>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_normals), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003071 RID: 12401
		// (get) Token: 0x06008EDE RID: 36574 RVA: 0x0024C1B4 File Offset: 0x0024A3B4
		// (set) Token: 0x06008EDF RID: 36575 RVA: 0x0024C1E8 File Offset: 0x0024A3E8
		public unsafe Il2CppStructArray<Vector4> tangents
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_tangents);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Vector4>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_tangents), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003072 RID: 12402
		// (get) Token: 0x06008EE0 RID: 36576 RVA: 0x0024C210 File Offset: 0x0024A410
		// (set) Token: 0x06008EE1 RID: 36577 RVA: 0x0024C244 File Offset: 0x0024A444
		public unsafe Il2CppStructArray<int> visualMap
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_visualMap);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<int>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_visualMap), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003073 RID: 12403
		// (get) Token: 0x06008EE2 RID: 36578 RVA: 0x0024C26C File Offset: 0x0024A46C
		// (set) Token: 0x06008EE3 RID: 36579 RVA: 0x0024C294 File Offset: 0x0024A494
		public unsafe Oni.MeshInformation meshInfo
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_meshInfo);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_meshInfo)) = value;
			}
		}

		// Token: 0x17003074 RID: 12404
		// (get) Token: 0x06008EE4 RID: 36580 RVA: 0x0024C2B8 File Offset: 0x0024A4B8
		// (set) Token: 0x06008EE5 RID: 36581 RVA: 0x0024C2E0 File Offset: 0x0024A4E0
		public unsafe GCHandle facesHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_facesHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_facesHandle)) = value;
			}
		}

		// Token: 0x17003075 RID: 12405
		// (get) Token: 0x06008EE6 RID: 36582 RVA: 0x0024C304 File Offset: 0x0024A504
		// (set) Token: 0x06008EE7 RID: 36583 RVA: 0x0024C32C File Offset: 0x0024A52C
		public unsafe GCHandle halfEdgesHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_halfEdgesHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_halfEdgesHandle)) = value;
			}
		}

		// Token: 0x17003076 RID: 12406
		// (get) Token: 0x06008EE8 RID: 36584 RVA: 0x0024C350 File Offset: 0x0024A550
		// (set) Token: 0x06008EE9 RID: 36585 RVA: 0x0024C378 File Offset: 0x0024A578
		public unsafe GCHandle verticesHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_verticesHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_verticesHandle)) = value;
			}
		}

		// Token: 0x17003077 RID: 12407
		// (get) Token: 0x06008EEA RID: 36586 RVA: 0x0024C39C File Offset: 0x0024A59C
		// (set) Token: 0x06008EEB RID: 36587 RVA: 0x0024C3C4 File Offset: 0x0024A5C4
		public unsafe GCHandle orientationsHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_orientationsHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_orientationsHandle)) = value;
			}
		}

		// Token: 0x17003078 RID: 12408
		// (get) Token: 0x06008EEC RID: 36588 RVA: 0x0024C3E8 File Offset: 0x0024A5E8
		// (set) Token: 0x06008EED RID: 36589 RVA: 0x0024C410 File Offset: 0x0024A610
		public unsafe GCHandle visualMapHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_visualMapHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_visualMapHandle)) = value;
			}
		}

		// Token: 0x17003079 RID: 12409
		// (get) Token: 0x06008EEE RID: 36590 RVA: 0x0024C434 File Offset: 0x0024A634
		// (set) Token: 0x06008EEF RID: 36591 RVA: 0x0024C45C File Offset: 0x0024A65C
		public unsafe GCHandle normalsHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_normalsHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_normalsHandle)) = value;
			}
		}

		// Token: 0x1700307A RID: 12410
		// (get) Token: 0x06008EF0 RID: 36592 RVA: 0x0024C480 File Offset: 0x0024A680
		// (set) Token: 0x06008EF1 RID: 36593 RVA: 0x0024C4A8 File Offset: 0x0024A6A8
		public unsafe GCHandle tangentsHandle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_tangentsHandle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.NativeFieldInfoPtr_tangentsHandle)) = value;
			}
		}

		// Token: 0x04005F18 RID: 24344
		private static readonly IntPtr NativeFieldInfoPtr_input;

		// Token: 0x04005F19 RID: 24345
		private static readonly IntPtr NativeFieldInfoPtr_scale;

		// Token: 0x04005F1A RID: 24346
		private static readonly IntPtr NativeFieldInfoPtr_initialized;

		// Token: 0x04005F1B RID: 24347
		private static readonly IntPtr NativeFieldInfoPtr_halfEdgeMesh;

		// Token: 0x04005F1C RID: 24348
		private static readonly IntPtr NativeFieldInfoPtr_vertexCount;

		// Token: 0x04005F1D RID: 24349
		private static readonly IntPtr NativeFieldInfoPtr_heFaces;

		// Token: 0x04005F1E RID: 24350
		private static readonly IntPtr NativeFieldInfoPtr_heHalfEdges;

		// Token: 0x04005F1F RID: 24351
		private static readonly IntPtr NativeFieldInfoPtr_heVertices;

		// Token: 0x04005F20 RID: 24352
		private static readonly IntPtr NativeFieldInfoPtr_heOrientations;

		// Token: 0x04005F21 RID: 24353
		private static readonly IntPtr NativeFieldInfoPtr_normals;

		// Token: 0x04005F22 RID: 24354
		private static readonly IntPtr NativeFieldInfoPtr_tangents;

		// Token: 0x04005F23 RID: 24355
		private static readonly IntPtr NativeFieldInfoPtr_visualMap;

		// Token: 0x04005F24 RID: 24356
		private static readonly IntPtr NativeFieldInfoPtr_meshInfo;

		// Token: 0x04005F25 RID: 24357
		private static readonly IntPtr NativeFieldInfoPtr_facesHandle;

		// Token: 0x04005F26 RID: 24358
		private static readonly IntPtr NativeFieldInfoPtr_halfEdgesHandle;

		// Token: 0x04005F27 RID: 24359
		private static readonly IntPtr NativeFieldInfoPtr_verticesHandle;

		// Token: 0x04005F28 RID: 24360
		private static readonly IntPtr NativeFieldInfoPtr_orientationsHandle;

		// Token: 0x04005F29 RID: 24361
		private static readonly IntPtr NativeFieldInfoPtr_visualMapHandle;

		// Token: 0x04005F2A RID: 24362
		private static readonly IntPtr NativeFieldInfoPtr_normalsHandle;

		// Token: 0x04005F2B RID: 24363
		private static readonly IntPtr NativeFieldInfoPtr_tangentsHandle;

		// Token: 0x04005F2C RID: 24364
		private static readonly IntPtr NativeMethodInfoPtr_get_Initialized_Public_get_Boolean_0;

		// Token: 0x04005F2D RID: 24365
		private static readonly IntPtr NativeMethodInfoPtr_get_HalfEdgeMesh_Public_get_IntPtr_0;

		// Token: 0x04005F2E RID: 24366
		private static readonly IntPtr NativeMethodInfoPtr_set_InputMesh_Public_set_Void_Mesh_0;

		// Token: 0x04005F2F RID: 24367
		private static readonly IntPtr NativeMethodInfoPtr_get_InputMesh_Public_get_Mesh_0;

		// Token: 0x04005F30 RID: 24368
		private static readonly IntPtr NativeMethodInfoPtr_get_MeshVolume_Public_get_Single_0;

		// Token: 0x04005F31 RID: 24369
		private static readonly IntPtr NativeMethodInfoPtr_get_MeshArea_Public_get_Single_0;

		// Token: 0x04005F32 RID: 24370
		private static readonly IntPtr NativeMethodInfoPtr_get_VertexCount_Public_get_Int32_0;

		// Token: 0x04005F33 RID: 24371
		private static readonly IntPtr NativeMethodInfoPtr_get_BorderEdgeCount_Public_get_Int32_0;

		// Token: 0x04005F34 RID: 24372
		private static readonly IntPtr NativeMethodInfoPtr_get_IsClosed_Public_get_Boolean_0;

		// Token: 0x04005F35 RID: 24373
		private static readonly IntPtr NativeMethodInfoPtr_get_IsModified_Public_get_Boolean_0;

		// Token: 0x04005F36 RID: 24374
		private static readonly IntPtr NativeMethodInfoPtr_get_IsNonManifold_Public_get_Boolean_0;

		// Token: 0x04005F37 RID: 24375
		private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Public_Void_0;

		// Token: 0x04005F38 RID: 24376
		private static readonly IntPtr NativeMethodInfoPtr_CopyDataFrom_Public_Void_ObiMeshTopology_0;

		// Token: 0x04005F39 RID: 24377
		private static readonly IntPtr NativeMethodInfoPtr_SetVertexCapacity_Public_Void_Int32_Int32_0;

		// Token: 0x04005F3A RID: 24378
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Public_Void_0;

		// Token: 0x04005F3B RID: 24379
		private static readonly IntPtr NativeMethodInfoPtr_UpdateVertexCount_Public_Void_0;

		// Token: 0x04005F3C RID: 24380
		private static readonly IntPtr NativeMethodInfoPtr_Generate_Public_Void_0;

		// Token: 0x04005F3D RID: 24381
		private static readonly IntPtr NativeMethodInfoPtr_GetHalfEdgeStartVertex_Public_Int32_HalfEdge_0;

		// Token: 0x04005F3E RID: 24382
		private static readonly IntPtr NativeMethodInfoPtr_GetFaceArea_Public_Single_Face_0;

		// Token: 0x04005F3F RID: 24383
		private static readonly IntPtr NativeMethodInfoPtr_GetNeighbourVerticesEnumerator_Public_IEnumerable_1_Vertex_Vertex_0;

		// Token: 0x04005F40 RID: 24384
		private static readonly IntPtr NativeMethodInfoPtr_GetNeighbourEdgesEnumerator_Public_IEnumerable_1_HalfEdge_Vertex_0;

		// Token: 0x04005F41 RID: 24385
		private static readonly IntPtr NativeMethodInfoPtr_GetNeighbourFacesEnumerator_Public_IEnumerable_1_Face_Vertex_0;

		// Token: 0x04005F42 RID: 24386
		private static readonly IntPtr NativeMethodInfoPtr_GetFaceEdges_Public_Il2CppStructArray_1_Int32_Face_0;

		// Token: 0x04005F43 RID: 24387
		private static readonly IntPtr NativeMethodInfoPtr_GetEdgeList_Public_List_1_HEEdge_0;

		// Token: 0x04005F44 RID: 24388
		private static readonly IntPtr NativeMethodInfoPtr_IsSplit_Public_Boolean_Int32_0;

		// Token: 0x04005F45 RID: 24389
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x020004D6 RID: 1238
		public class HEEdge : Il2CppSystem.Object
		{
			// Token: 0x06008EF2 RID: 36594 RVA: 0x0024C4CC File Offset: 0x0024A6CC
			[CallerCount(323)]
			[CachedScanResults(RefRangeStart = 12254, RefRangeEnd = 12577, XrefRangeStart = 12254, XrefRangeEnd = 12577, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe HEEdge(int halfEdgeIndex)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiMeshTopology.HEEdge>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref halfEdgeIndex;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology.HEEdge.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008EF3 RID: 36595 RVA: 0x0024C52C File Offset: 0x0024A72C
			// Note: this type is marked as 'beforefieldinit'.
			static HEEdge()
			{
				Il2CppClassPointerStore<ObiMeshTopology.HEEdge>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "HEEdge");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiMeshTopology.HEEdge>.NativeClassPtr);
				ObiMeshTopology.HEEdge.NativeFieldInfoPtr_halfEdgeIndex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology.HEEdge>.NativeClassPtr, "halfEdgeIndex");
				ObiMeshTopology.HEEdge.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology.HEEdge>.NativeClassPtr, 100674366);
			}

			// Token: 0x06008EF4 RID: 36596 RVA: 0x0000A688 File Offset: 0x00008888
			public HEEdge(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003085 RID: 12421
			// (get) Token: 0x06008EF5 RID: 36597 RVA: 0x0024C580 File Offset: 0x0024A780
			// (set) Token: 0x06008EF6 RID: 36598 RVA: 0x0024C5A8 File Offset: 0x0024A7A8
			public unsafe int halfEdgeIndex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.HEEdge.NativeFieldInfoPtr_halfEdgeIndex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology.HEEdge.NativeFieldInfoPtr_halfEdgeIndex)) = value;
				}
			}

			// Token: 0x04005F46 RID: 24390
			private static readonly IntPtr NativeFieldInfoPtr_halfEdgeIndex;

			// Token: 0x04005F47 RID: 24391
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;
		}

		// Token: 0x020004D7 RID: 1239
		[ObfuscatedName("Obi.ObiMeshTopology/<GetNeighbourVerticesEnumerator>d__50")]
		public sealed class _GetNeighbourVerticesEnumerator_d__50 : Il2CppSystem.Object
		{
			// Token: 0x06008EF7 RID: 36599 RVA: 0x0024C5CC File Offset: 0x0024A7CC
			[CallerCount(7)]
			[CachedScanResults(RefRangeStart = 136097, RefRangeEnd = 136104, XrefRangeStart = 136097, XrefRangeEnd = 136104, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe _GetNeighbourVerticesEnumerator_d__50(int <>1__state)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref <>1__state;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008EF8 RID: 36600 RVA: 0x0024C62C File Offset: 0x0024A82C
			[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(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008EF9 RID: 36601 RVA: 0x0024C670 File Offset: 0x0024A870
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610653, XrefRangeEnd = 610654, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe bool MoveNext()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.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: 0x1700308E RID: 12430
			// (get) Token: 0x06008EFA RID: 36602 RVA: 0x0024C6C0 File Offset: 0x0024A8C0
			public unsafe Oni.Vertex Current
			{
				[CallerCount(0)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Vertex__get_Current_Private_Virtual_Final_New_get_Vertex_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06008EFB RID: 36603 RVA: 0x0024C710 File Offset: 0x0024A910
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610654, XrefRangeEnd = 610659, 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(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x1700308F RID: 12431
			// (get) Token: 0x06008EFC RID: 36604 RVA: 0x0024C754 File Offset: 0x0024A954
			public unsafe Il2CppSystem.Object Current
			{
				[CallerCount(0)]
				[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610659, XrefRangeEnd = 610662, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.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: 0x06008EFD RID: 36605 RVA: 0x0024C7AC File Offset: 0x0024A9AC
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610662, XrefRangeEnd = 610670, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator<Oni.Vertex> System_Collections_Generic_IEnumerable_Oni_Vertex__GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Vertex__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Vertex_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator<Oni.Vertex>(intPtr3) : null;
			}

			// Token: 0x06008EFE RID: 36606 RVA: 0x0024C804 File Offset: 0x0024AA04
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator System_Collections_IEnumerable_GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator(intPtr3) : null;
			}

			// Token: 0x06008EFF RID: 36607 RVA: 0x0024C85C File Offset: 0x0024AA5C
			// Note: this type is marked as 'beforefieldinit'.
			static _GetNeighbourVerticesEnumerator_d__50()
			{
				Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "<GetNeighbourVerticesEnumerator>d__50");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___1__state = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<>1__state");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___2__current = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<>2__current");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___l__initialThreadId = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<>l__initialThreadId");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<>4__this");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr_vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "vertex");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___3__vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<>3__vertex");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__startEdge_5__2 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<startEdge>5__2");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__edge_5__3 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, "<edge>5__3");
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674367);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674368);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674369);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Vertex__get_Current_Private_Virtual_Final_New_get_Vertex_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674370);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674371);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674372);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Vertex__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Vertex_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674373);
				ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50>.NativeClassPtr, 100674374);
			}

			// Token: 0x06008F00 RID: 36608 RVA: 0x0000A688 File Offset: 0x00008888
			public _GetNeighbourVerticesEnumerator_d__50(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003086 RID: 12422
			// (get) Token: 0x06008F01 RID: 36609 RVA: 0x0024C9C8 File Offset: 0x0024ABC8
			// (set) Token: 0x06008F02 RID: 36610 RVA: 0x0024C9F0 File Offset: 0x0024ABF0
			public unsafe int __1__state
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___1__state);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___1__state)) = value;
				}
			}

			// Token: 0x17003087 RID: 12423
			// (get) Token: 0x06008F03 RID: 36611 RVA: 0x0024CA14 File Offset: 0x0024AC14
			// (set) Token: 0x06008F04 RID: 36612 RVA: 0x0024CA3C File Offset: 0x0024AC3C
			public unsafe Oni.Vertex __2__current
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___2__current);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___2__current)) = value;
				}
			}

			// Token: 0x17003088 RID: 12424
			// (get) Token: 0x06008F05 RID: 36613 RVA: 0x0024CA60 File Offset: 0x0024AC60
			// (set) Token: 0x06008F06 RID: 36614 RVA: 0x0024CA88 File Offset: 0x0024AC88
			public unsafe int __l__initialThreadId
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___l__initialThreadId);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___l__initialThreadId)) = value;
				}
			}

			// Token: 0x17003089 RID: 12425
			// (get) Token: 0x06008F07 RID: 36615 RVA: 0x0024CAAC File Offset: 0x0024ACAC
			// (set) Token: 0x06008F08 RID: 36616 RVA: 0x0024CAE0 File Offset: 0x0024ACE0
			public unsafe ObiMeshTopology __4__this
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___4__this);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new ObiMeshTopology(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x1700308A RID: 12426
			// (get) Token: 0x06008F09 RID: 36617 RVA: 0x0024CB08 File Offset: 0x0024AD08
			// (set) Token: 0x06008F0A RID: 36618 RVA: 0x0024CB30 File Offset: 0x0024AD30
			public unsafe Oni.Vertex vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr_vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr_vertex)) = value;
				}
			}

			// Token: 0x1700308B RID: 12427
			// (get) Token: 0x06008F0B RID: 36619 RVA: 0x0024CB54 File Offset: 0x0024AD54
			// (set) Token: 0x06008F0C RID: 36620 RVA: 0x0024CB7C File Offset: 0x0024AD7C
			public unsafe Oni.Vertex __3__vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___3__vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr___3__vertex)) = value;
				}
			}

			// Token: 0x1700308C RID: 12428
			// (get) Token: 0x06008F0D RID: 36621 RVA: 0x0024CBA0 File Offset: 0x0024ADA0
			// (set) Token: 0x06008F0E RID: 36622 RVA: 0x0024CBC8 File Offset: 0x0024ADC8
			public unsafe Oni.HalfEdge _startEdge_5__2
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__startEdge_5__2);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__startEdge_5__2)) = value;
				}
			}

			// Token: 0x1700308D RID: 12429
			// (get) Token: 0x06008F0F RID: 36623 RVA: 0x0024CBEC File Offset: 0x0024ADEC
			// (set) Token: 0x06008F10 RID: 36624 RVA: 0x0024CC14 File Offset: 0x0024AE14
			public unsafe Oni.HalfEdge _edge_5__3
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__edge_5__3);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourVerticesEnumerator_d__50.NativeFieldInfoPtr__edge_5__3)) = value;
				}
			}

			// Token: 0x04005F48 RID: 24392
			private static readonly IntPtr NativeFieldInfoPtr___1__state;

			// Token: 0x04005F49 RID: 24393
			private static readonly IntPtr NativeFieldInfoPtr___2__current;

			// Token: 0x04005F4A RID: 24394
			private static readonly IntPtr NativeFieldInfoPtr___l__initialThreadId;

			// Token: 0x04005F4B RID: 24395
			private static readonly IntPtr NativeFieldInfoPtr___4__this;

			// Token: 0x04005F4C RID: 24396
			private static readonly IntPtr NativeFieldInfoPtr_vertex;

			// Token: 0x04005F4D RID: 24397
			private static readonly IntPtr NativeFieldInfoPtr___3__vertex;

			// Token: 0x04005F4E RID: 24398
			private static readonly IntPtr NativeFieldInfoPtr__startEdge_5__2;

			// Token: 0x04005F4F RID: 24399
			private static readonly IntPtr NativeFieldInfoPtr__edge_5__3;

			// Token: 0x04005F50 RID: 24400
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

			// Token: 0x04005F51 RID: 24401
			private static readonly IntPtr NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F52 RID: 24402
			private static readonly IntPtr NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0;

			// Token: 0x04005F53 RID: 24403
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Vertex__get_Current_Private_Virtual_Final_New_get_Vertex_0;

			// Token: 0x04005F54 RID: 24404
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F55 RID: 24405
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0;

			// Token: 0x04005F56 RID: 24406
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Vertex__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Vertex_0;

			// Token: 0x04005F57 RID: 24407
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0;
		}

		// Token: 0x020004D8 RID: 1240
		[ObfuscatedName("Obi.ObiMeshTopology/<GetNeighbourEdgesEnumerator>d__51")]
		public sealed class _GetNeighbourEdgesEnumerator_d__51 : Il2CppSystem.Object
		{
			// Token: 0x06008F11 RID: 36625 RVA: 0x0024CC38 File Offset: 0x0024AE38
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 610672, RefRangeEnd = 610673, XrefRangeStart = 610670, XrefRangeEnd = 610672, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe _GetNeighbourEdgesEnumerator_d__51(int <>1__state)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref <>1__state;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008F12 RID: 36626 RVA: 0x0024CC98 File Offset: 0x0024AE98
			[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(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008F13 RID: 36627 RVA: 0x0024CCDC File Offset: 0x0024AEDC
			[CallerCount(0)]
			public unsafe bool MoveNext()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.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: 0x17003098 RID: 12440
			// (get) Token: 0x06008F14 RID: 36628 RVA: 0x0024CD2C File Offset: 0x0024AF2C
			public unsafe Oni.HalfEdge Current
			{
				[CallerCount(0)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_HalfEdge__get_Current_Private_Virtual_Final_New_get_HalfEdge_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06008F15 RID: 36629 RVA: 0x0024CD7C File Offset: 0x0024AF7C
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610673, XrefRangeEnd = 610678, 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(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x17003099 RID: 12441
			// (get) Token: 0x06008F16 RID: 36630 RVA: 0x0024CDC0 File Offset: 0x0024AFC0
			public unsafe Il2CppSystem.Object Current
			{
				[CallerCount(0)]
				[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610678, XrefRangeEnd = 610681, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.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: 0x06008F17 RID: 36631 RVA: 0x0024CE18 File Offset: 0x0024B018
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610681, XrefRangeEnd = 610689, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator<Oni.HalfEdge> System_Collections_Generic_IEnumerable_Oni_HalfEdge__GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_HalfEdge__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_HalfEdge_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator<Oni.HalfEdge>(intPtr3) : null;
			}

			// Token: 0x06008F18 RID: 36632 RVA: 0x0024CE70 File Offset: 0x0024B070
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator System_Collections_IEnumerable_GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator(intPtr3) : null;
			}

			// Token: 0x06008F19 RID: 36633 RVA: 0x0024CEC8 File Offset: 0x0024B0C8
			// Note: this type is marked as 'beforefieldinit'.
			static _GetNeighbourEdgesEnumerator_d__51()
			{
				Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "<GetNeighbourEdgesEnumerator>d__51");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___1__state = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<>1__state");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___2__current = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<>2__current");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___l__initialThreadId = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<>l__initialThreadId");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<>4__this");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr_vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "vertex");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___3__vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<>3__vertex");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__startEdge_5__2 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<startEdge>5__2");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__edge_5__3 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, "<edge>5__3");
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674375);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674376);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674377);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_HalfEdge__get_Current_Private_Virtual_Final_New_get_HalfEdge_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674378);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674379);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674380);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_HalfEdge__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_HalfEdge_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674381);
				ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51>.NativeClassPtr, 100674382);
			}

			// Token: 0x06008F1A RID: 36634 RVA: 0x0000A688 File Offset: 0x00008888
			public _GetNeighbourEdgesEnumerator_d__51(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003090 RID: 12432
			// (get) Token: 0x06008F1B RID: 36635 RVA: 0x0024D034 File Offset: 0x0024B234
			// (set) Token: 0x06008F1C RID: 36636 RVA: 0x0024D05C File Offset: 0x0024B25C
			public unsafe int __1__state
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___1__state);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___1__state)) = value;
				}
			}

			// Token: 0x17003091 RID: 12433
			// (get) Token: 0x06008F1D RID: 36637 RVA: 0x0024D080 File Offset: 0x0024B280
			// (set) Token: 0x06008F1E RID: 36638 RVA: 0x0024D0A8 File Offset: 0x0024B2A8
			public unsafe Oni.HalfEdge __2__current
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___2__current);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___2__current)) = value;
				}
			}

			// Token: 0x17003092 RID: 12434
			// (get) Token: 0x06008F1F RID: 36639 RVA: 0x0024D0CC File Offset: 0x0024B2CC
			// (set) Token: 0x06008F20 RID: 36640 RVA: 0x0024D0F4 File Offset: 0x0024B2F4
			public unsafe int __l__initialThreadId
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___l__initialThreadId);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___l__initialThreadId)) = value;
				}
			}

			// Token: 0x17003093 RID: 12435
			// (get) Token: 0x06008F21 RID: 36641 RVA: 0x0024D118 File Offset: 0x0024B318
			// (set) Token: 0x06008F22 RID: 36642 RVA: 0x0024D14C File Offset: 0x0024B34C
			public unsafe ObiMeshTopology __4__this
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___4__this);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new ObiMeshTopology(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17003094 RID: 12436
			// (get) Token: 0x06008F23 RID: 36643 RVA: 0x0024D174 File Offset: 0x0024B374
			// (set) Token: 0x06008F24 RID: 36644 RVA: 0x0024D19C File Offset: 0x0024B39C
			public unsafe Oni.Vertex vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr_vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr_vertex)) = value;
				}
			}

			// Token: 0x17003095 RID: 12437
			// (get) Token: 0x06008F25 RID: 36645 RVA: 0x0024D1C0 File Offset: 0x0024B3C0
			// (set) Token: 0x06008F26 RID: 36646 RVA: 0x0024D1E8 File Offset: 0x0024B3E8
			public unsafe Oni.Vertex __3__vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___3__vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr___3__vertex)) = value;
				}
			}

			// Token: 0x17003096 RID: 12438
			// (get) Token: 0x06008F27 RID: 36647 RVA: 0x0024D20C File Offset: 0x0024B40C
			// (set) Token: 0x06008F28 RID: 36648 RVA: 0x0024D234 File Offset: 0x0024B434
			public unsafe Oni.HalfEdge _startEdge_5__2
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__startEdge_5__2);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__startEdge_5__2)) = value;
				}
			}

			// Token: 0x17003097 RID: 12439
			// (get) Token: 0x06008F29 RID: 36649 RVA: 0x0024D258 File Offset: 0x0024B458
			// (set) Token: 0x06008F2A RID: 36650 RVA: 0x0024D280 File Offset: 0x0024B480
			public unsafe Oni.HalfEdge _edge_5__3
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__edge_5__3);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourEdgesEnumerator_d__51.NativeFieldInfoPtr__edge_5__3)) = value;
				}
			}

			// Token: 0x04005F58 RID: 24408
			private static readonly IntPtr NativeFieldInfoPtr___1__state;

			// Token: 0x04005F59 RID: 24409
			private static readonly IntPtr NativeFieldInfoPtr___2__current;

			// Token: 0x04005F5A RID: 24410
			private static readonly IntPtr NativeFieldInfoPtr___l__initialThreadId;

			// Token: 0x04005F5B RID: 24411
			private static readonly IntPtr NativeFieldInfoPtr___4__this;

			// Token: 0x04005F5C RID: 24412
			private static readonly IntPtr NativeFieldInfoPtr_vertex;

			// Token: 0x04005F5D RID: 24413
			private static readonly IntPtr NativeFieldInfoPtr___3__vertex;

			// Token: 0x04005F5E RID: 24414
			private static readonly IntPtr NativeFieldInfoPtr__startEdge_5__2;

			// Token: 0x04005F5F RID: 24415
			private static readonly IntPtr NativeFieldInfoPtr__edge_5__3;

			// Token: 0x04005F60 RID: 24416
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

			// Token: 0x04005F61 RID: 24417
			private static readonly IntPtr NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F62 RID: 24418
			private static readonly IntPtr NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0;

			// Token: 0x04005F63 RID: 24419
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_HalfEdge__get_Current_Private_Virtual_Final_New_get_HalfEdge_0;

			// Token: 0x04005F64 RID: 24420
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F65 RID: 24421
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0;

			// Token: 0x04005F66 RID: 24422
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_HalfEdge__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_HalfEdge_0;

			// Token: 0x04005F67 RID: 24423
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0;
		}

		// Token: 0x020004D9 RID: 1241
		[ObfuscatedName("Obi.ObiMeshTopology/<GetNeighbourFacesEnumerator>d__52")]
		public sealed class _GetNeighbourFacesEnumerator_d__52 : Il2CppSystem.Object
		{
			// Token: 0x06008F2B RID: 36651 RVA: 0x0024D2A4 File Offset: 0x0024B4A4
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 610691, RefRangeEnd = 610692, XrefRangeStart = 610689, XrefRangeEnd = 610691, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe _GetNeighbourFacesEnumerator_d__52(int <>1__state)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref <>1__state;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06008F2C RID: 36652 RVA: 0x0024D304 File Offset: 0x0024B504
			[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(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06008F2D RID: 36653 RVA: 0x0024D348 File Offset: 0x0024B548
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610692, XrefRangeEnd = 610693, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe bool MoveNext()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.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: 0x170030A2 RID: 12450
			// (get) Token: 0x06008F2E RID: 36654 RVA: 0x0024D398 File Offset: 0x0024B598
			public unsafe Oni.Face Current
			{
				[CallerCount(0)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Face__get_Current_Private_Virtual_Final_New_get_Face_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06008F2F RID: 36655 RVA: 0x0024D3E8 File Offset: 0x0024B5E8
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610693, XrefRangeEnd = 610698, 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(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x170030A3 RID: 12451
			// (get) Token: 0x06008F30 RID: 36656 RVA: 0x0024D42C File Offset: 0x0024B62C
			public unsafe Il2CppSystem.Object Current
			{
				[CallerCount(0)]
				[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610698, XrefRangeEnd = 610701, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.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: 0x06008F31 RID: 36657 RVA: 0x0024D484 File Offset: 0x0024B684
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 610701, XrefRangeEnd = 610709, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator<Oni.Face> System_Collections_Generic_IEnumerable_Oni_Face__GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Face__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Face_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator<Oni.Face>(intPtr3) : null;
			}

			// Token: 0x06008F32 RID: 36658 RVA: 0x0024D4DC File Offset: 0x0024B6DC
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe IEnumerator System_Collections_IEnumerable_GetEnumerator()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IEnumerator(intPtr3) : null;
			}

			// Token: 0x06008F33 RID: 36659 RVA: 0x0024D534 File Offset: 0x0024B734
			// Note: this type is marked as 'beforefieldinit'.
			static _GetNeighbourFacesEnumerator_d__52()
			{
				Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiMeshTopology>.NativeClassPtr, "<GetNeighbourFacesEnumerator>d__52");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___1__state = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<>1__state");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___2__current = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<>2__current");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___l__initialThreadId = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<>l__initialThreadId");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<>4__this");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr_vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "vertex");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___3__vertex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<>3__vertex");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__startEdge_5__2 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<startEdge>5__2");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__edge_5__3 = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, "<edge>5__3");
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674383);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674384);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674385);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Face__get_Current_Private_Virtual_Final_New_get_Face_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674386);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674387);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674388);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Face__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Face_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674389);
				ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiMeshTopology._GetNeighbourFacesEnumerator_d__52>.NativeClassPtr, 100674390);
			}

			// Token: 0x06008F34 RID: 36660 RVA: 0x0000A688 File Offset: 0x00008888
			public _GetNeighbourFacesEnumerator_d__52(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x1700309A RID: 12442
			// (get) Token: 0x06008F35 RID: 36661 RVA: 0x0024D6A0 File Offset: 0x0024B8A0
			// (set) Token: 0x06008F36 RID: 36662 RVA: 0x0024D6C8 File Offset: 0x0024B8C8
			public unsafe int __1__state
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___1__state);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___1__state)) = value;
				}
			}

			// Token: 0x1700309B RID: 12443
			// (get) Token: 0x06008F37 RID: 36663 RVA: 0x0024D6EC File Offset: 0x0024B8EC
			// (set) Token: 0x06008F38 RID: 36664 RVA: 0x0024D714 File Offset: 0x0024B914
			public unsafe Oni.Face __2__current
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___2__current);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___2__current)) = value;
				}
			}

			// Token: 0x1700309C RID: 12444
			// (get) Token: 0x06008F39 RID: 36665 RVA: 0x0024D738 File Offset: 0x0024B938
			// (set) Token: 0x06008F3A RID: 36666 RVA: 0x0024D760 File Offset: 0x0024B960
			public unsafe int __l__initialThreadId
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___l__initialThreadId);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___l__initialThreadId)) = value;
				}
			}

			// Token: 0x1700309D RID: 12445
			// (get) Token: 0x06008F3B RID: 36667 RVA: 0x0024D784 File Offset: 0x0024B984
			// (set) Token: 0x06008F3C RID: 36668 RVA: 0x0024D7B8 File Offset: 0x0024B9B8
			public unsafe ObiMeshTopology __4__this
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___4__this);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new ObiMeshTopology(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x1700309E RID: 12446
			// (get) Token: 0x06008F3D RID: 36669 RVA: 0x0024D7E0 File Offset: 0x0024B9E0
			// (set) Token: 0x06008F3E RID: 36670 RVA: 0x0024D808 File Offset: 0x0024BA08
			public unsafe Oni.Vertex vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr_vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr_vertex)) = value;
				}
			}

			// Token: 0x1700309F RID: 12447
			// (get) Token: 0x06008F3F RID: 36671 RVA: 0x0024D82C File Offset: 0x0024BA2C
			// (set) Token: 0x06008F40 RID: 36672 RVA: 0x0024D854 File Offset: 0x0024BA54
			public unsafe Oni.Vertex __3__vertex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___3__vertex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr___3__vertex)) = value;
				}
			}

			// Token: 0x170030A0 RID: 12448
			// (get) Token: 0x06008F41 RID: 36673 RVA: 0x0024D878 File Offset: 0x0024BA78
			// (set) Token: 0x06008F42 RID: 36674 RVA: 0x0024D8A0 File Offset: 0x0024BAA0
			public unsafe Oni.HalfEdge _startEdge_5__2
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__startEdge_5__2);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__startEdge_5__2)) = value;
				}
			}

			// Token: 0x170030A1 RID: 12449
			// (get) Token: 0x06008F43 RID: 36675 RVA: 0x0024D8C4 File Offset: 0x0024BAC4
			// (set) Token: 0x06008F44 RID: 36676 RVA: 0x0024D8EC File Offset: 0x0024BAEC
			public unsafe Oni.HalfEdge _edge_5__3
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__edge_5__3);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiMeshTopology._GetNeighbourFacesEnumerator_d__52.NativeFieldInfoPtr__edge_5__3)) = value;
				}
			}

			// Token: 0x04005F68 RID: 24424
			private static readonly IntPtr NativeFieldInfoPtr___1__state;

			// Token: 0x04005F69 RID: 24425
			private static readonly IntPtr NativeFieldInfoPtr___2__current;

			// Token: 0x04005F6A RID: 24426
			private static readonly IntPtr NativeFieldInfoPtr___l__initialThreadId;

			// Token: 0x04005F6B RID: 24427
			private static readonly IntPtr NativeFieldInfoPtr___4__this;

			// Token: 0x04005F6C RID: 24428
			private static readonly IntPtr NativeFieldInfoPtr_vertex;

			// Token: 0x04005F6D RID: 24429
			private static readonly IntPtr NativeFieldInfoPtr___3__vertex;

			// Token: 0x04005F6E RID: 24430
			private static readonly IntPtr NativeFieldInfoPtr__startEdge_5__2;

			// Token: 0x04005F6F RID: 24431
			private static readonly IntPtr NativeFieldInfoPtr__edge_5__3;

			// Token: 0x04005F70 RID: 24432
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

			// Token: 0x04005F71 RID: 24433
			private static readonly IntPtr NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F72 RID: 24434
			private static readonly IntPtr NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0;

			// Token: 0x04005F73 RID: 24435
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_Oni_Face__get_Current_Private_Virtual_Final_New_get_Face_0;

			// Token: 0x04005F74 RID: 24436
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0;

			// Token: 0x04005F75 RID: 24437
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0;

			// Token: 0x04005F76 RID: 24438
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerable_Oni_Face__GetEnumerator_Private_Virtual_Final_New_IEnumerator_1_Face_0;

			// Token: 0x04005F77 RID: 24439
			private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerable_GetEnumerator_Private_Virtual_Final_New_IEnumerator_0;
		}
	}
}
