code: def get_options():
      """Return a list of acceptable QT APIs, in decreasing order of
      preference
      """
      # already imported Qt somewhere. Use that
      loaded = loaded_api()
      if loaded is not None:
          return [loaded]
  
      mpl = sys.modules.get("matplotlib", None)
  
      if mpl is not None and not check_version(
          mpl.__version__, "1.0.2"
      ):
          # 1.0.1 only supports PyQt4 v1
          return [QT_API_PYQT_DEFAULT]
  
      qt_api = os.environ.get("QT_API", None)
      if qt_api is None:
          # no ETS variable. Ask mpl, then use default fallback path
          return matplotlib_options(mpl) or [
              QT_API_PYQT_DEFAULT,
              QT_API_PYSIDE,
              QT_API_PYQT5,
              QT_API_PYSIDE2,
          ]
      elif qt_api not in _qt_apis:
          raise RuntimeError(
              "Invalid Qt API %r, valid values are: %r"
              % (qt_api, ", ".join(_qt_apis))
          )
      else:
          return [qt_api]
  
imports: import os
  import sys
  from IPython.utils.version import check_version
  from IPython.external.qt_loaders import load_qt, loaded_api, QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT, QT_API_PYQT5, QT_API_PYQTv1, QT_API_PYQT_DEFAULT
label_desc: Use image node_id 2 for calling a global function with example usage: get_options() and returns: list, list, unknown, list