anchor.diff:  interfaceMethodDeclaration returns [MethodDeclaration d]
       locals [List<Modifier> mods = new ArrayList<>();]
   	:	(m = interfaceMethodModifier {$mods.add($m);})*
  -        h = methodHeader b = methodBody
  -        {$d = new MethodDeclaration();}
  +        {$d = new MethodDeclaration($mods);}
  +        (methodHeader[d])
  +        (b = methodBody {$d.setBody($b);})
   	;
   
   interfaceMethodModifier returns [Modifier m]
  
positive.code:         {$s = new AnnotationStatement($t, $l);}
  	;
  
  elementValuePairList returns [List<NameValuePair> l]
      locals [List<NameValuePair> pairs = new ArrayList<>();]
  	:	(p1 = elementValuePair) {$pairs.add($p1);}
          (',' p = elementValuePair {$pairs.add($p);})*
          {$l = $pairs;}
  	;
  
  elementValuePair returns [NameValuePair p]
  	:	id = Identifier '=' v = elementValue
          {$p = new NameValuePair($id.getText(), $v);}
  	;
  
  elementValue returns [Expression e]
  
negative.code: 	:	(m = interfaceModifier {$mods.add($m);})*
          'interface' id = Identifier
          t = typeParameters? e = extendsInterfaces?
          {$d = new InterfaceDeclaration($id.getText(), $mods, $e);}
          interfaceBody[d]
  	;
  
  