When we merge the SIFTS maps, we can extend the sequence maps such that they have elements in their domain that we removed
            from the sequence e.g. 1A2P, residue 'B   3 ' is removed because Rosetta barfs on it. Here, we prune the maps so that their
            domains do not have elements that were removed from sequences.

def _prune_maps_to_sequences(self):
        ''' When we merge the SIFTS maps, we can extend the sequence maps such that they have elements in their domain that we removed
            from the sequence e.g. 1A2P, residue 'B   3 ' is removed because Rosetta barfs on it. Here, we prune the maps so that their
            domains do not have elements that were removed from sequences.'''

        for c, seq in self.atom_sequences.iteritems():
            res_ids = [r[0] for r in seq]
            for_removal = []
            for k, _, _ in self.atom_to_seqres_sequence_maps[c]:
                if k not in res_ids:
                    for_removal.append(k)
            for res_id in for_removal:
                self.atom_to_seqres_sequence_maps[c].remove(res_id)