
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Tibor
 */
public class test {

    static StreamTokenizer in = new StreamTokenizer(new BufferedReader(
            new InputStreamReader(System.in)));
    static PrintWriter out = new PrintWriter(System.out);

    static {
        in.ordinaryChars('-', '-');
        in.ordinaryChars('+', '+');
        in.wordChars('-', '-');
        in.wordChars('+', '+');
    }

    static int nextInt() {
        try {
            in.nextToken();
        } catch (IOException ex) {
            Logger.getLogger(test.class.getName()).log(Level.SEVERE, null, ex);
        }
//        System.out.println(in.nval);
//        System.out.println((int)in.nval);
        return (int) in.nval;
    }

    static String nextString() {
        try {
            in.nextToken();
        } catch (IOException ex) {
            Logger.getLogger(test.class.getName()).log(Level.SEVERE, null, ex);
        }
//        System.out.println(in.sval);
        return in.sval;
    }

    public static void main(String args[]) throws Exception {
        int gy = nextInt();
        int ig = nextInt();
        int v[] = new int[gy];
        int gyan[] = new int[gy + 1];
        int nemgy[] = new int[gy + 1];
        int ret[] = new int[gy + 1];
        int osznemgyan = 0;
        int oszgyan = 0;
        for (int i = 0; i < gy; i++) {
            String s = nextString();
            if (s.charAt(0) == '+') {
                s = s.substring(1);
            }
            v[i] = Integer.parseInt(s);
            if (v[i] > 0) {
                gyan[v[i]]++;
                oszgyan++;
            } else {
                nemgy[-v[i]]++;
                osznemgyan++;
            }
        }

        int hazug = gy - ig;
        int sz = 0;
        boolean b[] = new boolean[gy + 1];
        for (int i = 0; i < gy; i++) {
            if (ig == osznemgyan - nemgy[i + 1] + gyan[i + 1]) {
                sz++;
                b[i + 1] = true;
//                for (int n = 0; n < gy; n++) {
//                    if (v[n] < 0) {
//                        ret[n] |= -v[n] == i + 1 ? 1 : 2;
//                    } else {
//                        ret[n] |= v[n] == i + 1 ? 2 : 1;
//                    }
//                }

            }
        }

        for (int i = 0; i < gy; i++) {
            int r = 0;
            if (v[i] > 0) {
                if (b[v[i]]) {
                    r = 2;
                } else {                    
                    r |= 1;
                }
                if (sz > 1) {
                    r |= 1;
                }
            } else {
                if (b[-v[i]]) {
                    r = 1;
                } else {
                    r |= 2;                    
                }
                if (sz > 1) {
                    r |= 2;
                }
            }
            switch (r) {
                case 1:
                    System.out.println("Lie");
                    break;
                case 2:
                    System.out.println("Truth");
                    break;
                case 3:
                    System.out.println("Not defined");
                    break;
            }
        }

    }
}
