You are given a cube of size k × k × k, which consists of unit cubes. Two unit cubes are considered neighbouring, if they have common face.

Your task is to paint each of k^3 unit cubes one of two colours (black or white), so that the following conditions must be satisfied:  each white cube has exactly 2 neighbouring cubes of white color;  each black cube has exactly 2 neighbouring cubes of black color. 


-----Input-----

The first line contains integer k (1 ≤ k ≤ 100), which is size of the cube.


-----Output-----

Print -1 if there is no solution. Otherwise, print the required painting of the cube consequently by layers. Print a k × k matrix in the first k lines, showing how the first layer of the cube should be painted. In the following k lines print a k × k matrix — the way the second layer should be painted. And so on to the last k-th layer. Note that orientation of the cube in the space does not matter.

Mark a white unit cube with symbol "w" and a black one with "b". Use the format of output data, given in the test samples. You may print extra empty lines, they will be ignored.


-----Examples-----
Input
1

Output
-1

Input
2

Output
bb
ww

bb
ww

Difficulty: interview

Starter code:

Solutions:
K = int(input())
print(("-1" if K & 1 else "".join(["wb\n"[2 if k == K else (min(j, k, K - 1 - j,
    K - 1 - k) ^ i) & 1] for i in range(2) for j in range(K) for k in range(K +
        1)]) * (K >> 1)))


K = int(input())
print(("-1" if K & 1 else "".join(["wb\n"[2 if k == K else (min(j, k, K - 1 - j,
    K - 1 - k) ^ i) & 1] for i in range(2) for j in range(K) for k in range(K +
        1)]) * (K >> 1)))


class CodeforcesTask323ASolution:
    def __init__(self):
        self.result = ''
        self.k = 0

    def read_input(self):
        self.k = int(input())

    def process_task(self):
        if self.k % 2:
            self.result = "-1"
        elif self.k == 2:
            self.result = "bb\nww\n\nbb\nww"
        else:
            level = "b"
            cube = [[[None for y in range(self.k)] for x in range(self.k)] for z in range(self.k)]
            for z in range(self.k):
                level = "w" if z % 2 else "b"
                for k in range(self.k // 2):
                    # upper
                    for x in range(2 * (k + 1)):
                        cube[z][self.k // 2 - 1 - k][self.k // 2 - 1 - k + x] = level
                    # lower
                    for x in range(2 * (k + 1)):
                        cube[z][self.k // 2 + k][self.k // 2 - 1 - k + x] = level
                    # left
                    for y in range(2 * (k + 1)):
                        cube[z][self.k // 2 - 1 - k + y][self.k // 2 - 1 - k] = level
                    # right
                    for y in range(2 * (k + 1)):
                        cube[z][self.k // 2 - 1 - k + y][self.k // 2 + k] = level
                    level = "w" if level == "b" else "b"

            for layer in cube:
                for row in layer:
                    print("".join(row))
                print(" ")

    def get_result(self):
        return self.result


def __starting_point():
    Solution = CodeforcesTask323ASolution()
    Solution.read_input()
    Solution.process_task()
    print(Solution.get_result())

__starting_point()