added input and output streams