docs: public void addFamilyWithNestedRule() {
      System.out.printf("%nCreating column family %s with a nested GC rule%n", COLUMN_FAMILY_5);
      // [START bigtable_create_family_gc_nested]
      // Creates a nested GC rule:
      // Drop cells that are either older than the 10 recent versions
      // OR
      // Drop cells that are older than a month AND older than the 2 recent versions
      VersionRule versionRule1 = GCRULES.maxVersions(10);
      VersionRule versionRule2 = GCRULES.maxVersions(2);
      DurationRule maxAgeRule = GCRULES.maxAge(30, TimeUnit.DAYS);
      IntersectionRule intersectionRule = GCRULES.intersection().rule(maxAgeRule).rule(versionRule2);
      UnionRule unionRule = GCRULES.union().rule(intersectionRule).rule(versionRule1);
  
      // Creates column family with given GC rule.
      try {
        // ModifyColumnFamiliesRequest can be used both for adding and modifying families, here it is
        // being used to add a family
        ModifyColumnFamiliesRequest columnFamiliesRequest =
            ModifyColumnFamiliesRequest.of(tableId).addFamily(COLUMN_FAMILY_5, unionRule);
        adminClient.modifyFamilies(columnFamiliesRequest);
        System.out.println("Created column family: " + COLUMN_FAMILY_5);
      } catch (AlreadyExistsException e) {
        System.err.println(
            "Failed to create column family with rule, already exists: " + e.getMessage());
      }
      // [END bigtable_create_family_gc_nested]
    }