added comments and such