if (VERBOSE_DEBUG) { ClassContext.dumpUnconditionalValueDerefDataflow(method, cfg, vnaDataflow, classContext.getIsNullValueDataflow(method), dataflow); }
	private void analyzeMethod(ClassContext classContext, Method method) {		try {			CFG cfg = classContext.getCFG(method);			ValueNumberDataflow vnaDataflow = classContext.getValueNumberDataflow(method);			UnconditionalValueDerefDataflow dataflow =				classContext.getUnconditionalValueDerefDataflow(method);				int numParams = new SignatureParser(method.getSignature()).getNumParameters();			int paramLocalOffset = method.isStatic() ? 0 : 1;			// Build BitSet of params that are unconditionally dereferenced			BitSet unconditionalDerefSet = new BitSet();			UnconditionalValueDerefSet entryFact = dataflow.getResultFact(cfg.getEntry());			for (int i = 0; i < numParams; i++) {				ValueNumber paramVN = vnaDataflow.getAnalysis().getEntryValue(i + paramLocalOffset);								if (entryFact.isUnconditionallyDereferenced(paramVN)) {					unconditionalDerefSet.set(i);				}			}						// No need to add properties if there are no unconditionally dereferenced params			if (unconditionalDerefSet.isEmpty()) {				if (VERBOSE_DEBUG) {					System.out.println("\tResult is empty");				}				return;			}			ParameterNullnessProperty property = new ParameterNullnessProperty();			property.setNonNullParamSet(unconditionalDerefSet);						XMethod xmethod = XFactory.createXMethod(classContext.getJavaClass(), method);			AnalysisContext.currentAnalysisContext().getUnconditionalDerefParamDatabase().setProperty(xmethod, property);			if (DEBUG) {				System.out.println("Unconditional deref: " + xmethod + "=" + property);			}		} catch (CFGBuilderException e) {			AnalysisContext.currentAnalysisContext().getLookupFailureCallback().logError(					"Error analyzing " + method + " for unconditional deref training", e);		} catch (DataflowAnalysisException e) {			AnalysisContext.currentAnalysisContext().getLookupFailureCallback().logError(					"Error analyzing " + method + " for unconditional deref training", e);		}	}