if (specificAnnotationSettings == null || selectedIonTypes.keySet().contains(Ion.IonType.PEPTIDE_FRAGMENT_ION) && specificAnnotationSettings.getFragmentIonTypes().contains(PeptideFragmentIon.Y_ION)) {
int subType = PeptideFragmentIon.Y_ION;
ArrayList<Ion> ions = ionsMap.get(subType);
if (ions == null) {
if (neutralLossesCombinations != null) {
<BUG>ions = new ArrayList<Ion>(neutralLossesCombinations.size());
</BUG>
} else {
ions = new ArrayList<Ion>(1);
}

if (specificAnnotationSettings == null || selectedIonTypes.keySet().contains(Ion.IonType.PEPTIDE_FRAGMENT_ION) && specificAnnotationSettings.getFragmentIonTypes().contains(PeptideFragmentIon.Y_ION)) {
int subType = PeptideFragmentIon.Y_ION;
ArrayList<Ion> ions = ionsMap.get(subType);
if (ions == null) {
if (neutralLossesCombinations != null) {
ions = new ArrayList<Ion>(neutralLossesCombinations.length);
} else {
ions = new ArrayList<Ion>(1);
}
