자그레브 시 당국은 새로운 주차장을 건설하기로 했습니다. 이를 위해 $N$개의 행과 $M$개의 열로 이루어진 직사각형 모양의 부지를 사용합니다. 손님을 유치하고 수익을 늘리기 위해 시장은 부지의 특정 위치에 분수, 우물, 식수대 등 다양한 형태의 조형물을 설치하기로 했습니다. 나머지 공간은 차량 이동을 위한 공간으로, 다음 두 가지 용도 중 하나로 재구성됩니다.
- 주차 공간
- 차량 자유 이동 공간
차량은 주차장 내에서 매 단계마다 인접한 네 방향(북, 남, 동, 서) 중 한 곳으로 이동할 수 있습니다. 주차장은 모든 주차 공간에서 언제든지 주차장 입구/출구(첫 번째 행과 첫 번째 열의 교차점)로 이동할 수 있도록 설계되어야 합니다. 즉, 주차된 차량이 다른 차량의 출차를 방해해서는 안 됩니다. 다시 말해, 주차된 모든 차량은 다른 차량을 이동시키지 않고도 주차장에서 나갈 수 있어야 합니다.
시장님을 도와 주어진 부지에 설치할 수 있는 최대 주차 공간의 수를 구하세요.
참고: 첫 번째 행과 첫 번째 열에 위치한 칸은 주차장 입구이며 주차 용도가 아니므로 항상 비어 있습니다.
입력
첫 번째 줄에는 부지의 행과 열의 수를 나타내는 자연수 $N$과 $M$($1 \le N \le 6, 1 \le M \le 100$)이 주어집니다. 다음 $N$개의 줄에는 부지의 형태를 나타내는 $M$개의 문자가 주어집니다.
- 'x'는 조형물이 설치될 위치를 나타냅니다.
- 그 외의 칸은 '.'으로 표시되며 주차장으로 재구성될 수 있는 공간입니다.
출력
첫 번째 줄에 가능한 최대 주차 공간의 수를 출력하세요.
예제
입력 1
3 3 ... .x. ...
출력 1
2
입력 2
3 3 ... ..x ...
출력 2
4
입력 3
3 6 .x..x. ..x.x. ......
출력 3
3
입력 4
4 5 ....x ....x ..x.. .x..x
출력 4
7
참고
네 번째 예제에 대한 설명: 가능한 주차 공간 배치 중 하나는 다음과 같습니다.
.PPPx ....x .Px.P PxP.x