anchor.diff:  %% @private
   check_uri([$/ | _]) -> ok;
   check_uri(_) -> throw(missing_slash_uri).
  +
  +%% @private
  +enqueue_work_or_stop(FSM = at_rest, Event, From, State) ->
  +  enqueue_work_or_stop(FSM, Event, From, State, 0);
  +enqueue_work_or_stop(FSM, Event, From, State) ->
  +  enqueue_work_or_stop(FSM, Event, From, State, infinity).
  +
  +%% @private
  +enqueue_work_or_stop(FSM, Event, From, State, Timeout) ->
  +  case create_work(Event, From) of
  +    {ok, Work} ->
  +      NewState = append_work(Work, State),
  +      {next_state, FSM, NewState, Timeout};
  +    not_work ->
  +      {stop, {unexpected, Event}, State}
  +  end.
  +
  +%% @private
  +create_work({M = get_async, {HandleEvent, AsyncMode}, Args}, From) ->
  +  {ok, {M, {HandleEvent, AsyncMode}, Args, From}};
  +create_work({M, Args}, From)
  +  when M == get orelse M == post
  +       orelse M == delete orelse M == head
  +       orelse M == options orelse M == patch
  +       orelse M == put ->
  +  {ok, {M, Args, From}};
  +create_work(_, _) ->
  +  not_work.
  +
  +%% @private
  +get_work(State) ->
  +  PendingReqs = maps:get(pending_requests, State),
  +  case queue:is_empty(PendingReqs) of
  +    true ->
  +      no_work;
  +    false ->
  +      {{value, Work}, Rest} = queue:out(PendingReqs),
  +      NewState = State#{pending_requests => Rest},
  +      {ok, Work, NewState}
  +  end.
  +
  +%% @private
  +append_work(Work, State) ->
  +  PendingReqs = get_pending_reqs(State),
  +  NewPending = queue:in(Work, PendingReqs),
  +  maps:put(pending_requests, NewPending, State).
  +
  +%% @private
  +get_pending_reqs(State) ->
  +  maps:get(pending_requests, State).
  +
  
positive.code:         #{
              transport_opts => [],
              timeout => pos_integer() | infinity }.
  %% transport_opts are passed to Ranch's TCP transport, which is -itself- a thin layer over gen_tcp. <br/>
  %% timeout is passed to gun:await_up. Default if not specified is 5000 ms.
  
  %% @doc Starts the application and all the ones it depends on.
  
negative.code:     NewState = manage_chunk(IsFin, StreamRef, Data, State),
      case IsFin of
          fin ->
              {next_state, at_rest, NewState, 0};
          nofin ->
              {next_state, receive_chunk, NewState}
      end;
  receive_chunk({gun_error, _Pid, _StreamRef, _Reason}, State) ->
      {next_state, at_rest, State, 0}.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% Private
  