Add some more comments to make it clearer