anchor.diff:  fill3() ->        "|  ".
   
   %%%--Export--------------------------------------------------------------
  +do_export(Module, OutFile, From, State) ->
  +    case file:open(OutFile,[write,binary,raw]) of
  +	{ok,Fd} ->
  +	    Reply = 
  +		case Module of
  +		    '_' ->
  +			export_info(State#main_state.imported),
  +			collect(State#main_state.nodes),
  +			do_export_table(State#main_state.compiled,
  +					State#main_state.imported,
  +					Fd);
  +		    _ ->
  +			export_info(Module,State#main_state.imported),
  +			try is_loaded(Module, State) of
  +			    {loaded, File} ->
  +				[{Module,Clauses}] = 
  +				    ets:lookup(?COVER_TABLE,Module),
  +				collect(Module, Clauses,
  +					State#main_state.nodes),
  +				do_export_table([{Module,File}],[],Fd);
  +			    {imported, File, ImportFiles} ->
  +				%% don't know if I should allow this - 
  +				%% export a module which is only imported
  +				Imported = [{Module,File,ImportFiles}],
  +				do_export_table([],Imported,Fd)
  +			catch throw:_ ->
  +				{error,{not_cover_compiled,Module}}
  +			end
  +		end,
  +	    file:close(Fd),
  +	    reply(From, Reply);
  +	{error,Reason} ->
  +	    reply(From, {error, {cant_open_file,OutFile,Reason}})
  +
  +    end.
  +
   do_export_table(Compiled, Imported, Fd) ->
       ModList = merge(Imported,Compiled),
       write_module_data(ModList,Fd).
  
positive.code: 	      end,
  	      AllClauses),
  	    CollectorPid ! done,
  	    remote_reply(State#remote_state.main_node, ok),
  	    remote_process_loop(State);
  
  	{remote,stop} ->
  
negative.code: 	    Return
      end.
      
  remote_reply(Proc,Reply) when is_pid(Proc) ->
      Proc ! {?SERVER,Reply};
  remote_reply(MainNode,Reply) ->
      {?SERVER,MainNode} ! {?SERVER,Reply}.
  
  