anchor.diff:  -define(WORKER_OVERRUN_TIME, 3000).
   -define(MIN_UNREGISTER_TEMPO, 20000).
   
  -
  --type user_res() :: escalus_users:resource_spec().
  --type config() :: escalus:config().
  -
   %% @doc
   %% Run story with fresh users (non-breaking API).
   %% The genererated fresh usernames will consist of the predefined {username, U} value
   %% prepended to a unique, per-story suffix.
   %% {username, <<"alice">>} -> {username, <<"alice32.632506">>}
  --spec story(config(), [user_res()], fun()) -> any().
  +-spec story(escalus:config(), [escalus_users:resource_spec()], fun()) -> any().
   story(Config, UserSpecs, StoryFun) ->
       escalus:story(create_users(Config, UserSpecs), UserSpecs, StoryFun).
   
   %% @doc
   %% See escalus_story:story/3 for the difference between
   %% story/3 and story_with_client_list/3.
  --spec story_with_client_list(config(), [user_res()], fun()) -> any().
  +-spec story_with_client_list(escalus:config(), [escalus_users:resource_spec()], fun()) -> any().
   story_with_client_list(Config, UserSpecs, StoryFun) ->
       escalus_story:story_with_client_list(create_users(Config, UserSpecs), UserSpecs, StoryFun).
   
  
positive.code:     freshen_spec(Config, {UserName, 1}).
  
  
  -spec freshen_specs(config(), [user_res()], binary()) -> [escalus_users:named_user()].
  freshen_specs(Config, UserSpecs, Suffix) ->
      FreshSpecs = fresh_specs(Config, UserSpecs, Suffix),
      case length(FreshSpecs) == length(UserSpecs) of
  
negative.code: %% Creates a fresh spec without creating XMPP users on a server.
  %% It is useful when testing some lower level parts of the protocol
  %% i.e. some stream features. It is side-effect free.
  -spec freshen_specs(escalus:config(), [escalus_users:resource_spec()]) -> [escalus_users:user_spec()].
  freshen_specs(Config, UserSpecs) ->
      Suffix = fresh_suffix(),
      lists:map(fun({UserName, Spec}) -> Spec end,
                freshen_specs(Config, UserSpecs, Suffix)).
  
  -spec freshen_spec(escalus:config(), escalus_users:user_name() | escalus_users:resource_spec()) -> escalus_users:user_spec().
  freshen_spec(Config, {UserName, Res} = UserSpec) ->
      [FreshSpec] = freshen_specs(Config, [{UserName, 1}]),
      FreshSpec;
  