anchor.diff:  
   next(Req, State, Next) when is_function(Next) ->
     Next(Req, State);
  -next(Req, State, StatusCode) when is_integer(StatusCode) andalso StatusCode >= 500 ->
  -  {ok, Req2} = cowboy_req:reply(StatusCode, Req),
  -  error_terminate(Req2, State);
   next(Req, State, StatusCode) when is_integer(StatusCode) ->
     respond(Req, State, StatusCode).
   
  
positive.code:       try
          Handler:Callback(Req, HandlerState)
        catch Class:Reason ->
          error_logger:error_msg(
            "** Cowboy handler ~p terminating in ~p/~p~n"
            "   for the reason ~p:~p~n** Handler state was ~p~n"
            "** Request was ~p~n** Stacktrace: ~p~n~n",
            [Handler, Callback, 2, Class, Reason, HandlerState,
              cowboy_req:to_list(Req), erlang:get_stacktrace()]),
          error_terminate(Req, State)
        end;
      false ->
        no_call
  
negative.code:       try
          Handler:Callback(Arg, Req, HandlerState)
        catch Class:Reason ->
          error_terminate(Req, State, Class, Reason, Callback, 3)
        end;
      false ->
        no_call
  