This seems a bit goofy. For each spot in the string you re-seed the random engine and then run it spot times. Isn't that the same as
```
m.seed(i);
for (unsigned spot [0]; spot < 4; ++spot)
    o << setw (8) << m ();
```
only slower? Also Josuttis (*The C++ Standard Library, Second Edition*, p 912) says "Don't use engines without a distribution", so you should
```
uniform_int_distribution<int> di(0, 0xffffffff);
...
    o << setw (8) << di (m);
```
to get a properly unbiased set of values. It's not clear to me that the engine needs to be re-seeded every pass, either; one seed and 400