finalise refactor deep.debug and deep.rethrow in context