def getAllPairedIonsDict(lightMergedSpec, heavyMergedSpec, lightPrecMass, pairConfig, epSTD=0.01): NTermTable, CTermTable = SA.getNandCIons(lightMergedSpec, heavyMergedSpec, Nmod=pairConfig['NMod'], Cmod=pairConfig['CMod'], epsilon=2*epSTD) NCrossTable, CCrossTable = SA.getCrossPairedIons(lightMergedSpec, heavyMergedSpec, lightPrecMass, Nmod=pairConfig['NMod'], Cmod=pairConfig['CMod'], epsilon=2*epSTD) NTermIonDict = SA.prepIonTableForAddition(NTermTable, ['b', 'b']) CTermIonDict = SA.prepIonTableForAddition(CTermTable, ['y', 'y']) NCrossIonDict = SA.prepIonTableForAddition(NCrossTable, ['y', 'b']) CCrossIonDict = SA.prepIonTableForAddition(CCrossTable, ['b', 'y']) return SA.addDicts(SA.reverseDict(SA.addDicts(NTermIonDict, CCrossIonDict)), SA.reverseDict(SA.addDicts(NCrossIonDict, CTermIonDict)))