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).
# input Operation 
n=int(input())

# output operation 
# max_number_of coder
if n%2==0:
  max=(n**2)/2
else:
  max=(n**2)/2+1
# To print arr table from "C","."
big_list=[]
sub_list=[]
for i in range(n):
    for j in range(n):
        if (i+j) %2==0:
            sub_list.append("C")
        else:
            sub_list.append(".")
    # print(sub_list)
    big_list.append(sub_list)
    sub_list=[] #To reset the sub_list after adding it to big_list


# For printing The Excepted output
print(int(max))
for i in big_list:
        print("".join(i))

        

