code: def save_properties_of_cropped(self, case_identifier, properties):
      with open(
          join_paths(
              self.folder_with_cropped_data, "%s.pkl" % case_identifier
          ),
          "wb",
      ) as f:
          pickle.dump(properties, f)
  
imports: import os
  import pickle
  import shutil
  from collections import OrderedDict
  from .image_crop import get_case_identifier_from_npz
  from .preprocessing import GenericPreprocessor, PreprocessorFor2D
  from .experiment_utils import *
  from .path_utils import join_paths
label_desc: Use image node_id 8 for calling the ExperimentPlanner obj's underlying member method code with example usage: obj.save_properties_of_cropped(case_identifier, properties) without return types