anchor.diff:  
   -export([
       start_link/0,
  +    start_link/1,
  +    start_link/2,
       get/1,
  -    set/2
  +    set/2,
  +    destroy/1
   ]).
   
   %% ------------------------------------------------------------------
  
positive.code: %% ------------------------------------------------------------------
  
  start_link() ->
      gen_server:start_link(?MODULE, [], []).
  
  get(Context) ->
      gen_server:call(Context, output).
  
  set(Context, Text) ->
      gen_server:cast(Context, {output, Text}).
  
  %% ------------------------------------------------------------------
  %% gen_server Function Definitions
  %% ------------------------------------------------------------------
  
  init([]) ->
      {ok, #state{}}.
  
  handle_call(output, _From, #state{output=Output}=State) ->
      {reply, Output, State#state{output = <<>>}};
  
negative.code: 
  -include("ephp.hrl").
  
  -type flush_handler() ::
      stdout | {io, io:device()} | function().
  
  -record(state, {
      output = <<>> :: binary(),
      flush = true :: boolean(),
      flush_handler = stdout :: flush_handler()
  }).
  
  %% ------------------------------------------------------------------
  