anchor.diff:        variable ->
   	    V = refac_syntax:variable_name(Tree),
   	    P = refac_syntax:get_pos(Tree),
  -	    case VI of 
  -		[] -> Bound = [{V, P}],
  -		      Free = [],
  -		      Def = [P],
  -		      {ann_bindings(Tree, Env, Bound, Free, Def), Bound, Free};		
  -		_ ->
  -		    case lists:keysearch({V, P}, 1, VI) of
  -			{value, {{V, P}, As}} ->
  -			    {value, {bound, Bound1}} = lists:keysearch(bound, 1,As),
  -			    {value, {free, Free1}} = lists:keysearch(free, 1,As),
  -			    {value, {def, Def1}} = lists:keysearch(def, 1,As),
  -			    {value, {env, Env1}} = lists:keysearch(env, 1,As),
  -			    {ann_bindings(Tree, Env1, Bound1, Free1, Def1), Bound1, Free1};
  -			false -> 
  -			    throw("Wrangler AST annotation error!")
  -		    end
  +	    case lists:keysearch({V, P}, 1, VI) of
  +		{value, {{V, P}, As}} ->
  +		    {value, {bound, Bound1}} = lists:keysearch(bound, 1,As),
  +		    {value, {free, Free1}} = lists:keysearch(free, 1,As),
  +		    {value, {def, Def1}} = lists:keysearch(def, 1,As),
  +		    {value, {env, Env1}} = lists:keysearch(env, 1,As),
  +		    {ann_bindings(Tree, Env1, Bound1, Free1, Def1), Bound1, Free1};
  +		_ -> 
  +		    Bound = [{V, P}],
  +		    Free = [],
  +		    Def = [P],
  +		    {ann_bindings(Tree, Env, Bound, Free, Def), Bound, Free}
   	    end;
   	match_expr ->
   	  %% Alias pattern
  
positive.code:     lists:mapfoldl(vann_list_join(Env, Ms, VI), {[], []}, Ts).
  
  vann_function(Tree, Env, Ms, _VI) ->
      F = fun() ->
  		Toks = remove_whites(refac_util:get_toks(Tree)),
  		Toks1 = refac_epp:expand_macros(Toks, Ms),
  		{ok, Form} = refac_parse:parse_form(Toks1),
  		[Form1] = refac_syntax:form_list_elements(refac_recomment:recomment_forms([Form], [])),
  		{Form2, _, _} = vann_function_1(Form1, Env, Ms, []),
  		get_var_info(Form2)
  	end,
      try F() of
  	VI -> vann_function_1(Tree, Env, Ms, VI)
      catch
     	_E1:_E2_ -> vann_function_1(Tree, Env, Ms, [])
      end.
  
  vann_function_1(Tree, Env, Ms, VI) ->
      Cs = refac_syntax:function_clauses(Tree),
  
negative.code: 			    Free = L,
  			    Def = [vann_1(V3) || V3 <- L]
  		    end, 
  		    {ann_bindings(Tree, Env, Bound, Free, Def), Bound, Free}
  		end;		
  	match_expr -> vann_match_expr(Tree, Env, Ms, VI);
  	case_expr -> vann_case_expr(Tree, Env, Ms, VI);
  	if_expr -> vann_if_expr(Tree, Env, Ms, VI);
  