code: def filter_dict(el: Dict, callback: Callable[[str], bool]) -> Dict:
      """
      Filters dicts by key using a callback
  
      example:
      filter_dict({"a": 10, "aa": 11, "b": 20}, lambda key: key.startswith("a"))
      returns: {'a': 10, 'aa': 11}
  
      :param el: The dict you want to filter
      :param callback: The callback to filter the dict keys
      :return: The filtered dict
      """
      keys = filter(callback, el.keys())
      return {key: el[key] for key in keys}
  
imports: from typing import Any, Dict, Union, Tuple, Callable, Optional
  import gym
  import numpy
  from maze.core.env.maze_env import MazeEnv
  from maze.core.env.structured_env import StructuredEnv, StepKeyType, ActorID
  from maze.core.env.structured_env_spaces_mixin import StructuredEnvSpacesMixin
  from maze.core.wrappers.wrapper import Wrapper
label_desc: Use image node_id 1 for calling a global function with example usage: filter_dict(el, callback) and returns: unknown