{subsection: Using +WantFTOnCheckpoint}
 
-Given the following toy Python script:
+The following Python script is a toy example of checkpointing.  It counts from 0 to 10 (exclusive), sleeping for 10 seconds at each step.  It writes a checkpoint file consisting only of the next number after each nap, and exits with code 77 at count 3, 6, and 9.  It exits with code 0 when complete.
 
 {file: vuc.py}
 #!/usr/bin/env python
@@ -64,7 +64,7 @@
 print("Starting from {0}".format(value))
 for i in range(value,10):
     print("Computing timestamp {0}".format(value))
-    time.sleep(1)
+    time.sleep(10)
     value += 1
     with open('vuc.ckpt', 'w') as f:
         f.write("{0}".format(value))
@@ -75,19 +75,20 @@
 sys.exit(0)
 {endfile}
 
-the following submit file will transfer the file 'vuc.ckpt' back to the submit at timesteps 3, 6, and 9.  If interrupted, it will resume from the most recent of those checkpoints.
+The following submit file commands HTCondor to transfer the file 'vuc.ckpt' to the submit node whenever the script exits with code 77.  If interrupted, the job will resume from the most recent of those checkpoints.
 
 {file: vuc.submit}
-# These first three lines are the magic ones.
-when_to_transfer_output     = ON_EXIT_OR_EVICT
+# You must set both of these things to do file transfer when you exit...
 +WantFTOnCheckpoint         = TRUE
+when_to_transfer_output     = ON_EXIT_OR_EVICT
+# ... with code 77.
 +SuccessCheckpointExitCode  = 77
+# You must include your checkpoint file in transfer_output_files.
+transfer_output_files       = vuc.ckpt
 
 executable                  = vuc.py
 arguments                   =
-
 should_transfer_files       = yes
-transfer_output_files       = vuc.ckpt
 
 output                      = vuc.out
 error                       = vuc.err