variously improve viewer