if (STATS) { ++numEdgesPruned; }
	private void markObviouslyInfeasibleCatchEdges() {		for (Iterator<BasicBlock> i = cfg.blockIterator(); i.hasNext();) {			BasicBlock sourceBlock = i.next();			if (!sourceBlock.isExceptionThrower())				continue;						Set<ObjectType> exceptionSet = thrownExceptionSetMap.get(sourceBlock);						for (Iterator<Edge> j = cfg.outgoingEdgeIterator(sourceBlock); j.hasNext();) {				Edge edge = j.next();								if (edge.getType() != HANDLED_EXCEPTION_EDGE)					continue;								BasicBlock catchBlock = edge.getTarget();								ObjectType catchType = catchBlock.getExceptionGen().getCatchType();				if (catchType == null) {					catchType = ObjectType.THROWABLE;				}				boolean feasible = handleException(catchType, exceptionSet);				if (!feasible) {					removedEdgeList.add(edge);				}			}		}	}