break;
	public void sawOpcode(int seen) {		try {			switch (seen) {			case ATHROW:				OpcodeStack.Item item = stack.getStackItem(0);				String signature = item.getSignature();				if (signature != null && signature.length() > 0) {					if (signature.startsWith("L"))						signature = SignatureConverter.convert(signature);					else						signature = signature.replace('/', '.');					throwList.add(new ThrownException(signature, getPC()));				}				break;			case INVOKEVIRTUAL:			case INVOKESPECIAL:			case INVOKESTATIC:				try {					JavaClass clazz = Repository.lookupClass(getDottedClassConstantOperand());					Method[] methods = clazz.getMethods();					for (int i = 0; i < methods.length; i++) {						Method method = methods[i];						if (method.getName().equals(getNameConstantOperand())						&& method.getSignature().equals(getSigConstantOperand())) {							ExceptionTable et = method.getExceptionTable();							if (et != null) {								String[] names = et.getExceptionNames();								for (int j = 0; j < names.length; j++)									throwList.add(new ThrownException(names[j], getPC()));							}							break;						}					}				} catch (ClassNotFoundException e) {					System.out.println("Class not found: " + getDottedClassConstantOperand());				}				break;			default:				break;			}		} finally {			stack.sawOpcode(this, seen);		}	}