s.insU2(CHECKCAST, classCi); // object
s.ins0(type == 0 ? ALOAD3 : type == 1 ? LLOAD3 : DLOAD3);
s.ins0(ILOAD2);
long sw = s.insSwitchTable(0, ds.length - 1);
int sw0 = s.addr; // default
s.switchTableHere(sw, -1);
int exCi = p.cons.addClass(ClassCastException.class);
s.insU2(NEW, exCi);
s.ins0(DUP);
s.insU2(INVOKESPECIAL, p.cons.addCtor0(exCi));
s.ins0(ATHROW);