anchor.diff:  	activate ->
   	    [BaseCs];
   	create ->
  -	    {BaseCs2, _, _} = set_frag_nodes(NR, ND, NDO, BaseCs, Dist, []),
  +	    {BaseCs2, _, _} = set_frag_nodes(NR, ND, NDO, NExt, BaseCs, Dist, []),
   	    [BaseCs2]
       end.
       
  -set_frag_nodes(NR, ND, NDO, Cs, [Head | Tail], Acc) when NR > 0 ->
  +set_frag_nodes(NR, ND, NDO, NExt, Cs, [Head | Tail], Acc) when NR > 0 ->
       Pos = #cstruct.ram_copies,
       {Cs2, Head2} = set_frag_node(Cs, Pos, Head),
  -    set_frag_nodes(NR - 1, ND, NDO, Cs2, Tail, [Head2 | Acc]); 
  -set_frag_nodes(NR, ND, NDO, Cs, [Head | Tail], Acc) when ND > 0 ->
  +    set_frag_nodes(NR - 1, ND, NDO, NExt, Cs2, Tail, [Head2 | Acc]);
  +set_frag_nodes(NR, ND, NDO, NExt, Cs, [Head | Tail], Acc) when ND > 0 ->
       Pos = #cstruct.disc_copies,
       {Cs2, Head2} = set_frag_node(Cs, Pos, Head),
  -    set_frag_nodes(NR, ND - 1, NDO, Cs2, Tail, [Head2 | Acc]); 
  -set_frag_nodes(NR, ND, NDO, Cs, [Head | Tail], Acc) when NDO > 0 ->
  +    set_frag_nodes(NR, ND - 1, NDO, NExt, Cs2, Tail, [Head2 | Acc]);
  +set_frag_nodes(NR, ND, NDO, NExt, Cs, [Head | Tail], Acc) when NDO > 0 ->
       Pos = #cstruct.disc_only_copies,
       {Cs2, Head2} = set_frag_node(Cs, Pos, Head),
  -    set_frag_nodes(NR, ND, NDO - 1, Cs2, Tail, [Head2 | Acc]); 
  -set_frag_nodes(0, 0, 0, Cs, RestDist, ModDist) ->
  +    set_frag_nodes(NR, ND, NDO - 1, NExt, Cs2, Tail, [Head2 | Acc]);
  +set_frag_nodes(NR, ND, NDO, NExt, Cs, [Head | Tail], Acc) when NExt > 0 ->
  +    Pos = #cstruct.external_copies,
  +    {Cs2, Head2} = set_frag_node(Cs, Pos, Head),
  +    set_frag_nodes(NR, ND, NDO, NExt - 1, Cs2, Tail, [Head2 | Acc]);
  +set_frag_nodes(0, 0, 0, 0, Cs, RestDist, ModDist) ->
       {Cs, ModDist, RestDist};
  -set_frag_nodes(_, _, _, Cs, [], _) ->
  +set_frag_nodes(_, _, _, _, Cs, [], _) ->
       mnesia:abort({combine_error,  Cs#cstruct.name, "Too few nodes in node_pool"}).
   
   set_frag_node(Cs, Pos, Head) ->
  
positive.code:     %% Add empty fragments
      CommonProps = [{base_table, Tab}],
      Cs2 = Cs#cstruct{frag_properties = lists:sort(CommonProps)},
      expand_frag_cstructs(N, NR, ND, NDO, Cs2, Pool, Pool, FH, Mode).
  
  verify_n_fragments(N, Cs, Mode) when is_integer(N), N >= 1 ->
      case Mode of
  	create ->
  	    Cs#cstruct{ram_copies = [],
  		       disc_copies = [],
  		       disc_only_copies = []};
  	activate  ->
  	    Reason = {combine_error, Cs#cstruct.name, {n_fragments, N}},
  	    mnesia_schema:verify(1, N, Reason),
  
negative.code:     DefaultNR = length(val({ForeignTab, ram_copies})), 
      DefaultND = length(val({ForeignTab, disc_copies})), 
      DefaultNDO = length(val({ForeignTab, disc_only_copies})),
      DefaultNExt = length(val({ForeignTab, external_copies})),
      {Key, N, Pool, DefaultNR, DefaultND, DefaultNDO, DefaultNExt};
  pick_props(Tab, Cs, undefined) ->
      Props = Cs#cstruct.frag_properties,
      DefaultN = 1,
  