#include <bits/stdc++.h>
using namespace std;
const int N = 3e5 + 100;
int n, m, c[N];
vector<int> adj[N];
queue<int> q;
bool check(int cur) {
  int cnt = 0;
  for (int i = 0; i < adj[cur].size(); ++i) cnt += c[cur] == c[adj[cur][i]];
  return cnt > 1;
}
int main() {
  cin >> n >> m;
  for (int i = 0; i < m; ++i) {
    int u, v;
    scanf("%d", &u), scanf("%d", &v);
    --u, --v;
    adj[u].push_back(v);
    adj[v].push_back(u);
  }
  for (int i = 0; i < n; ++i)
    if (check(i)) q.push(i);
  while (q.size()) {
    int cur = q.front();
    q.pop();
    if (!check(cur)) continue;
    c[cur] ^= 1;
    for (int i = 0; i < adj[cur].size(); ++i)
      if (check(adj[cur][i])) q.push(adj[cur][i]);
  }
  for (int i = 0; i < n; ++i) printf("%d", c[i]);
}
