nit: `setTimeout(fulfill);` should be enough