convert promise to co-wrapped function