https://hackage.haskell.org/package/extensible-exceptions
