anchor.diff:  
   suffix_pattern_parse([], Pattern) ->
       Pattern;
  -suffix_pattern_parse([$*], [H | Pattern]) ->
  -    if
  -        H =:= $* ->
  -            Pattern;
  -        true ->
  -            ""
  -    end;
   suffix_pattern_parse([C | Prefix], [C | Pattern]) ->
       suffix_pattern_parse(Prefix, Pattern);
   suffix_pattern_parse([_ | _], _) ->
  
positive.code: 
  suffix_name_parse([], Name) ->
      Name;
  suffix_name_parse([$*, C | Prefix], [H | Name])
      when H =/= $* ->
      if
          C =:= $* ->
              erlang:exit(badarg);
          true ->
              suffix_name_parse(Prefix, suffix_name_pattern(Name, C))
  
negative.code:     "." = service_name_pattern_suffix("//", "//."),
      % Name
      "." = service_name_suffix("/*/", "/./."),
      "." = service_name_suffix("/*/", "/..../."),
      "" = service_name_suffix("*", "."),
      "" = service_name_suffix("*.", ".."),
      "." = service_name_suffix("*.", "..."),
      % Pattern
      "." = service_name_pattern_suffix("/*/", "/*/."),
      {'EXIT', badarg} = (catch service_name_suffix("/*/", "/*/.")),
  