You could try to find the last cursor first with a binary search: try page 1 then multiply the cursor by two until it returns []: 1, 2, 4, 8, 16, 34, 64, etc.. For instance you know that cursor 512 returned pages but 1024 returned []. Then you try in the middle: 768. If it returns [], the last page is between 512 and 768, if not the last page is between 768 and 1024. And you continue by trying in the new middle until you find the last cursor.
Then you can fetch all your pages from 1 to last cursor in an async stream.






















