#include <bits/stdc++.h>
using namespace std;
#define int long long
const int MOD = 1e9 + 7;
const double PI = acos(-1);
const int INF = 4e18;
int n;
int examine(int x,int y) {
if(x < 1 || x > n || y < 1 || y > n) return 0;
cout<<"examine "<<x<<" "<<y<<endl;
string ans;
cin>>ans;
return (ans == "true");
}
void solve() {
int row,col;
cin >> n >> row >> col;
int l=1,r=col,res1=0;
while (l<=r) {
int mid=(l+r)/2;
if (examine(row,mid)) {
res1=mid;
r=mid-1;
} else l=mid+1;
}
l=col;
r=n;
int res2=0;
while (l<=r) {
int mid=(l+r)/2;
if (examine(row,mid)) {
res2=mid;
l=mid+1;
} else r=mid-1;
}
int size=res2-res1+1;
if(size%3==0){
int mid=(res1+res2)/2;
if(examine(row,mid)==0) size/=3;
}
if(size%5==0){
if(examine(row,res1+size/5)==0) size/=5;
}
l=max(col-size+1,(int)1);
r=col;
int res4=0;
while (l<=r) {
int mid=(l+r)/2;
if (examine(row,mid)) {
res4=mid;
r=mid-1;
} else l=mid+1;
}
l=max(row-size+1,(int)1);
r=row;
int res5=0;
while (l<=r) {
int mid=(l+r)/2;
if (examine(mid,col)) {
res5=mid;
r=mid-1;
} else l=mid+1;
}
int mid1=res4+size/2,mid2=res5+size/2;
while(mid2+2*size<=n){
if (!examine(mid1,mid2+2*size)) break;
mid2+=2*size;
}
while(mid1+2*size<=n) {
if (!examine(mid1+2*size,mid2)) break;
mid1+=2*size;
}
while(mid1+size<=n && mid2+size<=n) {
if (!examine(mid1+size,mid2+size)) break;
mid1+=size;
mid2+=size;
}
mid1-=size*2;
mid2-=size*2;
cout<<"solution "<<mid1<<" "<<mid2;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(0);
int t = 1;
// cin >> t;
while (t--) solve();
return 0;
}