code: def _parse_status(bug_el):
      bug = Bugreport()
      for field in ('originator', 'subject', 'msgid', 'package', 'severity',
                    'owner', 'summary', 'location', 'source', 'pending',
                    'forwarded'):
          setattr(bug, field, _parse_string_el(bug_el(field)))
      bug.date = datetime.utcfromtimestamp(float(bug_el('date')))
      bug.log_modified = datetime.utcfromtimestamp(float(bug_el('log_modified')))
      bug.tags = [_uc(tag) for tag in str(bug_el('tags')).split()]
      bug.done = _parse_bool(bug_el('done'))
      bug.archived = _parse_bool(bug_el('archived'))
      bug.unarchived = _parse_bool(bug_el('unarchived'))
      bug.bug_num = int(bug_el('bug_num'))
      bug.mergedwith = [int(i) for i in str(bug_el('mergedwith')).split()]
      bug.blockedby = [int(i) for i in str(bug_el('blockedby')).split()]
      bug.blocks = [int(i) for i in str(bug_el('blocks')).split()]
      bug.found_versions = [_uc(str(el)) for el in
                            bug_el('found_versions').children() or []]
      bug.fixed_versions = [_uc(str(el)) for el in
                            bug_el('fixed_versions').children() or []]
      affects = [_f for _f in str(bug_el('affects')).split(',') if _f]
      bug.affects = [_uc(a).strip() for a in affects]
      return bug