OutputStream debug = new FileOutputStream("/tmp/" + name); debug.write(b); debug.close();
    protected Class define() throws CodeGenerationException {        try {            try {                try {                    generate();                    String name = cg.getClassName();                    byte[] b = cg.getJavaClass().getBytes();                    // DEBUG                    OutputStream debug = new FileOutputStream("/tmp/" + name);                    debug.write(b);                    debug.close();                    PrivilegedAction action = getDefineClassAction(name, b, loader);                    return (Class)java.security.AccessController.doPrivileged(action);                } catch (WrappedException e) {                    throw e.getCause();                }            } catch (InvocationTargetException e) {                throw e.getTargetException();            }        } catch (RuntimeException e) {            throw e;        } catch (CodeGenerationException e) {            throw e;        } catch (Exception e) {            throw new CodeGenerationException(e);        } catch (Error e) {            throw e;        } catch (Throwable t) {            // impossible            throw new CodeGenerationException(t);        }    }