refactor result decorators