import java.io.*;
import java.text.DecimalFormat;
import java.util.*;
import java.math.*;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.Writer;
import java.util.Arrays;
import java.util.InputMismatchException;

public class Main {

        public static void main(String[] args) throws Exception {
                // TODO Auto-generated method stub
                // long start = System.currentTimeMillis();
                InputReader cin = new InputReader(System.in);
                OutputWriter cout = new OutputWriter(System.out);
                Task a = new Task();
                a.run();
                cout.close();
                // long end = System.currentTimeMillis();
                // System.out.println (end - start);
        }

}

class Task {
        public void run() throws Exception {
                Scanner cin = new Scanner (new BufferedInputStream (System.in));
                int n = cin.nextInt();
                int k = cin.nextInt();
                int op[] = new int[n+1];
                int a[] = new int[n+1];
                int b[] = new int[n+1];
                int sum = 0;
                for (int i = 0; i < n; i ++){
                        op[i] = cin.nextInt();
                        if (op[i] > 0){
                                a[op[i]] ++;
                        }else{
                                b[-op[i]] ++;
                                sum ++;
                        }
                }
                HashSet<Integer> sset = new HashSet<Integer>();
                for (int i = 1; i <= n; i ++){
                        int num = sum - b[i] + a[i];
                        if (num == k){
                                sset.add(i);
                        }
                }
                for (int i = 0; i < n; i ++){
                        int t = op[i];
                        if (t > 0){
                                if (sset.contains(t)){
                                        if (sset.size()==1){
                                                System.out.println("Truth");
                                        }else{
                                                System.out.println("Not defined");
                                        }
                                }else{
                                        System.out.println("Lie");
                                }
                        }else{
                                if (sset.contains(-t)){
                                        if (sset.size()==1){
                                                System.out.println("Lie");
                                        }else{
                                                System.out.println("Not defined");
                                        }
                                }else{
                                        System.out.println("Truth");
                                }
                        }
                }
        }
}

class InputReader {

        private InputStream stream;
        private byte[] buf = new byte[1024];
        private int curChar;
        private int numChars;
        private SpaceCharFilter filter;

        public InputReader(InputStream stream) {
                this.stream = stream;
                // this.stream = new FileInputStream(new
                // File("f:\\c++\\1.txt"));
        }

        public boolean hasNext() throws Exception {
                while (curChar < numChars && isSpaceChar(buf[curChar])) {
                        curChar++;
                }
                if (curChar < numChars) {
                        return true;
                } else {
                        curChar = 0;
                        numChars = stream.read(buf);
                        if (numChars == -1) {
                                return false;
                        } else {
                                return true;
                        }
                }
        }

        public int read() {
                if (numChars == -1)
                        throw new InputMismatchException();
                if (curChar >= numChars) {
                        curChar = 0;
                        try {
                                numChars = stream.read(buf);
                        } catch (IOException e) {
                                throw new InputMismatchException();
                        }
                        if (numChars <= 0)
                                return -1;
                }
                return buf[curChar++];
        }

        public int nextInt() {
                int c = read();
                while (isSpaceChar(c))
                        c = read();
                int sgn = 1;
                if (c == '-') {
                        sgn = -1;
                        c = read();
                }
                int res = 0;
                do {
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = read();
                } while (!isSpaceChar(c));
                return res * sgn;
        }

        public String next() {
                StringBuilder string = new StringBuilder();
                int c = read();
                while (isSpaceChar(c))
                        c = read();
                do {
                        string.append((char) c);
                        c = read();
                } while (!isSpaceChar(c));
                return string.toString();
        }

        public boolean isSpaceChar(int c) {
                if (filter != null)
                        return filter.isSpaceChar(c);
                return isWhitespace(c);
        }

        public static boolean isWhitespace(int c) {
                return c == ' ' || c == '\n' || c == '\r' || c == '\t'
                                || c == -1;
        }

        public interface SpaceCharFilter {
                public boolean isSpaceChar(int ch);
        }
}

class OutputWriter {
        private final PrintWriter writer;

        public OutputWriter(OutputStream outputStream) {
                writer = new PrintWriter(new BufferedWriter(
                                new OutputStreamWriter(outputStream)));
                // writer = new PrintWriter(new File("F:\\c++\\3.txt"));
        }

        public OutputWriter(Writer writer) {
                this.writer = new PrintWriter(writer);
        }

        public void close() {
                writer.close();
        }

        public void print(Object... objects) {
                for (int i = 0; i < objects.length; i++) {
                        if (i != 0)
                                writer.print(' ');
                        writer.print(objects[i]);
                }
        }

        public void printLine(Object... objects) {
                print(objects);
                writer.println();
        }
}

class ArrayUtils {

        public static void fill(int[][] array, int value) {
                for (int[] row : array)
                        Arrays.fill(row, value);
        }

        public static void fill(int[][][] array, int value) {
                for (int[][] row : array)
                        fill(row, value);
        }

}

		 			  		 	  			  			 	  	