code: def __init__(
      self, starting_loc="start", scene_name="UP_RIGHT", config="1_2"
  ):
      pos1, pos2 = config.split("_")
      config_tuple = (int(pos1), int(pos2))
  
      assert (
          scene_name in scene_names
      ), f"{scene_name} is not a possible scene! please choose from {scene_names[0]}, {scene_names[1]}, {scene_names[2]}, or {scene_names[3]}\n"
      assert (
          config_tuple in config_names
      ), f"{config} is not a possible spatial configuration! Please choose an appropriate 2x2 spatial configuration\n"
  
      self.current_location = starting_loc
      self.scene_name = scene_name
      self.config = config
      self._create_visual_array()
  
      print(
          f"Starting location is {self.current_location}, Scene is {self.scene_name}, Configuration is {self.config}\n"
      )
  
imports: from pymdp.envs import Env
  from pymdp import utils, maths
  import numpy
  from itertools import permutations, product
label_desc: Use image node_id 1 to create a new SceneConstruction object from inherited base classes: Env with example: obj = SceneConstruction(starting_loc, scene_name, config)