move exception facilities to utils