added OutputCollectionWrapper (not yet implemented) to intercept the setting of output values