InstructionHandle targetInstruction = dest.getFirstInstruction();
InstructionHandle targetInstruction = target.getFirstInstruction();
	public String toString() {		StringBuffer buf = new StringBuffer();		buf.append("EDGE(");		buf.append(id);		buf.append(") type ");		buf.append(edgeTypeToString(type));		buf.append(" from block ");		buf.append(source.getId());		buf.append(" to block ");		buf.append(dest.getId());		InstructionHandle sourceInstruction = source.getLastInstruction();		InstructionHandle targetInstruction = dest.getFirstInstruction();		String exInfo = " -> ";		if (targetInstruction == null && dest.isExceptionThrower()) {			targetInstruction = dest.getExceptionThrower();			exInfo = " => ";		}		if (sourceInstruction != null && targetInstruction != null) {			buf.append(" [bytecode ");			buf.append(sourceInstruction.getPosition());			buf.append(exInfo);			buf.append(targetInstruction.getPosition());			buf.append(']');		} else if (source.isExceptionThrower()) {			if (type == FALL_THROUGH_EDGE)					buf.append(" [successful check]");			else {				buf.append(" [failed check for ");				buf.append(source.getExceptionThrower().getPosition());				if (targetInstruction != null) {					buf.append(" to ");					buf.append(targetInstruction.getPosition());				}				buf.append(']');			}		}		return buf.toString();	}