Would you experts please suggest me better version of the below pasted code


IDENTIFICATION DIVISION.
PROGRAM-ID. EXTRAC02.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT I1-FILE ASSIGN TO I1FILE.
SELECT O1-FILE ASSIGN TO O1FILE.
DATA DIVISION.
FILE SECTION.
FD I1-FILE
LABEL RECORDS ARE STANDARD
RECORDING MODE IS F.
01 I1-FILE-REC PIC X(1048).
FD O1-FILE
LABEL RECORDS ARE STANDARD
RECORDING MODE IS F.
01 O1-FILE-REC PIC X(1048).
WORKING-STORAGE SECTION.
01 WS-EOF PIC X(01) VALUE SPACE.
01 WS-01-HOLD-REC.
05 WS-01-HOLD-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-01-HOLD-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(1036) VALUE SPACE.
01 WS-02-HOLD-REC.
05 WS-02-HOLD-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-02-HOLD-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(1036) VALUE SPACE.
01 WS-IN-REC.
05 WS-IN-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-IN-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(42) VALUE SPACE.
05 WS-IN-BAG PIC X(06) VALUE SPACE.
05 FILLER PIC X(988) VALUE SPACE.
PROCEDURE DIVISION.
01-MAIN-PARA.
DISPLAY '01-MAIN-PARA'.
PERFORM 02-OPEN-PARA.
PERFORM 03-READ-PARA.
PERFORM 04-PERF-PARA UNTIL WS-EOF = 'Y'.
PERFORM 05-CLOS-PARA.
STOP RUN.
02-OPEN-PARA.
DISPLAY '02-OPEN-PARA'.
OPEN INPUT I1-FILE
OUTPUT O1-FILE.
03-READ-PARA.
DISPLAY '03-READ-PARA'.
READ I1-FILE INTO WS-IN-REC
AT END MOVE 'Y' TO WS-EOF
END-READ.
04-PERF-PARA.
DISPLAY '04-PERF-PARA'.
IF WS-IN-REC-TYPE = '01'
MOVE WS-IN-REC TO WS-01-HOLD-REC
ELSE
IF WS-IN-REC-TYPE = '02'
AND WS-IN-BAG = '111111'
MOVE WS-IN-REC TO WS-02-HOLD-REC
IF WS-01-HOLD-XNQ-NBR = WS-02-HOLD-XNQ-NBR
MOVE SPACE TO O1-FILE-REC
MOVE WS-01-HOLD-REC TO O1-FILE-REC
WRITE O1-FILE-REC
MOVE SPACE TO O1-FILE-REC
MOVE WS-02-HOLD-REC TO O1-FILE-REC
WRITE O1-FILE-REC
END-IF
END-IF
IF WS-IN-XNQ-NBR = WS-02-HOLD-XNQ-NBR
AND WS-IN-REC-TYPE NOT = '02'
MOVE SPACE TO O1-FILE-REC
MOVE I1-FILE-REC TO O1-FILE-REC
WRITE O1-FILE-REC
END-IF
END-IF
PERFORM 03-READ-PARA.
05-CLOS-PARA.
DISPLAY '06-CLOS-PARA'.
CLOSE I1-FILE
O1-FILE.
PROGRAM-ID. EXTRAC02.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT I1-FILE ASSIGN TO I1FILE.
SELECT O1-FILE ASSIGN TO O1FILE.
DATA DIVISION.
FILE SECTION.
FD I1-FILE
LABEL RECORDS ARE STANDARD
RECORDING MODE IS F.
01 I1-FILE-REC PIC X(1048).
FD O1-FILE
LABEL RECORDS ARE STANDARD
RECORDING MODE IS F.
01 O1-FILE-REC PIC X(1048).
WORKING-STORAGE SECTION.
01 WS-EOF PIC X(01) VALUE SPACE.
01 WS-01-HOLD-REC.
05 WS-01-HOLD-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-01-HOLD-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(1036) VALUE SPACE.
01 WS-02-HOLD-REC.
05 WS-02-HOLD-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-02-HOLD-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(1036) VALUE SPACE.
01 WS-IN-REC.
05 WS-IN-REC-TYPE PIC X(02) VALUE SPACE.
05 FILLER PIC X(03) VALUE SPACE.
05 WS-IN-XNQ-NBR PIC X(07) VALUE SPACE.
05 FILLER PIC X(42) VALUE SPACE.
05 WS-IN-BAG PIC X(06) VALUE SPACE.
05 FILLER PIC X(988) VALUE SPACE.
PROCEDURE DIVISION.
01-MAIN-PARA.
DISPLAY '01-MAIN-PARA'.
PERFORM 02-OPEN-PARA.
PERFORM 03-READ-PARA.
PERFORM 04-PERF-PARA UNTIL WS-EOF = 'Y'.
PERFORM 05-CLOS-PARA.
STOP RUN.
02-OPEN-PARA.
DISPLAY '02-OPEN-PARA'.
OPEN INPUT I1-FILE
OUTPUT O1-FILE.
03-READ-PARA.
DISPLAY '03-READ-PARA'.
READ I1-FILE INTO WS-IN-REC
AT END MOVE 'Y' TO WS-EOF
END-READ.
04-PERF-PARA.
DISPLAY '04-PERF-PARA'.
IF WS-IN-REC-TYPE = '01'
MOVE WS-IN-REC TO WS-01-HOLD-REC
ELSE
IF WS-IN-REC-TYPE = '02'
AND WS-IN-BAG = '111111'
MOVE WS-IN-REC TO WS-02-HOLD-REC
IF WS-01-HOLD-XNQ-NBR = WS-02-HOLD-XNQ-NBR
MOVE SPACE TO O1-FILE-REC
MOVE WS-01-HOLD-REC TO O1-FILE-REC
WRITE O1-FILE-REC
MOVE SPACE TO O1-FILE-REC
MOVE WS-02-HOLD-REC TO O1-FILE-REC
WRITE O1-FILE-REC
END-IF
END-IF
IF WS-IN-XNQ-NBR = WS-02-HOLD-XNQ-NBR
AND WS-IN-REC-TYPE NOT = '02'
MOVE SPACE TO O1-FILE-REC
MOVE I1-FILE-REC TO O1-FILE-REC
WRITE O1-FILE-REC
END-IF
END-IF
PERFORM 03-READ-PARA.
05-CLOS-PARA.
DISPLAY '06-CLOS-PARA'.
CLOSE I1-FILE
O1-FILE.
I wrote this code in a hurry but not able to fine tune it.

Please help.

Thanks.