anchor.diff:  
   -spec(start_link/3 :: (any(), list(), list()) -> {ok, pid()}).
   start_link(Module, Args, Options) ->
  -    
       Pid = spawn_link(?MODULE, start, [Module, Args, Options, self()]),
       receive
           {started, Pid} ->
  
positive.code: 
  -export([start_link/2, start_link/3, start/4, start/2, start/3,wait_for_ok/0]).
  
  %================================================================================
  % behaviour definition
  %================================================================================
  
negative.code: % API
  %================================================================================
  
  kill(Pid) ->
      Pid ! {'$gen_component', kill}.
  
  sleep(Pid, Time) ->
      Pid ! {'$gen_component', time, Time}.
  
  %================================================================================
  % generic framework
  