import java.util.*;

public class Problem156 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int n = sc.nextInt();
		int m = sc.nextInt();
		int[] answers = new int[n];
		for (int i = 0; i < n; i++) {
			String ans = sc.next();
			int answer = Integer.parseInt(ans.substring(1));
			if (ans.charAt(0) == '-') {
				answer = -answer;
			}
			answers[i] = answer;
		}
		
		int[] counts = new int[n];
		int countM = m;
		
		for (int i = 0; i < n; i++) {
			int ans = answers[i];
			if (ans > 0) {
				counts[ans - 1]++;
			} else {
				counts[-ans - 1]--;
				countM--;
			}
		}
		
		TreeSet<Integer> suspects = new TreeSet<Integer>();
		for (int i = 0; i < n; i++) {
			if (counts[i] == countM) {
				suspects.add(i);
			}
		}
		
		for (int i = 0; i < n; i++) {
			int ans = answers[i];
			if (ans > 0) {
				if (suspects.contains(ans - 1)) {
					if (suspects.size() == 1) {
						System.out.println("Truth");
					} else {
						System.out.println("Not defined");
					}
				} else {
					System.out.println("Lie");
				}
			} else {
				if (suspects.contains(-ans - 1)) {
					if (suspects.size() == 1) {
						System.out.println("Lie");
					} else {
						System.out.println("Not defined");
					}
				} else {
					System.out.println("Truth");
				}
			}
		}
	}
}
