import java.util.*;
import java.io.*;

public class Solution implements Runnable {

    final static int INF = 1000000000;

    final static String TRUTH = "Truth";
    final static String LIE = "Lie";
    final static String UND = "Not defined";

    public void run() {
        try {
            in = new BufferedReader(new InputStreamReader(System.in));
            st = new StringTokenizer("");
            int n = nextInt();
            int m = nextInt();
            boolean[] neg = new boolean[n];
            int[] target = new int[n];
            int[] crimeLies = new int[n];
            int[] crimeTruths = new int[n];
            int notCrimeTruths = 0;
            for (int i = 0; i < n; i++) {
                String s = next();
                if (s.charAt(0) == '+')
                    s = s.substring(1, s.length());
                int val = Integer.parseInt(s);
                neg[i] = val < 0;
                target[i] = Math.abs(val) - 1;
                if (neg[i]) {
                    crimeLies[target[i]] ++;
                    notCrimeTruths ++;
                } else {
                    crimeTruths[target[i]] ++;
                }
            }
            boolean[] canCrime = new boolean[n];
            int canCrimes = 0;
            for (int i = 0; i < n; i++) {
                canCrime[i] = notCrimeTruths - crimeLies[i] + crimeTruths[i] == m;
                if (canCrime[i])
                    canCrimes ++;
            }
            PrintWriter out = new PrintWriter(System.out);
            for (int i = 0; i < n; i++) {
                int ti = target[i];
                if (!canCrime[ti]) {
                    out.println(neg[i] ? TRUTH : LIE);
                } else if (canCrimes > 1) {
                    out.println(UND);
                } else {
                    out.println(neg[i] ? LIE : TRUTH);
                }
            }
            out.flush();
        } catch (Exception ex) {
            ex.printStackTrace();
            System.exit(-1);
        }
    }

    void debug(Object...os) {
        System.err.println(Arrays.deepToString(os));
    }

    String next() throws IOException {
        while (!st.hasMoreTokens())
            st = new StringTokenizer(in.readLine());
        return st.nextToken();
    }

    int nextInt() throws IOException {
        return Integer.parseInt(next());
    }

    double nextDouble() throws IOException {
        return Double.parseDouble(next());
    }

    BufferedReader in;
    StringTokenizer st;

    public static void main(String[] args) {
        Locale.setDefault(Locale.US);
        new Thread(new Solution()).start();
    }
}
