&& !finalFields.contains(getNameConstantOperand())
         public void sawOpcode(int seen) {		switch (seen) {		case ALOAD_0:			thisOnTOS = true;			return;		case MONITOREXIT:			setFields.clear();			break;		case PUTFIELD:			if (getClassConstantOperand().equals(getClassName()))				setFields.add(getNameConstantOperand());			break;		case GETFIELD:			if (thisOnTOS && getClassConstantOperand().equals(getClassName())			        && setFields.contains(getNameConstantOperand())			        && asUnsignedByte(codeBytes[getPC() + 3]) == DUP			        && asUnsignedByte(codeBytes[getPC() + 5]) == MONITORENTER			)				bugReporter.reportBug(new BugInstance(this, "ML_SYNC_ON_UPDATED_FIELD", NORMAL_PRIORITY)				        .addClassAndMethod(this)				        .addReferencedField(this)				        .addSourceLine(this, getPC() + 5));			break;		default:		}		thisOnTOS = false;	}