protect exception