private Tuple2<OK, OV> nextFromCombineMap() {
        this.doCombine();
        final OK key = (OK) this.combineMap.keySet().iterator().next();
        final List<OV> values = (List<OV>) this.combineMap.get(key);
        final Tuple2<OK, OV> keyValue = new Tuple2<>(key, values.remove(0));
        if (values.isEmpty())
            this.combineMap.remove(key);
        return keyValue;
    }
@author Marko A. Rodriguez (http://markorodriguez.com)
spark-gremlin/src/main/java/org/apache/tinkerpop/gremlin/spark/process/computer/CombineIterator.java