anchor.diff:      try
           ?log_debug("Writing interactively saved ddoc ~p", [Doc]),
           SavedDocState = save_doc(NewDoc, State),
  -        replicate_change(SavedDocState, NewDoc),
  +        Replicator ! {replicate_change, NewDoc},
           {reply, ok, SavedDocState}
       catch throw:{invalid_design_doc, _} = Error ->
               ?log_debug("Document validation failed: ~p", [Error]),
  
positive.code:         {not_found, _} ->
              couch_db:create(MasterVBucket, [])
      end.
  
  replicate_change(#state{proxy_server_name = ServerName,
                          remote_nodes=Nodes}, Doc) ->
      [replicate_change_to_node(ServerName, Node, Doc) || Node <- Nodes],
      ok.
  
  save_doc(#doc{id = Id} = Doc,
           #state{bucket=Bucket, local_docs=Docs}=State) ->
  
negative.code:             Deleted
      end.
  
  handle_info(replicate_newnodes_docs, #state{bucket = Bucket,
                                              local_docs = Docs,
                                              ddoc_replicator = Replicator} = State) ->
      Replicator ! {replicate_newnodes_docs, get_remote_nodes(Bucket), Docs},
      {noreply, State};
  handle_info({update_ddoc, DDocId, Deleted0}, State) ->
      Deleted = aggregate_update_ddoc_messages(DDocId, Deleted0),
      ?log_info("Processing update_ddoc ~s (~p)", [DDocId, Deleted]),
  