seen = [None] * (1000 * 11 + 1000 * 1) for i in range(1, 100): for j in range(1, 100): if max(i, j) >= 2 * min(i, j): continue seen[i * 1 + j * 11] = (i, j) # for v in range(1111 + 1): # if not seen[v]: # print(v) for _ in range(int(input())): n = int(input()) if n % 8: print(-1) continue n //= 8 if n <= 1000 and not seen[n]: print(-1) continue # n - 111x <= 1000 # 111x >= n - 1000 x = (n - 1000 + 110) // 111 ans = list(seen[n - 111 * x]) ans[0] += seen[111][0] * x ans[1] += seen[111][1] * x print(*ans, 0, 0)