An expanded version of this program is shown in Fig. 8. In this version, the Decompose and Down graphs have been flattened. Their formal parameters have been replaced by their actual ones, and the dimensionality of their internal streams has been increased. In addition, as the first operand of the fby operator was not a constant, it has been replaced with an mcond operation. The constant passed as the level argument to the Decompose function has been converted into the level stream.