import collections,sys,math,functools,operator,itertools,bisect,heapq,decimal,string,time,random #sys.setrecursionlimit(10**9) #sys.set_int_max_str_digits(0) #input = sys.stdin.readline #n = int(input()) #alist = list(map(int,input().split())) #alist = [] #s = input() n = int(input()) grid = [list(input().rstrip()) for i in range(n)] ans = 0 for i in range(n): cnt = 0 d = 0 for j in range(n): if grid[i][j] == 'A': cnt += 1 elif grid[i][j] == '.': d += 1 if cnt == n-1 and d == 1: ans += 1 for j in range(n): cnt = 0 d = 0 for i in range(n): if grid[i][j] == 'A': cnt += 1 elif grid[i][j] == '.': d += 1 if cnt == n-1 and d == 1: ans += 1 cnt = 0 d = 0 for i in range(n): if grid[i][i] == 'A': cnt += 1 elif grid[i][i] == '.': d += 1 if cnt == n-1 and d == 1: ans += 1 cnt = 0 d = 0 for i in range(n): if grid[i][~i] == 'A': cnt += 1 elif grid[i][~i] == '.': d += 1 if cnt == n-1 and d == 1: ans += 1 print(ans)