anchor.diff:  ordered_edges(Edges) ->
       gen_server:cast(?MODULE, {ordered_edges, Edges}).
   
  +save(Filename) ->
  +    gen_server:call(?MODULE, {save_graph, Filename}).
  +
  +load(Filename) ->
  +    gen_server:call(?MODULE, {load_graph, Filename}).
  +
   %------------------------------------------------------------------------------
   % gen_server callbacks
   %------------------------------------------------------------------------------
  
positive.code:     is_process_alive(Pid);
  calculating(_) ->
      false.
  
negative.code:     gen_server:cast(?MODULE, start),
      {ok, #?STATE{max_vertices = MaxVertices}}.
  
  handle_call({save_graph, Filename}, _From,
                                          State = #?STATE{digraph = Digraph}) ->
      Reply = save_graph(Filename, Digraph),
      {reply, Reply, State};
  handle_call({load_graph, Filename}, _From,
                                          State = #?STATE{digraph = Digraph}) ->
      digraph:delete(Digraph),
      NewDigraph = load_graph(Filename),
      {reply, ok, State#?STATE{digraph = NewDigraph}};
  handle_call(Msg, From, State) ->
      error({no_handle_call, ?MODULE}, [Msg, From, State]).
  
  