Vasya has a sequence of cubes and exactly one integer is written on each cube. Vasya exhibited all his cubes in a row. So the sequence of numbers written on the cubes in the order from the left to the right equals to a_1, a_2, ..., a_{n}.

While Vasya was walking, his little brother Stepan played with Vasya's cubes and changed their order, so now the sequence of numbers written on the cubes became equal to b_1, b_2, ..., b_{n}. 

Stepan said that he swapped only cubes which where on the positions between l and r, inclusive, and did not remove or add any other cubes (i. e. he said that he reordered cubes between positions l and r, inclusive, in some way).

Your task is to determine if it is possible that Stepan said the truth, or it is guaranteed that Stepan deceived his brother.


-----Input-----

The first line contains three integers n, l, r (1 ≤ n ≤ 10^5, 1 ≤ l ≤ r ≤ n) — the number of Vasya's cubes and the positions told by Stepan.

The second line contains the sequence a_1, a_2, ..., a_{n} (1 ≤ a_{i} ≤ n) — the sequence of integers written on cubes in the Vasya's order.

The third line contains the sequence b_1, b_2, ..., b_{n} (1 ≤ b_{i} ≤ n) — the sequence of integers written on cubes after Stepan rearranged their order.

It is guaranteed that Stepan did not remove or add other cubes, he only rearranged Vasya's cubes.


-----Output-----

Print "LIE" (without quotes) if it is guaranteed that Stepan deceived his brother. In the other case, print "TRUTH" (without quotes).


-----Examples-----
Input
5 2 4
3 4 2 3 1
3 2 3 4 1

Output
TRUTH

Input
3 1 2
1 2 3
3 1 2

Output
LIE

Input
4 2 4
1 1 1 1
1 1 1 1

Output
TRUTH



-----Note-----

In the first example there is a situation when Stepan said the truth. Initially the sequence of integers on the cubes was equal to [3, 4, 2, 3, 1]. Stepan could at first swap cubes on positions 2 and 3 (after that the sequence of integers on cubes became equal to [3, 2, 4, 3, 1]), and then swap cubes in positions 3 and 4 (after that the sequence of integers on cubes became equal to [3, 2, 3, 4, 1]).

In the second example it is not possible that Stepan said truth because he said that he swapped cubes only between positions 1 and 2, but we can see that it is guaranteed that he changed the position of the cube which was on the position 3 at first. So it is guaranteed that Stepan deceived his brother.

In the third example for any values l and r there is a situation when Stepan said the truth.

Difficulty: interview

Starter code:

Solutions:
n, l, r = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
c = []
d = []

isOk = 0

for i in range(0, l - 1):
    if a[i] != b[i]:
        isOk = 1

for i in range(r, n):
    if a[i] != b[i]:
        isOk = 1

for i in range(l - 1, r):
    c.append(a[i])
    d.append(b[i])

c.sort()
d.sort()

if c != d:
    isOk = 1

if isOk == 1:
    print("LIE")
else:
    print("TRUTH")

import sys

def main():
    yes = True
    array = sys.stdin.readline().strip().split(' ')
    array1 = sys.stdin.readline().strip().split(' ')
    array2 = sys.stdin.readline().strip().split(' ')
    for i in range(len(array1)):
        if i < int(array[1])-1 or i >= int(array[2]):
            if array1[i] != array2[i]:
                yes = False
                break
    if yes:
        print("TRUTH")
    else:
        print("LIE")
    return


main()

import sys

n, l, r = list(map(int, (sys.stdin.readline()).split(" ")))
a = list(map(int, (sys.stdin.readline()).split(" ")))
b = list(map(int, (sys.stdin.readline()).split(" ")))
l -= 1
for i in range(0, l):
    if a[i] != b[i]:
        print("LIE")
        return
for i in range(r, n):
    if a[i] != b[i]:
        print("LIE")
        return
print("TRUTH")


vals=lambda:map(int,input().split())
n,l,r=vals()

a1=list(vals())
a2=list(vals())

if a1[:l-1] == a2[:l-1] and a1[r:] == a2[r:]:
    print("TRUTH")
else:
    print("LIE")

n, l, r = list(map(int, input().split()))
a = list(map(int, input().split()))
b = list(map(int, input().split()))
f = True
for i in range(l - 1):
	if a[i] != b[i]:
		f = False
for i in range(r, n):
	if a[i] != b[i]:
		f = False
a1 = []
b1 = []
for i in range(l - 1, r):
	b1.append(b[i])
	a1.append(a[i])
a1.sort()
b1.sort()
for i in range(len(a1)):
	if a1[i] != b1[i]:
		f = False
if f:
	print("TRUTH")
else:
	print("LIE")



lmap = lambda f, x: list(map(f, x))
n,l,r = lmap(int, input().split())
l-=1 
a = lmap(int, input().split())
b = lmap(int, input().split())

a1 = a[l:r]
a2 = b[l:r]
good = (sorted(a1)==sorted(a2)) and (a[:l] == b[:l]) and (a[r:] == b[r:])
if good:
	print('TRUTH')
else:
	print("LIE")

n, l, r = map(int, input().split())
a = input().split()
b = input().split()
if a[:l - 1] == b[:l - 1] and a[r:] == b[r:]:
    print('TRUTH')
else:
    print('LIE')

n, l, r = map(int, input().split())
l -= 1
r -= 1
a = list(map(int, input().split()))
b = list(map(int, input().split()))
for i in range(n):
	if (b[i] != a[i]) and (i < l or i > r):
		print("LIE")
		break
else:
	print("TRUTH")

nlr = input().split()
a = input().split()
b = input().split()

if (a[:int(nlr[1])-1] != b[:int(nlr[1])-1]) | (a[int(nlr[2])+1:] != b[int(nlr[2])+1:]) | (sorted(a[int(nlr[1])-1:int(nlr[2])]) != sorted(b[int(nlr[1])-1:int(nlr[2])])):
    print("LIE")
else:
    print("TRUTH")

# for i in range(nlr[1]):
#     if a[i] != b[i]:
#         print("LIE")
#         return
# for i in range(nlr[2] + 1, n):
#     if a[i] != b[i]:
#         print("LIE")
#         return


n, x1, x2 = [int(i) for i in input().split()]
a = input().split()
a = a[:x1 - 1] + a[x2:]
b = input().split()
b = b[:x1 - 1] + b[x2:]
check = True
for i in range(len(a)):
	if (a[i] != b[i]):
		check = False
		break
if (check):
	print("TRUTH")
else:
	print("LIE")

n, l, r = list(map(int, input().split()))
l -= 1
a = input().split()
b = input().split()

if a[:l] == b[:l] and a[r:] == b[r:]:
	print("TRUTH")
else:
	print("LIE")


n=list(map(int,  input().split(' ')))
ai= list(map(int, input().split(' ')))
bi= list(map(int, input().split(' ')))
flag=True
for i in range(n[1]-1):
    if(ai[i]!= bi[i]):
        flag=False
        print("LIE")
        break
if(flag):
    for i in range(n[0]-n[2]):
        if(ai[n[2]+i]!=bi[n[2]+i]):
            flag=False
            print("LIE")
            break
if (flag==True):
    print('TRUTH')

n,l,r=list(map(int,input().split()))

a=list(map(int,input().split()))
b=list(map(int,input().split()))

c=[0 for i in range(100005)]
for i in range(l-1,r):
    c[a[i]]+=1
    c[b[i]]-=1
t=True
for i in range(0,l-1):
    if a[i]!=b[i]:
        t=False
for i in range(r, n):
    if a[i] != b[i]:
        t = False
for i in c:
    if i!=0:
        t=False
if t:
    print('TRUTH')
else:
    print('LIE')


N = list(map(int, input().split()))
A = list(map(int, input().split()))
B = list(map(int, input().split()))
a=set()
b=set()
for i in range (N[1]-1,N[2]):
    a.add(A[i])
    b.add(B[i])
flag=True
for i in range (N[1]-1):
    if A[i]!=B[i]:
        flag=False
for i in range (N[2],N[0]):
    if A[i]!=B[i]:
        flag=False
if a!=b:
    flag=False
if flag==True:
    print("TRUTH")
else:
    print ("LIE")


n,l,r=list(map(int,input().split()))
a=list(map(int,input().split()))
b=list(map(int,input().split()))
a1=list()
b1=list()
u=1
for i in range(0,n):
    if(i>=l-1 and i<=r-1):
        a1.append(a[i])
        b1.append(b[i])
    else:
        if(a[i]!=b[i]):
            u=0
            break
a1.sort()
b1.sort()       
if(a1!=b1 or u==0):
    print("LIE")
else:
    print("TRUTH")


def main():
    s = input().split()
    n = int(s[0])
    l = int(s[1])
    r = int(s[2])
    s = input().split()
    arr1 = []
    for i in range(n):
        k = int(s[i])
        arr1.append(k)
    s = input().split()
    for i in range(n):
        k = int(s[i])
        if arr1[i] != k and (i+1 < l or i+1 > r):
            print('LIE')
            return
    print('TRUTH')
    return
    

def __starting_point():
    main()
__starting_point()

A = list(map(int, input().split()))
n = A[0]
l = A[1]
r = A[2]
a = list(map(int, input().split()))
b = list(map(int, input().split()))
ans = 1
for i in range(0, l - 1):
    if a[i] != b[i]:
        ans = 0
for i in range(r, n):
    if a[i] != b[i]:
        ans = 0
if ans == 0:
    print('LIE')
else:
    print('TRUTH')


n, l,r = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
if a[0 : l - 1] == b[0 : l - 1] and a[r : ] == b[r : ] and sorted(a[l - 1 : r]) == sorted(b[l - 1 : r]):
    print('TRUTH')
else:
    print('LIE')

n, l, r = list(map(int, input().split()))
a = list(map(int, input().split()))
b = list(map(int, input().split()))

ans = 'TRUTH'

for i in range(0, l - 1):
	if a[i] != b[i]:
		ans = 'LIE'
		#print(i)
		break

for i in range(r, n):
	if a[i] != b[i]:
		ans = 'LIE'
		#print(i)
		break

print(ans)


n, l, r = map(int, input().split())
l -= 1
a = input().split()
b = input().split()

if a[:l] == b[:l] and a[r:] == b[r:]:
	print("TRUTH")
else:
	print("LIE")

import sys
from collections import defaultdict

N=[];N1=[];
M=defaultdict(int);M1=defaultdict(int);
n,l,r=list(map(int,input().split()));
N=list(map(int,input().split()))
N1=list(map(int,input().split()))

Pass=True
for i in range(l-1):
    if N[i]!=N1[i]:
        Pass=False
        break
if Pass is True:
    for i in range(r,n):
        if N[i]!=N1[i]:
            Pass=False
            break
if Pass is True:
    for i in range(l-1,r):
        M[N[i]]+=1
        M1[N1[i]]+=1
    for i in range(n+1):
        if M[i]!=M1[i]:
            Pass=False
            break
if Pass:print("TRUTH")
else:print("LIE")


'''input
5 2 4
3 4 2 3 1
3 2 3 4 1
'''
n, l, r = map(int, input().split())
a, b = list(map(int, input().split())), list(map(int, input().split()))
if a[:l-1] == b[:l-1] and a[r:] == b[r:] and sorted(a[l-1:r]) == sorted(b[l-1:r]):
	print("TRUTH")
else:
	print("LIE")

l, a, b = list(map(int, input().split()))
before = list(map(int, input().split()))
after = list(map(int, input().split()))

if sorted(before[a - 1: b]) != sorted(after[a - 1: b]):
    print("LIE")
elif before[:a-1] != after[:a-1]:
    print("LIE")
elif before[b:] != after[b:]:
    print("LIE")
else:
    print("TRUTH")


i=lambda:list(map(int,input().split()))
n,l,r=i()
a=list(i())
b=list(i())
a0=a[0:l-1]
a1=a[l-1:r]
a2=a[r:n]
b0=b[0:l-1]
b1=b[l-1:r]
b2=b[r:n]
a1.sort()
b1.sort()
print("TRUTH" if a0==b0 and a1==b1 and a2==b2 else "LIE")