@SuppressWarnings("unchecked") static <E extends Element> E cleanClone(E e) { E c = (E) e.clone(); c.setCommentBefore(null); c.setCommentAfter(null); if (c instanceof Declaration) { Declaration d = (Declaration) c; d.setAnnotations(null); } return c; }