code: def _find_flink_home():
      """
      Find the FLINK_HOME.
      """
      # If the environment has set FLINK_HOME, trust it.
      if "FLINK_HOME" in os.environ:
          return os.environ["FLINK_HOME"]
      else:
          try:
              current_dir = os.path.abspath(
                  os.path.dirname(os.path.abspath(__file__))
              )
              flink_root_dir = os.path.abspath(current_dir + "/../../")
              build_target = glob.glob(
                  flink_root_dir
                  + "/flink-dist/target/flink-*-bin/flink-*"
              )
              if len(build_target) > 0 and _is_flink_home(
                  build_target[0]
              ):
                  os.environ["FLINK_HOME"] = build_target[0]
                  return build_target[0]
  
              FLINK_HOME = None
              for module_home in __import__("pyflink").__path__:
                  if _is_apache_flink_libraries_home(module_home):
                      os.environ["FLINK_LIB_DIR"] = os.path.join(
                          module_home, "lib"
                      )
                      os.environ["FLINK_PLUGINS_DIR"] = os.path.join(
                          module_home, "plugins"
                      )
                      os.environ["FLINK_OPT_DIR"] = os.path.join(
                          module_home, "opt"
                      )
                  if _is_flink_home(module_home):
                      FLINK_HOME = module_home
              if FLINK_HOME is not None:
                  os.environ["FLINK_HOME"] = FLINK_HOME
                  return FLINK_HOME
          except Exception:
              pass
          logging.error(
              "Could not find valid FLINK_HOME(Flink distribution directory) "
              "in current environment."
          )
          sys.exit(-1)
  
imports: import glob
  import logging
  import os
  import sys
label_desc: Use image node_id 3 for calling a global function with example usage: _find_flink_home() and returns: os, build_target, FLINK_HOME