anchor.diff:           ?JUMPCONSTTAIL, ?JUMPCONSTHEAD, ?JUMPELEMLEN, ?JUMPTOTALLEN),
       {ASL, ASR} = lists:split(?RINGLEN - P, AS),
       {Alg, {ASL, lists:reverse(ASR)}}.
  -
  --spec exs1024_jump(exs1024_state(), list(non_neg_integer()),
  -         list(non_neg_integer()), non_neg_integer(),
  -         non_neg_integer(), non_neg_integer()) -> list(non_neg_integer()).
   
   exs1024_jump(_, AS, _, _, _, 0) ->
       AS;
  
positive.code: -define(JUMPTOTALLEN, 1024).
  -define(RINGLEN, 16).
  
  -spec exs1024_jump({alg(), exs1024_state()}) -> {alg(), exs1024_state()}.
  
  exs1024_jump({Alg, {L, RL}}) ->
      P = length(RL),
  
negative.code: -define(JUMPELEMLEN, 58).
  
  -dialyzer({no_improper_lists, exsplus_jump/1}).
  -spec exsplus_jump(state()) -> state().
  exsplus_jump({Alg, S}) ->
      {S1, AS1} = exsplus_jump(S, [0|0], ?JUMPCONST1, ?JUMPELEMLEN),
      {_,  AS2} = exsplus_jump(S1, AS1,  ?JUMPCONST2, ?JUMPELEMLEN),
      {Alg, AS2}.
  
  -dialyzer({no_improper_lists, exsplus_jump/4}).
  exsplus_jump(S, AS, _, 0) ->
      {S, AS};
  exsplus_jump(S, [AS0|AS1], J, N) ->
  