       IDENTIFICATION DIVISION.
       PROGRAM-ID. AOC-2020-04-1.
       AUTHOR. ANNA KOSIERADZKA.
      
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT INPUTFILE ASSIGN TO "d4.input"
           ORGANIZATION IS LINE SEQUENTIAL.
           
       DATA DIVISION.
       FILE SECTION.
         FD INPUTFILE
         RECORD IS VARYING IN SIZE FROM 1 to 99
         DEPENDING ON REC-LEN.
         01 INPUTRECORD PIC X(99).
       WORKING-STORAGE SECTION.
         01 FILE-STATUS PIC 9 VALUE 0.
         01 REC-LEN PIC 9(2) COMP.
         01 WS-ROW PIC X(16) OCCURS 8 TIMES.
         01 WS-CHAR PIC X.

       LOCAL-STORAGE SECTION.
         01 CORRECT-PASSPORTS UNSIGNED-INT VALUE 0.
         01 FOUND-FIELDS UNSIGNED-INT VALUE 0.
         01 STRING-PTR UNSIGNED-INT VALUE 1.
         01 I UNSIGNED-INT VALUE 1.

       PROCEDURE DIVISION.
       001-MAIN.
           OPEN INPUT INPUTFILE.
           PERFORM 002-READ UNTIL FILE-STATUS = 1.
           CLOSE INPUTFILE.
           PERFORM 004-NEXT-PASSPORT.
           DISPLAY CORRECT-PASSPORTS.
           STOP RUN.

       002-READ.
            READ INPUTFILE
                AT END MOVE 1 TO FILE-STATUS
                NOT AT END PERFORM 003-PROCESS-RECORD
            END-READ.
       
       003-PROCESS-RECORD.
           IF REC-LEN = 0 THEN
              PERFORM 004-NEXT-PASSPORT
           ELSE 
              PERFORM 005-PROCESS-ROW
           END-IF.
          
       004-NEXT-PASSPORT.
           IF FOUND-FIELDS = 7 THEN 
              ADD 1 TO CORRECT-PASSPORTS
           END-IF.
           MOVE 0 TO FOUND-FIELDS.
           
       005-PROCESS-ROW.
           MOVE 1 TO STRING-PTR.
           PERFORM VARYING I FROM 1 BY 1 UNTIL I > 8
             UNSTRING INPUTRECORD DELIMITED BY SPACE INTO WS-ROW(I)
             WITH POINTER STRING-PTR
           END-PERFORM.
           
           PERFORM VARYING I FROM 1 BY 1 UNTIL I > 8
              MOVE WS-ROW(I)(1:1) TO WS-CHAR
              IF NOT WS-CHAR ='c' AND NOT WS-CHAR = ' ' THEN
                 ADD 1 TO FOUND-FIELDS
              END-IF
           END-PERFORM.
