brought up to current GHC by cleaning up exceptions