#include <bits/stdc++.h>
using namespace std;
int type[310000];
int kol[310000];
int e[310000][5];
bool cmp(int a, int b) {
  if (kol[a] == kol[b]) return a < b;
  return kol[a] > kol[b];
}
int main() {
  int n, m;
  scanf("%d%d", &n, &m);
  for (int i = 0; i < m; ++i) {
    int a, b;
    scanf("%d%d", &a, &b);
    e[a][++e[a][0]] = b;
    e[b][++e[b][0]] = a;
  }
  set<int, bool (*)(int, int)> queue(cmp);
  set<int, bool (*)(int, int)>::iterator it;
  for (int i = 1; i <= n; ++i) kol[i] = e[i][0];
  for (int i = 1; i <= n; ++i) queue.insert(i);
  while (1) {
    int u = *(queue.begin());
    if (kol[u] <= 1) break;
    it = queue.begin();
    queue.erase(it);
    for (int i = 1; i <= e[u][0]; ++i)
      if (type[u] == type[e[u][i]]) {
        --kol[u];
        it = queue.find(e[u][i]);
        queue.erase(it);
        --kol[e[u][i]];
        queue.insert(e[u][i]);
      } else {
        ++kol[u];
        it = queue.find(e[u][i]);
        queue.erase(it);
        ++kol[e[u][i]];
        queue.insert(e[u][i]);
      }
    type[u] = 1 - type[u];
    queue.insert(u);
  }
  for (int i = 1; i <= n; ++i) printf("%d", type[i]);
}
