I haven't been paying attention so perhaps this has been mentioned before, but why don't you send a "packet" from your "=" block, and have each block it passes through on the "ring" add the TEXT of the block value to the packet, a sort of "record route" function. When the packet gets back to the "=" block, You'll have a text expression that can be computed using standard math parsing routines. BillW