#include <iostream>

using namespace std;

int v[100003];

struct punct{
    int nr, in, out;
};

punct x[100002];

int main()
{
    int n, m, a, b, val, tip, poz, nn = 0;

    cin >> n;
    cin >> m;

    v[0] = v[n + 1] = -1;

    for (int i = 1; i <= m; i++)
    {
         cin >> tip;

        if (tip == 1)
        {
            cin >> a >> b;

            for (int j = a; j <= b; j++)
            {
                v[j] = !v[j];
            }

        }
        else
        {
            cin >> poz;

            val = v[poz];
            a = poz;

            while (v[a] == val)
                a--;
            if (v[a] != val)
                a++;

            b = poz;

            while (v[b] == val)
                b++;
            if (v[b] != val)
                b--;

            x[++nn].nr = val;
            x[nn].in = a;
            x[nn].out = b;
        }
    }

    for (int i = 1; i <= nn; i++)
    {
        cout << x[i].nr << " " << x[i].in << " " << x[i].out << "\n";
    }
}