I have a model that holds a date that can be either upcoming or past. I preferably want to see the 3 upcoming items. But if there aren't any, I want to show the ones that have already past, with the most recent first.

So if there are all future ones:

`future - future - future`

If there are only two future ones:

`past - future - future`

How should I achieve this in my model?