Input and output iterator wrapper passes tests on MSVC