add comments and update function call