ParamsValue (final AbstractInsnNode insn) { int size; switch (insn.getOpcode()) { case LCONST_0, LCONST_1, DCONST_0, DCONST_1 -> size = 2; case LDC -> { Object cst = ((LdcInsnNode)insn).cst; size = cst instanceof Long || cst instanceof Double ? 2 : 1; } case GETSTATIC -> size = Type.getType(((FieldInsnNode)insn).desc).getSize(); default -> size = 1; } return size == 1 ? val1 : val2; }