// amiD
#include <bits/stdc++.h>
#define ll long long int
#define pb push_back
#define endl '\n'
#define Endl '\n'
#define fi first
#define ii pair<ll,ll>
#define se second
#define ld long double
#define mod 1000000007
#define popcount __builtin_popcountll
#define PI acos(-1.0)
using namespace std;
bool d[33];
int main(){
    ll a=0, b=0;
    for(int i=0;i<30;i++){
        ll y=(1<<i);
        printf("? %lld %lld\n", y, y);
        fflush(stdout);
        int x;
        scanf("%d",&x);
        if(x!=0)d[i]=1;
        if(x==1){
            a|=(1<<i);
        }
        if(x==-1){
            b|=(1<<i);
        }
    }
    for(int i=0;i<30;i++){
        if(d[i])continue;
        ll y=(1<<i);
        printf("? %lld 0\n", y);
        fflush(stdout);
        int x;
        scanf("%d",&x);
        if(x==0)continue;
        b|=(1<<i);
        a|=(1<<i);
    }
    // sdfsfsdfdsf
    cout<<"! "<<a<<" "<<b<<endl;
    fflush(stdout);
    return 0;
}