#include <bits/stdc++.h>

using namespace std;

int main()
{
    int h,n,temp;
    cin >> h >> n;
    vector<vector<int>> matrica;
    vector<int> v(n, 1);
    int trenutni[n]={0}, prethodni[n];
    for(int i=0;i<n;i++)prethodni[i]=1;
    matrica.push_back(v);
    for(int i=0;i<h;i++){
        v.clear();
        for(int j=0;j<n;j++){
            cin >> temp;
            v.push_back(temp);
        }
        matrica.push_back(v);
    }
    bool uzIvicu=false, nasoDesno=false, paran=false;
    int desno, zbir=0;
    for(int i=1;i<=h;i++){
        if(i%2==0)paran=true;
        else paran=false;
        for(int j=0;j<n;j++){
            if(matrica[i][j]==1)trenutni[j]+=prethodni[j];
            else if(j==n-1){
                trenutni[j-1]+=prethodni[j];
                trenutni[j]=0;
            }
            else{
                int x=1;
                nasoDesno=false;
                uzIvicu=false;
                zbir=0;
                zbir+=prethodni[j];
                trenutni[j]=0;
                while(!nasoDesno){
                    if(matrica[i][j+x]==1){
                        nasoDesno=true;
                        desno=j+x;
                    }
                    else if(j+x==n-1){
                        nasoDesno=true;
                        uzIvicu=true;
                        desno=j+x;
                        zbir+=prethodni[j+x];
                        trenutni[j+x]=0;
                    }
                    else{
                        zbir+=prethodni[j+x];
                        trenutni[j+x]=0;
                        x++;
                    }
                }
                if(j==0)trenutni[desno]+=zbir;
                else if(uzIvicu)trenutni[j-1]+=zbir;
                else if(zbir%2==0){
                    trenutni[j-1]+=zbir/2;
                    trenutni[desno]+=zbir/2;
                }
                else if(paran){
                        trenutni[j-1]+=zbir/2;
                        trenutni[desno]+=zbir/2+1;
                }
                else{
                        trenutni[j-1]+=zbir/2+1;
                        trenutni[desno]+=zbir/2;
                }
                j=desno-1;
                if(uzIvicu)break;
            }
        }
        for(int i=0;i<n;i++){prethodni[i]=trenutni[i];trenutni[i]=0;}
    }
    for(int i=0;i<n;i++){
        cout << prethodni[i];
        if(i!=n-1)cout << " ";
    }
    return 0;
}