So, do this the other way around.  Test if it's empty and if it is get some, then grab and return the first one, so:

```ruby
def next
  @@cached == refresh if @@cached.empty?
  @@cached.shift
end
```