anchor.diff:  
   %%
   %% return pid() of pipe processes
  --spec(a/1 :: (pipe()) -> pid() | undefined).
  --spec(b/1 :: (pipe()) -> pid() | undefined).
  +-spec a(pipe()) -> pid() | undefined.
  +-spec b(pipe()) -> pid() | undefined.
   
   a({pipe, {_, A}, _})
    when is_pid(A) -> 
  
positive.code: 
  %%
  %% terminate pipe or pipeline
  -spec(free/1 :: (pid() | [pid()]) -> ok).
  
  free(Pid)
   when is_pid(Pid) ->
  
negative.code: %% The caller process receives one of following messages:
  %%   {'DOWN', reference(), process, pid(), reason()}
  %%   {nodedown, node()}
  -spec monitor(pid()) -> monitor().
  -spec monitor(atom(), pid()) -> monitor().
  
  monitor(undefined) ->
     ok;
  