prep for exception refactor