}
return new InstrumentationImpl();  }
  public static Instrumentation createInstrumentation() {    // TODO: Fix this mess once classpath fixes its end    try {      // Horrific backdoor to workaround the private (not package)      // constructor for InstrumentationImpl found in classpath 0.92      VM_Class cls = java.lang.JikesRVMSupport.getTypeForClass(InstrumentationImpl.class).asClass();              // Find the defaultConstructor      VM_Method defaultConstructor = null;      VM_Method methods[] = cls.getConstructorMethods();      for (int i = 0; i < methods.length; i++) {        VM_Method method = methods[i];        if (method.getParameterTypes().length == 0) {          defaultConstructor = method;          break;        }      }      if (!cls.isInitialized()) {        try {          VM_Runtime.initializeClassForDynamicLink(cls);        } catch (Throwable e) {          ExceptionInInitializerError ex = new ExceptionInInitializerError();          ex.initCause(e);          throw ex;        }      }      // Allocate an uninitialized instance;      Object obj = VM_Runtime.resolvedNewScalar(cls);      // Run the default constructor on it.      VM_Reflection.invoke(defaultConstructor, obj, null);      return (Instrumentation)obj;    } catch (Exception e) {      e.printStackTrace();      return null;    }   }