#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e4 + 5;
const int maxm = 2e6 + 5;
const int mod = 1e9 + 7;
const int seed = 10007;
int n, m;
bool nevis[maxn];
bool povis[maxn];
int main() {
  scanf("%d%d", &n, &m);
  int k = 0;
  bool flag = false;
  for (int i = 0; i < m; i++) {
    scanf("%d", &k);
    memset(nevis, 0, sizeof(nevis));
    memset(povis, 0, sizeof(povis));
    int tmp;
    bool aflag = true;
    for (int j = 0; j < k; j++) {
      scanf("%d", &tmp);
      if (aflag) {
        if (tmp < 0) {
          if (povis[-tmp]) {
            aflag = false;
          } else {
            nevis[-tmp] = true;
          }
        } else {
          if (nevis[tmp]) {
            aflag = false;
          } else {
            povis[tmp] = true;
          }
        }
      }
    }
    if (aflag) flag = aflag;
  }
  if (flag) {
    printf("YES\n");
  } else {
    printf("NO\n");
  }
  return 0;
}
