public void branch() {
        //List<Integer> listToBranch = copyIntegerList(this.integerPeptideList);
        //this.integerPeptideList.clear();
        int peptideListSize = this.integerPeptideList.size();

        for (int i = 0; i < peptideListSize; i++) {
            List<Integer> peptide = this.integerPeptideList.get(i);
            this.integerPeptideList.remove(i);
            boolean first = true;
            for (Integer k : this.alphabet) {
                if (first) {
                    peptide.add(k);
                    this.integerPeptideList.add(peptide);    
                } else {
                    peptide.remove(peptide.size() - 1);
                    peptide.add(k);
                    this.integerPeptideList.add(peptide);
                }
            }
        }
    }