anchor.diff:  %%------------------------------------------------------------------------------
   %% @private
   %%------------------------------------------------------------------------------
  -now_millis() ->
  -    erlang:system_time() div 1000000.
  +now_millis() -> erlang:system_time() div 1000000.
   
   %%------------------------------------------------------------------------------
   %% @private
  
positive.code: %% @private
  %%------------------------------------------------------------------------------
  -spec set_req_start_time(#state{}) -> #state{}.
  set_req_start_time(State) ->
      State#state{req_start_time = now_millis()}.
  
  %%------------------------------------------------------------------------------
  %% @private
  
negative.code: %%------------------------------------------------------------------------------
  maybe_shutdown(#state{port = no_port}) ->
      ok;
  maybe_shutdown(#state{port = Port}) ->
      try erlang:port_info(Port, os_pid) of
          {os_pid, Process} ->
              Cmd = io_lib:format("kill -s KILL ~w", [Process]),
              os:cmd(lists:flatten(Cmd)),
              shutdown_loop(Port);
          _ ->
              ok
      catch
          _:_ -> ok
      end.
  
  %%------------------------------------------------------------------------------
  %% @private
  %%------------------------------------------------------------------------------
  shutdown_loop(Port) ->
      receive
          {Port, {exit_status, _}} ->
              ok;
          {Port, closed} ->
              shutdown_loop(Port);
          {'EXIT', _Port, _Reason} ->
              shutdown_loop(Port);
          {Port, {data, _Data}} ->
              shutdown_loop(Port)
      after 10000 ->
              ok
      end.
  