code: def findFileOrThrow(strBasename):
      # Keep constant names in C-style convention, for readability
      # when comparing to C(/C++) code.
      if os.path.isfile(strBasename):
          return strBasename
  
      LOCAL_FILE_DIR = "data" + os.sep
      GLOBAL_FILE_DIR = (
          os.path.dirname(os.path.abspath(__file__))
          + os.sep
          + "data"
          + os.sep
      )
  
      strFilename = LOCAL_FILE_DIR + strBasename
      if os.path.isfile(strFilename):
          return strFilename
  
      strFilename = GLOBAL_FILE_DIR + strBasename
      if os.path.isfile(strFilename):
          return strFilename
  
      raise IOError("Could not find target file " + strBasename)
  
imports: import os
  from OpenGL.GL import *
label_desc: Use image node_id 3 for calling a global function with example usage: findFileOrThrow(strBasename) and returns: strBasename, strFilename, strFilename