anchor.diff:  make_request_url(Url = "http://" ++ _, _Params)  -> Url;
   make_request_url(Url = "https://" ++ _, _Params) -> Url;
   make_request_url(Path0, Params) ->
  -  Protocol = proplists:get_value(protocol, Params, "http:"),
  -  DefaultPort = case Protocol of
  -                  "https:" -> 443;
  -                  "http:"  -> 80
  -                end,
  +  Protocol = proplists:get_value(protocol, Params),
  +  Hostname = proplists:get_value(hostname, Params),
  +  Port = integer_to_list(proplists:get_value(port, Params)),
     Path = unicode:characters_to_list(proplists:get_value(path, Params, Path0)),
     string:join([ Protocol
                 , "//"
  -              , proplists:get_value(hostname, Params, "localhost")
  +              , Hostname
                 , ":"
  -              , integer_to_list(proplists:get_value(port, Params, DefaultPort))
  +              , Port
                 , Path
                 ], "").
   
  
positive.code: %% Take default params, and also merge in optional params from Params, to return
  %% a proplist of params.
  make_params(ScenarioParams) ->
    Protocol = proplists:get_value(protocol, ScenarioParams, "http:"),
    Port = case Protocol of
             "http:"  -> 80;
             "https:" -> 443
           end,
    DefaultParams = [ {hostname, "localhost"}
                    , {protocol, Protocol}
  
negative.code: -include_lib("katt/include/blueprint_types.hrl").
  
  %%%_* Defines ==========================================================
  -define(VAR_PREFIX,               "katt_").
  -define(RECALL_BEGIN_TAG,         "{{<").
  -define(RECALL_END_TAG,           "}}").
  -define(STORE_BEGIN_TAG,          "{{>").
  -define(STORE_END_TAG,            "}}").
  -define(MATCH_ANY,                "{{_}}").
  -define(DEFAULT_SCENARIO_TIMEOUT, 120000).
  -define(DEFAULT_REQUEST_TIMEOUT,  20000).
  -define(DEFAULT_PROTOCOL,         "http:").
  -define(DEFAULT_HOSTNAME,         "127.0.0.1").
  -define(DEFAULT_PORT_HTTP,        80).
  -define(DEFAULT_PORT_HTTPS,       443).
  
  -type katt_run_result() :: { nonempty_string()    % scenario name
                             , [ { string()         % operation description
  