Same worry, should this be `(T, Option[U]) => Boolean`?