@Override
    public void visitReferenceExpression(@NotNull PsiReferenceExpression expression) {
      if (queried) return;
      super.visitReferenceExpression(expression);
      final PsiElement parent = ParenthesesUtils.getParentSkipParentheses(expression);
      if (parent instanceof PsiPolyadicExpression polyadicExpression) {
        final IElementType tokenType = polyadicExpression.getOperationTokenType();
        if (!JavaTokenType.PLUS.equals(tokenType) || !ExpressionUtils.hasStringType(polyadicExpression)) {
          return;
        }
      }
      else if (!(parent instanceof PsiTemplate)) {
        return;
      }
      final PsiElement target = expression.resolve();
      if (!variable.equals(target)) {
        return;
      }
      queried = true;
    }
@Override
    public void visitReferenceExpression(@NotNull PsiReferenceExpression expression)