code: def users():
      """Return currently connected users as a list of namedtuples."""
      retlist = []
      rawlist = cext.users()
      for item in rawlist:
          user, tty, hostname, tstamp, pid = item
          if tty == "~":
              continue  # reboot or shutdown
          if not tstamp:
              continue
          nt = _common.suser(
              user, tty or None, hostname or None, tstamp, pid
          )
          retlist.append(nt)
      return retlist
  
imports: import contextlib
  import errno
  import functools
  import os
  from collections import namedtuple
  from .None import _common
  from .None import _psposix
  from .None import _psutil_osx
  from .None import _psutil_posix
  from ._common import AccessDenied
  from ._common import conn_tmap
  from ._common import conn_to_ntuple
  from ._common import isfile_strict
  from ._common import memoize_when_activated
  from ._common import NoSuchProcess
  from ._common import parse_environ_block
  from ._common import usage_percent
  from ._common import ZombieProcess
  from ._compat import PermissionError
  from ._compat import ProcessLookupError
label_desc: Use image node_id 14 for calling a global function with example usage: users() and returns: retlist