anchor.diff:  -define(EMAIL_MAX_LENGTH, 254).
   
   % URL encoding/decoding
  --export([url_encode/1, url_decode/1]).
  +-export([url_encode/1]).
   -export([last_url_part/1]).
  -
  -% Safe escaping
  --export([js_escape/1, html_encode/1]).
   
   % base64url encoding/decoding
   -export([base64url_encode/1, base64url_decode/1]).
   
   % Miscellaneous convenience functions
   -export([encode_http_parameters/1, append_url_parameters/2]).
  --export([fully_qualified_url/1, validate_email/1, normalize_email/1]).
  +-export([validate_email/1, normalize_email/1]).
   
   %%%===================================================================
   %%% API
  
positive.code:     end.
  
  
  %%--------------------------------------------------------------------
  %% @doc
  %% Converts the given URL to a fully qualified url, without leading www.
  %% @end
  %%--------------------------------------------------------------------
  -spec fully_qualified_url(binary()) -> binary().
  fully_qualified_url(Binary) ->
      case Binary of
          <<"https://www.", Rest/binary>> -> <<"https://", Rest/binary>>;
          <<"https://", _/binary>> -> Binary;
          <<"www.", Rest/binary>> -> <<"https://", Rest/binary>>;
          _ -> <<"https://", Binary/binary>>
      end.
  
  
  %%--------------------------------------------------------------------
  %% @doc
  
negative.code: 
  
  %%--------------------------------------------------------------------
  %% @doc Splits an URL on '/' and returns the last element.
  %% @end
  %%--------------------------------------------------------------------
  -spec last_url_part(URL :: binary()) -> binary().
  last_url_part(URL) ->
      lists:last(binary:split(URL, <<"/">>, [global, trim_all])).
  
  
  %%--------------------------------------------------------------------
  