public void Dispose()
        {
            bool allowReadOrWriteAccess = AtomicSafetyHandle.GetAllowReadOrWriteAccess(this.m_Safety);

            DisposeSentinel.Dispose(ref this.m_Safety, ref this.m_DisposeSentinel);
            bool flag = allowReadOrWriteAccess;

            if (flag)
            {
                NavMeshQuery.RemoveQuerySafety(this.m_NavMeshQuery, this.m_Safety);
            }
            NavMeshQuery.Destroy(this.m_NavMeshQuery);
            this.m_NavMeshQuery = IntPtr.Zero;
        }