anchor.diff:      BackFile = filename:join([SnapDir, atom_to_list(Tab)++?BKP_EXTN]),
       NewBackFile = filename:join([SnapDir, atom_to_list(Tab)++?BKP_TMP_EXTN]),
       % truncates the file if already exists and writes the table props
  -    TblPropBin = term_to_binary({prop, imem_if:table_info(Tab, user_properties)}),
  +    TblPropBin = case imem_if:read(ddTable, {imem_meta:schema(),Tab}) of
  +        [] ->           term_to_binary({prop, imem_if:table_info(Tab, user_properties)});
  +        [DDTableRow] -> term_to_binary({prop, [DDTableRow]})
  +    end,
       PayloadSize = byte_size(TblPropBin),
       ok = file:write_file(NewBackFile, << PayloadSize:32, TblPropBin/binary >>),
       Me = self(),
  
positive.code:         , snap_err/2
          , do_snapshot/1
          , all_snap_tables/0
          ]).
  
  -define(BKP_EXTN, ".bkp").
  
negative.code:         []  -> {error, lists:flatten(io_lib:format(" ~p doesn't match any table in ~p~n", [RegExs, FilteredSnapReadTables]))};
          _   -> take({tabs, SelectedSnapTables})
      end;
  take(Tab) when is_atom(Tab) ->                      % single table as atom (internal use)
      take({tabs, [Tab]});
  take({tabs, Tabs}) ->                               % list of tables as atoms
      lists:flatten([
          case take_chunked(Tab) of
              ok -> {ok, Tab};
  