values and promises
throw an error