if (xfield instanceof InstanceField) { InstanceField instanceField = (InstanceField) xfield;
InstanceField instanceField = (InstanceField) xfield;
	public void visitPUTFIELD(PUTFIELD obj) {		if (REDUNDANT_LOAD_ELIMINATION) {			ValueNumberFrame frame = getFrame();				try {				XField xfield = Lookup.findXField(obj, getCPG());				if (xfield != null) {					if (xfield instanceof InstanceField) {						InstanceField instanceField = (InstanceField) xfield;						int numWordsConsumed = getNumWordsConsumed(obj);						ValueNumber[] inputValueList = popInputValues(numWordsConsumed);						ValueNumber reference = inputValueList[0];						ValueNumber[] loadedValue = new ValueNumber[inputValueList.length - 1];						System.arraycopy(inputValueList, 1, loadedValue, 0, inputValueList.length - 1);							// Kill all previous loads of the same field,						// in case there is aliasing we don't know about						frame.killLoadsOfField(instanceField);							// Forward substitution						frame.addAvailableLoad(new AvailableLoad(reference, instanceField), loadedValue);							return;					}				}			} catch (ClassNotFoundException e) {				lookupFailureCallback.reportMissingClass(e);			}					}		handleNormalInstruction(obj);	}