cleaned up routing