Ref<PyExpression> (@NotNull PyArgumentList argumentList) { final PyKeywordArgument valueFromKeywordArg = argumentList.getKeywordArgument(myChunk.getMappingKey()); final List<PyStarArgument> keywordStarArgs = getStarArguments(argumentList, true); Ref<PyExpression> valueExprRef = null; if (valueFromKeywordArg != null) { valueExprRef = Ref.create(valueFromKeywordArg.getValueExpression()); } else if (!keywordStarArgs.isEmpty()){ for (PyStarArgument arg : keywordStarArgs) { final Ref<PyExpression> resolvedRef = resolveKeywordStarExpression(arg); if (resolvedRef != null && (valueExprRef == null || valueExprRef.get() == null)) { valueExprRef = resolvedRef; } } if (valueExprRef == null) { valueExprRef = Ref.create(Iterables.getFirst(keywordStarArgs, null)); } } return valueExprRef; }