anchor.diff:  	spawn(fun () -> polling_start([]) end).
   
   polling_start(L) -> 
  +	dbg:tracer(port, dbg:trace_port(file, "/tmp/trace.dmp")),
  +	dbg:p(processes, [garbage_collection, monotonic_timestamp]),
  +
   	Procs = erlang:processes(),
   	Result = [poll_func(X) || X <- Procs],
   	receive
   		stop -> 
  -			Output = jsx:prettify(jsx:encode(L)),
  -			file:write_file("dump.json", Output)
  +			dbg:stop_clear(),
  +			dbg:trace_client(file, "/tmp/trace.dmp", {fun handler/2, L})
   	after 
   		?interval -> 
   			polling_start(Result++L)
  
positive.code: 	 {<<"heap_size">>, Hs},
  	 {<<"timestamp">>, erlang:convert_time_unit(Timestamp, native, millisecond) + erlang:time_offset(millisecond)}]
  	].
  
negative.code: 	ok.
  
  handler(end_of_trace, Return) ->
  	Sorted = lists:sort(fun ([_,_,_,_,{<<"timestamp">>,X}], [_,_,_,_,{<<"timestamp">>,Y}]) -> X < Y end, Return),
  	Output = jsx:prettify(jsx:encode(Sorted)),
  	file:write_file("dump.json", Output);
  handler(M, Return) ->
  	Return ++ parse(M).
  