code: def tag(self, tokens):
          
          tags = []
          for token in tokens:
              normalized = self.lexicon[token].normalized
              for regex, tag in self.regexes:
                  if regex.match(normalized):
                      tags.append((token, tag))
                      break
              else:
                  tags.append((token, None))
          return tags
docs: Return a list of (token, tag) tuples for a given list of tokens.