import java.util.HashSet;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int m = sc.nextInt();
        int[][] opin = new int[n][2];
        String[] s = new String[n];
        int[] oo = new int[n];
        
        int plus, minus;
        plus = minus = 0;
        for (int i = 0; i < n; ++i)
        {
            s[i] = sc.next();
            oo[i] = Integer.parseInt(s[i].substring(1,s[i].length()))-1;
            if (s[i].charAt(0)=='+')
            {
                opin[oo[i]][0]++;
                plus++;
            }
            else
            {
                opin[oo[i]][1]++;
                minus++;
            }
        }
        
        HashSet <Integer> guilt = new HashSet <Integer> ();
        for (int i = 0; i < n; ++i)
            if ( opin[i][0] + (minus-opin[i][1]) == m )
                guilt.add(i);
        
        for (int i = 0; i < n; ++i)
        {
            if (s[i].charAt(0)=='+')
            {
                if (!guilt.contains(oo[i]))
                    System.out.println("Lie");
                else
                    if (guilt.size()==1)
                        System.out.println("Truth");
                    else
                        System.out.println("Not defined");
            }
            else
            {
                if ( guilt.size()==1 && guilt.contains(oo[i]) )
                    System.out.println("Lie");
                else
                    if (guilt.contains(oo[i]))
                        System.out.println("Not defined");
                    else
                        System.out.println("Truth");
            }
        }
        
    }
}
