I have an EXEC called BITTRACK that can do such a thing. It is designed (well written in any case) to use 1 of four data files, BITNET LINKSxxx as distributed by Chris Thomas(or imbedded in BITNET HELPCMS), BITEARN LINKSUM(A listserv file) or even BITEARN NODES. BITEARN NODES takes a looonnng time, and it prints a warning when doing so. It is not very intelligent. It intentionally "breaks" the CEARN-DEARN link, routing that traffic through the US. CUNYVM is treated as a root of a tree structure. It does not know about OHSTMPA. Is does not know about loops, such as CUNYVM-PSUVM-CORNELLC-CUNYVM. It has no help file. On the positive, it does work for what it does. It will print out the path, issue commands along the path(one gotcha is trying to issue RSCS commands on a JESx node), stack the path, it has comments in the Rexx. It prints out a crude help for an arg of ?. It will keep paths that have been tracked in GLOBALV, allowing very fast recall of a path. (I found I bittracked a path more than once quite often.) It has options to force reading from data files, instead of GLOBALV, and it versions its GLOBALV database, and if it is given a data file that is at a different level, automatically flush the GLOBALV data. (It uses temporary(ipl) GLOBALV) Now that you wade throught the garbage, it is on my Listserv, in filelist MRTOOLS. A simple TELL LISTSERV AT MARIST GET BITTRACK EXEC will get you the file. Harry