add comment and docs