#include <bits/stdc++.h>
using namespace std;
int n, a[100010], nb, na;
struct Info {
  int x, y, z;
} b[30], an[100010];
void co(int x, int y) {
  an[++na].x = x;
  an[na].y = x + y;
  an[na].z = x + y + y;
  a[x] ^= 1;
  a[x + y] ^= 1;
  a[x + y + y] ^= 1;
}
void work1(int l, int r) {
  for (int i = 1; i <= 10; i++)
    for (int j = l; j + i + i <= r; j++) {
      b[nb].x = j;
      b[nb].y = j + i;
      b[nb].z = j + i + i;
      nb++;
    }
  for (int i = 0; i < (1 << nb); i++) {
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
    bool c = true;
    for (int j = l; j <= r; j++) {
      if (a[j] == 1) c = false;
    }
    if (c) {
      cout << "YES" << endl;
      for (int j = 0; j < nb; j++)
        if ((i & (1 << j)) != 0) co(b[j].x, b[j].y - b[j].x);
      return;
    }
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
  }
  cout << "NO" << endl;
  exit(0);
}
void work(int l, int r) {
  for (int i = 1; i <= 10; i++)
    for (int j = l; j + i + i <= r; j++) {
      b[nb].x = j;
      b[nb].y = j + i;
      b[nb].z = j + i + i;
      nb++;
    }
  for (int i = 0; i < (1 << nb); i++) {
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
    bool c = true;
    for (int j = l; j <= r; j++) {
      if (a[j] == 1) c = false;
    }
    if (c) {
      for (int j = 0; j < nb; j++)
        if ((i & (1 << j)) != 0) co(b[j].x, b[j].y - b[j].x);
      return;
    }
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
  }
}
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
  if (n <= 8) {
    work1(1, n);
  } else {
    cout << "YES" << endl;
    int no = 1;
    while (n - no + 1 > 10) {
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        ;
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 3, 1);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 3, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 3, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 3, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 2, 2);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 2, 3);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 2, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 2, 2);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 2, 1);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 2, 1);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 2, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 2, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 3, 2);
        ;
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 3);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 3);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 3);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 2);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 3);
        co(no + 2, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 3, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no, 4);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 3, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 1);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 2);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 4);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 3);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 2);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 4);
        co(no + 1, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 3, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 2, 4);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 2, 3);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 2, 3);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 1, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no, 5);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 1, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 1, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 3, 3);
      }
      no += 6;
    }
    if (n - no + 1 >= 8)
      work(no, n);
    else
      work(n - 7, n);
  }
  cout << na << endl;
  for (int i = 1; i <= na; i++)
    cout << an[i].x << ' ' << an[i].y << ' ' << an[i].z << endl;
  return 0;
}

### Prompt

Please provide a cpp coded solution to the problem described below:

You are given an array a of length n that consists of zeros and ones.

You can perform the following operation multiple times. The operation consists of two steps: 

  1. Choose three integers 1 ≤ x < y < z ≤ n, that form an arithmetic progression (y - x = z - y). 
  2. Flip the values a_x, a_y, a_z (i.e. change 1 to 0, change 0 to 1). 



Determine if it is possible to make all elements of the array equal to zero. If yes, print the operations that lead the the all-zero state. Your solution should not contain more than (⌊ n/3 ⌋ + 12) operations. Here ⌊ q ⌋ denotes the number q rounded down. We can show that it is possible to make all elements equal to zero in no more than this number of operations whenever it is possible to do so at all.

Input

The first line contains a single integer n (3 ≤ n ≤ 10^5) — the length of the array.

The second line contains n integers a_1, a_2, …, a_n (0 ≤ a_i ≤ 1) — the elements of the array.

Output

Print "YES" (without quotes) if the answer exists, otherwise print "NO" (without quotes). You can print each letter in any case (upper or lower).

If there is an answer, in the second line print an integer m (0 ≤ m ≤ (⌊ n/3 ⌋ + 12)) — the number of operations in your answer.

After that in (i + 2)-th line print the i-th operations — the integers x_i, y_i, z_i. You can print them in arbitrary order.

Examples

Input

5
1 1 0 1 1


Output

YES
2
1 3 5
2 3 4


Input

3
0 1 0


Output

NO

Note

In the first sample the shown output corresponds to the following solution: 

  * 1 1 0 1 1 (initial state); 
  * 0 1 1 1 0 (the flipped positions are the first, the third and the fifth elements); 
  * 0 0 0 0 0 (the flipped positions are the second, the third and the fourth elements). 



Other answers are also possible. In this test the number of operations should not exceed ⌊ 5/3 ⌋ + 12 = 1 + 12 = 13.

In the second sample the only available operation is to flip all the elements. This way it is only possible to obtain the arrays 0 1 0 and 1 0 1, but it is impossible to make all elements equal to zero.

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
int n, a[100010], nb, na;
struct Info {
  int x, y, z;
} b[30], an[100010];
void co(int x, int y) {
  an[++na].x = x;
  an[na].y = x + y;
  an[na].z = x + y + y;
  a[x] ^= 1;
  a[x + y] ^= 1;
  a[x + y + y] ^= 1;
}
void work1(int l, int r) {
  for (int i = 1; i <= 10; i++)
    for (int j = l; j + i + i <= r; j++) {
      b[nb].x = j;
      b[nb].y = j + i;
      b[nb].z = j + i + i;
      nb++;
    }
  for (int i = 0; i < (1 << nb); i++) {
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
    bool c = true;
    for (int j = l; j <= r; j++) {
      if (a[j] == 1) c = false;
    }
    if (c) {
      cout << "YES" << endl;
      for (int j = 0; j < nb; j++)
        if ((i & (1 << j)) != 0) co(b[j].x, b[j].y - b[j].x);
      return;
    }
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
  }
  cout << "NO" << endl;
  exit(0);
}
void work(int l, int r) {
  for (int i = 1; i <= 10; i++)
    for (int j = l; j + i + i <= r; j++) {
      b[nb].x = j;
      b[nb].y = j + i;
      b[nb].z = j + i + i;
      nb++;
    }
  for (int i = 0; i < (1 << nb); i++) {
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
    bool c = true;
    for (int j = l; j <= r; j++) {
      if (a[j] == 1) c = false;
    }
    if (c) {
      for (int j = 0; j < nb; j++)
        if ((i & (1 << j)) != 0) co(b[j].x, b[j].y - b[j].x);
      return;
    }
    for (int j = 0; j < nb; j++) {
      if ((i & (1 << j)) != 0) {
        a[b[j].x] ^= 1;
        a[b[j].y] ^= 1;
        a[b[j].z] ^= 1;
      }
    }
  }
}
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
  if (n <= 8) {
    work1(1, n);
  } else {
    cout << "YES" << endl;
    int no = 1;
    while (n - no + 1 > 10) {
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        ;
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 3, 1);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 3, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 3, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 3, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 2, 2);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 2, 3);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 2, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 2, 2);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 2, 1);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 2, 1);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 2, 1);
      }
      if (a[no] == 0 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 2, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 3, 2);
        ;
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 3);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 3);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 3);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no + 4, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 2);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 3);
        co(no + 2, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 3, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no, 4);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 3, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 5, 1);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no + 1, 1);
        co(no + 4, 2);
      }
      if (a[no] == 0 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no + 1, 1);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 2);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 4);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 3);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 2);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 4);
        co(no + 1, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 3, 1);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 2, 4);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 2, 3);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 3);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 0 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 2);
        co(no + 3, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 2, 3);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 1, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no + 1, 2);
        co(no, 5);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 3);
        co(no + 1, 4);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 2, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 0 && a[no + 3] == 1 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 4);
        co(no + 1, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 0 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 5, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 4, 2);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 0 &&
          a[no + 4] == 1 && a[no + 5] == 1) {
        co(no, 1);
        co(no + 4, 1);
      }
      if (a[no] == 1 && a[no + 1] == 1 && a[no + 2] == 1 && a[no + 3] == 1 &&
          a[no + 4] == 0 && a[no + 5] == 0) {
        co(no, 1);
        co(no + 3, 3);
      }
      no += 6;
    }
    if (n - no + 1 >= 8)
      work(no, n);
    else
      work(n - 7, n);
  }
  cout << na << endl;
  for (int i = 1; i <= na; i++)
    cout << an[i].x << ' ' << an[i].y << ' ' << an[i].z << endl;
  return 0;
}

```