add comments in snapshot.go