code: def __getattr__(key: str):
      # These imports need to be lazy to avoid circular import errors
      if key == "hash_array":
          from pandas.core.util.hashing import hash_array
  
          return hash_array
      if key == "hash_pandas_object":
          from pandas.core.util.hashing import hash_pandas_object
  
          return hash_pandas_object
      if key == "Appender":
          from pandas.util._decorators import Appender
  
          return Appender
      if key == "Substitution":
          from pandas.util._decorators import Substitution
  
          return Substitution
  
      if key == "cache_readonly":
          from pandas.util._decorators import cache_readonly
  
          return cache_readonly
  
      raise AttributeError(
          f"module 'pandas.util' has no attribute '{key}'"
      )
  
label_desc: Use image node_id 1 for calling a global function with example usage: __getattr__(key) and returns: hash_array, hash_pandas_object, Appender, Substitution, cache_readonly