Problem: One day, liouzhou_101 got a chat record of Freda and Rainbow. Out of curiosity, he wanted to know which sentences were said by Freda, and which were said by Rainbow. According to his experience, he thought that Freda always said "lala." at the end of her sentences, while Rainbow always said "miao." at the beginning of his sentences. For each sentence in the chat record, help liouzhou_101 find whose sentence it is. 

Input

The first line of the input contains an integer n (1 ≤ n ≤ 10), number of sentences in the chat record. Each of the next n lines contains a sentence. A sentence is a string that contains only Latin letters (A-Z, a-z), underline (_), comma (,), point (.) and space ( ). Its length doesn’t exceed 100.

Output

For each sentence, output "Freda's" if the sentence was said by Freda, "Rainbow's" if the sentence was said by Rainbow, or "OMG>.< I don't know!" if liouzhou_101 can’t recognize whose sentence it is. He can’t recognize a sentence if it begins with "miao." and ends with "lala.", or satisfies neither of the conditions. 

Examples

Input

5
I will go to play with you lala.
wow, welcome.
miao.lala.
miao.
miao .


Output

Freda's
OMG&gt;.&lt; I don't know!
OMG&gt;.&lt; I don't know!
Rainbow's
OMG&gt;.&lt; I don't know!

Solution (in PYTHON):

Solution:
from __future__ import division;
from bisect import *;
from fractions import Fraction;
import sys;
from math import *;
from fractions import *;
import io;
import re;

INF = 987654321987654321987654321;

def readint(delimiter=' ') :
	return map(int, raw_input().split(delimiter));

def readstr(delimiter=' ') :
	return raw_input().split(delimiter);

def readfloat(delimiter=' ') :
	return map(float, raw_input().split(delimiter));

def index(a, x):
	'Locate the leftmost value exactly equal to x'
	i = bisect_left(a, x)
	if i != len(a) and a[i] == x:
		return i
	raise ValueError

def find_lt(a, x):
	'Find rightmost value less than x'
	i = bisect_left(a, x)
	if i:
		return a[i-1]
	raise ValueError

def find_le(a, x):
	'Find rightmost value less than or equal to x'
	i = bisect_right(a, x)
	if i:
		return a[i-1]
	raise ValueError

def find_gt(a, x):
	'Find leftmost value greater than x'
	i = bisect_right(a, x)
	if i != len(a):
		return a[i]
	raise ValueError

def find_ge(a, x):
	'Find leftmost item greater than or equal to x'
	i = bisect_left(a, x)
	if i != len(a):
		return a[i]
	raise ValueError

def bin_search(a, x, left, right) :

	while left<=right :
		mid = (left + right)//2;
		
		if a[mid] == x :
			return mid;
		elif a[mid] < x :
			left = mid + 1; 
		elif a[mid] > x :
			right = mid - 1;
					   
		pass
	
	return -1;
	pass

def printf(format, *args):
	"""Format args with the first argument as format string, and write.
	Return the last arg, or format itself if there are no args."""
	sys.stdout.write(str(format) % args)
	return if_(args, lambda: args[-1], lambda: format)

from datetime import date;

if __name__ == '__main__':

	n = readint()[0];

	for ii in xrange(n) :
		s = raw_input();
		lala = s.endswith('lala.');
		miao = s.startswith('miao.');
		if lala == miao :
			print "OMG>.< I don't know!";
		elif lala :
			print "Freda's";
		elif miao :
			print "Rainbow's";
		
			


	pass