code: def hash_deterministically(obj: Any) -> str:
      """
      Produces hash for hashable object wo/ python's .hash() to allow for reproducibility with strings.
      Source: https://stackoverflow.com/a/42151923.
      :param obj: Hashable object to be hashed.
      :return: Hash for obj.
      """
  
      hasher = hashlib.sha256()
      hasher.update(repr(make_hashable(obj)).encode())
      return base64.b64encode(hasher.digest()).decode()
  
file_path: maze/maze/test/shared_test_utils/reproducibility.py
imports: import base64
  import hashlib
  from typing import Any, Tuple, Callable, List, Optional
  import numpy
  from maze.core.agent.policy import Policy
  from maze.core.env.maze_env import MazeEnv
  from maze.core.env.observation_conversion import ObservationType
label_desc: Use image node_id 1 for calling a global function with example usage: hash_deterministically(obj) and returns: base64