if ((seen == INVOKEVIRTUAL)
if (((seen == INVOKEVIRTUAL) || (seen == INVOKEINTERFACE))
	public void sawOpcode(int seen) {		if (DEBUG) System.out.println("State: " + state + "  Opcode: " + OPCODE_NAMES[seen]);		switch (state) {		case SEEN_NOTHING:			if (seen == ICONST_0)				state = SEEN_ICONST_0;			break;		case SEEN_ICONST_0:			if (seen == ANEWARRAY) {				state = SEEN_ANEWARRAY;			} else				state = SEEN_NOTHING;			break;		case SEEN_ANEWARRAY:			if ((seen == INVOKEVIRTUAL)			        && (getNameConstantOperand().equals("toArray"))			        && (getSigConstantOperand().equals("([Ljava/lang/Object;)[Ljava/lang/Object;"))) {				try {					String clsName = getClassConstantOperand();					JavaClass cls = Repository.lookupClass(clsName);					if (cls.implementationOf(collectionClass))						bugReporter.reportBug(new BugInstance(this, "ITA_INEFFICIENT_TO_ARRAY", LOW_PRIORITY)						        .addClassAndMethod(this)						        .addSourceLine(this));				} catch (ClassNotFoundException cnfe) {					bugReporter.reportMissingClass(cnfe);				}			}			state = SEEN_NOTHING;			break;		default:			state = SEEN_NOTHING;			break;		}	}