@Override
    public void visitReferenceExpression(@NotNull PsiReferenceExpression expression) {
      super.visitReferenceExpression(expression);
      if (PsiUtil.isAccessedForWriting(expression)) {
        if (expression.isReferenceTo(myKey) ||
            EquivalenceChecker.getCanonicalPsiEquivalence().expressionsAreEquivalent(myMapReference, expression)) {
          myTainted = true;
          stopWalking();
        }
      }
      if (!expression.isReferenceTo(myKey)) return;
      if (isMapGetArgument(expression)) {
        myGetValueFromMap = true;
      } else {
        myKeyUsedExplicitly = true;
      }
    }
@Override
    public void visitReferenceExpression(@NotNull PsiReferenceExpression expression)