dic1 = {}
	k = 1
	for c in data_l[i]:
		dic1[str(k)] = str(c)
		k += 2
	
	print dic1
	k = 2 * len(data_l[i]) - 2
	dic2 = {}
	word = ''
	while k >= 0:
		maxx = 0
		char = ''
		temp = deepcopy(dic2)
		for c in CHARS:
			temp[str(k)] = [c]
			curr = bn.specificquery(temp, dic1)
			if curr > maxx:
				maxx = curr
				dic2[str(k)] = [c]
				char = c
		word = char + word
		k -= 2

	if word == truth_l[i]:
		count += 1	


	w.writerow([word, maxx])

print count
	# load bayesian network
	# load bayesian network
	bn = DiscreteBayesianNetwork(skel, nd)
	dic1 = {}
	k = 1
	for c in data_l[i]:
		dic1[str(k)] = str(c)
		k += 2
	
	maxx = 0
	pred = ''
	for word in all_perms:
		dic2 = {}
		k = 0
		for c in word:
			dic2[str(k)] = [c]
			k += 2
		curr = bn.specificquery(dic2,dic1)

		if curr > maxx:
			maxx = curr
			pred = ''.join(word)

	if pred == truth_l[i]:
		count += 1
		print count

	print pred

	w.writerow([pred, maxx])