#include using namespace std; long dp [101][101]; char s [101][101]; int main () { long n, m, i, j, maxim, maxx2= 0; scanf ("%ld%ld\n", &n, &m); for (i = 0; i < n; i ++) gets (s [i]); if (s [0][0] == 1) { dp [0][0] = 1; if (dp [0][0] > maxx2) maxx2 = dp [0][0]; } for (i = 0; i < n; i ++) for (j = 0; j < m; j ++) { if (i == 0 && j == 0) continue; if (s [i][j] == '.') { maxim = 0; if (i - 1 >= 0 && dp [i - 1][j] > maxim && s [i - 1][j] == '.') maxim = dp [i - 1][j]; if (j - 1 >= 0 && dp [i][j - 1] > maxim && s [i][j - 1] == '.') maxim = dp [i][j - 1]; if (maxim == 0) dp [i][j] = 0; else dp [i][j] = maxim + 1; } if (s [i][j] == '&') dp [i][j] = 0; if (dp [i][j] > maxx2) maxx2 = dp [i][j]; } printf ("%ld\n", maxx2); return 0; }