update: output buffering