protected override void SetAbstractValue(AnalysisEntity analysisEntity, NullAbstractValue value)
            {
                SetAbstractValue(CurrentAnalysisData, analysisEntity, value);

                if (IsCurrentlyPerformingPredicateAnalysis)
                {
                    SetAbstractValue(NegatedCurrentAnalysisDataStack.Peek(), analysisEntity, value);
                }
            }
            protected override void SetAbstractValue(AnalysisEntity analysisEntity, CopyAbstractValue value)
            {
                Debug.Assert(analysisEntity != null);
                Debug.Assert(value != null);

                SetAbstractValue(CurrentAnalysisData, analysisEntity, value, fromPredicate: false);

                if (IsCurrentlyPerformingPredicateAnalysis)
                {
                    SetAbstractValue(NegatedCurrentAnalysisDataStack.Peek(), analysisEntity, value, fromPredicate: false);
                }
            }