code: public RolloutOptions withFallback(final RolloutOptions that) {
      return RolloutOptions.newBuilder()
          .setTimeout(firstNonNull(timeout, that.timeout))
          .setParallelism(firstNonNull(parallelism, that.parallelism))
          .setMigrate(firstNonNull(migrate, that.migrate))
          .setOverlap(firstNonNull(overlap, that.overlap))
          .setToken(firstNonNull(token, that.token))
          .setIgnoreFailures(firstNonNull(ignoreFailures, that.ignoreFailures))
          .build();
    }
docs: Return a new RolloutOptions instance by merging this instance with another one.
  @throws NullPointerException if any attribute in both instances are null.