variable N : Type.{1}
print "block 1"
#SNAPSHOT
variable f : N -> N
variable g : N -> N
#SNAPSHOT
check N
print "before restore"
#RESTORE 3
-- Restore will remove all lines >= 3
-- You will be able to reuse the first snapshot
print "after restore"
print "only once"
check N
variable f : N -> N
#RESTORE 6
-- Restore will remove all lines >= 6
print "after second restore"
#RESTART
variable N : Type.{1}
print "block 1"
-- Restore will remove all lines >= 3
-- You will be able to reuse the first snapshot
print "after restore"
check N
print "done"