ca.invokevirtual("java.lang.reflect.Method", "getParameterTypes", "()[Ljava/lang/Class;");
ca.dup();
ca.astore(3);
ca.arraylength();
ca.iconst(parameters.length);
ca.ifIcmpne(loopBegin); // compare parameter array length
for (int i = 0; i < parameters.length; ++i) {
ca.aload(3);
ca.iconst(i);
ca.aaload();