three types of snapshots