move reward helpers to a decorator