#include long long int ans[1003]; int main() { int n; scanf("%d", &n); int v = n * (n + 1) / 2, u; int i; for (i = 0; i < n - 2; i++) { printf("? %d %d\n", i + 2, n); fflush(stdout); scanf("%d", &u); ans[i] = v - u; v = u; } printf("? 1 %d\n", n - 1); fflush(stdout); scanf("%d", &u); ans[n - 1] = n * (n + 1) / 2 - u; ans[n - 2] = n * (n + 1) / 2; for (i = 0; i < n - 2; i++) ans[n - 2] -= ans[i]; ans[n - 2] -= ans[n - 1]; printf("!"); for (i = 0; i < n; i++) printf(" %d", ans[i]); printf("\n"); return 0; }