#include <bits/stdc++.h>
using namespace std;
int n, m, A, B, a[501000], sum, p, x[501000], y[501000], z[501000];
inline void read(int &x) {
  char c;
  x = 0;
  int f = 1;
  while (!isdigit(c)) {
    if (c == '-') f = -1;
    c = getchar();
  }
  while (isdigit(c)) x = x * 10 + c - '0', c = getchar();
  x *= f;
}
int main() {
  read(n);
  for (int i = 1; i <= n; ++i) {
    read(a[i]);
    sum ^= a[i];
  }
  if (n % 2 == 0 && sum) {
    printf("NO");
    return 0;
  }
  for (int i = 3; i <= n; i += 2) x[++p] = i - 2, y[p] = i - 1, z[p] = i;
  for (int i = 2; i < n; i += 2) x[++p] = i - 1, y[p] = i, z[p] = n;
  printf("YES\n%d\n", p);
  for (int i = 1; i <= p; i++) printf("%d %d %d\n", x[i], y[i], z[i]);
  return 0;
}
