ref: 482f0ce1f33e655ab3085c3c9c2f5d71cd5b1c79
dir: /shuffle.h/
typedef struct Shuffle Shuffle; struct Shuffle { int i, n; int m, a, c, x0, xi; }; void shuffle_init(Shuffle *s, int (*rndrange)(int max_excluding), int total, int first); void shuffle_resize(Shuffle *s, int total); int shuffle_one(Shuffle *s, int index); int shuffle_for(Shuffle *s, int index);