n,m = map(int, input().split())
time = list(map(int, input().split()))
kind = list(map(int, input().split()))
for _ in range(n):
l,r,t,k = map(int, input().split())
item = []
res = []
for i in range(l,r+1):
if kind[i] == t:
if len(item) < k:
heapq.heappush(item,(time[i],i))
else:
heapq.heappushpop(item,(time[i],i))
for i in range(k):
if len(item)>0:
temp = heapq.heappop(item)
res.append(temp[1])
else:
res.append(-1)
print(" ".join(map(str,res)))
# 5 5
# 2 3 4 5 6
# 1 1 0 1 1
# 1 3 1 2
# 1 3 1 2
# 1 3 0 5
# 1 5 1 1
# 1 5 0 1