public function getIterator()
 {
     return new LazyMapKeyedIterator($this->iterable->getIterator(), $this->fn);
 }
 public function getIterator()
 {
     return new LazyZipKeyedIterator($this->iterable1->getIterator(), $this->iterable2->getIterator());
 }
 public function getIterator()
 {
     return new LazySliceKeyedIterator($this->iterable->getIterator(), $this->start, $this->len);
 }
 public function getIterator()
 {
     return new LazyFilterWithKeyIterator($this->iterable->getIterator(), $this->fn);
 }