actually, returns in a rejection handler become fulfillments. Unless the return value itself is a rejected promise.