code: def get_usertag(email, *tags):
      
      reply = _soap_client_call('get_usertag', email, *tags)
      map_el = reply('s-gensym3')
      mapping = {}
      # element <s-gensys3> in response can have standard type
      # xsi:type=apachens:Map (example, for email debian-python@lists.debian.org)
      # OR no type, in this case keys are the names of child elements and
      # the array is contained in the child elements
      type_attr = map_el.attributes().get('xsi:type')
      if type_attr and type_attr.value == 'apachens:Map':
          for usertag_el in map_el.children() or []:
              tag = _uc(str(usertag_el('key')))
              buglist_el = usertag_el('value')
              mapping[tag] = [int(bug) for bug in buglist_el.children() or []]
      else:
          for usertag_el in map_el.children() or []:
              tag = _uc(usertag_el.get_name())
              mapping[tag] = [int(bug) for bug in usertag_el.children() or []]
      return mapping
docs: Get buglists by usertags.
  
      Parameters
      ----------
      email : str
      tags : tuple of strings
          If tags are given the dictionary is limited to the matching
          tags, if no tags are given all available tags are returned.
  
      Returns
      -------
      mapping : dict
          a mapping of usertag -> buglist