anchor.diff:  %% @spec return(Value::Type) -> domain(Type)
   -spec return(Value::Type) -> domain(Type).
   return(Val) -> 
  -    #?DOM{kind=#return{value=Val},
  -	 pick  = fun(#?DOM{kind=#return{value=V}}=Dom,_) -> {Dom,V} end,
  -	 shrink  = fun(Dom,V) -> {Dom,V} end
  -	}.
  +    domain(return,
  +	   fun(Self,_) -> {Self,Val} end,
  +	   fun(Self,Val) -> {Self,Val} end).
  +%    #?DOM{kind=#return{value=Val},
  +%	 pick  = fun(#?DOM{kind=#return{value=V}}=Dom,_) -> {Dom,V} end,
  +%	 shrink  = fun(Dom,V) -> {Dom,V} end
  +%	}.
   
   %% @doc Support function for the ?SIZED macro.
   %% @spec sized( fun((integer()) -> domain(T)) ) -> domain(T)
  
positive.code:     %%
      RemIdx = random:uniform(Len),    
      Elm = lists:nth(RemIdx, List),
  
      NextList = 
  	case shrink(ElemDom,Elm) of
  	    {_,Elm} -> 
  		List;
  	    {_,SElm} ->
  		lists:sublist(List,RemIdx-1) ++ [SElm] ++ lists:sublist(List,RemIdx+1,Len)
  	end,
  
      shrink_list_members_generic(ElemDom, NextList, Len, HowMany-1).
  
      
  
  
  
negative.code: -spec shrink_list_members_generic(domain(T), [T], non_neg_integer(), integer()) -> [T].
  shrink_list_members_generic(_, List, _, 0) -> List;
  shrink_list_members_generic(#?DOM{}=ElemDom, List, Len, HowMany) ->
      NextList = shrink_list_N(ElemDom,List,Len, ?SHRINK_LOOPS),
      shrink_list_members_generic(ElemDom, NextList, Len, HowMany-1).
  
  shrink_list_N(_, List, _, 0) -> List;
  shrink_list_N(#?DOM{}=ElemDom, List, Len, N) ->
      ?assert(Len == length(List)),
  
      %%
  