// #define _GLIBCXX_DEBUG
#include<bits/stdc++.h>
using namespace std;

int N;

int main(){
  ios::sync_with_stdio(false);
  std::cin.tie(nullptr);
  cout<<fixed<<setprecision(15);

  cin>>N;
  vector<int> S(N-1);
  vector<int> P(N, -1);
  cout<<"? "<<2<<' '<<N<<endl;
  cin>>S[1];
  P[0]=N*(N+1)/2 - S[1];
  cout<<"? "<<1<<' '<<N-1<<endl;
  cin>>S[0];
  P[N-1]=N*(N+1)/2 - S[0];
  for(int i=1;i<=N-3;i++){
    cout<<"? "<<i+2<<' '<<N<<endl;
    cin>>S[i+1];
    P[i]=S[i]-S[i+1];
  }
  int Sum=0;for(int i=0;i<N;i++)if(i!=N-2)Sum+=P[i];
  P[N-2]=N*(N+1)/2 - Sum;
  cout<<"! ";
  for(int i=0;i<N;i++)cout<<P[i]<<((i==N-1)?"":" ");
  cout<<endl;
}