if (!className.equals(classConstant)) break;
if (!getClassName().equals(getClassConstantOperand())) break;
    public void sawOpcode(int seen) {	// state: 0 - unlocked	// state: 1 - locked	// state: 2 - saw unlocked, but might still be locked	switch (seen) {	case ASTORE_1:	case ASTORE_2:	case ASTORE_3:	case ASTORE:		thisOnTopOfStack = doubleThisOnTopOfStack;		return;	case ALOAD_0:		thisOnTopOfStack = true;		return;	case DUP:		doubleThisOnTopOfStack = thisOnTopOfStack;		return;	case MONITOREXIT:		if (thisLockingOnly && !thisLocked) break;		updateStats(fieldsWritten, WRITTEN_LOCKED);		updateStats(fieldsRead, READ_LOCKED);		state = 2;		// System.out.println("monitorexit	" + thisLocked);		fieldsWritten.clear();		fieldsRead.clear();		break;	case MONITORENTER:		thisLocked = thisOnTopOfStack;		if (thisLockingOnly && !thisLocked) break;		updateStats(fieldsWritten, WRITTEN_UNLOCKED);		updateStats(fieldsRead, READ_UNLOCKED);		// System.out.println("monitorenter	" + thisLocked);		state = 1;		fieldsWritten.clear();		fieldsRead.clear();		break;	case PUTFIELD:		{		 FieldAnnotation f = FieldAnnotation.fromReferencedField(this);		 writtenOutsideOfConstructor.add(f);		 if (!className.equals(classConstant)) break;		 // System.out.println("putfield	" + f + ", state = " + state);		 fieldsWritten.add(f);		}		break;	case GETFIELD:		int next = codeBytes[PC+3] & 0xff;		if (!thisOnTopOfStack) break;		if (next != IFNULL &&  next != IFNONNULL) {		   FieldAnnotation f = FieldAnnotation.fromReferencedField(this);		   // System.out.println("getfield	" + f);		   fieldsRead.add(f);		   /*		   System.out.println("After read of " 			   + classConstant + "." + nameConstant			   + ", next PC is " + (PC+3)			   );		   System.out.println("After read of " 			   + classConstant + "." + nameConstant			   + ", next opcode is " + OPCODE_NAMES[next]			   + " (" + next + ")"			   );		   */		   }		// OPCODE_NAMES		break;	}	thisOnTopOfStack = false;	doubleThisOnTopOfStack = false;	}