added comments and other stuff