In this `[weak self]` guard pattern, what is the type and lifetime behavior of `self` after the `guard let`?request.completion = { [weak self] result in guard let self = self else { return } self.handle(result) }