anchor.diff:      validate(Form, ValidatorSpecs, []).
   
   validate(Form, [{Key, Validators}|RemSpecs], Issues) ->
  -    Value = proplists:get_value(Key, Form, <<>>),
  +    Value = proplists:get_value(Key, Form),
       IsRequired = lists:member(required, Validators),
       case {Value, IsRequired}  of
   	{undefined, true} ->
  
positive.code:     false;
  is_url(PossibleUrl) ->
      match =:= re:run(PossibleUrl,
  		     <<"\\b((?:https?://|www\\d{0,3}[.]|[a-z0-9.\\-]"
  		       "+[.][a-z]{2,4}/)(?:[^\\s()<>]+|\\(([^\\s()<>]"
  		       "+|(\\([^\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]"
  		       "+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};"
  		       ":'\".,<\>?«»“”‘’]))">>, [{capture, none}]).
  
  %%-----------------------------------------------------------
  %% Internal Methods
  
negative.code: %% API Methods
  %%-----------------------------------------------------------
  
  %% TODO: get rid of duplication
  -spec http_body_to_form(bitstring() | string()) -> form().
  http_body_to_form(Body) when is_binary(Body) ->
      DecodedBody = mochiweb_util:unquote(Body),
      KVPs = re:split(DecodedBody, <<"&">>, [trim]),
      lists:map(fun(KVP) ->
  		      case re:split(KVP, <<"=">>, [trim]) of
  			  [Key, Value] -> {Key, Value};
  			  [Key] -> {Key, no_val}
  		      end
  	      end, KVPs);
  http_body_to_form(Body) when is_list(Body) ->
      DecodedBody = mochiweb_util:unquote(Body),
      KVPs = re:split(DecodedBody, <<"&">>, [trim]),
      lists:map(fun(KVP) ->
  		      case re:split(KVP, <<"=">>, [trim]) of
  			  [Key, Value] -> {Key, Value};
  