def METHOD_NAME(self) -> dict:
    # processed_vars = self._get_processed_vars()
    model_set = {}
    for model_id in self.model_set.keys():
        weights = OrderedDict()
        var_dict = self.model_set[model_id]
        for k, v in var_dict.items():
            # is_processed = processed_vars.get(k, False)
            # if is_processed:
            weights[k] = v
            # else:
            #    weights[k] = v.cpu().numpy()
        model_set[model_id] = weights
    # always use complex format for saving
    persistence_dict = OrderedDict()
    persistence_dict[self.PERSISTENCE_KEY_FEDSM_MODELS] = model_set
    if self.meta:
        persistence_dict[self.PERSISTENCE_KEY_META_PROPS] = self.meta
    if self.train_conf:
        persistence_dict[self.PERSISTENCE_KEY_TRAIN_CONF] = self.train_conf
    if self.other_props:
        for k, v in self.other_props.items():
            persistence_dict[k] = v
    return persistence_dict