All, I think we can all agree that an Sij (imaginary number as a list of sampled frequencies) is a numerical approximation of a Transfer Function. I would like to name this a "Network Function". Here is a BNF an enhancements to Touchstone to handle Sparse Matrix data that should satisfy all of the issues raise in the past several meetings. [Number of Unique Network Function] <number of unique network functions> {Network Function Names] 1 <network function name> 2 <network function name> . <number of unique network functions> <network function name> {End Network Function Names] [Sparse Network Function Data] <network function name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . <network function name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . (<row,column>) (<row,column>) (<row,column>) (<row,column>) . <network function name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . [End Sparse Network Function Data] The actual network data will have at each frequency <number> imaginary numbers. {Network Function Names] section is optional, the default <network function name> of any Network Function is its' <network function number>. A <network function name> must start with a letter [a-Z], and may only contain [a-Z], [0-9], and _. Walter Walter Katz Chief Scientist Signal Integrity Software, Inc. wkatz@xxxxxxxxxx 303.449-2308