anchor.diff:  
   ensure_protocol(<<>>) -> <<>>;
   ensure_protocol(<<"#", _/binary>> = Link) -> Link;
  +ensure_protocol(<<"?", _/binary>> = Link) -> Link;
   ensure_protocol(<<"/", _/binary>> = Link) -> Link;
   ensure_protocol(<<"://", _/binary>> = Link) -> <<"http", Link/binary>>;
  -ensure_protocol(<<"http://", _/binary>> = Link) -> Link;
  -ensure_protocol(<<"https://", _/binary>> = Link) -> Link;
  +ensure_protocol(<<"http:", _/binary>> = Link) -> Link;
  +ensure_protocol(<<"https:", _/binary>> = Link) -> Link;
   ensure_protocol(<<"data:", _/binary>> = Link) -> Link;
  +ensure_protocol(<<"urn:", _/binary>> = Link) -> Link;
   ensure_protocol(<<"ftp:", _/binary>> = Link) -> Link;
   ensure_protocol(<<"mailto:", Rest/binary>>) -> <<"mailto:", (z_string:trim(Rest))/binary>>;
   ensure_protocol(<<"www.", _/binary>> = Link) -> <<"https://", Link/binary>>;
   ensure_protocol(Link) when is_binary(Link) ->
  -    case binary:match(Link, <<"://">>) of
  +    case binary:match(Link, <<":">>) of
           nomatch ->
  +            % If the first path element looks like a domain name then
  +            % make it a https: link. Otherwise add a '/' in front.
               [First|_] = binary:split(Link, <<"/">>),
               case binary:match(First, <<".">>) of
                   nomatch -> <<$/, Link/binary>>;
  
positive.code: escape_link([]) ->
      <<>>;
  escape_link(Text) ->
      case re:run(Text, "\\b(([\\w-]+://?|www[.])[^\\s()<>]+(?:\\([\\w\\d]+\\)|([^[:punct:]\\s]|/)))", [{capture, first, index}, global]) of
          {match, Matches} ->
              Matches1 = [ hd(M) || M <- Matches ],
              nl2br(iolist_to_binary(make_links1(0, Matches1, z_convert:to_list(Text), [])));
  
negative.code: sanitize_type(<<"list">>, V, Options) -> sanitize_list(V, Options);
  sanitize_type(<<"int">>, V, _Options) -> sanitize_int(V);
  sanitize_type(<<"unsafe">>, V, _Options) -> V;
  sanitize_type(_, V, Options) when is_map(V) -> escape_props(V, Options);
  sanitize_type(_, V, _Options) -> escape_value(V).
  
  sanitize_list(L, Options) when is_list(L) ->
  