boolean b = false;
boolean bais = false; boolean bis = false;
    public void sawOpcode(int seen) {	if (seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE) {	    lastCallClass = getDottedClassConstantOperand();	    lastCallMethod = getNameConstantOperand();	    lastCallSig = getDottedSigConstantOperand();	}	if ((seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE)		&& getNameConstantOperand().equals("available")		&& getSigConstantOperand().equals("()I")	    || (seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE)		&& getNameConstantOperand().startsWith("get")		&& getNameConstantOperand().endsWith("Length")		&& getSigConstantOperand().equals("()I")	    || (seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE)		&& getClassConstantOperand().equals("java/io/File")		&& getNameConstantOperand().equals("length")		&& getSigConstantOperand().equals("()J"))   {		sawAvailable = 70;		return;		}	sawAvailable--;	if ((seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE)		&& !getClassConstantOperand().equals("java/io/ByteArrayInputStream")		&& getNameConstantOperand().equals("read")		&& (getSigConstantOperand().startsWith("([B")		   || getSigConstantOperand().startsWith("([C"))		&& sawAvailable <= 0)   {		/*		System.out.println("Saw invocation of "			+ nameConstant + "("			+sigConstant			+")");		*/		boolean b = false;		try {		b = Repository.instanceOf(getClassConstantOperand(), "java/io/ByteArrayInputStream");		} catch (ClassNotFoundException e) {		}		if (!b) {			sawRead = true;			readPC = getPC();			return;				}	} else if ((seen == INVOKEVIRTUAL || seen == INVOKEINTERFACE)		&& !getClassConstantOperand().equals("java/io/ByteArrayInputStream")		&& getNameConstantOperand().equals("skip")) {		boolean b = false;		try {		b = Repository.instanceOf(getClassConstantOperand(), "java/io/ByteArrayInputStream");		} catch (ClassNotFoundException e) {		}		if (!b) {			sawSkip = true;			skipPC = getPC();			return;				}	}		if ((seen == POP) || (seen == POP2)) {		if (sawRead) {			bugReporter.reportBug(new BugInstance("RR_NOT_CHECKED", NORMAL_PRIORITY)				.addClassAndMethod(this)				.addCalledMethod(lastCallClass, lastCallMethod, lastCallSig)				.addSourceLine(this, readPC));		} else if (sawSkip) {				boolean isBufferedInputStream = false;				try {				isBufferedInputStream = Repository.instanceOf(lastCallClass, "java/io/BufferedInputStream");				} catch (ClassNotFoundException e) {				}			bugReporter.reportBug(new BugInstance("SR_NOT_CHECKED", 				(isBufferedInputStream ? HIGH_PRIORITY : NORMAL_PRIORITY))				.addClassAndMethod(this)				.addCalledMethod(lastCallClass, lastCallMethod, lastCallSig)				.addSourceLine(this, skipPC));		}	}	sawRead = false;	sawSkip = false;	}