#include <bits/stdc++.h>
using namespace std;
const long double pi = acos(-1.0);
const long double eps = 1e-9;
const int MAXN = 310000;
vector<int> g[MAXN];
int u[MAXN];
int ans[MAXN];
int n, m;
int count(int v) {
  int r = 0;
  for (long long i = 0; i < g[v].size(); ++i) {
    int next = g[v][i];
    if (u[next] && ans[next] == ans[v]) ++r;
  }
  return r;
}
void f(int v, int c) {
  ans[v] = c;
  for (long long i = 0; i < g[v].size(); ++i) {
    int next = g[v][i];
    if (u[next] && count(next) > 1) f(next, 1 - c);
  }
}
int main() {
  cin >> n >> m;
  for (long long i = 0; i < m; ++i) {
    int x, y;
    scanf("%d%d", &x, &y);
    g[x].push_back(y);
    g[y].push_back(x);
  }
  for (int v = 1; v <= n; ++v) {
    int c1 = 0;
    int c2 = 0;
    u[v] = true;
    for (long long i = 0; i < g[v].size(); ++i) {
      int next = g[v][i];
      if (u[next] == true && ans[next] == 0) c1++;
      if (u[next] == true && ans[next] == 1) c2++;
    }
    if (c1 == 1 || c2 > 1)
      f(v, 0);
    else
      f(v, 1);
  }
  for (int i = 1; i <= n; ++i) {
    if (ans[i] == 0)
      printf("0");
    else
      printf("1");
  }
  printf("\n");
}
