Added comments everywhere