Oh the Joy of .net and object orientation in general: Compare the old asp way. Just functions with single return values: if rules("isafirstname",firstname) = true and rules("isasurname",wholename(0)) = true then transmute =("L-CAPNAMEINIT{_}"&propercase(firstname)& " " & propercase(wholename(0))) elseif rules("isafirstname",firstname) = true then transmute =("L-CAPFIRSTNAMEINIT{_}"&propercase(firstname)) end if So I would wind up stuffing a load of data into the return string and then reassembling it in the calling function. First go on Tuples today....