#include <bits/stdc++.h>
using namespace std;
const int N = 105;
int a[N][N];
int r[N], c[N];
int fr[N], fc[N];
int main(void) {
  int n, m;
  scanf("%d%d", &n, &m);
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= m; j++) {
      scanf("%d", &a[i][j]);
      r[i] += a[i][j];
      c[j] += a[i][j];
    }
  int change = 1;
  while (change) {
    change = 0;
    for (int i = 1; i <= n; i++)
      if (r[i] < 0) {
        for (int j = 1; j <= m; j++) {
          c[j] -= a[i][j] * 2;
          a[i][j] = -a[i][j];
        }
        r[i] = -r[i];
        fr[i] ^= 1;
        change = 1;
      }
    for (int i = 1; i <= m; i++)
      if (c[i] < 0) {
        for (int j = 1; j <= n; j++) {
          r[j] -= a[j][i] * 2;
          a[j][i] = -a[j][i];
        }
        c[i] = -c[i];
        fc[i] ^= 1;
        change = 1;
      }
  }
  int frn = 0, fcn = 0;
  for (int i = 1; i <= n; i++) frn += fr[i];
  for (int i = 1; i <= m; i++) fcn += fc[i];
  printf("%d", frn);
  for (int i = 1; i <= n; i++)
    if (fr[i]) printf(" %d", i);
  puts("");
  printf("%d", fcn);
  for (int i = 1; i <= m; i++)
    if (fc[i]) printf(" %d", i);
  puts("");
  return 0;
}
