#include <bits/stdc++.h>
using namespace std;
inline int gi() {
  int w = 0, q = 0;
  char c = getchar();
  while ((c < '0' || c > '9') && (c != '-')) c = getchar();
  if (c == '-') q = 1, c = getchar();
  while (c >= '0' && c <= '9') w = w * 10 + c - '0', c = getchar();
  return q ? -w : w;
}
int n, a, b, c;
int ans[10000];
int main() {
  n = gi();
  cout << "? 1 2" << endl;
  fflush(stdout);
  a = gi();
  cout << "? 1 3" << endl;
  fflush(stdout);
  b = gi();
  cout << "? 2 3" << endl;
  fflush(stdout);
  c = gi();
  ans[3] = b - a, ans[2] = c - ans[3], ans[1] = a - ans[2];
  for (int i = 4; i <= n; ++i) {
    cout << "? 1 " << i << endl;
    fflush(stdout);
    ans[i] = gi() - b;
    b += ans[i];
  }
  printf("!");
  for (int i = 1; i <= n; ++i) printf(" %d", ans[i]);
  return 0;
}
