@Override
 public void merge(AnnotationMemberDeclaration remote, MergeEngine configuration) {
   super.merge(remote, configuration);
   setType((Type) configuration.apply(getType(), remote.getType(), Type.class));
   setDefaultValue(
       (Expression)
           configuration.apply(getDefaultValue(), remote.getDefaultValue(), Expression.class));
 }
 @Override
 public void merge(FieldDeclaration remote, MergeEngine configuration) {
   super.merge(remote, configuration);
   setType((Type) configuration.apply(getType(), remote.getType(), Type.class));
   List<VariableDeclarator> resultList = new LinkedList<VariableDeclarator>();
   configuration.apply(
       getVariables(), remote.getVariables(), resultList, VariableDeclarator.class);
   setVariables(resultList);
 }