cleaned up outline