@Nullable DfaBasedFilter mergeFilter(@NotNull PsiElement element) {
    DfType type = getElementDfType(element, true);
    if (type instanceof DfReferenceType) {
      type = ((DfReferenceType)type).dropLocality().dropMutability();
    }
    DfType meet = type.meet(myDfType);
    if (meet == DfType.TOP && myNextFilter == null) return null;
    if (meet == DfType.BOTTOM || meet.equals(myDfType)) return this;
    return new DfaBasedFilter(myNextFilter, meet);
  }
@Nullable DfaBasedFilter mergeFilter(@NotNull PsiElement element)