add ResultFactory