anchor.diff:       250227633882474729,171181147785250210,55437891969696407,
        241227318715885854,77323084015890802,
        1663590009695191,234064400749487599,222983191707424780,
  -     254956809144783896,203898972156838252].
  +     254956809144783896,203898972156838252];
  +reference_jump_val(_) ->
  +    not_implemented.
  +
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
  
positive.code:     ok.
  
  reference_jump_1(Alg) ->
      Refval  = reference_jump_val(Alg),
      Testval = gen_jump_1(Alg),
      case Refval =:= Testval of
          true -> ok;
          false ->
  	    io:format("Failed: ~p~n",[Alg]),
  	    io:format("Length ~p ~p~n",[length(Refval), length(Testval)]),
  	    io:format("Head ~p ~p~n",[hd(Refval), hd(Testval)]),
  	    io:format("Vals ~p ~p~n",[Refval, Testval]),
  	    exit(wrong_value)
      end.
  
  gen_jump_1(Algo) ->
      State =
          case Algo of
              exs64 -> %% Test exception of not_implemented notice
                  try rand:jump(rand:seed_s(exs64))
                  catch
                      error:not_implemented -> not_implemented
                  end;
              _ when Algo =:= exsplus; Algo =:= exsp; Algo =:= exrop ->
                  %% Printed with orig 'C' code and this seed
                  rand:seed_s({Algo, [12345678|12345678]});
              _ when Algo =:= exs1024; Algo =:= exs1024s ->
                  %% Printed with orig 'C' code and this seed
                  rand:seed_s({Algo, {lists:duplicate(16, 12345678), []}});
              _ -> % unimplemented
                  not_implemented
          end,
      case State of
          not_implemented -> [not_implemented];
          _ ->
              Max = range(State),
              gen_jump_1(?LOOP_JUMP, State, Max, [])
      end.
  
  gen_jump_1(N, State0, Max, Acc) when N > 0 ->
      {_, State1} = rand:uniform_s(Max, State0),
      {Random, State2} = rand:uniform_s(Max, rand:jump(State1)),
      case N rem (?LOOP_JUMP div 100) of
  	0 -> gen_jump_1(N-1, State2, Max, [Random|Acc]);
  	_ -> gen_jump_1(N-1, State2, Max, Acc)
      end;
  gen_jump_1(_, _, _, Acc) -> lists:reverse(Acc).
  
  
  %% Check if each algorithm generates the proper jump sequence
  %% with the internal state in the process dictionary.
  reference_jump_procdict(Config) when is_list(Config) ->
      [reference_jump_0(Alg) || Alg <- algs()],
      ok.
  
  reference_jump_0(Alg) ->
      Refval  = reference_jump_val(Alg),
      Testval = gen_jump_0(Alg),
      case Refval =:= Testval of
          true -> ok;
          false ->
  	    io:format("Failed: ~p~n",[Alg]),
  	    io:format("Length ~p ~p~n",[length(Refval), length(Testval)]),
  	    io:format("Head ~p ~p~n",[hd(Refval), hd(Testval)]),
  	    exit(wrong_value)
      end.
  
  gen_jump_0(Algo) ->
      Seed = case Algo of
  	       exs64 -> %% Test exception of not_implemented notice
                     try
                         _ = rand:seed(exs64),
                         rand:jump()
                     catch
                         error:not_implemented -> not_implemented
                     end;
  	       _ when Algo =:= exsplus; Algo =:= exsp; Algo =:= exrop ->
                     %% Printed with orig 'C' code and this seed
  		   rand:seed({Algo, [12345678|12345678]});
  	       _ when Algo =:= exs1024; Algo =:= exs1024s ->
                     %% Printed with orig 'C' code and this seed
  		   rand:seed({Algo, {lists:duplicate(16, 12345678), []}});
  	       _ -> % unimplemented
  		   not_implemented
  	   end,
      case Seed of
          not_implemented -> [not_implemented];
          _ ->
              Max = range(Seed),
              gen_jump_0(?LOOP_JUMP, Max, [])
      end.
  
  gen_jump_0(N, Max, Acc) when N > 0 ->
      _ = rand:uniform(Max),
      _ = rand:jump(),
      Random = rand:uniform(Max),
      case N rem (?LOOP_JUMP div 100) of
  	0 -> gen_jump_0(N-1, Max, [Random|Acc]);
  	_ -> gen_jump_0(N-1, Max, Acc)
      end;
  gen_jump_0(_, _, Acc) -> lists:reverse(Acc).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %%% Data
  
negative.code:     reference_jump_val(exsplus);
  reference_jump_val(exs1024s) ->
      reference_jump_val(exs1024);
  reference_jump_val(exs64) -> [error_not_implemented];
  reference_jump_val(exrop) ->
  %% #include <stdint.h>
  %% #include <stdio.h>
  