#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <vector>
using namespace std;
int n, m, maxup[600][600], sol;
char mat[600][600];

int main()
{
    int i, j, st;
    std::ios_base::sync_with_stdio(false);
    cin >> n >> m;
    for(i = 1; i <= n; ++i)
        cin >> (mat[i] + 1);
    for(i = 1; i <= n; ++i)
    {
        st = 0;
        for(j = 1; j <= m; ++j)
        {
            maxup[i][j] = (mat[i][j] == '1' ? (maxup[i - 1][j] + 1) : 0);
            if(mat[i][j] == '1')
            {
                if(maxup[i][j] < 2)
                    continue;
                if(st == 0)
                    st = j;
                else
                {
                    sol = max(sol, maxup[i][st] + maxup[i][j] + j - st - 1);
                    if(maxup[i][j] > maxup[i][st] + j - st)
						st = j;
				}
            }
            else
                st = 0;
        }
    }
    cout << sol << "\n";
    return 0;
}