public static function limit(IteratorAggregate $iterable, int $limitSize) : IteratorAggregate
    {
        return new CallableIterable(
            function () use ($iterable, $limitSize) {
                return Iterators::limit(Iterators::from($iterable->getIterator()), $limitSize);
            }
        );
    }