anchor.diff:  
   remove_entries(Dict, Entries) ->
       lists:foldl(fun(Entry, D) -> dict:erase(Entry, D) end, Dict, Entries).
  +
  +local_dbs() ->
  +    [nodes_db(), shards_db(), users_db()].
  +
  +nodes_db() ->
  +    ?l2b(couch_config:get("mem3", "node_db", "nodes")).
  +
  +shards_db() ->
  +    ?l2b(couch_config:get("mem3", "shard_db", "dbs")).
  +
  +users_db() ->
  +    ?l2b(couch_config:get("couch_httpd_auth", "authentication_db", "_users")).
  
positive.code:     gen_server:call(mem3_sync, {push, #job{name=ShardName, node=N}}, infinity).
  
  start_update_notifier() ->
      Db1 = ?l2b(couch_config:get("mem3", "node_db", "nodes")),
      Db2 = ?l2b(couch_config:get("mem3", "shard_db", "dbs")),
      Db3 = ?l2b(couch_config:get("couch_httpd_auth", "authentication_db",
          "_users")),
      couch_db_update_notifier:start_link(fun
      ({updated, Db}) when Db == Db1 ->
          Nodes = mem3:nodes(),
  
negative.code:     end.
  
  sync_nodes_and_dbs() ->
      Node = find_next_node(),
      [push(Db, Node) || Db <- local_dbs()].
  
  initial_sync() ->
      [net_kernel:connect_node(Node) || Node <- mem3:nodes()],
  