Previously, `nil` was sufficient to see that the frontier is not present. In fact, in your returns, you always have `nil, false` or `not-nil, true`. So it seems like the `present` return value is not adding any new information. Would it make more sense to do in the caller, only if needed?:

```
present := true
if d == nil {
  present = false
}
```