@Override
 public <R, C, E extends Throwable> R accept(Visitor<R, C, E> visitor, C context) throws E {
   Util.notNull(visitor, "visitor"); // $NON-NLS-1$
   return visitor.visitParameterizedType(this, context);
 }
 @Override
 public <R, C, E extends Throwable> R accept(Visitor<R, C, E> visitor, C context) throws E {
   Util.notNull(visitor, "visitor"); // $NON-NLS-1$
   return visitor.visitLocalVariableDeclaration(this, context);
 }
 @Override
 public <R, C, E extends Throwable> R accept(Visitor<R, C, E> visitor, C context) throws E {
   Util.notNull(visitor, "visitor"); // $NON-NLS-1$
   return visitor.visitSuperConstructorInvocation(this, context);
 }