You can use `defer.succeed()` and `defer.fail()` here to make things neater.