code: func (db *DB) newSnapshot() *Snapshot {
  	snap := &Snapshot{
  		db:   db,
  		elem: db.acquireSnapshot(),
  	}
  	atomic.AddInt32(&db.aliveSnaps, 1)
  	runtime.SetFinalizer(snap, (*Snapshot).Release)
  	return snap
  }
docs: // Creates new snapshot object.