wrapError :: forall outertag innertag t outer inner m a. ( forall x. Coercible (t m x) (m x), forall m'. (HasCatch outertag outer m') => HasCatch innertag inner (t m'), HasCatch outertag outer m ) => (forall m'. (HasCatch innertag inner m') => m' a) -> m a