anchor.diff:  	    try_expr ->
   		[try_expr_body(T), try_expr_clauses(T),
   		 try_expr_handlers(T), try_expr_after(T)];
  -            map ->
  -                [map_elements(T)];
  -            map_field_assoc ->
  -		    [map_field_elements(T)];
  -	    map_field_exact ->
  -		    [map_field_elements(T)];
  -	    tuple -> [tuple_elements(T)];
  +            tuple -> [tuple_elements(T)];
   	    type -> [];
               empty_node -> [];
   		_ ->[]  %% added by huiqing li to handle {wrapper, [] ...} which could be returned from Elisp.
  
positive.code: 	 list_head/1, list_length/1, list_prefix/1,
  	 list_suffix/1, list_tail/1, macro/1, macro/2,
  	 macro_arguments/1, macro_name/1, make_tree/2,
  	 match_expr/2, match_expr_body/1, match_expr_pattern/1,
  	 meta/1, module_qualifier/2, module_qualifier_argument/1,
  	 module_qualifier_body/1,
           named_fun_expr/2,
  	 named_fun_expr_arity/1,
  	 named_fun_expr_clauses/1,
  	 named_fun_expr_name/1,
           map_elements/1,
           map_field_elements/1,
           nil/0, normalize_list/1,
  	 operator/1, operator_literal/1, operator_name/1,
  	 parentheses/1, parentheses_body/1,
  
negative.code: 		revert_list(Node);
  	     list_comp -> 
  		revert_list_comp(Node);
               map_expr ->
                  revert_map_expr(Node);
               map_field_assoc ->
                  revert_map_field_assoc(Node);
               map_field_exact ->
                  revert_map_field_exact(Node);
  	     match_expr -> 
  		revert_match_expr(Node);
               named_fun_expr ->
  