es6 generators, iterators