#include <bits/stdc++.h>
using namespace std;
long long a, mm = 1e18;
vector<long long> v1;
int main() {
  long long s, d, s1 = 0, s2 = 0, o = 0, t = 0;
  cin >> a;
  string sss;
  for (long long i = 0; i < a - 1; i++) {
    cout << "? " << i + 1 << " " << i + 2 << endl;
    cin >> d;
    v1.push_back(d);
  }
  long long kk;
  cout << "? 1 3" << endl;
  cin >> kk;
  long long otv = v1[0] + v1[1] - kk;
  otv /= 2;
  cout << "! " << v1[0] - otv << " " << otv << " ";
  long long ch = otv;
  for (long long i = 1; i < v1.size(); i++) {
    cout << v1[i] - ch << " ";
    ch = v1[i] - ch;
  }
  return 0;
}
