cleaned up onebody functions