add comments and TODOs