anchor.diff:           fprob, 5, StepSize, 0, Options),
       ok.
   
  --spec trivial_scale(N::pos_integer(), EvalRepeats::pos_integer(), P1E::p1e()) -> ok.
  -trivial_scale(N, EvalRepeats, P1E) ->
  -    {Dir, FileName} = default_dir_and_name(trivial),
  -    trivial_scale(Dir, FileName, N, EvalRepeats, P1E).
  -
   -spec trivial_scale(DestDir::string(), FileName::string(), N::pos_integer(),
                       EvalRepeats::pos_integer(), P1E::p1e()) -> ok.
   trivial_scale(Dir, FileName, N, EvalRepeats, P1E) ->
  
positive.code: 
  % for external scripts
  -export([% trivial
           trivial/3, trivial/6,
           trivial_ddists_fdists/3, trivial_ddists_fdists/6,
           trivial_scale/3, trivial_scale/5,
           % shash
           shash/3, shash/6,
           shash_ddists_fdists/3, shash_ddists_fdists/6,
           shash_scale/3, shash_scale/5,
           % bloom
           bloom/3, bloom/6,
           bloom_ddists_fdists/3, bloom_ddists_fdists/6,
           bloom_scale/3, bloom_scale/5,
           % merkle
           merkle/5, merkle/8,
           merkle_ddists_fdists/5, merkle_ddists_fdists/8,
           merkle_scale/5, merkle_scale/7,
           merkle_custom/11,
           % art
           art/5, art/7,
           art_scale/5, art_scale/7,
           % system sync
           system/3, system/4]).
  
  % for debugging:
  -export([ring_build/0, get_node_interval/1,
  
negative.code: %% BLOOM EVAL
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec bloom(DestDir::string(), FileName::string(), N::pos_integer(),
              EvalRepeats::pos_integer(), P1E::p1e(),
              StepSize::step_size() | power) -> ok.
  bloom(Dir, FileName, N, EvalRepeats, P1E, StepSize) ->
      bloom(Dir, FileName, N, EvalRepeats, P1E, [random], [random], StepSize).
  
  -spec bloom_ddists_fdists(DestDir::string(), FileName::string(), N::pos_integer(),
                            EvalRepeats::pos_integer(), P1E::p1e(),
  