anchor.diff:      <<_Payload:Len/binary, NextBin/binary>> = Bin,
       on_recv(NextBin, State).
   
  +handle_settings(_Bin, Len, true, State, NextBin) when Len =:= 0 ->
  +    on_recv(NextBin, State);
  +handle_settings(_Bin, _Len, true, State, _NextBin) ->
  +    connection_error(State, ?PROTOCOL_ERROR);
  +handle_settings(Bin, _Len, false, State, NextBin) ->
  +    parse_settings(Bin, State, NextBin).
  +
   strip_padding(Bin, Len, Flag) when Flag band ?FLAG_PADDED =:= 0 ->
       <<Payload:Len/binary, Rest/binary>> = Bin,
       {Payload, Rest};
  
positive.code:                                    Stream#stream{remotewin=NewWin}
                             end, Streams),
      parse_settings(Rest, State#state{initial_window_size=InitialWindowSize,
                                       streams=Streams2});
  parse_settings(<<_:16, _:32, Rest/binary>>, State) ->
      parse_settings(Rest, State);
  parse_settings(<<>>, State) ->
      send_settings_ack(State),
      State.
  
  start_request(StreamId, Headers, StreamState,
                State=#state{streams=Streams, pids=Pids}) ->
  
negative.code:     {noreply, State}.
  
  handle_cast({push, StreamId, Headers},
              State=#state{remote_enable_push=true,
                           last_sent_stream_id=LastStreamId}) ->
      case find_stream(StreamId, State) of
          error ->
              {noreply, State};
  