#include <bits/stdc++.h>
bool comp_1(std::pair<int, int> p1, std::pair<int, int> p2) {
  return p1.first < p2.first;
}
bool comp_2(std::pair<int, int> p1, std::pair<int, int> p2) {
  return p1.second < p2.second;
}
void wypisz(std::vector<std::pair<int, int> > v) {
  for (auto it = v.begin(); it != v.end(); ++it) {
    std::cout << it->first << " " << it->second << '\n';
  }
}
int main() {
  int n, point, temp;
  std::cin >> n;
  std::cin >> temp;
  std::vector<std::pair<int, int> > pozycje;
  for (int i = 0; i < n; ++i) {
    std::cin >> point;
    ;
    pozycje.push_back(std::pair<int, int>(point, i));
  }
  std::sort(pozycje.begin(), pozycje.end(), comp_1);
  for (auto it = pozycje.begin(); it != pozycje.end(); ++it) {
    it->first = it - pozycje.begin();
  }
  std::sort(pozycje.begin(), pozycje.end(), comp_2);
  for (auto it = pozycje.begin(); it != pozycje.end(); ++it) {
    std::cout << it->first % 2 << " ";
  }
  std::cout << '\n';
  return 0;
}
