#include <iostream>
using namespace std;
int n, start, naux, rasp, cnt, nrbs, bus[100001], i, rp;
int main()
{
	cin>>n;
	start=1;
	naux=n;
	while(cnt!=n)
	{
		
		if(naux<=start)
		{
			cnt++;
			nrbs++;
			bus[nrbs]=start;
			start++;
			naux=n;
			continue;
		}
		cout<<"1 "<<start<<" "<<naux<<"\n";
		cout.flush();
		cin>>rasp;
		if(rasp==0)
			naux=(start+naux)/2;
		if(rasp==1)
		{
			cnt+=(naux-start+1);
			nrbs++;
			bus[nrbs]=start;
			start=naux+1;
			naux=n;
		}
	}
	cout<<2<<" "<<nrbs<<" ";
	for(i=1; i<=nrbs; i++)
	{
		cout<<bus[i]<<" ";
		cout.flush();
	}
	
}