exception framework.