we should talk to @iglesias about this - do we need serialization & clone etc for outputs?