code: def handle_if_not_exists(
      catalog: "CatalogManager",
      table_info: TableInfo,
      if_not_exist=False,
  ):
      # Table exists
      if catalog.check_table_exists(
          table_info.table_name,
          table_info.database_name,
      ):
          err_msg = "Table: {} already exists".format(table_info)
          if if_not_exist:
              logger.warn(err_msg)
              return True
          else:
              logger.error(err_msg)
              raise ExecutorError(err_msg)
      # Table does not exist
      else:
          return False
  
imports: import glob
  import os
  from pathlib import Path
  from typing import TYPE_CHECKING, Generator, List, Union
  from evadb.catalog.catalog_utils import xform_column_definitions_to_catalog_entries
  from evadb.catalog.models.utils import TableCatalogEntry
  from evadb.parser.create_statement import ColumnDefinition
  from evadb.catalog.catalog_type import TableType, VectorStoreType
  from evadb.expression.abstract_expression import AbstractExpression
  from evadb.expression.function_expression import FunctionExpression
  from evadb.models.storage.batch import Batch
  from evadb.parser.table_ref import TableInfo
  from evadb.parser.types import FileFormatType
  from evadb.readers.document.registry import SUPPORTED_TYPES
  from evadb.utils.generic_utils import try_to_import_cv2
  from evadb.utils.logging_manager import logger
label_desc: Use image node_id 4 for calling a global function with example usage: handle_if_not_exists(catalog, table_info, if_not_exist) and returns: False, True