{
{    The purpose of this procedure is to restore all items on the backup file
{ at or below a specified object in the permanent file catalog.  Items that
{ already exist in the catalog are not restored and are skipped over on the
{ backup file.  The backup file is assumed to have been opened and to be
{ positioned at the start of a logical partition.  The backup file is left
{ positioned at PUC$EOI.
{
{       PUP$RESTORE_SUB_LEVELS (ENTRY, CATALOG_HEADER, PASSWORD_SPECIFIED,
{             PASSWORD, NEW_CATALOG_HEADER, RESTORE_N_LEVELS,
{             P_SELECTED_CYCLES, BACKUP_FILE_ID, STATUS)
{
{ ENTRY: (input)  This parameter specifies the name of the object on the backup
{       file that is to be restored.
{
{ CATALOG_HEADER: (input)  This parameter specifies the catalog path of the
{       objects on the backup file that are to be restored.
{
{ NEW_CATALOG_HEADER: (input)  This parameter specifies the catalog to which
{       the objects are to be restored.
{
{ PASSWORD_SPECIFIED: (input)  This parameter specifies whether or not a
{       password is provided.
{
{ PASSWORD: (input)  This parameter specifies the password if it is provided.
{
{ RESTORE_N_LEVEL: (input)  If TRUE is specified for this parameter, an attempt
{       will be made to restore the objects specified by the ENTRY and
{       CATALOG_HEADER parameters.  If FALSE is specified, then only items
{       below the specified object will be restored.
{
{       For example if the ENTRY and CATALOG_HEADER parameters are specified as
{       A.B, the NEW_CATALOG_HEADER parameter is specified as A.B.C,
{       RESTORE_N_LEVELS is specified as TRUE and A.B was found on the backup
{       file, an attempt will be made to restore the object to A.B.C.
{       Irregardless of this parameter, if A.B.D is found on the backup file,
{       an attempt will be made to restore it.
{
{ P_SELECTED_CYCLES: (input, output)  This parameter provides a list of cycle
{       pairs (backup file cycle and new file cycle) for each cycle of a file
{       object that is to be restored.
{
{ BACKUP_FILE_ID: (input, output)  This parameter specifies the file identifier
{       of the backup file.
{
{ STATUS: (ouput) This parameter specifies the request status.
{       CONDITION:
{                   pue$incompatible_backup_version
{                   pue$no_restore_no_find
{
