anchor.diff:  %%   Reason = connection_closed | connect_timeout | timeout
   %% @doc Sends trailers to an ongoing request when `{partial_upload,
   %% WindowSize}' is used and no `Content-Length' was specified. The default
  -%% timout `infinity' will be used. Note that after this the request is
  +%% timout `infinity' will be used. Plase note that after this the request is
   %% considered complete and the response will be read from the socket. 
   %% Would be the same as calling
   %% `send_trailers(UploadState, BodyPart, infinity)'.
  
positive.code: %%   ResponseBody = binary()
  %%   Reason = connection_closed | connect_timeout | timeout
  %% @doc Sends a request without a body.
  %% Would be the same as calling `request(URL, Method, Hdrs, [], Timeout)',
  %% that is {@link request/5} with an empty body (`Body' could also be `<<>>').
  %% @end
  %% @see request/9
  -spec request(string(), string() | atom(), headers(), pos_integer() |
  
negative.code: %% 
  %% `Method' is either a string, stating the HTTP method exactly as in the
  %% protocol, i.e: `"POST"' or `"GET"'. It could also be an atom, which is
  %% then coverted to an uppercase (if it isn't already) string.
  %%
  %% `Hdrs' is a list of headers to send. Mandatory headers such as
  %% `Host', `Content-Length' or `Transfer-Encoding' (for some requests) 
  %% are added automatically.
  %%
  %% `Body' is the entity to send in the request. Please don't include entity
  %% bodies where there shouldn't be any (such as for `GET').
  %%
  %% `Timeout' is the timeout for the request in milliseconds.
  %%
  %% `Options' is a list of options.
  %%
  %% Options:
  