add more doc
more comments