#include <bits/stdc++.h>
using namespace std;
long double PI = acosl(-1);
const long long infl = 1e17;
const int inf = 2e9 + 100;
const int nmax = 2e5 + 20;
const int MAXLG = log2(nmax) + 1;
long long d(pair<long long, long long> a, pair<long long, long long> b) {
  return (a.first - b.first) * (a.first - b.first) +
         (a.second - b.second) * (a.second - b.second);
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n;
  cin >> n;
  long long mod = 2;
  vector<pair<long long, long long> > pnt(n);
  for (pair<long long, long long> &z : pnt) cin >> z.first >> z.second;
  vector<int> A;
  pair<long long, long long> p = pnt[0];
  while (A.size() == 0) {
    A.push_back(1);
    for (int i = 1; i < n; i++) {
      if (d(p, pnt[i]) % mod == 0) A.push_back(i + 1);
    }
    if (A.size() == n) A.clear();
    mod *= 2;
  }
  cout << A.size() << "\n";
  for (int x : A) cout << x << " ";
}
