#include <bits/stdc++.h>
using namespace std;
const int INF = 1000000000;
const long long INF_LL = 1000000000000000000LL;
const double pi = 2 * acos(0.0);
template <class T>
void smin(T& a, T b) {
  if (a > b) a = b;
}
template <class T>
void smax(T& a, T b) {
  if (a < b) a = b;
}
template <class T>
T gcd(T a, T b) {
  return b == 0 ? a : gcd(b, a % b);
}
template <class T>
T sqr(T a) {
  return a * a;
}
template <class T>
void outp(const vector<T>& v) {
  for (int i(0), _b(int((v).size())); i < _b; ++i)
    cout << v[i] << (i + 1 == int((v).size()) ? '\n' : ' ');
}
template <class T>
void outp(T* v, int n) {
  for (int i(0), _b(n); i < _b; ++i) cout << *v++ << (i + 1 == n ? '\n' : ' ');
}
int n, m;
int a[105][105];
int sh[105], sv[105];
bool inv_h[105], inv_v[105];
bool pos_h, pos_v;
inline void invert_row(int i) {
  for (int j(0), _b(m); j < _b; ++j) {
    sv[j] -= 2 * a[i][j];
    a[i][j] = -a[i][j];
    if (sv[j] < 0) pos_v = false;
  }
  sh[i] = -sh[i];
  inv_h[i] = !inv_h[i];
}
inline void invert_col(int j) {
  for (int i(0), _b(n); i < _b; ++i) {
    sh[i] -= 2 * a[i][j];
    a[i][j] = -a[i][j];
    if (sh[i] < 0) pos_h = false;
  }
  sv[j] = -sv[j];
  inv_v[j] = !inv_v[j];
}
int main() {
  scanf("%d%d", &n, &m);
  for (int i(0), _b(n); i < _b; ++i)
    for (int j(0), _b(m); j < _b; ++j) {
      scanf("%d", &a[i][j]);
      sh[i] += a[i][j];
      sv[j] += a[i][j];
    }
  while (!pos_h || !pos_v) {
    if (!pos_h) {
      pos_h = true;
      for (int i(0), _b(n); i < _b; ++i)
        if (sh[i] < 0) invert_row(i);
    } else {
      pos_v = true;
      for (int j(0), _b(m); j < _b; ++j)
        if (sv[j] < 0) invert_col(j);
    }
  }
  int num_inv_h = 0, num_inv_v = 0;
  for (int i(0), _b(n); i < _b; ++i) num_inv_h += inv_h[i];
  for (int j(0), _b(m); j < _b; ++j) num_inv_v += inv_v[j];
  printf("%d ", num_inv_h);
  for (int i(0), _b(n); i < _b; ++i)
    if (inv_h[i]) printf("%d ", i + 1);
  printf("\n");
  printf("%d ", num_inv_v);
  for (int j(0), _b(m); j < _b; ++j)
    if (inv_v[j]) printf("%d ", j + 1);
  printf("\n");
  return 0;
}
