anchor.diff:  recv_stmt_fields(0, #prepare{}=P, #handle{}=H) -> % < loop
       {ok, P, H};
   recv_stmt_fields(U, #prepare{field_count=U,fields=L}=P, #handle{caps=C}=H) ->
  -    case recv_until_eof(recv_fields_func(C), [], [], C, H) of
  +    case recv_until_eof(recv_fields_func(C), [], [], H) of
           {ok, [#result{status=N}=R,L,Handle]} ->
               X = myer_protocol_binary:prepare_fields(L), % force
               {ok, [N,P#prepare{fields = X, result = R},Handle]}
       end.
   
  -recv_stmt_reset(#prepare{}=P, Caps, #handle{}=H) ->
  -    case recv_result(#result{}, Caps, H) of
  +recv_stmt_reset(#prepare{}=P, #handle{}=H) ->
  +    case recv_result(H) of
           {ok, [#result{}=R,Handle]} ->
               {ok, [P#prepare{result = R, execute = 0},Handle]}
       end.
   
  -recv_stmt_result(#prepare{execute=E}=P, Caps, #handle{}=H) ->
  -    case recv_result(#result{}, Caps, H) of
  +recv_stmt_result(#prepare{execute=E}=P, #handle{}=H) ->
  +    case recv_result(H) of
           {ok, [#result{}=R,Handle]} ->
               {ok, [0,P#prepare{result = R, execute = E+1},Handle]}
       end.
  
positive.code: stat_pre(#handle{}=H) ->
      {ok, [<<?COM_STATISTICS>>,reset(H)]}.
  
  stat_post(#handle{caps=C}=H) ->
      case recv_binary(1, C, H) of
          {ok, <<255>>, Handle} ->
              recv_reason(#reason{}, C, Handle);
          {ok, Byte, Handle} ->
              recv_remains(Byte, C, Handle)
      end.
  
  %% -- internal: refresh --
  
negative.code: %% -----------------------------------------------------------------------------
  %% << sql/sql_prepare.cc : send_prep_stmt/2
  %% -----------------------------------------------------------------------------
  recv_prepare(Handle) ->
      recv_prepare(#prepare{
                      flags = ?CURSOR_TYPE_NO_CURSOR,
                      prefetch_rows = 1,
                      execute = 0
                     },
                   myer_handle:caps(Handle), Handle).
  
  recv_prepare(#prepare{stmt_id=undefined}=P, Caps, Handle) ->
      {ok, U, H} = recv_unsigned(4, Handle),
      recv_prepare(P#prepare{stmt_id=U}, Caps, H);
  recv_prepare(#prepare{field_count=undefined}=P, Caps, Handle) ->
      {ok, U, H} = recv_unsigned(2, Handle),
      recv_prepare(P#prepare{field_count=U}, Caps, H);
  recv_prepare(#prepare{param_count=undefined}=P, Caps, Handle) ->
      {ok, U, H} = recv_unsigned(2, Handle),
      recv_prepare(P#prepare{param_count=U}, Caps, H);
  recv_prepare(#prepare{reserved=undefined}=P, Caps, Handle) ->
      {ok, B, H} = recv_binary(1, Handle), % <<0>>
      recv_prepare(P#prepare{reserved=B}, Caps, H);
  recv_prepare(#prepare{warning_count=undefined}=P, Caps, Handle) -> % < 5.0, undefined?
      {ok, U, H} = recv_unsigned(2, Handle),
      recv_prepare(P#prepare{warning_count=U}, Caps, H);
  recv_prepare(#prepare{}=P, _Caps, Handle) ->
      {ok, [P,Handle]}.
  