class ConjuntoClausura():
	
	def __init__(self, inputFile):
		self.R = set()
		self.F = []
		self.A = set()
		self.inputFile = inputFile
	
	def _leer(self):
		return self.inputFile.readline()[0:-1]
	
	def _leerRelacion(self):
		self.R = set(self._leer())
	
	def _leerDependenciasFuncionales(self):
		m = int(self._leer())
		for i in range(m):
			start, end = self._leer().split(' -> ')
			self.F.append( (set(start), set(end)) )
	
	def _leerConjuntoInicial(self):
		self.A = set(self._leer())
	
	def leerEntrada(self):
		self._leerRelacion()
		self._leerDependenciasFuncionales()
		self._leerConjuntoInicial()
	
	def procesar(self):
		resultado = self.A
		continuar = True
		while continuar:
			continuar = False
			for dep in self.F:
				start, end = dep
				if resultado & start == start:
					if resultado | end != resultado:
						continuar = True
					resultado = resultado | end
		return ''.join(sorted(resultado))

def main():
	with open('entrada_ej2.in') as f:
		testcases = int(f.readline())
		for t in range(testcases):
			conjunto = ConjuntoClausura(f)
			conjunto.leerEntrada()
			clausura = conjunto.procesar()
			print('TESTCASE #{}: {}'.format(t, clausura))

if __name__ == "__main__":
	main()
