for (Iterator<Location> i = cfg.locationIterator(); i.hasNext(); ) {
MethodGen methodGen = classContext.getMethodGen(method); String sourceFile = classContext.getJavaClass().getSourceFileName();  for (Iterator<Location> i = cfg.locationIterator(); i.hasNext();) {
	private void analyzeMethod(ClassContext classContext, Method method) throws CFGBuilderException, DataflowAnalysisException {		CFG cfg = classContext.getCFG(method);		ConstantDataflow constantDataflow = classContext.getConstantDataflow(method);		ConstantPoolGen cpg = classContext.getConstantPoolGen();				for (Iterator<Location> i = cfg.locationIterator(); i.hasNext(); ) {			Location location = i.next();						Instruction ins = location.getHandle().getInstruction();			if (!(ins instanceof InvokeInstruction))				continue;			InvokeInstruction iins = (InvokeInstruction) ins;			ConstantFrame frame = constantDataflow.getFactAtLocation(location);			if (!frame.isValid()) {				// This basic block is probably dead				continue;			}			if (iins.getName(cpg).equals("substring")) {				System.out.println("Sig: " + iins.getSignature(cpg));				Constant operandValue = frame.getTopValue();				System.out.println("Constant value: " + operandValue);				if (!operandValue.isConstantInteger()) continue;				int v = operandValue.getConstantInt();				System.out.println("Constant value: " + v);				if (v == 0) System.out.println("Found it");							}					}	}