code: def transform_entries(self, entries, terminal_compositions):
          
          new_entries = []
          if self.normalize_terminals:
              fractional_comp = [c.fractional_composition
                                 for c in terminal_compositions]
          else:
              fractional_comp = terminal_compositions
  
          # Map terminal compositions to unique dummy species.
          sp_mapping = collections.OrderedDict()
          for i, comp in enumerate(fractional_comp):
              sp_mapping[comp] = DummySpecie("X" + chr(102 + i))
  
          for entry in entries:
              try:
                  rxn = Reaction(fractional_comp, [entry.composition])
                  rxn.normalize_to(entry.composition)
                  # We only allow reactions that have positive amounts of
                  # reactants.
                  if all([rxn.get_coeff(comp) <= CompoundPhaseDiagram.amount_tol
                          for comp in fractional_comp]):
                      newcomp = {sp_mapping[comp]: -rxn.get_coeff(comp)
                                 for comp in fractional_comp}
                      newcomp = {k: v for k, v in newcomp.items()
                                 if v > CompoundPhaseDiagram.amount_tol}
                      transformed_entry = \
                          TransformedPDEntry(Composition(newcomp), entry)
                      new_entries.append(transformed_entry)
              except ReactionError:
                  # If the reaction can't be balanced, the entry does not fall
                  # into the phase space. We ignore them.
                  pass
          return new_entries, sp_mapping
docs: Method to transform all entries to the composition coordinate in the
          terminal compositions. If the entry does not fall within the space
          defined by the terminal compositions, they are excluded. For example,
          Li3PO4 is mapped into a Li2O:1.5, P2O5:0.5 composition. The terminal
          compositions are represented by DummySpecies.
  
          Args:
              entries: Sequence of all input entries
              terminal_compositions: Terminal compositions of phase space.
  
          Returns:
              Sequence of TransformedPDEntries falling within the phase space.