Problem Statement
Hacky is tired of playing Counter Strike and decides to play a game with his Cat instead, who is infact smarter than he is (well, no surprises there). He gets multiple piles of coins and arranges them on his table. This is how it goes :
• In total there are 'N' number of piles.
• Each pile contains a particular number of coins.
• The game begins with one of the players withdrawing a bunch of coins from a pile of his choice.
• Each pile has a set associated with it that enlists the different number of coins that can be removed from it in one move.
• The game ends when there are no more coins left on the table, and the last player to remove the coins is declared the winner.

Assuming that both Hacky and his Cat play optimally, your task is to find out who the winner is. Keep in mind that being the over-confident noob that he is, Hacky lets his Cat start the game each time.

Input Specifications

The first line consists of the total number of test cases (<100). For each test case :
• The first line states the number of piles under consideration (0
• The second line contains the number of coins in each pile (0i<100).
• From there on, each subsequent line contains the number of valid moves for the each pile, followed by the valid moves for that pile (<100).

Output Specifications

Print out a single line stating who the winner is (Hacky/Cat).

Sample Input

2

2
10 5
2 2 3
5 1 2 3 4 5

5
2 4 6 8 10
1 1
3 1 2 3
5 1 2 3 4 5
7 1 2 3 4 5 6 7
9 1 2 3 4 5 6 7 8 9

Sample Output

Cat
Hacky

Problem Setter: Vishnu Mohandas

Languages: C,C++,Java

Time Limit: 3 Second(s)
Score: 100 Point(s)
Input File Limit: 50000 Bytes

Mode Judge

RankNameScore
1xyz0
2Ams0
3TIP0
4team420
5xyzz0
6asdasdasd0
7abcd0
8khankhan0
9Gabriel0
10gigel0