anchor.diff:      gen_server:start({local, ?SERVER}, ?MODULE, [], []).
   
   stop() ->
  -    gen_server:call(?SERVER, stop).
  +    gen_server:call(?SERVER, stop, infinity).
   
   load_report() -> load_report(data, report()).
   
   load_report(file, File)   -> load_report(data, from_file(File));
   load_report(data, Report) ->
  -    start(), gen_server:call(?SERVER, {load_report, Report}).
  +    start(), gen_server:call(?SERVER, {load_report, Report}, infinity).
   
   report() -> [
   	{init_arguments,    init:get_arguments()},
  
positive.code: -behaviour(gen_server).
  
  %% API
  -export([
  	report/0,
  	from_file/1,
  	to_file/1
      ]).
  -export([
  	start/0, stop/0,
  	load_report/0, load_report/2,
  	applications/0, applications/1,
  	application/1, application/2,
  	environment/0, environment/1,
  	module/1, module/2,
  	modules/1,
  	sanity_check/0
      ]).
  
  %% gen_server callbacks
  -export([
  	init/1,
  	handle_call/3,
  	handle_cast/2,
  	handle_info/2,
  	terminate/2,
  	code_change/3
      ]).
  
  -define(SERVER, ?MODULE).
  
  
negative.code: 
  applications() -> applications([]).
  applications(Opts) when is_list(Opts) ->
      gen_server:call(?SERVER, {applications, Opts}, infinity).
  
  application(App) when is_atom(App) -> application(App, []).
  application(App, Opts) when is_atom(App), is_list(Opts) ->
      gen_server:call(?SERVER, {application, App, Opts}, infinity).
  
  environment() -> environment([]).
  environment(Opts) when is_list(Opts) ->
      gen_server:call(?SERVER, {environment, Opts}, infinity).
  
  module(M) when is_atom(M) -> module(M, []).
  module(M, Opts) when is_atom(M), is_list(Opts) ->
      gen_server:call(?SERVER, {module, M, Opts}, infinity).
  
  modules(Opt) when is_atom(Opt) ->
      gen_server:call(?SERVER, {modules, Opt}, infinity).
  
  
  -spec sanity_check() -> ok | {failed, Failures} when
  