Magic Bitstrings

A bitstring, whose length is one less than a prime, might be magic. 1001 is one such string. In order to see the magic in the string let us append a non-bit x to it, regard the new thingy as a cyclic string, and make this square matrix of bits each bit 1001 every 2nd bit 0110 every 3rd bit 0110 every 4th bit 1001 This matrix has the same number of rows as the length of the original bitstring. The m-th row of the matrix has every m-th bit of the original string start- ing with the m-th bit. Because the enlarged thingy has prime length, the appended x never gets used. If each row of the matrix is either the original bitstring or its complement, the original bitstring is magic. Input Each line of input (except last) contains a prime num- ber p ≤ 100000. The last line contains ‘0’ and this line should not be processed. Output For each prime number from the input produce one line of output containing the lexicographically small- est, non-constant magic bitstring of length p−1, if such a string exists, otherwise output ‘Impossible’. Sample Input 5 3 17 47 2 79 0 Sample Output 0110 01 0010111001110100 0000100001101010001101100100111010100111101111

2/2 Impossible 001001100001011010000001001111001110101010100011000011011111101001011110011011