anchor.diff:        Node :: node(),
         Fun :: function(),
         Options :: [Option],
  -      Option :: link | monitor | {priority, Level}
  +      Option :: link | monitor
  +              | {priority, Level :: priority_level()}
                 | {fullsweep_after, Number :: non_neg_integer()}
                 | {min_heap_size, Size :: non_neg_integer()}
  -              | {min_bin_vheap_size, VSize :: non_neg_integer()},
  -      Level :: low | normal | high.
  +              | {min_bin_vheap_size, VSize :: non_neg_integer()}.
   spawn_opt(N, F, O) when N =:= erlang:node() ->
       spawn_opt(F, O);
   spawn_opt(N, F, O) when erlang:is_function(F) ->
  
positive.code:       Function :: atom(),
        Args :: [term()],
        Options :: [Option],
        Option :: link | monitor | {priority, Level}
                | {fullsweep_after, Number :: non_neg_integer()}
                | {min_heap_size, Size :: non_neg_integer()}
                | {min_bin_vheap_size, VSize :: non_neg_integer()},
        Level :: low | normal | high.
  spawn_opt(M, F, A, Opts) ->
      case catch erlang:spawn_opt({M,F,A,Opts}) of
  	{'EXIT',{Reason,_}} ->
  
negative.code: -spec spawn_opt(Fun, Options) -> pid() | {pid(), reference()} when
        Fun :: function(),
        Options :: [Option],
        Option :: link | monitor
                | {priority, Level :: priority_level()}
                | {fullsweep_after, Number :: non_neg_integer()}
                | {min_heap_size, Size :: non_neg_integer()}
                | {min_bin_vheap_size, VSize :: non_neg_integer()}.
  spawn_opt(F, O) when erlang:is_function(F) ->
      spawn_opt(erlang, apply, [F, []], O);
  spawn_opt({M,F}=MF, O) when erlang:is_atom(M), erlang:is_atom(F) ->
  