// Arup Guha
// 10/1/2022
// Solution to 2022 MAPS Contest Problem G: Less vs. Fewer

import java.util.*;
import java.io.*;

public class g {

	// Store these constants.
	final public static String[] cList = {"number","most","fewest","more","fewer","many","few"};
	final public static String[] mList = {"amount","most","least","more","less","much","little"};

	public static void main(String[] args) throws Exception {
	
		// Get basic info.
		Scanner stdin = new Scanner(System.in);
		StringTokenizer tok = new StringTokenizer(stdin.nextLine());
		int n = Integer.parseInt(tok.nextToken());
		int nQ = Integer.parseInt(tok.nextToken());
		HashSet<String> cSet = new HashSet<String>();
		HashSet<String> mSet = new HashSet<String>();
		
		// Go through words.
		for (int i=0; i<n; i++) {
			tok = new StringTokenizer(stdin.nextLine());
			String tmp = tok.nextToken();
			char type = tok.nextToken().charAt(0);
		
			// Add to appropriate set.
			if (type == 'c')
				cSet.add(tmp);
			else
				mSet.add(tmp);
		}
		
		// Form copies here.
		HashSet<String> cWords = new HashSet<String>();
		for (String s: cList) cWords.add(s);
		HashSet<String> mWords = new HashSet<String>();
		for (String s: mList) mWords.add(s);
		
		// Go through queries.
		for (int i=0; i<nQ; i++) {
			
			// Just look at first and last.
			tok = new StringTokenizer(stdin.nextLine());
			String first = tok.nextToken();
			String last = tok.nextToken();
			while (tok.hasMoreTokens()) last = tok.nextToken();
			
			// Two ways we're ok.
			boolean ok = false;
			if (cWords.contains(first) && cSet.contains(last)) ok = true;
			if (mWords.contains(first) && mSet.contains(last)) ok = true;
			
			// Ta da!
			if (ok)
				System.out.println("Correct!");
			else
				System.out.println("Not on my watch!");
		}
	}
}