Added comments for easier reading