
C FINDS A LABEL IN A VMOL INTEGRAL FILE AND POSITIONS POINTER
C TO FIRST RECORD AFTER THE LABEL.

      SUBROUTINE LOCATE(IUNIT,LABELS)
      IMPLICIT INTEGER (A-Z)
      CHARACTER*8 LAB,LABELS,LABEL
      LABEL = LABELS
      REWIND(IUNIT)
1     READ(IUNIT,END=100,ERR=110) LAB
      IF (LAB(1:2).NE.'**') GOTO 1
      READ(IUNIT,END=100) LAB
      IF (LAB.EQ.LABEL) RETURN
      GOTO 1
100   WRITE(*,1000) LABEL, IUNIT
      CALL ERREX
      RETURN
1000  FORMAT(T3,'@LOCATE: Label ',A8,' not found on unit ',I3,'.')
110   WRITE(*,1100) IUNIT, LABEL
1100  FORMAT(T3,'@LOCATE: I/O error on unit ',i3,' looking for ',
     &          'label ',A8,'.')
      CALL ERREX
      RETURN
      END
