         # knowing about the backup, in which case it makes more sense
         # to just go with the master.
 
-        no_master = undefined
-        stats_path = undefined
-        no_backup = undefined
+        no_master    = undefined
+        stats_path   = undefined
+        no_backup    = undefined
         stats_backup = undefined
-        file = undefined
+        stats        = undefined
+        file         = undefined
 
         async.series([
             (cb) =>

json = (out) -> misc.trunc(misc.to_json(out),512)

{ensure_containing_directory_exists, abspath} = misc_node

#####################################################################
# Generate the "secret_token" file as

                                    fs.close fd, cb
                else if no_backup # no backup file -- always use master
                    file = @path
                    stats = stats_path
                    cb()
                else if no_master # no master file but there is a backup file -- use backup
                    file = @_backup_file
                    stats = stats_backup
                    cb()
                else
                    # both master and backup exist
                    if stats_path.mtime.getTime() >= stats_backup.mtime.getTime()
                        # master is newer
                        file = @path
                        stats = stats_path
                    else
                        # backup is newer
                        file = @_backup_file
                        stats = stats_backup
                    cb()
            (cb) =>
                e = check_file_size(stats?.size)
                if e
                    cb(e)
                    return
                fs.readFile file, (err, data) =>
                    if err
                        cb(err); return
