anchor.diff:      end.
   
   
  --spec shortest_zip(list(),list()) -> list().
  -shortest_zip(L1,L2) ->
  -    shortest_zip(L1,L2,[]).
  +-spec shortest_zip(list(), list()) -> list().
  +shortest_zip(L1, L2) ->
  +    shortest_zip(L1, L2, []).
   
   
   %% @doc Returns the index of a given element in a given list
  --spec find(term(),[term()]) -> integer() | 'notFound'.
  -find(Elem,List) ->
  -    find(Elem,List,1).
  +-spec find(term(), [term()]) -> integer() | 'notFound'.
  +find(Elem, List) ->
  +    find(Elem, List, 1).
   
   
   %% @doc This function is use case dependent and deprecated
  
positive.code:     islandEmpty;
  
  result(Agents) ->
      lists:max([ Fitness || {_ ,Fitness, _} <- Agents]).
  
  
  -spec seed_random() -> {integer(),integer(),integer()}.
  seed_random() ->
      {_, B, C} = erlang:now(),
      Hash = erlang:phash2(node()),
  
negative.code: %% Internal functions
  %% ====================================================================
  
  -spec find(term(), [term()], integer()) -> integer() | 'notFound'.
  find(Elem, [Elem | _], Inc) ->
      Inc;
  
  find(_, [], _) ->
      notFound;
  
  find(Elem, [_ | T], Inc) ->
      find(Elem, T, Inc + 1).
  
  
  -spec map_index(term(), integer(), [term()], fun(), [term()]) -> [term()].
  map_index(_, _, [], _, _) ->
      erlang:error(wrongIndex);
  
  map_index(Elem, 1, [H | T], F, Acc) ->
      lists:reverse(Acc, [F(Elem, H) | T]);
  
  map_index(Elem, Index, [H | T], F, Acc) ->
      map_index(Elem, Index - 1, T, F, [H | Acc]).
  
  
  -spec shortest_zip(list(), list(), list()) -> list().
  shortest_zip([], _L2, Acc) ->
      Acc;
  
  shortest_zip(_L1, [], Acc) ->
      Acc;
  
  shortest_zip([H1 | T1], [H2 | T2], Acc) ->
      shortest_zip(T1, T2, [{H1, H2} | Acc]).
  