#include <bits/stdc++.h>
using namespace std;
struct Data {
  int a;
  int b;
  int c;
  Data(int _a = 0, int _b = 0, int _c = 0) {
    a = _a;
    b = _b;
    c = _c;
  }
};
int main() {
  vector<Data> datas(1001, Data(-1, -1, -1));
  datas[0].a = datas[0].b = datas[0].c = 0;
  for (int i = 1; i <= 1000; i++) {
    if (i >= 3) {
      if (datas[i - 3].a != -1) {
        datas[i] = Data(datas[i - 3].a + 1, datas[i - 3].b, datas[i - 3].c);
        continue;
      }
    }
    if (i >= 5) {
      if (datas[i - 5].a != -1) {
        datas[i] = Data(datas[i - 5].a, datas[i - 5].b + 1, datas[i - 5].c);
        continue;
      }
    }
    if (i >= 7) {
      if (datas[i - 7].a != -1) {
        datas[i] = Data(datas[i - 7].a, datas[i - 7].b, datas[i - 7].c + 1);
        continue;
      }
    }
  }
  int t;
  scanf("%d", &t);
  for (int i = 1; i <= t; i++) {
    int n;
    scanf("%d", &n);
    if (datas[n].a == -1) {
      printf("-1\n");
    } else {
      printf("%d %d %d\n", datas[n].a, datas[n].b, datas[n].c);
    }
  }
  return 0;
}
