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

public class Suspect {
    public static BufferedReader openReader(String inputFile) throws IOException {
        FileInputStream fis = new FileInputStream(inputFile);
        return new BufferedReader(
                new InputStreamReader(fis, "UTF-8")
        );
    }

    public static BufferedWriter openWriter(String outputFile) throws IOException {
        FileOutputStream fos = new FileOutputStream(outputFile);
        return new BufferedWriter(
                new OutputStreamWriter(fos, "UTF-8")
        );
    }

    public static Scanner openScanner(BufferedReader reader) throws IOException {
        return new Scanner(reader);
    }

    public void process() throws IOException {
        try (
                BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
                Scanner scanner = openScanner(reader)
        ) {
            // number of suspect
            int n = scanner.nextInt();
            // number of true statement
            int m = scanner.nextInt();

            int statement[] = new int[n];


            for (int i = 0; i < n; i++) {
                statement[i] = scanner.nextInt();
            }


            String result = calculate(statement, n, m);
            System.out.println(result);
        }

    }

    private String calculate(int[] statement, int n, int m) {
        int positiveTotal = 0;
        int negativeTotal = 0;


        int positive[] = new int[n + 1];
        int negative[] = new int[n + 1];

        // what i's suspect said
        for (int i = 0; i < n; i++) {
            if (statement[i] > 0) {
                positiveTotal++;
                positive[statement[i] - 1]++;
            } else {
                negativeTotal++;
                negative[-statement[i] - 1]++;
            }
        }


        Set<Integer> possibleKillers = new HashSet<>();
        for (int i = 0; i < n; i++) {
            int totalTrue = positive[i] + negativeTotal - negative[i];
            if (totalTrue == m) {
                possibleKillers.add(i);
            }
        }


        StringBuilder strResult = new StringBuilder();
        for (int i = 0; i < n; i++) {
            int st = statement[i];
            if (st > 0) {
                if (possibleKillers.contains(st - 1)) {
                    if (possibleKillers.size() == 1) {
                        strResult.append("Truth\n");
                    } else {
                        strResult.append("Not defined\n");
                    }
                } else {
                    strResult.append("Lie\n");
                }
            } else {
                if (possibleKillers.contains(-st - 1)) {
                    if (possibleKillers.size() == 1) {
                        strResult.append("Lie\n");
                    } else {
                        strResult.append("Not defined\n");
                    }
                } else {
                    strResult.append("Truth\n");

                }
            }
        }

        return strResult.toString();
    }

    public static void main(String[] args) throws IOException {
        Suspect problem = new Suspect();
        problem.process();
    }

}


