#include using namespace std; using i64 = long; signed main() { int n; cin >> n; vector a(n); for(auto& x : a) cin >> x; vector diff(n, 0); for(int i = 1; i < n; ++i) diff[i] = (a[0] - a[i]) * (n - 1); auto f = [&](int val){ i64 sum = 0; for(int i = 1; i < n; ++i) sum += val + diff[i]; return sum / (n - 1) <= a[0]; }; int ok = -1e9, ng = 1e9; while(abs(ok - ng) > 1){ int mid = (ok + ng) / 2; (f(mid) ? ok : ng) = mid; } i64 sum = 0; for(int i = 1; i < n; ++i) sum += ok + diff[i]; if(sum != a[0] * (n - 1)){ cout << -1 << endl; return 0; } for(int i = 0; i < n; ++i) cout << ok + diff[i] << " \n"[i == n - 1]; }