class_docstr: Cutting 2d environment state to dictionary observation.
  
  :param max_pieces_in_inventory: Size of the inventory. If inventory gets full, the oldest pieces get discarded.
  :param raw_piece_size: Size of a fresh raw (= full-size) piece
class_docstr_tok: ["Cutting","2d","environment","state","to","dictionary","observation",".",":","param","max_pieces_in_inventory",":","Size","of","the","inventory",".","If","inventory","gets","full",",","the","oldest","pieces","get","discarded",".",":","param","raw_piece_size",":","Size","of","a","fresh","raw","(","=","full-size",")","piece"]
code: def __init__(
      self, raw_piece_size: (int, int), max_pieces_in_inventory: int
  ):
      self.max_pieces_in_inventory = max_pieces_in_inventory
      self.raw_piece_size = raw_piece_size
  
file_path: maze/tutorials/tutorial_maze_env/part03_maze_env/space_interfaces/dict_observation_conversion.py
imports: import numpy
  from typing import Dict
  from gym import spaces
  from maze.core.annotations import override
  from maze.core.env.observation_conversion import ObservationConversionInterface
  from ..env.maze_state import Cutting2DMazeState
label_desc: Use image node_id 1 to create a new ObservationConversion object from inherited base classes: ObservationConversionInterface with example: obj = ObservationConversion(raw_piece_size, max_pieces_in_inventory)