anchor.diff:  	to_lower("Ś"++T, Acc) -> to_lower(T, [155,197|Acc]);
   	to_lower("Ź"++T, Acc) -> to_lower(T, [186,197|Acc]);
   	to_lower("Ż"++T, Acc) -> to_lower(T, [188,197|Acc]);
  +    % Turkish support
  +	to_lower("Ş"++T, Acc) -> to_lower(T, [159,197|Acc]);
  +	to_lower("Ğ"++T, Acc) -> to_lower(T, [159,196|Acc]);
  +	to_lower("İ"++T, Acc) -> to_lower(T, [177,196|Acc]);
   	% Other characters are taken as-is
   	to_lower([H|T], Acc) -> to_lower(T, [H|Acc]).
   
  
positive.code: to_name("ź"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
  to_name("Ż"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
  to_name("ż"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
  % Other sequences of characters are mapped to $_
  to_name([_C|T], [$_|_] = Acc, I) ->
      to_name(T, Acc, I+1);
  
negative.code: 	escape_ical(<<$;, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, $\\, $;>>, N+2);
  	escape_ical(<<$\\, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, $\\, $\\>>, N+2);
  	escape_ical(<<C, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, C>>, N+1).
  
  
  
  test() ->
      A = "üçgen",
      A = to_lower(to_upper(A)),
      "ucgen" = to_name(A),
      ok.
  