return superMethod.invoke(obj, args);
if (i2 == -1) { throw new IllegalAccessException("Protected method: " + m2); } else { return f2.invoke(i2, obj, args); }
    public Object invokeSuper(Object obj, Object[] args) throws Throwable {        return superMethod.invoke(obj, args);    }