*/  ValueNumberDataflow vnaDataflow = classContext.getValueNumberDataflow(method); UnconditionalValueDerefDataflow dataflow = classContext.getUnconditionalValueDerefDataflow(method);  int numParams = new SignatureParser(method.getSignature()).getNumParameters(); int paramLocalOffset = method.isStatic() ? 0 : 1;   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); } }   if (unconditionalDerefSet.isEmpty()) { if (VERBOSE_DEBUG) { System.out.println("\tResult is empty"); } return; }
	private void analyzeMethod(ClassContext classContext, Method method) {		try {			CFG cfg = classContext.getCFG(method);			UnconditionalDerefDataflow dataflow = classContext.getUnconditionalDerefDataflow(method);			UnconditionalDerefSet unconditionalDerefSet = dataflow.getResultFact(cfg.getEntry());						if (!unconditionalDerefSet.isValid()) {				if (VERBOSE_DEBUG) {					System.out.println("\tResult is not valid: " + unconditionalDerefSet.toString());				}				return;			}						if (unconditionalDerefSet.isEmpty()) {				if (VERBOSE_DEBUG) {					System.out.println("\tResult is empty");				}				return;			}						if (VERBOSE_DEBUG) {				System.out.println("\tAdding result " + unconditionalDerefSet.toString() + " to database");			}			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);		}	}