code: def recursively_save_dict_contents_to_group(h5file, path, dic):
      
      for key, item in dic.items():
          if isinstance(item, (np.ndarray, np.int64, np.float64, str, bytes, tuple, list)):
              h5file[path + str(key)] = item
          elif isinstance(item, dict):
              recursively_save_dict_contents_to_group(h5file, path + key + '/', item)
          else:
              raise ValueError('Cannot save %s type' % type(item))
docs: Parameters
      ----------
      h5file:
          h5py file to be written to
      path:
          path within h5py file to saved dictionary
      dic:
          python dictionary to be converted to hdf5 format