code: private boolean canAdd(SubsetSolution solution, Set<Integer> addCandidates){
          return !addCandidates.isEmpty()
                      && isValidSubsetSize(solution.getNumSelectedIDs()+1);
      }
docs: Check if it is allowed to add one more item to the selection.
  
  @param solution solution for which moves are generated
  @param addCandidates set of candidate IDs to be added
  @return <code>true</code> if it is allowed to add an item to the selection