changed output streams to reduce emitted code size and runtime (although this is no longer the bottleneck)