code: def map_sites(self, stmts):
          
          valid_statements = []
          mapped_statements = []
  
          for stmt in stmts:
              mapped_stmt = self.map_stmt_sites(stmt)
              # If we got a MappedStatement as a return value, we add that to the
              # list of mapped statements, otherwise, the original Statement is
              # not invalid so we add it to the other list directly.
              if mapped_stmt is not None:
                  mapped_statements.append(mapped_stmt)
              else:
                  valid_statements.append(stmt)
  
          return valid_statements, mapped_statements
docs: Check a set of statements for invalid modification sites.
  
          Statements are checked against Uniprot reference sequences to determine
          if residues referred to by post-translational modifications exist at
          the given positions.
  
          If there is nothing amiss with a statement (modifications on any of the
          agents, modifications made in the statement, etc.), then the statement
          goes into the list of valid statements. If there is a problem with the
          statement, the offending modifications are looked up in the site map
          (:py:attr:`site_map`), and an instance of :py:class:`MappedStatement`
          is added to the list of mapped statements.
  
          Parameters
          ----------
          stmts : list of :py:class:`indra.statement.Statement`
              The statements to check for site errors.
  
          Returns
          -------
          tuple
              2-tuple containing (valid_statements, mapped_statements). The first
              element of the tuple is a list of valid statements
              (:py:class:`indra.statement.Statement`) that were not found to
              contain any site errors. The second element of the tuple is a list
              of mapped statements (:py:class:`MappedStatement`) with information
              on the incorrect sites and corresponding statements with correctly
              mapped sites.