proc alphaSort {l1 l2} {

#
#	object:  sort list 1 into the order of the corresponding alpha list 2
#
#	Rules:  no dups in either list
#

	if {[llength $l1] > [llength [lrmdups $l1]]} {
		return {}
	}
	if {[llength $l2] > [llength [lrmdups $l2]]} {
		return {}
	}

	foreach e2 $l2 {

		set e1 [lvarpop l1]

		set look($e2) $e1

	}

	set res ""
	foreach k [lsort [array names look]] {

		lappend res $look($k)

	}

	return $res

}
