#include <bits/stdc++.h>
using namespace std;
int n, m, cnt = 0, x, y, ma = INT_MIN;
char a[1010][1010];
int main() {
cin >> n >> m;
for (int i = 0; i <= 1001; i++) {
for (int j = 0; j <= 1001; j++) {
a[i][j] = '.';
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
cin >> a[i][j];
}
}
bool s = 1;
for (int i = 1; i <= n && s; i++) {
for (int j = 1; j <= m && s; j++) {
if (a[i][j] == '#' && a[i - 1][j] == '.' && a[i + 1][j] == '.' && a[i][j - 1] == '.' && a[i][j + 1] == '.'
&& s) {
int tmp = 1;
if (i == 1 && j == 1) {
if (a[i + 2][j] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
if (a[i][j + 2] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
} else if (i == n && j == m) {
if (a[i - 2][j] == '.' && a[i - 1][j - 1] == '.') {
tmp++;
}
if (a[i][j - 2] == '.' && a[i - 1][j - 1] == '.') {
tmp++;
}
} else if (i == 1 && j == m) {
if (a[i + 2][j] == '.' && a[i + 1][j - 1] == '.') {
tmp++;
}
if (a[i][j - 2] == '.' && a[i + 1][j - 1] == '.') {
tmp++;
}
} else if (i == n && j == 1) {
if (a[i - 2][j] == '.' && a[i - 1][j + 1] == '.') {
tmp++;
}
if (a[i][j + 2] == '.' && a[i - 1][j + 1] == '.') {
tmp++;
}
} else if (i == 1) {
if (a[i ][j - 2] == '.' && a[i + 1][j - 1] == '.') {
tmp++;
}
if (a[i][j + 2] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
if (a[i + 1][j - 1] == '.' && a[i + 1][j + 1] == '.' && a[i + 2][j] == '.') {
tmp++;
}
} else if (i == n) {
if (a[i][j - 2] == '.' && a[i - 1][j - 1] == '.') {
tmp++;
}
if (a[i][j + 2] == '.' && a[i - 1][j + 1] == '.') {
tmp++;
}
if (a[i - 1][j - 1] == '.' && a[i - 1][j + 1] == '.' && a[i - 2][j] == '.') {
tmp++;
}
} else if (j == m) {
if (a[i + 2][j] == '.' && a[i + 1][j - 1] == '.') {
tmp++;
}
if (a[i - 2][j] == '.' && a[i - 1][j - 1] == '.') {
tmp++;
}
if (a[i + 1][j - 1] == '.' && a[i - 1][j - 1] == '.' && a[i][j - 2] == '.') {
tmp++;
}
} else if (j == 1) {
if (a[i - 2][j] == '.' && a[i + 1][j - 1] == '.') {
tmp++;
}
if (a[i + 2][j] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
if (a[i + 1][j - 1] == '.' && a[i + 1][j + 1] == '.' && a[i][j + 2] == '.') {
tmp++;
}
} else {
if (a[i - 2][j] == '.' && a[i - 1][j - 1] == '.' && a[i - 1][j + 1] == '.') {
tmp++;
}
if (a[i - 1][j - 1] == '.' && a[i][j - 2] == '.' && a[i - 1][j + 1] == '.') {
tmp++;
}
if (a[i + 1][j - 1] == '.' && a[i + 2][j] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
if (a[i - 1][j + 1] == '.' && a[i][j + 2] == '.' && a[i + 1][j + 1] == '.') {
tmp++;
}
}
if (tmp > ma) {
x = i;
y = j;
ma = tmp;
}
}
}
}
a[x][y] = '.';
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
if (a[i][j] == '.' && a[i - 1][j] == '.' && a[i + 1][j] == '.' && a[i][j - 1] == '.' && a[i][j + 1] == '.'
) {
cnt++;
}
}
}
cout << cnt;
return 0;
}