support for output as well