code: def getmode(mode):
      """Gets a mode descriptor for the given mode."""
      global _modes
      if not _modes:
          # initialize mode cache
  
          from . import Image
  
          modes = {}
          # core modes
          for m, (basemode, basetype, bands) in Image._MODEINFO.items():
              modes[m] = ModeDescriptor(m, bands, basemode, basetype)
          # extra experimental modes
          modes["RGBa"] = ModeDescriptor(
              "RGBa", ("R", "G", "B", "a"), "RGB", "L"
          )
          modes["LA"] = ModeDescriptor("LA", ("L", "A"), "L", "L")
          modes["La"] = ModeDescriptor("La", ("L", "a"), "L", "L")
          modes["PA"] = ModeDescriptor("PA", ("P", "A"), "RGB", "L")
          # mapping modes
          for i16mode in (
              "I;16",
              "I;16S",
              "I;16L",
              "I;16LS",
              "I;16B",
              "I;16BS",
              "I;16N",
              "I;16NS",
          ):
              modes[i16mode] = ModeDescriptor(i16mode, ("I",), "L", "L")
          # set global mode cache atomically
          _modes = modes
      return _modes[mode]
  
label_desc: Use image node_id 1 for calling a global function with example usage: getmode(mode) and returns: _modes