updated comments to make the code more generic