if (insn != Constants.RETURN || ended) {
if (insn != Constants.RETURN) {
    public CodeEmitter begin_method(int access, Signature sig, Type[] exceptions, Attribute attrs) {        CodeVisitor v = cv.visitMethod(access,                                       sig.getName(),                                       sig.getDescriptor(),                                       TypeUtils.toInternalNames(exceptions),                                       attrs);        if (sig.equals(STATIC_HOOK)) {            hook = new CodeEmitter(this, v, access, sig, exceptions) {                public boolean isStaticHook() {                    return true;                }                public void visitMaxs(int maxStack, int maxLocals) {                    if (ended) {                        super.visitMaxs(maxStack, maxLocals);                    }                }                public void visitInsn(int insn) {                    if (insn != Constants.RETURN || ended) {                        super.visitInsn(insn);                    }                }            };            return hook;        } else {            CodeEmitter e = new CodeEmitter(this, v, access, sig, exceptions);            if (sig.equals(Constants.SIG_STATIC) && !TypeUtils.isInterface(this.access)) {                seenStatic = true;                e.invoke_static_this(STATIC_HOOK);            }            return e;        }    }