Extensions to Promise