The `then` here is non-idiomatic. Why is this guard needed anyway?