anchor.diff:  get_titles(Types) ->
       lists:map(
           fun(Type) ->
  -            get_title(list_to_atom(Type))
  +            get_title(Type)
           end,
           Types
       ).
  
positive.code:     [_ | Lines] = read_lines(FilePath, FileDescriptor),
  
      lists:foldl(
          fun(Line, {Map0, Types0, Times0}) ->
              %% Parse log line
              [Type, Time, Bytes] = string:tokens(Line, ",\n"),
              {TimeI, _} = string:to_integer(Time),
              {BytesF, _} = string:to_float(Bytes),
  
              %% Get dictionary that maps time to logs of this file
              TimeToLogs0 = case orddict:find(FilePath, Map0) of
                  {ok, Value} ->
                      Value;
                  error ->
                      orddict:new()
              end,
  
              %% Update dictionary `TimeToLogs0` adding new pair log to
              %% the list of logs mapped to time `TimeI`
              TimeToLogs1 = orddict:append(TimeI, {BytesF, Type}, TimeToLogs0),
  
              %% Update dictionary `Map0` with new value `TimeToLogs1`
              Map1 = orddict:store(FilePath, TimeToLogs1, Map0),
              %% Update set of types
              Types1 = ordsets:add_element(Type, Types0),
              %% Update set of times
              Times1 = ordsets:add_element(TimeI, Times0),
  
              {Map1, Types1, Times1}
          end,
          {Map, ordsets:new(), ordsets:new()},
          Lines
      ).
  
  
negative.code:     filelib:ensure_dir(PlotDir),
  
      generate_per_node_plot(Map1, PlotDir),
      generate_average_plot(Types1, Times, Map1, ConvergenceTime, PlotDir),
      ok.
  
  %% @private
  