private boolean checkStatus(User user,Set<Status> req){
  if (req.isEmpty()) {
    return true;
  }
  boolean or=req == statusReq;
  if (req.contains(Status.MOD) && user.isModerator()) {
    return or;
  }
  if (req.contains(Status.SUBSCRIBER) && user.isSubscriber()) {
    return or;
  }
  if (req.contains(Status.ADMIN) && user.isAdmin()) {
    return or;
  }
  if (req.contains(Status.STAFF) && user.isStaff()) {
    return or;
  }
  if (req.contains(Status.BROADCASTER) && user.isBroadcaster()) {
    return or;
  }
  if (req.contains(Status.TURBO) && user.hasTurbo()) {
    return or;
  }
  if (req.contains(Status.GLOBAL_MOD) && user.isGlobalMod()) {
    return or;
  }
  if (req.contains(Status.BOT) && user.isBot()) {
    return or;
  }
  if (req.contains(Status.ANY_MOD) && user.hasModeratorRights()) {
    return or;
  }
  return !or;
}

private boolean checkStatus ( User user , Set < Status > req ) { if ( req . isEmpty ( ) ) { return true ; } boolean or = req == statusReq ; if ( req . contains ( Status . MOD ) && user . isModerator ( ) ) { return or ; } if ( req . contains ( Status . SUBSCRIBER ) && user . isSubscriber ( ) ) { return or ; } if ( req . contains ( Status . ADMIN ) && user . isAdmin ( ) ) { return or ; } if ( req . contains ( Status . STAFF ) && user . isStaff ( ) ) { return or ; } if ( req . contains ( Status . BROADCASTER ) && user . isBroadcaster ( ) ) { return or ; } if ( req . contains ( Status . TURBO ) && user . hasTurbo ( ) ) { return or ; } if ( req . contains ( Status . GLOBAL_MOD ) && user . isGlobalMod ( ) ) { return or ; } if ( req . contains ( Status . BOT ) && user . isBot ( ) ) { return or ; } if ( req . contains ( Status . ANY_MOD ) && user . hasModeratorRights ( ) ) { return or ; } return ! or ; }
check if the status of a user matches the given requirements . it is valid to either give the statusreq ( requires status to be there ) or statusreqnot ( requires status to not be there ) set of requirements . the set may contain only some or even no requirements .
