#define ACPC_PPP
#define _CRT_SECURE_NO_WARNINGS

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <cstring>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <list>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>
#include <unordered_set>
#include <unordered_map>
#include <array>
#include <cassert>
#include <bitset>
#include <cstdint>
using namespace std;
using LL = long long;

#define GEKIHIEEE ~~~

LL mex(LL a, LL b) {
	if (a != 0 && b != 0) {
		return 0;
	}
	if (a != 1 && b != 1) {
		return 1;
	}
	return 2;
}

LL K;
LL grundy(LL R, LL L, LL v1, LL v2, LL N) {
	if (L < N && N <= R) {
		if ((R - N) % 2 == 0) {
			return v1;
		}
		else {
			return v2;
		}
	}
	LL nv1 = mex((R - L) % 2 ? v1 : v2, 
		(R - (R / 2) * 2) == 0 ? v1 : v2);
	LL nv2 = mex(nv1, 
		(R - (R / 2) * 2) == 0 ? v1 : v2);
	return grundy(L, L / 2, nv1, nv2, N);
}
LL solve(LL N, LL M) {
	return grundy(M, M / 2, 0, 1, N);
}

int main() {
	cin >> K;
	LL ans = 0;
	
	for (int i = 0; i < K; ++i) {
		LL N, M;
		cin >> N >> M;
		ans ^= solve(N, M);
		//cout << solve(N, M) << endl;
	}
	


	/*for (int i = 1; i <= 10; ++i) {
		for (int j = i; j <= 10; ++j) {
			cout << solve(i, j) << " ";
		}
		cout << endl;
	}*/
	//cout << endl;
	//for (int i = 1; i <= 21; ++i)cout << solve(i, 21) << " ";
	cout << (ans ? "mo3tthi" : "tubuann") << endl;
	return 0;
}
