#include <bits/stdc++.h>
using namespace std;
const long long N = 1e6 + 5;
long long n, a, b, c;
long long ans[N];
long long interact(long long i, long long j) {
  cout << "? " << i << " " << j << endl;
  long long x;
  cin >> x;
  return x;
}
int32_t main() {
  long long i, j, n, m, k;
  cin >> n;
  long long ftwo, stwo, ttwo;
  ftwo = interact(1, 2);
  stwo = interact(2, 3);
  ttwo = interact(1, 3);
  vector<long long> arr(n + 1);
  arr[2] = ftwo + stwo - ttwo;
  arr[2] /= 2;
  arr[1] = ftwo - arr[2];
  arr[3] = stwo - arr[2];
  for (i = 4; i <= n; i++) {
    long long num = interact(i - 1, i);
    arr[i] = num - arr[i - 1];
  }
  cout << "! ";
  for (i = 1; i <= n; i++) cout << arr[i] << " ";
  return 0;
}
