```The three rules of Ruby Quiz:

1.  Please do not post any solutions or spoiler discussion for this quiz until
48 hours have passed from the time on this message.

2.  Support Ruby Quiz by submitting ideas as often as you can:

http://www.rubyquiz.com/

3.  Enjoy!

Suggestion:  A [QUIZ] in the subject of emails about the problem helps everyone
if you can.

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

by Kieran Wild

Chess960, is a chess variant produced by Grandmaster Bobby Fischer by
formalizing the rules of Shuffle Chess. Its goal was to create a chess variant
in which chess creativity and talent would be more important than memorization
and analysis of opening moves. His approach was to create a randomized initial
chess position, which would thus make memorizing chess opening move sequences
far less helpful. The initial position is set up in a special way and there are
960 such positions, thus the name Chess960.

The starting position for Chess960 must meet certain rules. White pawns are
placed on the second rank as in chess. All remaining white pieces are placed
randomly on the first rank, but with the following restrictions:

* The king is placed somewhere between the two rooks.
* The bishops are placed on opposite-colored squares.

The black pieces are placed equal-and-opposite to the white pieces. For example,
if the white king is placed on b1, then the black king is placed on b8. Note
that the king never starts on file a or h, because there would be no room for a
rook

Can I suggest a nice little ruby program to generates all 960 possible starting
positions and outputs a random one on request.

Output could be as follows.

Starting Position 432:

White

a1 b1 c1 d1 e1 f1 g1 h1
N  B  B   R  K  R  Q  N

Black

a8 b8 c8 d8 e8 f8 g8 h8
N  B  B   R  K  R  Q  N

Or some better output.

```