#include using namespace std; int x[10001], y[10001], v[10001], a[101][101]; int main() {int n, m, i, j, max = 0, l, r; char k; cin >> n >> m; for (i = 1; i <= n; i++) { for (j = 1; j <= m; j++) { cin >> k; if (k == '.') a[i][j] = 0; else a[i][j] = 1; } } l = 1; r = 1; x[1] = 1; y[1] = 1; if (!a[1][1]) v[1] = 1; while (l <= r) { if (v[l] > max) max = v[l]; i = x[l]; j = y[l]; if ((!a[i + 1][j]) && (i < n)) { x[++r] = i + 1; y[r] = j; v[r] = v[l] + 1; } if ((!a[i][j + 1]) && (j < m)) { x[++r] = i; y[r] = j + 1; v[r] = v[l] + 1; } l++; } cout << max << '\n'; return 0; }