#include <cstdio>
#include <iostream>
#include <sstream>
#include <fstream>
#include <iomanip>
#include <algorithm>
#include <cmath>
#include <string>
#include <vector>
#include <list>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <bitset>
#include <numeric>
#include <climits>
#include <cfloat>
#include <functional>
using namespace std;

const string paint[3][5] = 
{
    { /* 小 */
        "..#..",
        ".###.",
        "..#..",
        ".....",
        "....."
    },
    { /* 中 */
        "..###",
        "..###",
        "..###",
        ".....",
        "....."
    },
    { /* 大 */
        "..#..",
        ".###.",
        "#####",
        ".###.",
        "..#.."
    }
};

const int dy[3] = {1, 1, 2};
const int dx[3] = {0, 1, 0};

bool solve(vector<vector<int> >& s, int n, int y, int x)
{
    if(x == 15){
        ++ y;
        x = 5;
        if(y == 15)
            return n == 0;
    }

    if(s[y][x] == 0)
        return solve(s, n, y, x+1);
    if(n == 0)
        return false;

    for(int k=0; k<3; ++k){
        bool ok = true;
        for(int i=0; i<5; ++i){
            for(int j=0; j<5; ++j){
                if(paint[k][i][j] == '#' && s[y+i][x+j-2] == 0)
                    ok = false;
            }
        }
        if(!ok)
            continue;

        for(int i=0; i<5; ++i){
            for(int j=0; j<5; ++j){
                if(paint[k][i][j] == '#')
                    -- s[y+i][x+j-2];
            }
        }

        if(solve(s, n-1, y, x)){
            cout << (x - 5 + dx[k]) << ' ' << (y - 5 + dy[k]) << ' ' << (k + 1) << endl;
            return true;
        }

        for(int i=0; i<5; ++i){
            for(int j=0; j<5; ++j){
                if(paint[k][i][j] == '#')
                    ++ s[y+i][x+j-2];
            }
        }
    }

    return false;
}

int main()
{
    int n;
    cin >> n;

    vector<vector<int> > s(20, vector<int>(20));
    for(int i=5; i<15; ++i){
        for(int j=5; j<15; ++j){
            cin >> s[i][j];
        }
    }

    solve(s, n, 5, 5);

    return 0;
}