private MethodProxy(ClassLoader loader ,Class c1, String m1, Class c2, String m2) { this.m1 = m1; this.m2 = m2; f1 = helper(loader, c1); f2 = helper(loader, c2); i1 = f1.getIndex(m1); i2 = f2.getIndex(m2);
private MethodProxy(FastClass f1, int i1, FastClass f2, int i2) { this.f1 = f1; this.i1 = i1; this.f2 = f2; this.i2 = i2;
    private MethodProxy(ClassLoader loader ,Class c1, String m1, Class c2, String m2) {        this.m1 = m1;        this.m2 = m2;        f1 = helper(loader, c1);        f2 = helper(loader, c2);        i1 = f1.getIndex(m1);        i2 = f2.getIndex(m2);        // TODO: handle protected method exception here instead of inside invoke    }