added comments, updated todo