func_code_string: #include <bits/stdc++.h>   using namespace std;   const int mod = 1e9 + 7;   const int maxn = 3e5 + 100;   int t, T, n, k;   int A[maxn];   int B[maxn];   int main() {     ios::sync_with_stdio(false);     cin >> T;     while (T--) {       cin >> n;       int sum = 0;       for (int i = 1; i <= n; i++) {         cin >> A[i];         sum += A[i];         B[i] = A[i];       }       if (sum % n) {         cout << -1 << endl;         continue;       }       sum /= n;       int cnt = 0;       for (int i = 2; i <= n; i++) {         int d = (A[i] + i - 1) / i * i - A[i];         if (d <= A[1]) {           A[i] += d;           A[1] -= d;           cnt++;         }         int x = A[i] / i * i;         A[1] += x;         A[i] -= x;       }       int ok = 1;       for (int i = n; i > 1; i--) {         if (A[i] > sum) ok = 0;         A[1] -= (sum - A[i]);         if (A[1] < 0) ok = 0;         if (!ok) break;       }       if (!ok) {         cout << -1 << endl;         continue;       }       if (ok) {         cout << 2 * (n - 1) + cnt << endl;         for (int i = 2; i <= n; i++) {           int d = (B[i] + i - 1) / i * i - B[i];           if (d <= B[1]) {             B[i] += d;             B[1] -= d;             cout << 1 <<     << i <<     << d << endl;           }           int x = B[i] / i * i;           B[1] += x;           B[i] -= x;           cout << i <<     << 1 <<     << x / i << endl;         }         for (int i = n; i > 1; i--) {           int x = sum - B[i];           B[1] -= x;           B[i] += x;           cout << 1 <<     << i <<     << x << endl;         }       }     }   }   