allow overwriting of promises