anchor.diff:  %% ===================================================================
   %% Internal functions
   %% ===================================================================
  +
  +send_owner( State, Event, Msg ) ->
  +    send_owner( State, Event, Msg, State#state.id ).
  +
  +send_owner( State, Event, Msg, Id ) ->
  +    State#state.owner ! { Event, Msg, Id }.
   
   -spec start_driver( string() | binary(), [ string() | binary() ] ) ->
       { ok, port() } | { error, term() }.
  
positive.code:     case start_driver( Driver, Params ) of
          { ok, Port } ->
              Info = [ erlang:port_info( Port, os_pid ) ],
              State#state.owner ! { start, { ok, Info }, State#state.id },
              { noreply, State#state{ port = Port } };
          Error ->
              State#state.owner ! { start, Error, State#state.id },
              { stop, Error , State }
      end;
  
  
negative.code: 
  handle_stop( Reason, State ) ->
      ok = stop_driver( State#state.port ),
      send_owner( State, stop, Reason ).
  
  -spec stop_driver( port() ) -> ok.
  stop_driver( Port ) ->
  