#!/bin/python3 import sys def minimumZooNumbers_simple(m, n, t, s, d): res = [-1] * n d = sorted(d) for i in range(len(d)): res[i] = d[i] return res def minimumZooNumbers(m, n, t, s, d): res = [-1] * n t = list(map(lambda x: 'EC' if x in ['E', 'C'] else 'DM' if x in ['D', 'M'] else x, t)) count_ec = t.count('EC') if count_ec in [0, n]: print(count_ec, n) res = minimumZooNumbers_simple(m, n, t, s, d) return res if __name__ == "__main__": cases = int(input().strip()) for a0 in range(cases): m, n = input().strip().split(' ') m, n = [int(m), int(n)] t = input().strip().split(' ') s = list(map(int, input().strip().split(' '))) d = list(map(int, input().strip().split(' '))) result = minimumZooNumbers(m, n, t, s, d) print (" ".join(map(str, result)))