Constant time stateless shuffling and grouping | Hacker News Reader