oh, I was probably casting to a list to make the cache decorator work but I ran into other problems with that so I can leave it as an iterator