void (@NotNull PyCallExpression node) { if (!isDict(node)) return; final MultiMap<String, PsiElement> keyValueAndKeys = new MultiMap<>(); for (PyExpression argument : node.getArguments()) { argument = PyPsiUtils.flattenParens(argument); if (argument instanceof PySequenceExpression) { for (PyExpression element : ((PySequenceExpression)argument).getElements()) { final Pair<PsiElement, String> keyAndValue = getDictCallKey(element); if (keyAndValue != null) { keyValueAndKeys.putValue(keyAndValue.second, keyAndValue.first); } } } else if (argument instanceof PyKeywordArgument) { final Pair<PsiElement, String> keyAndValue = getDictCallKey(argument); if (keyAndValue != null) { keyValueAndKeys.putValue(keyAndValue.second, keyAndValue.first); } } } registerProblems(keyValueAndKeys); }