input: 
  class StoreItem:
      def __init__(self, item_id, name, price, description):
          self.item_id = item_id
          self.name = name
          self.price = price
          self.description = description
  
      def __str__(self):
          return f'{self.name}, ${self.price}'
  
      def to_dict(self):
          return {
              'item_id': self.item_id,
              'name': self.name,
              'price': self.price,
              'description': self.description
          }
  
  
output:     
  class Store:
      def __init__(self):
          self.items = []
  
      def add_item(self, item: StoreItem):
          self.items.append(item)
  
      def remove_item(self, item_id: int):
          self.items = [item for item in self.items if item.item_id != item_id]
  
      def get_item(self, item_id: int) -> StoreItem:
          for item in self.items:
              if item.item_id == item_id:
                  return item
          return None
  
      def list_items(self) -> List[dict]:
          return [item.to_dict() for item in self.items]
  