added protocol violation exception