code: def _macronize_word(self, word):
          
          head_word = word[0]
          tag = word[1]
          if tag is None:
              logger.info('Tagger {} could not tag {}.'.format(self.tagger, head_word))
              return head_word, tag, head_word
          elif tag == 'U--------':
              return (head_word, tag.lower(), head_word)
          else:
              entries = self._retrieve_morpheus_entry(head_word)
              if entries is None:
                  return head_word, tag.lower(), head_word
              matched_entry = [entry for entry in entries if entry[0] == tag.lower()]
              if len(matched_entry) == 0:
                  logger.info('No matching Morpheus entry found for {}.'.format(head_word))
                  return head_word, tag.lower(), entries[0][2]
              elif len(matched_entry) == 1:
                  return head_word, tag.lower(), matched_entry[0][2].lower()
              else:
                  logger.info('Multiple matching entries found for {}.'.format(head_word))
                  return head_word, tag.lower(), matched_entry[1][2].lower()
docs: Return macronized word.
  
          :param word: (word, tag)
          :ptype word: tuple
          :return: (word, tag, macronized_form)
          :rtype : tuple