add more comments to the code