code: public SID addSubAuthority(byte[] sub) {
          if (sub == null || sub.length != 4) {
              throw new IllegalArgumentException("Invalid sub-authority to be added");
          }
  
          this.subAuthorities.add(Arrays.copyOf(sub, sub.length));
          return this;
      }
docs: Adds sub-authority:a principal relative to the IdentifierAuthority.
  
  @param sub sub-authority.
  @return the current SID instance.