docs: @Override
      public void addChild(IGroupMember gm) throws GroupsException {
  
          try {
              checkProspectiveMember(gm);
          } catch (GroupsException ge) {
              throw new GroupsException("Could not add IGroupMember", ge);
          }
  
          if (!this.contains(gm)) {
              String cacheKey = gm.getEntityIdentifier().getKey();
              if (getRemovedMembers().containsKey(cacheKey)) {
                  getRemovedMembers().remove(cacheKey);
              } else {
                  getAddedMembers().put(cacheKey, gm);
              }
          }
  
          primAddMember(gm);
      }