IAnalysisSet SpecialNext(Node node, AnalysisUnit unit, IAnalysisSet[] args, NameExpression[] keywordArgNames) {
            if (args.Length > 0) {
                var nextName = (unit.ProjectState.LanguageVersion.Is3x()) ? "__next__" : "next";
                var newArgs = args.Skip(1).ToArray();
                var newNames = (keywordArgNames.Any()) ? keywordArgNames.Skip(1).ToArray() : keywordArgNames;

                return args[0].GetMember(node, unit, nextName).Call(node, unit, newArgs, newNames);
            } else {
                return AnalysisSet.Empty;
            }
        }