System.out.println("\tPrototype method: " + method);
System.out.println("\tPrototype method: class=" + proto.getJavaClass().getClassName() + ", method=" + proto.getMethod());
	private void analyzeMethod(ClassContext classContext, Method method)			throws CFGBuilderException, ClassNotFoundException, DataflowAnalysisException {		CFG cfg = classContext.getCFG(method);		MethodGen methodGen = classContext.getMethodGen(method);		for (Iterator<Location> i = cfg.locationIterator(); i.hasNext();) {			Location location = i.next();			Instruction ins = location.getHandle().getInstruction();			if (ins instanceof InvokeInstruction) {				if (TARGET_METHOD != null						&& !((InvokeInstruction)ins).getMethodName(classContext.getConstantPoolGen()).equals(TARGET_METHOD))					continue;								System.out.println("\n*******************************************************\n");								System.out.println("Method invocation: " + location.getHandle());				System.out.println("\tInvoking: " +						SignatureConverter.convertMethodSignature((InvokeInstruction)ins,classContext.getConstantPoolGen()));								Method proto = Hierarchy.findPrototypeMethod(						(InvokeInstruction) ins,						classContext.getConstantPoolGen());				if (proto == null) {					System.out.println("\tUnknown prototype method");				} else {					System.out.println("\tPrototype method: " + method);				}				Set<XMethod> calledMethodSet = Hierarchy.resolveMethodCallTargets(						(InvokeInstruction) ins,						classContext.getTypeDataflow(method).getFactAtLocation(location),						classContext.getConstantPoolGen()				);				System.out.println("\tTarget method set: " + calledMethodSet);			}		}	}