#include <bits/stdc++.h>
using namespace std;
const int maxN = 5e3 + 5;
long long n, ss;
long long s[maxN], a[maxN];
long long request(const long long x, const long long y) {
  cout << "? " << x << ' ' << y << '\n';
  long long res;
  cin >> res;
  return res;
}
void answer() {
  cout << "! ";
  for (int i = (1), _b = (n); i <= (_b); i++) cout << a[i] << ' ';
  cout << '\n';
}
int main() {
  cin >> n;
  for (int i = (2), _b = (n); i <= (_b); i++) s[i] = request(1, i);
  ss = request(2, 3);
  a[1] = (s[2] + s[3] - ss) >> 1;
  for (int i = (2), _b = (n); i <= (_b); i++) a[i] = s[i] - a[1];
  answer();
  return 0;
}
