#include #include using namespace std; using namespace atcoder; #define rep(i, n) for(int i=0;i<(n);++i) #define rep1(i, n) for(int i=1;i<=(n);i++) #define ll long long using mint = modint998244353; using P = pair; using lb = long double; using T = tuple; #ifdef LOCAL # include # define dbg(...) debug_print::multi_print(#__VA_ARGS__, __VA_ARGS__) #else # define dbg(...) (static_cast(0)) #endif int query(int x, int y) { cout << 1 << " " << x << " " << y << endl; ll d; cin >> d; return d; } int main() { int n; cin >> n; int l = -1e8; int r = 1e8; int y = 0; while(r-l>1) { int li = (l*2+r)/3; int ri = (r*2+l)/3; ll d1 = query(li,y); ll d2 = query(ri,y); if(d11) { int li = (l*2+r)/3; int ri = (r*2+l)/3; ll d1 = query(x,li); ll d2 = query(x,ri); if(d1