return (RootDoc)getter.invoke(holder,(Object[])null);
RootDoc out = (RootDoc)getter.invoke(holder,(Object[])null);   Method setter = holder.getClass().getMethod("_setRoot", new Class[] { RootDoc.class } ); setter.invoke(holder,new Object[] { null }); return out;
  public static RootDoc getRoot() {    try {      Object holder = getHolder();      Method getter = holder.getClass().getMethod("_getRoot",new Class[0]);      return (RootDoc)getter.invoke(holder,(Object[])null);    } catch(Exception e) {      e.printStackTrace();      throw new IllegalStateException();//FIXME??    }  }