Added some comments and stuffs