Add comments
Make Scan method const
Extract logic for filling candidate snapshot proto into its own class