modified exception structure