code: def get_metadata_entry_or_val(
      function_obj: FunctionCatalogEntry,
      key: str,
      default_val: Any = None,
  ) -> str:
      """
      Return the metadata value for the given key, or the default value if the
      key is not found.
  
      Args:
          function_obj (FunctionCatalogEntry): An object of type `FunctionCatalogEntry` which is
          used to extract metadata information.
          key (str): The metadata key for which the corresponding value needs to be retrieved.
          default_val (Any): The default value to be returned if the metadata key is not found.
  
      Returns:
          str: metadata value
      """
      for metadata in function_obj.metadata:
          if metadata.key == key:
              return metadata.value
      return default_val
  
imports: import uuid
  from pathlib import Path
  from typing import Any, Dict, List
  from evadb.catalog.catalog_type import ColumnType, DocumentColumnName, ImageColumnName, NdArrayType, PDFColumnName, TableType, VideoColumnName
  from evadb.catalog.models.utils import ColumnCatalogEntry, FunctionCacheCatalogEntry, FunctionCatalogEntry, TableCatalogEntry
  from evadb.catalog.sql_config import IDENTIFIER_COLUMN
  from evadb.expression.function_expression import FunctionExpression
  from evadb.expression.tuple_value_expression import TupleValueExpression
  from evadb.parser.create_statement import ColConstraintInfo, ColumnDefinition
  from evadb.utils.generic_utils import get_str_hash
label_desc: Use image node_id 12 for calling a global function with example usage: get_metadata_entry_or_val(function_obj, key, default_val) and returns: default_val, metadata