Added comments and Documentation