code cleanup
doc update