public Range addMember(Resource first, Resource... rest) throws IllegalArgumentException {
    """
	Adds one or more member resources.
	Must be either instances of {@link Range} or {@link Canvas}.
	All members must have an identifier and a label.
	
	@param first first member
	@param rest other members
	@return this instance with added members
	@throws IllegalArgumentException if at least one member is not a {@link Range} or {@link Canvas} or does not have
	an identifier and a label;
    """
    if (this.members == null) {
      this.members = new ArrayList<>();
    }
    List<Resource> membersToAdd = Lists.asList(first, rest);
    membersToAdd.forEach(this::checkMember);
    this.members.addAll(membersToAdd);
    return this;
  }
public Range addMember(Resource first, Resource... rest) throws IllegalArgumentException {
    if (this.members == null) {
      this.members = new ArrayList<>();
    }
    List<Resource> membersToAdd = Lists.asList(first, rest);
    membersToAdd.forEach(this::checkMember);
    this.members.addAll(membersToAdd);
    return this;
  }
public Range addMember ( Resource first , Resource ... rest ) throws IllegalArgumentException { if ( this . members == null ) { this . members = new ArrayList <> ( ) ; } List < Resource > membersToAdd = Lists . asList ( first , rest ) ; membersToAdd . forEach ( this :: checkMember ) ; this . members . addAll ( membersToAdd ) ; return this ; }
Adds one or more member resources.
Must be either instances of {@link Range} or {@link Canvas}.
All members must have an identifier and a label.

@param first first member
@param rest other members
@return this instance with added members
@throws IllegalArgumentException if at least one member is not a {@link Range} or {@link Canvas} or does not have
an identifier and a label;
Adds one or more member resources . Must be either instances of { @link Range } or { @link Canvas } . All members must have an identifier and a label .