anchor.diff:  clause_guard(C) ->
       revert_clause_guard(wrangler_syntax:clause_guard(C)).
   
  -revert_clause_guard(none) -> [[]];
  +revert_clause_guard(none) ->[]; 
   revert_clause_guard(E)->
  -    case  wrangler_syntax:type(E) of
  -        disjunction -> wrangler_syntax:revert_clause_disjunction(E);
  -        conjunction ->
  -            %% Only the top level expression is
  -            %% unfolded here; no recursion.
  -            [wrangler_syntax:conjunction_body(E)];
  -        _ ->
  -            [[E]]       % a single expression
  -    end.
  +    E1=wrangler_syntax:revert_clause_disjunction(E),
  +    case E1 of 
  +        [[Guard]] ->
  +            case is_meta_list_variable(Guard) of 
  +                true->
  +                    [Guard];
  +                false -> E1
  +            end;
  +        _ -> E1
  +    end.
  +
   
   subtrees(T) ->
       case wrangler_syntax:type(T) of
           clause ->
  -            case wrangler_syntax:clause_guard(T) of
  -                none -> [wrangler_syntax:clause_patterns(T), [[]],
  -                         wrangler_syntax:clause_body(T)];
  -                G -> [wrangler_syntax:clause_patterns(T),
  -                      revert_clause_guard(G), 
  -                      wrangler_syntax:clause_body(T)]
  -            end;
  +            G=wrangler_syntax:clause_guard(T),
  +            [wrangler_syntax:clause_patterns(T),
  +             revert_clause_guard(G),
  +             wrangler_syntax:clause_body(T)];
           _ ->
               wrangler_syntax:subtrees(T)
       end.
  
positive.code:                                         is_meta_meta_list_variable(B);  
                                  _ -> false
                              end;
                          _ -> false
                      end;
                  [] ->
  
negative.code: 
  
  
  create_sub(T1, T2List)->
      case is_meta_list_variable(T1) of 
          true ->
  