code: def unescape(self):
          
          from ._constants import HTML_ENTITIES
  
          def handle_match(m):
              name = m.group(1)
              if name in HTML_ENTITIES:
                  return unichr(HTML_ENTITIES[name])
              try:
                  if name[:2] in ("#x", "#X"):
                      return unichr(int(name[2:], 16))
                  elif name.startswith("#"):
                      return unichr(int(name[1:]))
              except ValueError:
                  pass
              # Don't modify unexpected input.
              return m.group()
  
          return _entity_re.sub(handle_match, text_type(self))
docs: Convert escaped markup back into a text string. This replaces
          HTML entities with the characters they represent.
  
          >>> Markup('Main &raquo; <em>About</em>').unescape()
          'Main » <em>About</em>'