code: public static <S extends Sequence<C>, C extends Compound> List<PairwiseSequenceScorer<S, C>> getAllPairsScorers(
  			List<S> sequences, PairwiseSequenceScorerType type, GapPenalty gapPenalty,
  			SubstitutionMatrix<C> subMatrix) {
  		List<PairwiseSequenceScorer<S, C>> allPairs = new ArrayList<PairwiseSequenceScorer<S, C>>();
  		for (int i = 0; i < sequences.size(); i++) {
  			for (int j = i+1; j < sequences.size(); j++) {
  				allPairs.add(getPairwiseScorer(sequences.get(i), sequences.get(j), type, gapPenalty, subMatrix));
  			}
  		}
  		return allPairs;
  	}
docs: Factory method which sets up a sequence pair scorer for all {@link Sequence} pairs in the given {@link List}.
  
  @param <S> each {@link Sequence} of a pair is of type S
  @param <C> each element of a {@link Sequence} is a {@link Compound} of type C
  @param sequences the {@link List} of {@link Sequence}s to align
  @param type chosen type from list of pairwise sequence scoring routines
  @param gapPenalty the gap penalties used during alignment
  @param subMatrix the set of substitution scores used during alignment
  @return list of sequence pair scorers