function restore_one_submission($info, $restore, $assignment, $submission)
 {
     //Get the submissions array - it might not be present
     if (@isset($info['#']['COMMENTS']['0']['#']['COMMENT'])) {
         $comments = $info['#']['COMMENTS']['0']['#']['COMMENT'];
     } else {
         $comments = array();
     }
     foreach ($comments as $comment) {
         $dbc = new stdclass();
         $dbc->posx = backup_todb($comment['#']['POSX']['0']['#']);
         $dbc->posy = backup_todb($comment['#']['POSY']['0']['#']);
         $dbc->width = backup_todb($comment['#']['WIDTH']['0']['#']);
         $dbc->rawtext = backup_todb($comment['#']['RAWTEXT']['0']['#']);
         $dbc->pageno = backup_todb($comment['#']['PAGENO']['0']['#']);
         $dbc->colour = backup_todb($comment['#']['COLOUR']['0']['#']);
         $dbc->assignment_submission = $submission->id;
         insert_record('assignment_uploadpdf_comment', $dbc);
     }
     if (@isset($info['#']['ANNOTATIONS']['0']['#']['ANNOTATION'])) {
         $annotations = $info['#']['ANNOTATIONS']['0']['#']['ANNOTATION'];
     } else {
         $annotations = array();
     }
     foreach ($annotations as $annotation) {
         $dba = new stdclass();
         $dba->startx = backup_todb($annotation['#']['STARTX']['0']['#']);
         $dba->starty = backup_todb($annotation['#']['STARTY']['0']['#']);
         $dba->endx = backup_todb($annotation['#']['ENDX']['0']['#']);
         $dba->endy = backup_todb($annotation['#']['ENDY']['0']['#']);
         $dba->path = assignment_uploadpdf::backup_todb_optional_field($annotation, 'PATH', null);
         $dba->pageno = backup_todb($annotation['#']['PAGENO']['0']['#']);
         $dba->colour = backup_todb($annotation['#']['COLOUR']['0']['#']);
         $dba->type = backup_todb($annotation['#']['TYPE']['0']['#']);
         $dba->assignment_submission = $submission->id;
         insert_record('assignment_uploadpdf_annot', $dba);
     }
 }