update

add annotation
update

add annotation and optimize the program