revised for clarity