anchor.diff:  %% Callbacks
   %% ====================================================================
   
  --spec start(model(),pos_integer()) -> agent().
  +-spec start(model(), pos_integer()) -> agent().
   start(Model, Time) ->
       start(Model, Time, []).
   
   
  --spec start(model(),pos_integer(),[tuple()]) -> agent().
  +-spec start(model(), pos_integer(), [tuple()]) -> agent().
   start(Model, Time, SimParamOptions) ->
       start(Model, Time, SimParamOptions, []).
   
   
  --spec start(model(),pos_integer(),[tuple()],[tuple()]) -> agent().
  +-spec start(model(), pos_integer(), [tuple()], [tuple()]) -> agent().
   start(Model, Time, SimParamOptions, ConfigOptions) ->
  -    SimParamsUpdated = mas_misc_util:overwrite_options(SimParamOptions, load_params()),
  -    Agents = mas:start(?MODULE, Model, Time, proplist_to_record(SimParamsUpdated), ConfigOptions),
  +    SimParamsUpdated = mas_misc_util:overwrite_options(SimParamOptions,
  +                                                       load_params()),
  +    Agents = mas:start(?MODULE, Model, Time,
  +                       proplist_to_record(SimParamsUpdated),
  +                       ConfigOptions),
       extract_best(Agents).
   
   
  
positive.code:                           Fitness
                    end,
      Fitness_reduce = fun(F1, F2) ->
                               lists:max([F1,F2])
                       end,
      [{fitness, Fitness_map, Fitness_reduce, -999999}].
  
  
negative.code:     [reproduction, death, fight].
  
  
  -spec meeting_function({agent_behaviour(), [agent()]}, sim_params()) ->
                                [agent()].
  meeting_function({death, _}, _SP) ->
      [];
  
  