Iahub likes chess very much. He even invented a new chess piece named Coder. A Coder can move (and attack) one square horizontally or vertically. More precisely, if the Coder is located at position (*x*, *y*), he can move to (or attack) positions (*x* + 1, *y*), (*x*–1, *y*), (*x*, *y* + 1) and (*x*, *y*–1).

Iahub wants to know how many Coders can be placed on an *n* × *n* chessboard, so that no Coder attacks any other Coder.
The first line contains an integer *n* (1 ≤ *n* ≤ 1000).
f=lambda:map(int,input().split())
n=int(input())
print([n**2//2,(n**2+1)//2][n%2])
for i in range(1,n+1):
    if i%2!=0:
        print('C.'*(n//2)+'C' if n%2!=0 else 'C.'*(n//2))
    else:
        print('.C' * (n // 2) + '.' if n % 2 != 0 else '.C' * (n // 2))