more efficient character updating
minor formatting changes for output