add comments and modify names