code: @Override
      public Builder audience(List<String> newaudiences) throws InvalidClaimException {
          // this.AUDIENCE
          if (newaudiences != null && !newaudiences.isEmpty()) {
  
              ArrayList<String> audiences = new ArrayList<String>();
              for (String aud : newaudiences) {
                  if (aud != null && !aud.trim().isEmpty() && !audiences.contains(aud)) {
                      audiences.add(aud);
                  }
              }
              if (audiences.isEmpty()) {
                  String err = Tr.formatMessage(tc, "JWT_INVALID_CLAIM_VALUE_ERR", new Object[] { Claims.AUDIENCE, newaudiences });
                  throw new InvalidClaimException(err);
              }
              // this.audiences = new ArrayList<String>(audiences);
              claims.put(Claims.AUDIENCE, audiences);
          } else {
              String err = Tr.formatMessage(tc, "JWT_INVALID_CLAIM_VALUE_ERR", new Object[] { Claims.AUDIENCE, newaudiences });
              throw new InvalidClaimException(err);
          }
          return this;
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.security.jwt.internal.Builder#audience(java.util.List)