docs: @Override
      public boolean isUserDeepMemberOf(String userName, String groupKey) {
          final IEntityGroup distinguishedGroup = GroupService.findGroup(groupKey);
          if (distinguishedGroup == null) {
              if (this.logger.isDebugEnabled()) {
                  this.logger.debug("No group found for key '" + groupKey + "'");
              }
  
              return false;
          }
  
          final IEntity entity = GroupService.getEntity(userName, IPerson.class);
          if (entity == null) {
              if (this.logger.isDebugEnabled()) {
                  this.logger.debug("No user found for key '" + userName + "'");
              }
  
              return false;
          }
  
          return distinguishedGroup.deepContains(entity);
      }