anchor.diff:                 , snapFun    = undefined :: any()
                  , snapHash   = undefined :: any()
                  , snap_timer = undefined :: reference()
  +               , csnap_pid  = undefined :: pid()
                  }).
   
   % snapshot interface
  
positive.code: 
      process_flag(trap_exit, true),
      start_snap_loop(),
      CST = ?GET_CLUSTER_SNAPSHOT_TABLES,
      erlang:send_after(1000, ?MODULE, {cluster_snap, CST, os:timestamp(),
                                        '$create_when_needed'}),
      {ok,#state{snapdir = SnapshotDir}}.
  
  create_clean_dir(Prefix) ->
  
negative.code: -define(GET_CLUSTER_SNAPSHOT,?GET_CONFIG(snapshotCluster,[],true)).
  -define(GET_CLUSTER_SNAPSHOT_TABLES,?GET_CONFIG(snapshotClusterTables,[],[ddAccount,ddRole,ddConfig])).
  -define(GET_CLUSTER_SNAPSHOT_TOD,?GET_CONFIG(snapshotClusterHourOfDay,[],14)).
  
  -ifdef(TEST).
      start_snap_loop() -> ok.
  