      SUBROUTINE CHKSPG
      COMMON/CCELLI/SPGI,SPGIA,SPGIN,ICRS
      COMMON/IO/NTOUT,NTIN,NEXTN
      COMMON/IERRS/ IWARN,IERR
      COMMON/CHAR/ITIH(7),ITCRS(8),ITSG(7),ITED(4)
      COMMON/UNQ/   IFA,IFB,IFC,IRH
      CHARACTER*1 SPGIA,ICRS
      CHARACTER*4 SPGIN
      CHARACTER*8 SPGI
      CHARACTER*1 ITSG,ITCRS,ITED,ITIH
      CHARACTER*1 L
C-----FOR RHOMBOHEDRAL IF ISG(1)=' ' THEN SET IT TO 'R'
      IF(SPGI(1:1).EQ.ITED(1).AND.ICRS.EQ.ITCRS(6)) SPGI(1:1)=ITSG(7)
C
C-----FIRST PHASE. IS ISG(1) AN ALLOWED SYMBOL?
C-----USE L=ISG(1) FOR LATTICE CENTERING
C
      L=SPGI(1:1)
      IF(L.EQ.ITED(1)) GOTO 20
      DO 10 I=1,7
      IF(ITSG(I).EQ.L) GOTO 20
   10 CONTINUE
      IERR=IERR+1
      WRITE(NTOUT,11) L
   11 FORMAT(' ',  '**ERROR** Space group centering symbol "',A1,
     * '" is not allowed' /' ',10X,   'Cell centering "P" assumed' )
      SPGI(1:1)=ITED(1)
C
C-----SECOND PHASE. IS ICRS AN ALLOWED SYMBOL?
C
   20 DO 30 I=1,7
      IF(ICRS.EQ.ITCRS(I)) GOTO 40
   30 CONTINUE
      IERR=IERR+1
      WRITE(NTOUT,31) ICRS
   31 FORMAT(' ','**ERROR** Crystal system "',A1,'" is not allowed'/
     * ' ',10x, 'anorthic system assumed' )
C-----SET TO ANORTHIC INORDER TO PERMIT TRIAL EXECUTION
      ICRS=ITCRS(1)
      I=1
C-----IF CENTERING IS ABSENT THEN NO FURTHER CHECKING IS POSSIBLE
   40 IF(L.EQ.ITED(1).AND.ICRS.NE.ITCRS(6)) GOTO 200
C
C-----THIRD PHASE. CHECK FOR CONSISTENT LATTICE CENTERING AND CRYSTAL
C-----SYSTEM
C
C-----BRANCH ON CODE FOR CRYSTAL SYSTEM
      GOTO(50,70,90,110,130,150,170),I
C-----ANORTHIC P,A,B,C,F,I ALLOWED
   50 IF(L.EQ.ITSG(7)) GOTO 190
      GOTO 200
C-----MONOCLINIC P,A,B,C,F,I ALLOWED
   70 IF(L.EQ.ITSG(7)) GOTO 190
      GOTO 200
C-----ORTHORHOMBIC P,A,B,C,F,I ALLOWED
   90 IF(L.EQ.ITSG(7)) GOTO 190
      GOTO 200
C-----TETRAGONAL P,C,F,I ALLOWED
  110 IF(L.EQ.ITSG(2).OR.L.EQ.ITSG(3).OR.L.EQ.ITSG(7)) GOTO 190
      IF(L.NE.ITSG(4).AND.L.NE.ITSG(5))  GOTO 200
      WRITE(NTOUT,111)
      IWARN=IWARN+1
  111 FORMAT(' ','**WARNING** Unusual tetragonal centering input - cd'
     *' space group not determined' )
      GOTO 200
C-----HEXAGONAL P ALLOWED
  130 IF(L.NE.ITSG(1)) GOTO 190
      GOTO 200
C-----RHOMBOHEDRAL  R-AXES R,F,I ALLOWED; H-AXES R ALLOWED
  150 IF(L.EQ.ITED(1)) SPGI(1:1)=ITSG(7)
      IF(IRH.EQ.1) GOTO 160
C-----R-AXES
      IF(L.EQ.ITSG(7)) GOTO 200
      IF(L.NE.ITSG(5).AND.L.NE.ITSG(6)) GOTO 190
      WRITE(NTOUT,151)
  151 FORMAT(' ','**WARNING** Unusual rhombohedral centering input - cd'
     * 'space group not determined' )
      IWARN=IWARN+1
      GOTO 200
C-----H-AXES
  160 IF(L.NE.ITSG(7)) GOTO 190
      GOTO 200
C-----CUBIC  P,F,I ALLOWED
  170 IF(L.NE.ITSG(1).AND.L.NE.ITSG(5).AND.L.NE.ITSG(6)) GOTO 190
      GOTO 200
C
C-----LATTICE CENTERING (ISG(1)) NOT ALLOWED IN SYSTEM ICRS
C
  190 IERR=IERR+1
      WRITE(NTOUT,192) L,ICRS
  192 FORMAT(' **ERROR** Input cell centering "',A1,'"  is not allowed',
     *' in crystal system "',A1,'"')
      SPGI(1:1)=ITSG(1)
      IF(ICRS.EQ.ITCRS(6)) SPGI(1:1)=ITSG(7)
      WRITE(NTOUT,194) SPGI(1:1)
  194 FORMAT(' ',9X,'ISG(1) set to "',A1,'"  to permit execution')
  200 RETURN
      END

      SUBROUTINE PRMCHK(ICRS,N,ITYP,JTYP)
C-----SETS ITYP AND JTYP ACCORDING TO CRYSTAL SYSTEM
C-----SYMMETRY CONSTRAINTS HAVE ALREADY BEEN IMPOSED ON LATTICE (IN READ
      COMMON/CHAR/ITIH(7),ITCRS(8),ITSG(7),ITED(4)
      COMMON/UNQ/ IFA,IFB,IFC,IRH
      CHARACTER*1 ITSG,ITCRS,ITED,ITIH
      CHARACTER*1 ICRS
      ITYP=0
* cubic
      IF (ICRS .NE. ITCRS(7)) GO TO 13
      JTYP=1
      ITYP=1
      N=1
      GO TO 55
* hexagonal
 13   IF (ICRS .NE. ITCRS(5)) GO TO 21
      JTYP=2
   15 ITYP=2
      N=2
      GO TO 55
C-----RHOMBOHEDRAL AND HEXAGONAL AXES
 21   IF (ICRS .NE. ITCRS(6) .OR. IRH.NE.1) GO TO 24
      JTYP=8
      GO TO 15
* orthorhombic
 24   IF (ICRS .NE. ITCRS(3)) GO TO 30
      JTYP=3
      ITYP=3
      N=3
      GO TO 55
* monoclinic
 30   IF (ICRS .NE. ITCRS(2)) GO TO 38
      JTYP=4
      ITYP=4
      N=4
      GO TO 55
* tetragonal
 38   IF (ICRS .NE. ITCRS(4)) GO TO 42
      JTYP=5
      ITYP=5
      N=2
      GO TO 55
C-----RHOMBOHEDRAL ON TRIGONAL AXES
 42   IF (ICRS .NE. ITCRS(6)) GO TO 51
      JTYP=7
      ITYP=7
      N=2
      GO TO 55
* triclinic
 51   IF (ICRS .NE. ITCRS(1)) GO TO 55
      JTYP=6
      ITYP=6
      N=6
   55 RETURN
      END

      SUBROUTINE SPG(ISGC,IPASS)
C**********************************************************************
C
C-----ROUTINE TO ASSIGN THE SPACE GROUP NUMBER AND ORIENTATION CODE AND
C-----ASPECT CODE FOR THE SPACE GROUP ISGC
C
C-----IPASS = 1 FOR NORMAL ANALYSIS
C-----      = 2 FOR CRYSTAL DATA SPACE GROUP
C
C-----SPACE GROUP NUMBER AS GIVEN IN THE 'INTENATIONAL TABLES, VOL 1'
C-----STORED IN SPGI AS EIGHT CHARACTER STRING (IPASS=1)
C-----STORED IN SPGF AS EIGHT CHARACTER STRING (IPASS=2)
C
C-----ORIENTATION CODE IS AS FOLLOWS
C         (blank) OR A  -  STANDARD SETTING
C         B,C,D,E,F - ALTERNATE SETTING
C           STORED IN SPGIA AS A ONE CHARACTER STRING
C
C-----SPGIA -ASPECT CODE (A1)
C-----SPGIN -#, ORIENTATION CODE   (A4)
C
C*************************************************************************
      COMMON/CHAR/ITSG(7),ITCRS(8),ITED(4),ITIH(7)
      COMMON/CELLI/AI,BI,CI,ALPHI,BETI,GAMI,VI,ERRI(7),ZI
      COMMON/CCELLI/SPGI,SPGIA,SPGIN,ICRS
      COMMON/IO/NTOUT,NTIN,NEXTN
      COMMON/UNQ/ IFA,IFB,IFC,IRH
      COMMON/IERRS/IWARN,IERR
      CHARACTER*1 ITSG,ITCRS,ITED,ITIH
      CHARACTER*1 SPGIA,SPGTA,ICRS
      CHARACTER*4 SPGIN,SPGTN
      CHARACTER*8 SPGI,SPGT
      CHARACTER*4 NUMSP(416),NUMAS(130)
      CHARACTER*8  ILSG(416), IASP(130)
      CHARACTER*8 ISGC
      CHARACTER*1 IHC,IHD,IH1,IH3,IHM,IASPEC(2)
C-----ANORTHIC (TRICLINIC) STARTS HERE AT NUMBER 1
C-----P1        (1)
      DATA ILSG(1)/'P1      '/  ,NUMSP(  1)/'  1 '/
C-----P BAR 1   (2)
      DATA ILSG(2)/'P-1     '/  ,NUMSP(  2)/'  2 '/
C-----MONOCLINIC STARTS HERE AT NUMBER 3
C-----P2        (3)
      DATA ILSG(3)/'P2      '/  ,NUMSP(  3)/'  3 '/
C-----P21       (4)
      DATA ILSG(4)/'P21     '/  ,NUMSP(  4)/'  4 '/
C-----C2        (5A)
      DATA ILSG(5)/'C2      '/  ,NUMSP(  5)/'  5A'/
C-----A2        (5B)
      DATA ILSG(6)/'A2      '/  ,NUMSP(  6)/'  5B'/
C-----I2        (5C)
      DATA ILSG(7)/'I2      '/  ,NUMSP(  7)/'  5C'/
C-----PM        (6)
      DATA ILSG(8)/'Pm      '/  ,NUMSP(  8)/'  6 '/
C-----PC        (7A)
      DATA ILSG(9)/'Pc      '/  ,NUMSP(  9)/'  7A'/
C-----PA        (7B)
      DATA ILSG(10)/'Pa      '/ ,NUMSP( 10)/'  7B'/
C-----PN        (7C)
      DATA ILSG(11)/'Pn      '/ ,NUMSP( 11)/'  7C'/
C-----CM        (8A)
      DATA ILSG(12)/'Cm      '/ ,NUMSP( 12)/'  8A'/
C-----AM        (8B)
      DATA ILSG(13)/'Am      '/ ,NUMSP( 13)/'  8B'/
C-----IM        (8C)
      DATA ILSG(14)/'Im      '/ ,NUMSP( 14)/'  8C'/
C-----CC        (9A)
      DATA ILSG(15)/'Cc      '/ ,NUMSP( 15)/'  9A'/
C-----AA        (9B)
      DATA ILSG(16)/'Aa      '/ ,NUMSP( 16)/'  9B'/
C-----IA        (9C)
      DATA ILSG(17)/'Ia      '/ ,NUMSP( 17)/'  9C'/
C-----P2/M      (10)
      DATA ILSG(18)/'P2/m    '/ ,NUMSP( 18)/' 10 '/
C-----P21/M     (11)
      DATA ILSG(19)/'P21/m   '/ ,NUMSP( 19)/' 11 '/
C-----C2/M      (12A)
      DATA ILSG(20)/'C2/m    '/ ,NUMSP( 20)/' 12A'/
C-----A2/M      (12B)
      DATA ILSG(21)/'A2/m    '/ ,NUMSP( 21)/' 12B'/
C-----I2/M      (12C)
      DATA ILSG(22)/'I2/m    '/ ,NUMSP( 22)/' 12C'/
C-----P2/C      (13A)
      DATA ILSG(23)/'P2/c    '/ ,NUMSP( 23)/' 13A'/
C-----P2/A      (13B)
      DATA ILSG(24)/'P2/a    '/ ,NUMSP( 24)/' 13B'/
C-----P2/N       (13C)
      DATA ILSG(25)/'P2/n    '/ ,NUMSP( 25)/' 13C'/
C-----P21/C     (14A)
      DATA ILSG(26)/'P21/c   '/ ,NUMSP( 26)/' 14A'/
C-----P21/A     (14B)
      DATA ILSG(27)/'P21/a   '/ ,NUMSP( 27)/' 14B'/
C-----P21/N     (14C)
      DATA ILSG(28)/'P21/n   '/ ,NUMSP( 28)/' 14C'/
C-----C2/C      (15A)
      DATA ILSG(29)/'C2/c    '/ ,NUMSP( 29)/' 15A'/
C-----A2/A      (15B)
      DATA ILSG(30)/'A2/a    '/ ,NUMSP( 30)/' 15B'/
C-----I2/A      (15C)
      DATA ILSG(31)/'I2/a    '/ ,NUMSP( 31)/' 15C'/
C-----ORTHORHOMBIC STARTS HERE AT NUMBER 32
C-----P222      (16)
      DATA ILSG(32)/'P222    '/ ,NUMSP( 32)/' 16 '/
C-----P2221     (17A)
      DATA ILSG(33)/'P2221   '/ ,NUMSP( 33)/' 17A'/
C-----P2122     (17B)
      DATA ILSG(34)/'P2122   '/ ,NUMSP( 34)/' 17B'/
C-----P2212     (17C)
      DATA ILSG(35)/'P2212   '/ ,NUMSP( 35)/' 17C'/
C-----P21212    (18A)
      DATA ILSG(36)/'P21212  '/ ,NUMSP( 36)/' 18A'/
C-----P22121    (18B)
      DATA ILSG(37)/'P22121  '/ ,NUMSP( 37)/' 18B'/
C-----P21221    (18C)
      DATA ILSG(38)/'P21221  '/ ,NUMSP( 38)/' 18C'/
C-----P212121   (19)
      DATA ILSG(39)/'P212121 '/ ,NUMSP( 39)/' 19 '/
C-----C2221     (20A)
      DATA ILSG(40)/'C2221   '/ ,NUMSP( 40)/' 20A'/
C-----A2122     (20B)
      DATA ILSG(41)/'A2122   '/ ,NUMSP( 41)/' 20B'/
C-----B2212     (20C)
      DATA ILSG(42)/'B2212   '/ ,NUMSP( 42)/' 20C'/
C-----C222      (21A)
      DATA ILSG(43)/'C222    '/ ,NUMSP( 43)/' 21A'/
C-----B222      (21B)
      DATA ILSG(44)/'B222    '/ ,NUMSP( 44)/' 21B'/
C-----A222      (21C)
      DATA ILSG(45)/'A222    '/ ,NUMSP( 45)/' 21C'/
C-----F222      (22)
      DATA ILSG(46)/'F222    '/ ,NUMSP( 46)/' 22 '/
C-----I222      (23)
      DATA ILSG(47)/'I222    '/ ,NUMSP( 47)/' 23 '/
C-----I212121   (24)
      DATA ILSG(48)/'I212121 '/ ,NUMSP( 48)/' 24 '/
C-----PMM2      (25A)
      DATA ILSG(49)/'Pmm2    '/ ,NUMSP( 49)/' 25A'/
C-----PM2M      (25B)
      DATA ILSG(50)/'Pm2m    '/ ,NUMSP( 50)/' 25B'/
C-----P2MM      (25C)
      DATA ILSG(51)/'P2mm    '/ ,NUMSP( 51)/' 25C'/
C-----PMC21     (26A)
      DATA ILSG(52)/'Pmc21   '/ ,NUMSP( 52)/' 26A'/
C-----P21MA     (26B)
      DATA ILSG(53)/'P21ma   '/ ,NUMSP( 53)/' 26B'/
C-----P21AM     (26C)
      DATA ILSG(54)/'P21am   '/ ,NUMSP( 54)/' 26C'/
C-----PB21M     (26D)
      DATA ILSG(55)/'Pb21m   '/ ,NUMSP( 55)/' 26D'/
C-----PCM21     (26E)
      DATA ILSG(56)/'Pcm21   '/ ,NUMSP( 56)/' 26E'/
C-----PM21B     (26F)
      DATA ILSG(57)/'Pm21b   '/ ,NUMSP( 57)/' 26F'/
C-----PCC2      (27A)
      DATA ILSG(58)/'Pcc2    '/ ,NUMSP( 58)/' 27A'/
C-----PB2B      (27B)
      DATA ILSG(59)/'Pb2b    '/ ,NUMSP( 59)/' 27B'/
C-----P2AA      (27C)
      DATA ILSG(60)/'P2aa    '/ ,NUMSP( 60)/' 27C'/
C-----PMA2      (28A)
      DATA ILSG(61)/'Pma2    '/ ,NUMSP( 61)/' 28A'/
C-----P2CM      (28B)
      DATA ILSG(62)/'P2cm    '/ ,NUMSP( 62)/' 28B'/
C-----P2MB      (28C)
      DATA ILSG(63)/'P2mb    '/ ,NUMSP( 63)/' 28C'/
C-----PBM2      (28D)
      DATA ILSG(64)/'Pbm2    '/ ,NUMSP( 64)/' 28D'/
C-----PC2M      (28E)
      DATA ILSG(65)/'Pc2m    '/ ,NUMSP( 65)/' 28E'/
C-----PM2A      (28F)
      DATA ILSG(66)/'Pm2a    '/ ,NUMSP( 66)/' 28F'/
C-----PCA21     (29A)
      DATA ILSG(67)/'Pca21   '/ ,NUMSP( 67)/' 29A'/
C-----P21CA     (29B)
      DATA ILSG(68)/'P21ca   '/ ,NUMSP( 68)/' 29B'/
C-----PB21A     (29C)
      DATA ILSG(69)/'Pb21a   '/ ,NUMSP( 69)/' 29C'/
C-----P21AB     (29D)
      DATA ILSG(70)/'P21ab   '/ ,NUMSP( 70)/' 29D'/
C-----PC21B     (29E)
      DATA ILSG(71)/'Pc21b   '/ ,NUMSP( 71)/' 29E'/
C-----PBC21     (29F)
      DATA ILSG(72)/'Pbc21   '/ ,NUMSP( 72)/' 29F'/
C-----PNC2      (30A)
      DATA ILSG(73)/'Pnc2    '/ ,NUMSP( 73)/' 30A'/
C-----PCN2      (30B)
      DATA ILSG(74)/'Pcn2    '/ ,NUMSP( 74)/' 30B'/
C-----PN2B      (30C)
      DATA ILSG(75)/'Pn2b    '/ ,NUMSP( 75)/' 30C'/
C-----PB2N      (30D)
      DATA ILSG(76)/'Pb2n    '/ ,NUMSP( 76)/' 30D'/
C-----P2NA      (30E)
      DATA ILSG(77)/'P2na    '/ ,NUMSP( 77)/' 30E'/
C-----P2AN      (30F)
      DATA ILSG(78)/'P2an    '/ ,NUMSP( 78)/' 30F'/
C-----PMN21     (31A)
      DATA ILSG(79)/'Pmn21   '/ ,NUMSP( 79)/' 31A'/
C-----PNM21     (31B)
      DATA ILSG(80)/'Pnm21   '/ ,NUMSP( 80)/' 31B'/
C-----P21NM     (31C)
      DATA ILSG(81)/'P21nm   '/ ,NUMSP( 81)/' 31C'/
C-----PN21M     (31D)
      DATA ILSG(82)/'Pn21m   '/ ,NUMSP( 82)/' 31D'/
C-----PM21N     (31E)
      DATA ILSG(83)/'Pm21n   '/ ,NUMSP( 83)/' 31E'/
C-----P21MN     (31F)
      DATA ILSG(84)/'P21mn   '/ ,NUMSP( 84)/' 31F'/
C-----PBA2      (32A)
      DATA ILSG(85)/'Pba2    '/ ,NUMSP( 85)/' 32A'/
C-----P2CB      (32B)
      DATA ILSG(86)/'P2cb    '/ ,NUMSP( 86)/' 32B'/
C-----PC2A      (32C)
      DATA ILSG(87)/'Pc2a    '/ ,NUMSP( 87)/' 32C'/
C-----PNA21     (33A)
      DATA ILSG(88)/'Pna21   '/ ,NUMSP( 88)/' 33A'/
C-----PBN21     (33B)
      DATA ILSG(89)/'Pbn21   '/ ,NUMSP( 89)/' 33B'/
C-----P21CN     (33C)
      DATA ILSG(90)/'P21cn   '/ ,NUMSP( 90)/' 33C'/
C-----P21NB     (33D)
      DATA ILSG(91)/'P21nb   '/ ,NUMSP( 91)/' 33D'/
C-----PN21A     (33E)
      DATA ILSG(92)/'Pn21a   '/ ,NUMSP( 92)/' 33E'/
C-----PC21N     (33F)
      DATA ILSG(93)/'Pc21n   '/ ,NUMSP( 93)/' 33F'/
C-----PNN2      (34A)
      DATA ILSG(94)/'Pnn2    '/ ,NUMSP( 94)/' 34A'/
C-----PN2N      (34B)
      DATA ILSG(95)/'Pn2n    '/ ,NUMSP( 95)/' 34B'/
C-----P2NN      (34C)
      DATA ILSG(96)/'P2nn    '/ ,NUMSP( 96)/' 34C'/
C-----CMM2      (35A)
      DATA ILSG(97)/'Cmm2    '/ ,NUMSP( 97)/' 35A'/
C-----BM2M      (35B)
      DATA ILSG(98)/'Bm2m    '/ ,NUMSP( 98)/' 35B'/
C-----A2MM      (35C)
      DATA ILSG(99)/'A2mm    '/ ,NUMSP( 99)/' 35C'/
C-----CMC21     (36A)
      DATA ILSG(100)/'Cmc21   '/,NUMSP(100)/' 36A'/
C-----A21AM     (36B)
      DATA ILSG(101)/'A21am   '/,NUMSP(101)/' 36B'/
C-----A21MA     (36C)
      DATA ILSG(102)/'A21ma   '/,NUMSP(102)/' 36C'/
C-----BM21B     (36D)
      DATA ILSG(103)/'Bm21b   '/,NUMSP(103)/' 36D'/
C-----BB21M     (36E)
      DATA ILSG(104)/'Bb21m   '/,NUMSP(104)/' 36E'/
C-----CCM21     (36F)
      DATA ILSG(105)/'Ccm21   '/,NUMSP(105)/' 36F'/
C-----CCC2      (37A)
      DATA ILSG(106)/'Ccc2    '/,NUMSP(106)/' 37A'/
C-----A2AA      (37B)
      DATA ILSG(107)/'A2aa    '/,NUMSP(107)/' 37B'/
C-----BB2B      (37C)
      DATA ILSG(108)/'Bb2b    '/,NUMSP(108)/' 37C'/
C-----AMM2      (38A)
      DATA ILSG(109)/'Amm2    '/,NUMSP(109)/' 38A'/
C-----AM2M      (38B)
      DATA ILSG(110)/'Am2m    '/,NUMSP(110)/' 38B'/
C-----B2MM      (38C)
      DATA ILSG(111)/'B2mm    '/,NUMSP(111)/' 38C'/
C-----BMM2      (38E)
      DATA ILSG(113)/'Bmm2    '/,NUMSP(113)/' 38E'/
C-----C2MM      (38D)
      DATA ILSG(112)/'C2mm    '/,NUMSP(112)/' 38D'/
C-----CM2M      (38F)
      DATA ILSG(114)/'Cm2m    '/,NUMSP(114)/' 38F'/
C-----ABM2      (39A)
      DATA ILSG(115)/'Abm2    '/,NUMSP(115)/' 39A'/
C-----BMA2      (39B)
      DATA ILSG(116)/'Bma2    '/,NUMSP(116)/' 39B'/
C-----C2MA      (39C)
      DATA ILSG(117)/'C2ma    '/,NUMSP(117)/' 39C'/
C-----AB2M      (39D)
      DATA ILSG(118)/'Ab2m    '/,NUMSP(118)/' 39D'/
C-----CM2A      (39E)
      DATA ILSG(119)/'Cm2a    '/,NUMSP(119)/' 39E'/
C-----B2AM      (39F)
      DATA ILSG(120)/'B2am    '/,NUMSP(120)/' 39F'/
C-----AMA2      (40A)
      DATA ILSG(121)/'Ama2    '/,NUMSP(121)/' 40A'/
C-----C2CM      (40B)
      DATA ILSG(122)/'C2cm    '/,NUMSP(122)/' 40B'/
C-----BBM2      (40C)
      DATA ILSG(123)/'Bbm2    '/,NUMSP(123)/' 40C'/
C-----B2MB      (40D)
      DATA ILSG(124)/'B2mb    '/,NUMSP(124)/' 40D'/
C-----CC2M      (40E)
      DATA ILSG(125)/'Cc2m    '/,NUMSP(125)/' 40E'/
C-----AM2A      (40F)
      DATA ILSG(126)/'Am2a    '/,NUMSP(126)/' 40F'/
C-----ABA2      (41A)
      DATA ILSG(127)/'Aba2    '/,NUMSP(127)/' 41A'/
C-----AB2A      (41B)
      DATA ILSG(128)/'Ab2a    '/,NUMSP(128)/' 41B'/
C-----C2CA      (41C)
      DATA ILSG(129)/'C2ca    '/,NUMSP(129)/' 41C'/
C-----B2AB      (41D)
      DATA ILSG(130)/'B2ab    '/,NUMSP(130)/' 41D'/
C-----CC2A      (41E)
      DATA ILSG(131)/'Cc2a    '/,NUMSP(131)/' 41E'/
C-----BBA2      (41F)
      DATA ILSG(132)/'Bba2    '/,NUMSP(132)/' 41F'/
C-----FMM2      (42A)
      DATA ILSG(133)/'Fmm2    '/,NUMSP(133)/' 42A'/
C-----FM2M      (42B)
      DATA ILSG(134)/'Fm2m    '/,NUMSP(134)/' 42B'/
C-----F2MM      (42C)
      DATA ILSG(135)/'F2mm    '/,NUMSP(135)/' 42C'/
C-----FDD2      (43A)
      DATA ILSG(136)/'Fdd2    '/,NUMSP(136)/' 43A'/
C-----FD2D      (43B)
      DATA ILSG(137)/'Fd2d    '/,NUMSP(137)/' 43B'/
C-----F2DD      (43C)
      DATA ILSG(138)/'F2dd    '/,NUMSP(138)/' 43C'/
C-----IMM2      (44A)
      DATA ILSG(139)/'Imm2    '/,NUMSP(139)/' 44A'/
C-----IM2M      (44B)
      DATA ILSG(140)/'Im2m    '/,NUMSP(140)/' 44B'/
C-----I2MM      (44C)
      DATA ILSG(141)/'I2mm    '/,NUMSP(141)/' 44C'/
C-----IBA2      (45A)
      DATA ILSG(142)/'Iba2    '/,NUMSP(142)/' 45A'/
C-----IB2A      (45B)
      DATA ILSG(143)/'Ib2a    '/,NUMSP(143)/' 45B'/
C-----I2AA      (45C)
      DATA ILSG(144)/'I2aa    '/,NUMSP(144)/' 45C'/
C-----IMA2      (46A)
      DATA ILSG(145)/'Ima2    '/,NUMSP(145)/' 46A'/
C-----IM2A      (46B)
      DATA ILSG(146)/'Im2a    '/,NUMSP(146)/' 46B'/
C-----IBM2      (46C)
      DATA ILSG(147)/'Ibm2    '/,NUMSP(147)/' 46C'/
C-----I2AM      (46D)
      DATA ILSG(148)/'I2am    '/,NUMSP(148)/' 46D'/
C-----IB2M      (46E)
      DATA ILSG(149)/'Ib2m    '/,NUMSP(149)/' 46E'/
C-----I2MA      (46F)
      DATA ILSG(150)/'I2ma    '/,NUMSP(150)/' 46F'/
C-----PMMM      (47)
      DATA ILSG(151)/'Pmmm    '/,NUMSP(151)/' 47 '/
C-----PNNN      (48)
      DATA ILSG(152)/'Pnnn    '/,NUMSP(152)/' 48 '/
C-----PCCM      (49A)
      DATA ILSG(153)/'Pccm    '/,NUMSP(153)/' 49A'/
C-----PMAA      (49B)
      DATA ILSG(154)/'Pmaa    '/,NUMSP(154)/' 49B'/
C-----PBMB      (49C)
      DATA ILSG(155)/'Pbmb    '/,NUMSP(155)/' 49C'/
C-----PBAN      (50A)
      DATA ILSG(156)/'Pban    '/,NUMSP(156)/' 50A'/
C-----PNCB      (50B)
      DATA ILSG(157)/'Pncb    '/,NUMSP(157)/' 50B'/
C-----PCNA      (50C)
      DATA ILSG(158)/'Pcna    '/,NUMSP(158)/' 50C'/
C-----PMMA      (51A)
      DATA ILSG(159)/'Pmma    '/,NUMSP(159)/' 51A'/
C-----PMCM      (51B)
      DATA ILSG(160)/'Pmcm    '/,NUMSP(160)/' 51B'/
C-----PCMM      (51C)
      DATA ILSG(161)/'Pcmm    '/,NUMSP(161)/' 51C'/
C-----PMAM      (51D)
      DATA ILSG(162)/'Pmam    '/,NUMSP(162)/' 51D'/
C-----PBMM      (51E)
      DATA ILSG(163)/'Pbmm    '/,NUMSP(163)/' 51E'/
C-----PMMB      (51F)
      DATA ILSG(164)/'Pmmb    '/,NUMSP(164)/' 51F'/
C-----PNNA      (52A)
      DATA ILSG(165)/'Pnna    '/,NUMSP(165)/' 52A'/
C-----PNNB      (52B)
      DATA ILSG(166)/'Pnnb    '/,NUMSP(166)/' 52B'/
C-----PNAN      (52C)
      DATA ILSG(167)/'Pnan    '/,NUMSP(167)/' 52C'/
C-----PNCN      (52D)
      DATA ILSG(168)/'Pncn    '/,NUMSP(168)/' 52D'/
C-----PBNN      (52E)
      DATA ILSG(169)/'Pbnn    '/,NUMSP(169)/' 52E'/
C-----PCNN      (52F)
      DATA ILSG(170)/'Pcnn    '/,NUMSP(170)/' 52F'/
C-----PMNA      (53A)
      DATA ILSG(171)/'Pmna    '/,NUMSP(171)/' 53A'/
C-----PNCM      (53B)
      DATA ILSG(172)/'Pncm    '/,NUMSP(172)/' 53B'/
C-----PBMN      (53C)
      DATA ILSG(173)/'Pbmn    '/,NUMSP(173)/' 53C'/
C-----PMAN      (53D)
      DATA ILSG(174)/'Pman    '/,NUMSP(174)/' 53D'/
C-----PCNM      (53E)
      DATA ILSG(175)/'Pcnm    '/,NUMSP(175)/' 53E'/
C-----PNMB      (53F)
      DATA ILSG(176)/'Pnmb    '/,NUMSP(176)/' 53F'/
C-----PCCA      (54A)
      DATA ILSG(177)/'Pcca    '/,NUMSP(177)/' 54A'/
C-----PBAA      (54B)
      DATA ILSG(178)/'Pbaa    '/,NUMSP(178)/' 54B'/
C-----PBCB      (54C)
      DATA ILSG(179)/'Pbcb    '/,NUMSP(179)/' 54C'/
C-----PCCB      (54D)
      DATA ILSG(180)/'Pccb    '/,NUMSP(180)/' 54D'/
C-----PBAB      (54E)
      DATA ILSG(181)/'Pbab    '/,NUMSP(181)/' 54E'/
C-----PCAA      (54F)
      DATA ILSG(182)/'Pcaa    '/,NUMSP(182)/' 54F'/
C-----PBAM      (55A)
      DATA ILSG(183)/'Pbam    '/,NUMSP(183)/' 55A'/
C-----PCMA      (55B)
      DATA ILSG(184)/'Pcma    '/,NUMSP(184)/' 55B'/
C-----PMCB      (55C)
      DATA ILSG(185)/'Pmcb    '/,NUMSP(185)/' 55C'/
C-----PCCN      (56A)
      DATA ILSG(186)/'Pccn    '/,NUMSP(186)/' 56A'/
C-----PBNB      (56B)
      DATA ILSG(187)/'Pbnb    '/,NUMSP(187)/' 56B'/
C-----PNAA      (56C)
      DATA ILSG(188)/'Pnaa    '/,NUMSP(188)/' 56C'/
C-----PBCM      (57A)
      DATA ILSG(189)/'Pbcm    '/,NUMSP(189)/' 57A'/
C-----PCMB      (57B)
      DATA ILSG(190)/'Pcmb    '/,NUMSP(190)/' 57B'/
C-----PBMA      (57C)
      DATA ILSG(191)/'Pbma    '/,NUMSP(191)/' 57C'/
C-----PCAM      (57D)
      DATA ILSG(192)/'Pcam    '/,NUMSP(192)/' 57D'/
C-----PMAB      (57E)
      DATA ILSG(193)/'Pmab    '/,NUMSP(193)/' 57E'/
C-----PMCA      (57F)
      DATA ILSG(194)/'Pmca    '/,NUMSP(194)/' 57F'/
C-----PNNM      (58A)
      DATA ILSG(195)/'Pnnm    '/,NUMSP(195)/' 58A'/
C-----PNMN      (58B)
      DATA ILSG(196)/'Pnmn    '/,NUMSP(196)/' 58B'/
C-----PMNN      (58C)
      DATA ILSG(197)/'Pmnn    '/,NUMSP(197)/' 58C'/
C-----PMMN      (59A)
      DATA ILSG(198)/'Pmmn    '/,NUMSP(198)/' 59A'/
C-----PNMM      (59B)
      DATA ILSG(199)/'Pnmm    '/,NUMSP(199)/' 59B'/
C-----PMNM      (59C)
      DATA ILSG(200)/'Pmnm    '/,NUMSP(200)/' 59C'/
C-----PBCN      (60A)
      DATA ILSG(201)/'Pbcn    '/,NUMSP(201)/' 60A'/
C-----PNAB      (60B)
      DATA ILSG(202)/'Pnab    '/,NUMSP(202)/' 60B'/
C-----PNCA      (60C)
      DATA ILSG(203)/'Pnca    '/,NUMSP(203)/' 60C'/
C-----PBNA      (60D)
      DATA ILSG(204)/'Pbna    '/,NUMSP(204)/' 60D'/
C-----PCAN      (60E)
      DATA ILSG(205)/'Pcan    '/,NUMSP(205)/' 60E'/
C-----PCNB      (60F)
      DATA ILSG(206)/'Pcnb    '/,NUMSP(206)/' 60F'/
C-----PBCA      (61A)
      DATA ILSG(207)/'Pbca    '/,NUMSP(207)/' 61A'/
C-----PCAB      (61B)
      DATA ILSG(208)/'Pcab    '/,NUMSP(208)/' 61B'/
C-----PNMA      (62A)
      DATA ILSG(209)/'Pnma    '/,NUMSP(209)/' 62A'/
C-----PMNB      (62B)
      DATA ILSG(210)/'Pmnb    '/,NUMSP(210)/' 62B'/
C-----PBNM      (62C)
      DATA ILSG(211)/'Pbnm    '/,NUMSP(211)/' 62C'/
C-----PMCN      (62D)
      DATA ILSG(212)/'Pmcn    '/,NUMSP(212)/' 62D'/
C-----PCMN      (62E)
      DATA ILSG(213)/'Pcmn    '/,NUMSP(213)/' 62E'/
C-----PNAM      (62F)
      DATA ILSG(214)/'Pnam    '/,NUMSP(214)/' 62F'/
C-----CMCM      (63A)
      DATA ILSG(215)/'Cmcm    '/,NUMSP(215)/' 63A'/
C-----BBMM      (63B)
      DATA ILSG(216)/'Bbmm    '/,NUMSP(216)/' 63B'/
C-----AMAM      (63C)
      DATA ILSG(217)/'Amam    '/,NUMSP(217)/' 63C'/
C-----AMMA      (63D)
      DATA ILSG(218)/'Amma    '/,NUMSP(218)/' 63D'/
C-----CCMM      (63E)
      DATA ILSG(219)/'Ccmm    '/,NUMSP(219)/' 63E'/
C-----BMMB      (63F)
      DATA ILSG(220)/'Bmmb    '/,NUMSP(220)/' 63F'/
C-----CMCA      (64A)
      DATA ILSG(221)/'Cmca    '/,NUMSP(221)/' 64A'/
C-----ABAM      (64B)
      DATA ILSG(222)/'Abam    '/,NUMSP(222)/' 64B'/
C-----CCMA      (64C)
      DATA ILSG(223)/'Ccma    '/,NUMSP(223)/' 64C'/
C-----ABMA      (64D)
      DATA ILSG(224)/'Abma    '/,NUMSP(224)/' 64D'/
C-----BMAB      (64E)
      DATA ILSG(225)/'Bmab    '/,NUMSP(225)/' 64E'/
C-----BBAM      (64F)
      DATA ILSG(226)/'Bbam    '/,NUMSP(226)/' 64F'/
C-----CMMM      (65A)
      DATA ILSG(227)/'Cmmm    '/,NUMSP(227)/' 65A'/
C-----BMMM      (65B)
      DATA ILSG(228)/'Bmmm    '/,NUMSP(228)/' 65B'/
C-----AMMM      (65C)
      DATA ILSG(229)/'Ammm    '/,NUMSP(229)/' 65C'/
C-----CCCM      (66A)
      DATA ILSG(230)/'Cccm    '/,NUMSP(230)/' 66A'/
C-----AMAA      (66B)
      DATA ILSG(231)/'Amaa    '/,NUMSP(231)/' 66B'/
C-----BBMB      (66C)
      DATA ILSG(232)/'Bbmb    '/,NUMSP(232)/' 66C'/
C-----CMMA      (67A)
      DATA ILSG(233)/'Cmma    '/,NUMSP(233)/' 67A'/
C-----ABMM      (67B)
      DATA ILSG(234)/'Abmm    '/,NUMSP(234)/' 67B'/
C-----BMAM      (67C)
      DATA ILSG(235)/'Bmam    '/,NUMSP(235)/' 67C'/
C-----CCCA      (68A)
      DATA ILSG(236)/'Ccca    '/,NUMSP(236)/' 68A'/
C-----BBAB      (68B)
      DATA ILSG(237)/'Bbab    '/,NUMSP(237)/' 68B'/
C-----ABAA      (68C)
      DATA ILSG(238)/'Abaa    '/,NUMSP(238)/' 68C'/
C-----FMMM      (69)
      DATA ILSG(239)/'Fmmm    '/,NUMSP(239)/' 69 '/
C-----FDDD      (70)
      DATA ILSG(240)/'Fddd    '/,NUMSP(240)/' 70 '/
C-----IMMM      (71)
      DATA ILSG(241)/'Immm    '/,NUMSP(241)/' 71 '/
C-----IBAM      (72A)
      DATA ILSG(242)/'Ibam    '/,NUMSP(242)/' 72A'/
C-----IMAA      (72B)
      DATA ILSG(243)/'Imaa    '/,NUMSP(243)/' 72B'/
C-----IBMA      (72C)
      DATA ILSG(244)/'Ibma    '/,NUMSP(244)/' 72C'/
C-----IBCA      (73)
      DATA ILSG(245)/'Ibca    '/,NUMSP(245)/' 73 '/
C-----IMMA      (74A)
      DATA ILSG(246)/'Imma    '/,NUMSP(246)/' 74A'/
C-----IBMM      (74B)
      DATA ILSG(247)/'Ibmm    '/,NUMSP(247)/' 74B'/
C-----IMAM      (74C)
      DATA ILSG(248)/'Imam    '/,NUMSP(248)/' 74C'/
C-----TETRAGONAL STARTS HERE AT NUMBER 249
C-----P4        (75)
      DATA ILSG(249)/'P4      '/,NUMSP(249)/' 75 '/
C-----P41       (76)   AND P43
      DATA ILSG(250)/'P41     '/,NUMSP(250)/' 76 '/
C-----P41,3     (ASPECT 76)
      DATA ILSG(251)/'XXXXXXXX'/,NUMSP(251)/' 76B'/
C-----P42       (77)
      DATA ILSG(252)/'P42     '/,NUMSP(252)/' 77 '/
C-----P43       (78)    ASS. 76
      DATA ILSG(253)/'P43     '/,NUMSP(253)/' 78 '/
C-----I4        (79)
      DATA ILSG(254)/'I4      '/,NUMSP(254)/' 79 '/
C-----I41       (80)
      DATA ILSG(255)/'I41     '/,NUMSP(255)/' 80 '/
C-----P BAR 4   (81)
      DATA ILSG(256)/'P-4     '/,NUMSP(256)/' 81 '/
C-----I BAR 4   (82)
      DATA ILSG(257)/'I-4     '/,NUMSP(257)/' 82 '/
C-----P4/M      (83)
      DATA ILSG(258)/'P4/m    '/,NUMSP(258)/' 83 '/
C-----P42/M     (84)
      DATA ILSG(259)/'P42/m   '/,NUMSP(259)/' 84 '/
C-----P4/N      (85)
      DATA ILSG(260)/'P4/n    '/,NUMSP(260)/' 85 '/
C-----P42/N     (86)
      DATA ILSG(261)/'P42/n   '/,NUMSP(261)/' 86 '/
C-----I4/M      (87)
      DATA ILSG(262)/'I4/m    '/,NUMSP(262)/' 87 '/
C-----I41/A     (88)
      DATA ILSG(263)/'I41/a   '/,NUMSP(263)/' 88 '/
C-----P422      (89)
      DATA ILSG(264)/'P422    '/,NUMSP(264)/' 89 '/
C-----P4212     (90)
      DATA ILSG(265)/'P4212   '/,NUMSP(265)/' 90 '/
C-----P4122     (91)   AND P4322
      DATA ILSG(266)/'P4122   '/,NUMSP(266)/' 91 '/
C-----P41,322   (ASPECT 91)
      DATA ILSG(267)/'XXXXXXXX'/,NUMSP(267)/' 91B'/
C-----P41212    (92)   AND P43212
      DATA ILSG(268)/'P41212  '/,NUMSP(268)/' 92 '/
C-----P41,3212  (ASPECT 92)
      DATA ILSG(269)/'XXXXXXXX'/,NUMSP(269)/' 92B'/
C-----P4222     (93)
      DATA ILSG(270)/'P4222   '/,NUMSP(270)/' 93 '/
C-----P42212    (94)
      DATA ILSG(271)/'P42212  '/,NUMSP(271)/' 94 '/
C-----P4322     (95)    ASS. 91
      DATA ILSG(272)/'P4322   '/,NUMSP(272)/' 95 '/
C-----P43212    (96)    ASS. 92
      DATA ILSG(273)/'P43212  '/,NUMSP(273)/' 96 '/
C-----I422      (97)
      DATA ILSG(274)/'I422    '/,NUMSP(274)/' 97 '/
C-----I4122     (98)
      DATA ILSG(275)/'I4122   '/,NUMSP(275)/' 98 '/
C-----P4MM      (99)
      DATA ILSG(276)/'P4mm    '/,NUMSP(276)/' 99 '/
C-----P4BM      (100)
      DATA ILSG(277)/'P4bm    '/,NUMSP(277)/'100 '/
C-----P42CM     (101)
      DATA ILSG(278)/'P42cm   '/,NUMSP(278)/'101 '/
C-----P42NM     (102)
      DATA ILSG(279)/'P42nm   '/,NUMSP(279)/'102 '/
C-----P4CC      (103)
      DATA ILSG(280)/'P4cc    '/,NUMSP(280)/'103 '/
C-----P4NC      (104)
      DATA ILSG(281)/'P4nc    '/,NUMSP(281)/'104 '/
C-----P42MC     (105)
      DATA ILSG(282)/'P42mc   '/,NUMSP(282)/'105 '/
C-----P42BC     (106)
      DATA ILSG(283)/'P42bc   '/,NUMSP(283)/'106 '/
C-----I4MM      (107)
      DATA ILSG(284)/'I4mm    '/,NUMSP(284)/'107 '/
C-----I4CM      (108)
      DATA ILSG(285)/'I4cm    '/,NUMSP(285)/'108 '/
C-----I41MD     (109)
      DATA ILSG(286)/'I41md   '/,NUMSP(286)/'109 '/
C-----I41CD     (110)
      DATA ILSG(287)/'I41cd   '/,NUMSP(287)/'110 '/
C-----PBAR42M   (111)
      DATA ILSG(288)/'P-42m   '/,NUMSP(288)/'111 '/
C-----PBAR42C   (112)
      DATA ILSG(289)/'P-42c   '/,NUMSP(289)/'112 '/
C-----PBAR421M  (113)
      DATA ILSG(290)/'P-421m  '/,NUMSP(290)/'113 '/
C-----PBAR421C  (114)
      DATA ILSG(291)/'P-421c  '/,NUMSP(291)/'114 '/
C-----PBAR4M2   (115)
      DATA ILSG(292)/'P-4m2   '/,NUMSP(292)/'115 '/
C-----PBAR4C2   (116)
      DATA ILSG(293)/'P-4c2   '/,NUMSP(293)/'116 '/
C-----PBAR4B2   (117)
      DATA ILSG(294)/'P-4b2   '/,NUMSP(294)/'117 '/
C-----PBAR4N2   (118)
      DATA ILSG(295)/'P-4n2   '/,NUMSP(295)/'118 '/
C-----IBAR4M2   (119)
      DATA ILSG(296)/'I-4m2   '/,NUMSP(296)/'119 '/
C-----IBAR4C2   (120)
      DATA ILSG(297)/'I-4c2   '/,NUMSP(297)/'120 '/
C-----IBAR42M   (121)
      DATA ILSG(298)/'I-42m   '/,NUMSP(298)/'121 '/
C-----IBAR42D   (122)
      DATA ILSG(299)/'I-42d   '/,NUMSP(299)/'122 '/
C-----P4/MMM    (123)
      DATA ILSG(300)/'P4/mmm  '/,NUMSP(300)/'123 '/
C-----P4/MCC    (124)
      DATA ILSG(301)/'P4/mcc  '/,NUMSP(301)/'124 '/
C-----P4/NBM    (125)
      DATA ILSG(302)/'P4/nbm  '/,NUMSP(302)/'125 '/
C-----P4/NNC    (126)
      DATA ILSG(303)/'P4/nnc  '/,NUMSP(303)/'126 '/
C-----P4/MBM    (127)
      DATA ILSG(304)/'P4/mbm  '/,NUMSP(304)/'127 '/
C-----P4/MNC    (128)
      DATA ILSG(305)/'P4/mnc  '/,NUMSP(305)/'128 '/
C-----P4/NMM    (129)
      DATA ILSG(306)/'P4/nmm  '/,NUMSP(306)/'129 '/
C-----P4/NCC    (130)
      DATA ILSG(307)/'P4/ncc  '/,NUMSP(307)/'130 '/
C-----P42/MMC   (131)
      DATA ILSG(308)/'P42/mmc '/,NUMSP(308)/'131 '/
C-----P42/MCM   (132)
      DATA ILSG(309)/'P42/mcm '/,NUMSP(309)/'132 '/
C-----P42/NBC   (133)
      DATA ILSG(310)/'P42/nbc '/,NUMSP(310)/'133 '/
C-----P42/NNM   (134)
      DATA ILSG(311)/'P42/nnm '/,NUMSP(311)/'134 '/
C-----P42/MBC   (135)
      DATA ILSG(312)/'P42/mbc '/,NUMSP(312)/'135 '/
C-----P42/MNM   (136)
      DATA ILSG(313)/'P42/mnm '/,NUMSP(313)/'136 '/
C-----P42/NMC   (137)
      DATA ILSG(314)/'P42/nmc '/,NUMSP(314)/'137 '/
C-----P42/NCM   (138)
      DATA ILSG(315)/'P42/ncm '/,NUMSP(315)/'138 '/
C-----I4/MMM    (139)
      DATA ILSG(316)/'I4/mmm  '/,NUMSP(316)/'139 '/
C-----I4/MCM    (140)
      DATA ILSG(317)/'I4/mcm  '/,NUMSP(317)/'140 '/
C-----I41/AMD   (141)
      DATA ILSG(318)/'I41/amd '/,NUMSP(318)/'141 '/
C-----I41/ACD   (142)
      DATA ILSG(319)/'I41/acd '/,NUMSP(319)/'142 '/
C-----HEXAGONAL AND RHOMBOHEDRAL START HERE AT NUMBER 320
C-----P3        (143)
      DATA ILSG(320)/'P3      '/,NUMSP(320)/'143 '/
C-----P31       (144)  AND P32
      DATA ILSG(321)/'P31     '/,NUMSP(321)/'144 '/
C-----P31,2     (ASPECT 144)
      DATA ILSG(322)/'XXXXXXXX'/,NUMSP(322)/'144B'/
C-----P32       (145)   ASS. 144
      DATA ILSG(323)/'P32     '/,NUMSP(323)/'145 '/
C-----R3        (146)
      DATA ILSG(324)/'R3      '/,NUMSP(324)/'146 '/
C-----P BAR 3   (147)
      DATA ILSG(325)/'P-3     '/,NUMSP(325)/'147 '/
C-----R BAR 3   (148)
      DATA ILSG(326)/'R-3     '/,NUMSP(326)/'148 '/
C-----P312      (149)
      DATA ILSG(327)/'P312    '/,NUMSP(327)/'149 '/
C-----P321      (150)
      DATA ILSG(328)/'P321    '/,NUMSP(328)/'150 '/
C-----P3112     (151)  AND P3212
      DATA ILSG(329)/'P3112   '/,NUMSP(329)/'151 '/
C-----P31,212   (ASPECT 151)
      DATA ILSG(330)/'XXXXXXXX'/,NUMSP(330)/'151B'/
C-----P3121     (152)  AND P3221
      DATA ILSG(331)/'P3121   '/,NUMSP(331)/'152 '/
C-----P31,221   (ASPECT 152)
      DATA ILSG(332)/'XXXXXXXX'/,NUMSP(332)/'152B'/
C-----P3212     (153)   ASS. 151
      DATA ILSG(333)/'P3212   '/,NUMSP(333)/'153 '/
C-----P3221     (154)   ASS. 152
      DATA ILSG(334)/'P3221   '/,NUMSP(334)/'154 '/
C-----R32       (155)
      DATA ILSG(335)/'R32     '/,NUMSP(335)/'155 '/
C-----P3M1      (156)
      DATA ILSG(336)/'P3m1    '/,NUMSP(336)/'156 '/
C-----P31M      (157)
      DATA ILSG(337)/'P31m    '/,NUMSP(337)/'157 '/
C-----P3C1      (158)
      DATA ILSG(338)/'P3c1    '/,NUMSP(338)/'158 '/
C-----P31C      (159)
      DATA ILSG(339)/'P31c    '/,NUMSP(339)/'159 '/
C-----R3M       (160)
      DATA ILSG(340)/'R3m     '/,NUMSP(340)/'160 '/
C-----R3C       (161)
      DATA ILSG(341)/'R3c     '/,NUMSP(341)/'161 '/
C-----PBAR31M   (162)
      DATA ILSG(342)/'P-31m   '/,NUMSP(342)/'162 '/
C-----PBAR31C   (163)
      DATA ILSG(343)/'P-31c   '/,NUMSP(343)/'163 '/
C-----PBAR3M1   (164)
      DATA ILSG(344)/'P-3m1   '/,NUMSP(344)/'164 '/
C-----PBAR3C1   (165)
      DATA ILSG(345)/'P-3c1   '/,NUMSP(345)/'165 '/
C-----RBAR3M    (166)
      DATA ILSG(346)/'R-3m    '/,NUMSP(346)/'166 '/
C-----RBAR3C    (167)
      DATA ILSG(347)/'R-3c    '/,NUMSP(347)/'167 '/
C-----P6        (168)
      DATA ILSG(348)/'P6      '/,NUMSP(348)/'168 '/
C-----P61       (169)  AND P65
      DATA ILSG(349)/'P61     '/,NUMSP(349)/'169 '/
C-----P61,5     (ASPECT 169)
      DATA ILSG(350)/'XXXXXXXX'/,NUMSP(350)/'169B'/
C-----P65       (170)   ASS. 169
      DATA ILSG(351)/'P65     '/,NUMSP(351)/'170 '/
C-----P62       (171)  AND P64
      DATA ILSG(352)/'P62     '/,NUMSP(352)/'171 '/
C-----P62,4     (ASPECT 171)
      DATA ILSG(353)/'XXXXXXXX'/,NUMSP(353)/'171B'/
C-----P64       (172)   ASS. 171
      DATA ILSG(354)/'P64     '/,NUMSP(354)/'172 '/
C-----P63       (173)
      DATA ILSG(355)/'P63     '/,NUMSP(355)/'173 '/
C-----P-6       (174)
      DATA ILSG(356)/'P-6     '/,NUMSP(356)/'174 '/
C-----P6/M      (175)
      DATA ILSG(357)/'P6/m    '/,NUMSP(357)/'175 '/
C-----P63/M     (176)
      DATA ILSG(358)/'P63/m   '/,NUMSP(358)/'176 '/
C-----P622      (177)
      DATA ILSG(359)/'P622    '/,NUMSP(359)/'177 '/
C-----P6122     (178)  AND P6522
      DATA ILSG(360)/'P6122   '/,NUMSP(360)/'178 '/
C-----P61,522   (ASPECT 178)
      DATA ILSG(361)/'XXXXXXXX'/,NUMSP(361)/'178B'/
C-----P6522     (179)   ASS. 178
      DATA ILSG(362)/'P6522   '/,NUMSP(362)/'179 '/
C-----P6222     (180)  AND P6422
      DATA ILSG(363)/'P6222   '/,NUMSP(363)/'180 '/
C-----P62,422   (ASPECT 180)
      DATA ILSG(364)/'XXXXXXXX'/,NUMSP(364)/'180B'/
C-----P6422     (181)   ASS. 180
      DATA ILSG(365)/'P6422   '/,NUMSP(365)/'181 '/
C-----P6322     (182)
      DATA ILSG(366)/'P6322   '/,NUMSP(366)/'182 '/
C-----P6MM      (183)
      DATA ILSG(367)/'P6mm    '/,NUMSP(367)/'183 '/
C-----P6CC      (184)
      DATA ILSG(368)/'P6cc    '/,NUMSP(368)/'184 '/
C-----P63CM     (185)
      DATA ILSG(369)/'P63cm   '/,NUMSP(369)/'185 '/
C-----P63MC     (186)
      DATA ILSG(370)/'P63mc   '/,NUMSP(370)/'186 '/
C-----PBAR6M2   (187)
      DATA ILSG(371)/'P-6m2   '/,NUMSP(371)/'187 '/
C-----PBAR6C2   (188)
      DATA ILSG(372)/'P-6c2   '/,NUMSP(372)/'188 '/
C-----PBAR62M   (189)
      DATA ILSG(373)/'P-62m   '/,NUMSP(373)/'189 '/
C-----PBAR62C   (190)
      DATA ILSG(374)/'P-62c   '/,NUMSP(374)/'190 '/
C-----P6/MMM    (191)
      DATA ILSG(375)/'P6/mmm  '/,NUMSP(375)/'191 '/
C-----P6/MCC    (192)
      DATA ILSG(376)/'P6/mcc  '/,NUMSP(376)/'192 '/
C-----P63/MCM   (193)
      DATA ILSG(377)/'P63/mcm '/,NUMSP(377)/'193 '/
C-----P63/MMC   (194)
      DATA ILSG(378)/'P63/mmc '/,NUMSP(378)/'194 '/
C-----CUBIC STARTS HERE AT NUMBER 379
C-----P23       (195)
      DATA ILSG(379)/'P23     '/,NUMSP(379)/'195 '/
C-----F23       (196)
      DATA ILSG(380)/'F23     '/,NUMSP(380)/'196 '/
C-----I23       (197)
      DATA ILSG(381)/'I23     '/,NUMSP(381)/'197 '/
C-----P213      (198)
      DATA ILSG(382)/'P213    '/,NUMSP(382)/'198 '/
C-----I213      (199)
      DATA ILSG(383)/'I213    '/,NUMSP(383)/'199 '/
C-----PM3       (200)
      DATA ILSG(384)/'Pm3     '/,NUMSP(384)/'200 '/
C-----PN3       (201)
      DATA ILSG(385)/'Pn3     '/,NUMSP(385)/'201 '/
C-----FM3       (202)
      DATA ILSG(386)/'Fm3     '/,NUMSP(386)/'202 '/
C-----FD3       (203)
      DATA ILSG(387)/'Fd3     '/,NUMSP(387)/'203 '/
C-----IM3       (204)
      DATA ILSG(388)/'Im3     '/,NUMSP(388)/'204 '/
C-----PA3       (205)
      DATA ILSG(389)/'Pa3     '/,NUMSP(389)/'205 '/
C-----IA3       (206)
      DATA ILSG(390)/'Ia3     '/,NUMSP(390)/'206 '/
C-----P432      (207)
      DATA ILSG(391)/'P432    '/,NUMSP(391)/'207 '/
C-----P4232     (208)
      DATA ILSG(392)/'P4232   '/,NUMSP(392)/'208 '/
C-----F432      (209)
      DATA ILSG(393)/'F432    '/,NUMSP(393)/'209 '/
C-----F4132     (210)
      DATA ILSG(394)/'F4132   '/,NUMSP(394)/'210 '/
C-----I432      (211)
      DATA ILSG(395)/'I432    '/,NUMSP(395)/'211 '/
C-----P4332     (212)  AND P4132
      DATA ILSG(396)/'P4332   '/,NUMSP(396)/'212 '/
C-----P41,332   (ASPECT 212)
      DATA ILSG(397)/'XXXXXXXX'/,NUMSP(397)/'212B'/
C-----P4132     (213)   ASS. 212
      DATA ILSG(398)/'P4132   '/,NUMSP(398)/'213 '/
C-----I4132     (214)
      DATA ILSG(399)/'I4132   '/,NUMSP(399)/'214 '/
C-----PBAR43M   (215)
      DATA ILSG(400)/'P-43m   '/,NUMSP(400)/'215 '/
C-----FBAR43M   (216)
      DATA ILSG(401)/'F-43m   '/,NUMSP(401)/'216 '/
C-----IBAR43M   (217)
      DATA ILSG(402)/'I-43m   '/,NUMSP(402)/'217 '/
C-----PBAR43N   (218)
      DATA ILSG(403)/'P-43n   '/,NUMSP(403)/'218 '/
C-----FBAR43C   (219)
      DATA ILSG(404)/'F-43c   '/,NUMSP(404)/'219 '/
C-----IBAR43D   (220)
      DATA ILSG(405)/'I-43d   '/,NUMSP(405)/'220 '/
C-----PM3M      (221)
      DATA ILSG(406)/'Pm3m    '/,NUMSP(406)/'221 '/
C-----PN3N      (222)
      DATA ILSG(407)/'Pn3n    '/,NUMSP(407)/'222 '/
C-----PM3N      (223)
      DATA ILSG(408)/'Pm3n    '/,NUMSP(408)/'223 '/
C-----PN3M      (224)
      DATA ILSG(409)/'Pn3m    '/,NUMSP(409)/'224 '/
C-----FM3M      (225)
      DATA ILSG(410)/'Fm3m    '/,NUMSP(410)/'225 '/
C-----FM3C      (226)
      DATA ILSG(411)/'Fm3c    '/,NUMSP(411)/'226 '/
C-----FD3M      (227)
      DATA ILSG(412)/'Fd3m    '/,NUMSP(412)/'227 '/
C-----FD3C      (228)
      DATA ILSG(413)/'Fd3c    '/,NUMSP(413)/'228 '/
C-----IM3M      (229)
      DATA ILSG(414)/'Im3m    '/,NUMSP(414)/'229 '/
C-----IA3D      (230)
      DATA ILSG(415)/'Ia3d    '/,NUMSP(415)/'230 '/
      DATA NUMSP(416)/'  0 '/
C-----ASPECT TABLE
C
C-----ANORTHIC (TRICLINIC) STARTS HERE AT ASPECT NUMBER 1
C-----P*,-1 (2) P-1, P1
      DATA IASP(1)/'P*,-1   '/  ,NUMAS(  1)/'  2 '/
C-----MONOCLINIC STARTS HERE AT ASPECT NUMBER 2
C-----P*/* (10) P2/M, P2, PM
      DATA IASP(2)/'P*/*    '/  ,NUMAS(  2)/' 10 '/
C-----P21/* (11) P21/M, P21
      DATA IASP(3)/'P21/*   '/  ,NUMAS(  3)/' 11 '/
C-----C*/* (12A) C2/M, C2, CM
      DATA IASP(4)/'C*/*    '/  ,NUMAS(  4)/' 12A'/
C-----A*/* (12B) A2/M, A2, AM
      DATA IASP(5)/'A*/*    '/  ,NUMAS(  5)/' 12B'/
C-----I*/* (12C) I2/M, I2, IM
      DATA IASP(6)/'I*/*    '/  ,NUMAS(  6)/' 12C'/
C-----P*/C (13A) P2/C, PC
      DATA IASP(7)/'P*/c    '/  ,NUMAS(  7)/' 13A'/
C-----P*/A (13B) P2/A, PA
      DATA IASP(8)/'P*/a    '/  ,NUMAS(  8)/' 13B'/
C-----P*/N (13C) P2/N, PN
      DATA IASP(9)/'P*/n    '/  ,NUMAS(  9)/' 13C'/
C-----C*/C (15A) C2/C, CC
      DATA IASP(10)/'C*/c    '/ ,NUMAS( 10)/' 15A'/
C-----A*/A (15B) A2/A, AA
      DATA IASP(11)/'A*/a    '/ ,NUMAS( 11)/' 15B'/
C-----I*/A (15C) I2/A, IA
      DATA IASP(12)/'I*/a    '/ ,NUMAS( 12)/' 15C'/
C-----ORTHORHOMBIC STARTS HERE AT ASPECT NUMBER 13
C-----P*** (47) PMMM, P222, PMM2, PM2M, P2MM
      DATA IASP(13)/'P***    '/ ,NUMAS( 13)/' 47 '/
C-----PCC* (49A) PCCM, PCC2
      DATA IASP(14)/'Pcc*    '/ ,NUMAS( 14)/' 49A'/
C-----P*AA (49B) PMAA, P2AA
      DATA IASP(15)/'P*aa    '/ ,NUMAS( 15)/' 49B'/
C-----PB*B (49C) PBMB, PB2B
      DATA IASP(16)/'Pb*b    '/ ,NUMAS( 16)/' 49C'/
C-----P**A (51A) PMMA, P21MA, PM2A
      DATA IASP(17)/'P**a    '/ ,NUMAS( 17)/' 51A'/
C-----P*C* (51B) PMCM, PMC21, P2CM
      DATA IASP(18)/'P*c*    '/ ,NUMAS( 18)/' 51B'/
C-----PC** (51C) PCMM, PCM21, PC2M
      DATA IASP(19)/'Pc**    '/ ,NUMAS( 19)/' 51C'/
C-----P*A* (51D) PMAM, P21AM, PMA2
      DATA IASP(20)/'P*a*    '/ ,NUMAS( 20)/' 51D'/
C-----PB** (51E) PBMM, PB21M, PBM2
      DATA IASP(21)/'Pb**    '/ ,NUMAS( 21)/' 51E'/
C-----P**B (51F) PMMB, PM21B, P2MB
      DATA IASP(22)/'P**b    '/ ,NUMAS( 22)/' 51F'/
C-----P*NA (53A) PMNA, P2NA
      DATA IASP(23)/'P*na    '/ ,NUMAS( 23)/' 53A'/
C-----PNC* (53B) PNCM, PNC2
      DATA IASP(24)/'Pnc*    '/ ,NUMAS( 24)/' 53B'/
C-----PB*N (53C) PBMN, PB2N
      DATA IASP(25)/'Pb*n    '/ ,NUMAS( 25)/' 53C'/
C-----P*AN (53D) PMAN, P2AN
      DATA IASP(26)/'P*an    '/ ,NUMAS( 26)/' 53D'/
C-----PCN* (53E) PCNM, PCN2
      DATA IASP(27)/'Pcn*    '/ ,NUMAS( 27)/' 53E'/
C-----PN*B (53F) PNMB, PN2B
      DATA IASP(28)/'Pn*b    '/ ,NUMAS( 28)/' 53F'/
C-----PBA* (55A) PBAM, PBA2
      DATA IASP(29)/'Pba*    '/ ,NUMAS( 29)/' 55A'/
C-----PC*A (55B) PCMA, PC2A
      DATA IASP(30)/'Pc*a    '/ ,NUMAS( 30)/' 55B'/
C-----P*CB (55C) PMCB, P2CB
      DATA IASP(31)/'P*cb    '/ ,NUMAS( 31)/' 55C'/
C-----PBC* (57A) PBCM, PBC21
      DATA IASP(32)/'Pbc*    '/ ,NUMAS( 32)/' 57A'/
C-----PC*B (57B) PCMB, PC21B
      DATA IASP(33)/'Pc*b    '/ ,NUMAS( 33)/' 57B'/
C-----PB*A (57C) PBMA, PB21A
      DATA IASP(34)/'Pb*a    '/ ,NUMAS( 34)/' 57C'/
C-----PCA* (57D) PCAM, PCA21
      DATA IASP(35)/'Pca*    '/ ,NUMAS( 35)/' 57D'/
C-----P*AB (57E) PMAB, P21AB
      DATA IASP(36)/'P*ab    '/ ,NUMAS( 36)/' 57E'/
C-----P*CA (57F) PMCA, P21CA
      DATA IASP(37)/'P*ca    '/ ,NUMAS( 37)/' 57F'/
C-----PNN* (58A) PNNM, PNN2
      DATA IASP(38)/'Pnn*    '/ ,NUMAS( 38)/' 58A'/
C-----PN*N (58B) PNMN, PN2N
      DATA IASP(39)/'Pn*n    '/ ,NUMAS( 39)/' 58B'/
C-----P*NN (58C) PMNN, P2NN
      DATA IASP(40)/'P*nn    '/ ,NUMAS( 40)/' 58C'/
C-----P**N (59A) PMMN, PM21N, P21MN
      DATA IASP(41)/'P**n    '/ ,NUMAS( 41)/' 59A'/
C-----PN** (59B) PNMM, PNM21, PN21M
      DATA IASP(42)/'Pn**    '/ ,NUMAS( 42)/' 59B'/
C-----P*N* (59C) PMNM, PMN21, P21NM
      DATA IASP(43)/'P*n*    '/ ,NUMAS( 43)/' 59C'/
C-----PN*A (62A) PNMA, PN21A
      DATA IASP(44)/'Pn*a    '/ ,NUMAS( 44)/' 62A'/
C-----P*NB (62B) PMNB, P21NB
      DATA IASP(45)/'P*nb    '/ ,NUMAS( 45)/' 62B'/
C-----PBN* (62C) PBNM, PBN21
      DATA IASP(46)/'Pbn*    '/ ,NUMAS( 46)/' 62C'/
C-----P*CN (62D) PMCN, P21CN
      DATA IASP(47)/'P*cn    '/ ,NUMAS( 47)/' 62D'/
C-----PC*N (62E) PCMN, PC21N
      DATA IASP(48)/'Pc*n    '/ ,NUMAS( 48)/' 62E'/
C-----PNA* (62F) PNAM, PNA21
      DATA IASP(49)/'Pna*    '/ ,NUMAS( 49)/' 62F'/
C-----C*C* (63A) CMCM, CMC21, C2CM
      DATA IASP(50)/'C*c*    '/ ,NUMAS( 50)/' 63A'/
C-----BB** (63B) BBMM, BB21M, BBM2
      DATA IASP(51)/'Bb**    '/ ,NUMAS( 51)/' 63B'/
C-----A*A* (63C) AMAM, A21AM, AMA2
      DATA IASP(52)/'A*a*    '/ ,NUMAS( 52)/' 63C'/
C-----A**A (63D) AMMA, A21MA, AM2A
      DATA IASP(53)/'A**a    '/ ,NUMAS( 53)/' 63D'/
C-----CC** (63E) CCMM, CCM21, CC2M
      DATA IASP(54)/'Cc**    '/ ,NUMAS( 54)/' 63E'/
C-----B**B (63F) BMMB, BM21B, B2MB
      DATA IASP(55)/'B**b    '/ ,NUMAS( 55)/' 63F'/
C-----C*CA (64A) CMCA, C2CA
      DATA IASP(56)/'C*ca    '/ ,NUMAS( 56)/' 64A'/
C-----ABA* (64B) ABAM, ABA2
      DATA IASP(57)/'Aba*    '/ ,NUMAS( 57)/' 64B'/
C-----CC*A (64C) CCMA, CC2A
      DATA IASP(58)/'Cc*a    '/ ,NUMAS( 58)/' 64C'/
C-----AB*A (64D) ABMA, AB2A
      DATA IASP(59)/'Ab*a    '/ ,NUMAS( 59)/' 64D'/
C-----B*AB (64E) BMAB, B2AB
      DATA IASP(60)/'B*ab    '/ ,NUMAS( 60)/' 64E'/
C-----BBA* (64F) BBAM, BBA2
      DATA IASP(61)/'Bba*    '/ ,NUMAS( 61)/' 64F'/
C-----C*** (65A) CMMM, C222, CMM2, C2MM, CM2M
      DATA IASP(62)/'C***    '/ ,NUMAS( 62)/' 65A'/
C-----B*** (65B) BMMM, B222, BM2M, B2MM, BMM2
      DATA IASP(63)/'B***    '/ ,NUMAS( 63)/' 65B'/
C-----A*** (65C) AMMM, A222, A2MM, AMM2, AM2M
      DATA IASP(64)/'A***    '/ ,NUMAS( 64)/' 65C'/
C-----CCC* (66A) CCCM, CCC2
      DATA IASP(65)/'Ccc*    '/ ,NUMAS( 65)/' 66A'/
C-----A*AA (66B) AMAA, A2AA
      DATA IASP(66)/'A*aa    '/ ,NUMAS( 66)/' 66B'/
C-----BB*B (66C) BBMB, BB2B
      DATA IASP(67)/'Bb*b    '/ ,NUMAS( 67)/' 66C'/
C-----C**A (67A) CMMA, C2MA, CM2A
      DATA IASP(68)/'C**a    '/ ,NUMAS( 68)/' 67A'/
C-----AB** (67B) ABMM, ABM2, AB2M
      DATA IASP(69)/'Ab**    '/ ,NUMAS( 69)/' 67B'/
C-----B*A* (67C) BMAM, BMA2, B2AM
      DATA IASP(70)/'B*a*    '/ ,NUMAS( 70)/' 67C'/
C-----F*** (69) FMMM, F222, FMM2, FM2M, F2MM
      DATA IASP(71)/'F***    '/ ,NUMAS( 71)/' 69 '/
C-----I*** (71) IMMM, I212121, IMM2, IM2M, I2MM
      DATA IASP(72)/'I***    '/ ,NUMAS( 72)/' 71 '/
C-----IBA* (72A) IBAM, IBA2
      DATA IASP(73)/'Iba*    '/ ,NUMAS( 73)/' 72A'/
C-----I*AA (72B) IMAA, I2AA
      DATA IASP(74)/'I*aa    '/ ,NUMAS( 74)/' 72B'/
C-----IB*A (72C) IBMA, IB2A
      DATA IASP(75)/'Ib*a    '/ ,NUMAS( 75)/' 72C'/
C-----I**A (74A) IMMA, IM2A, I2MA
      DATA IASP(76)/'I**a    '/ ,NUMAS( 76)/' 74A'/
C-----IB** (74B) IBMM, IBM2, IB2M
      DATA IASP(77)/'Ib**    '/ ,NUMAS( 77)/' 74B'/
C-----I*A* (74C) IMAM, IMA2, I2AM
      DATA IASP(78)/'I*a*    '/ ,NUMAS( 78)/' 74C'/
C-----TETRAGONAL STARTS HERE AT ASPECT NUMBER 79
C-----P41,3 (76) P41, P43
      DATA IASP(79)/'P41,3   '/ ,NUMAS( 79)/' 76 '/
C-----P4/* (83) P4/M, P4, P-4
      DATA IASP(80)/'P4/*    '/ ,NUMAS( 80)/' 83 '/
C-----P42/* (84) P42/M, P42
      DATA IASP(81)/'P42/*   '/ ,NUMAS( 81)/' 84 '/
C-----I4/* (87) I4/M, I4, I-4
      DATA IASP(82)/'I4/*    '/ ,NUMAS( 82)/' 87 '/
C-----P41,322 (91) P4122, P4322
      DATA IASP(83)/'P41,322 '/ ,NUMAS( 83)/' 91 '/
C-----P41,3212 (92) P41212, P43212
      DATA IASP(84)/'P41,3212'/ ,NUMAS( 84)/' 92 '/
C-----P421* (113) P-421M, P4212
      DATA IASP(85)/'P421*   '/ ,NUMAS( 85)/'113 '/
C-----I4*D (122) I-42D, I41MD
      DATA IASP(86)/'I4*d    '/ ,NUMAS( 86)/'122 '/
C-----P4/*** (123) P4/MMM, P422, P4MM, P-42M, P-4M2
      DATA IASP(87)/'P4/***  '/ ,NUMAS( 87)/'123 '/
C-----P4/*CC (124) P4/MCC, P4CC
      DATA IASP(88)/'P4/*cc  '/ ,NUMAS( 88)/'124 '/
C-----P4/*B* (127) P4/MBM, P4BM, P-4B2
      DATA IASP(89)/'P4/*b*  '/ ,NUMAS( 89)/'127 '/
C-----P4/*NC (128) P4/MNC, P4NC
      DATA IASP(90)/'P4/*nc  '/ ,NUMAS( 90)/'128 '/
C-----P4/**C (131) P42/MMC, P42MC, P-42C
      DATA IASP(91)/'P4/**c  '/ ,NUMAS( 91)/'131 '/
C-----P4/*C* (132) P42/MCM, P42CM, P-4C2
      DATA IASP(92)/'P4/*c*  '/ ,NUMAS( 92)/'132 '/
C-----P4/*BC (135) P42/MBC, P42BC
      DATA IASP(93)/'P4/*bc  '/ ,NUMAS( 93)/'135 '/
C-----P4/*N* (136) P42/MNM, P42NM, P-4N2
      DATA IASP(94)/'P4/*n*  '/ ,NUMAS( 94)/'136 '/
C-----I4/*** (139) I4/MMM, I422, I4MM, I-4M2, I-42M
      DATA IASP(95)/'I4/***  '/ ,NUMAS( 95)/'139 '/
C-----I4/*C* (140) I4/MCM, I4CM, I-4C2
      DATA IASP(96)/'I4/*c*  '/ ,NUMAS( 96)/'140 '/
C-----HEXAGONAL STARTS HERE AT ASPECT NUMBER 97
C-----P31,2 (144) P31, P32
      DATA IASP(97)/'P31,2   '/ ,NUMAS( 97)/'144 '/
C-----P*,-3 (147) P-3, P3
      DATA IASP(98)/'P*,-3   '/ ,NUMAS( 98)/'147 '/
C-----R* (148) R-3, R3
      DATA IASP(99)/'R*      '/ ,NUMAS( 99)/'148 '/
C-----P31,212 (151) P3112, P3212
      DATA IASP(100)/'P31,212 '/,NUMAS(100)/'151 '/
C-----P31,221 (152) P3121, P3221
      DATA IASP(101)/'P31,221 '/,NUMAS(101)/'152 '/
C-----P31* (162) P-31M, P312, P31M
      DATA IASP(102)/'P31*    '/,NUMAS(102)/'162 '/
C-----P*1C,-3M (163) P-31C, P31C
      DATA IASP(103)/'P*1c,-3m'/,NUMAS(103)/'163 '/
C-----P3*1 (164) P-3M1, P321, P3M1
      DATA IASP(104)/'P3*1    '/,NUMAS(104)/'164 '/
C-----P*C1,-3M (165) P-3C1, P3C1
      DATA IASP(105)/'P*c1,-3m'/,NUMAS(105)/'165 '/
C-----R** (166) R-3M, R32, R3M
      DATA IASP(106)/'R**     '/,NUMAS(106)/'166 '/
C-----R*C (167) R-3C, R3C
      DATA IASP(107)/'R*c     '/,NUMAS(107)/'167 '/
C-----P61,5 (169) P61, P65
      DATA IASP(108)/'P61,5   '/,NUMAS(108)/'169 '/
C-----P62,4 (171) P62, P64
      DATA IASP(109)/'P62,4   '/,NUMAS(109)/'171 '/
C-----P6/* (175) P6/M, P6, P-6
      DATA IASP(110)/'P6/*    '/,NUMAS(110)/'175 '/
C-----P63/* (176) P63/M, P63
      DATA IASP(111)/'P63/*   '/,NUMAS(111)/'176 '/
C-----P61,522 (178) P6122, P6522
      DATA IASP(112)/'P61,522 '/,NUMAS(112)/'178 '/
C-----P62,422 (180) P6222, P6422
      DATA IASP(113)/'P62,422 '/,NUMAS(113)/'180 '/
C-----P6/*** (191) P6/MMM, P622, P6MM, P-6M2, P-62M
      DATA IASP(114)/'P6/***  '/,NUMAS(114)/'191 '/
C-----P6/*CC (192) P6/MCC, P6CC
      DATA IASP(115)/'P6/*cc  '/,NUMAS(115)/'192 '/
C-----P6/*C* (193) P63/MCM, P63CM, P-6C2
      DATA IASP(116)/'P6/*c*  '/,NUMAS(116)/'193 '/
C-----P6/**C (194) P63/MMC, P63MC, P-62C
      DATA IASP(117)/'P6/**c  '/,NUMAS(117)/'194 '/
C-----CUBIC STARTS HERE AT ASPECT NUMBER 118
C-----P*3 (200) PM3, P23
      DATA IASP(118)/'P*3     '/,NUMAS(118)/'200 '/
C-----F*3 (202) FM3, F23
      DATA IASP(119)/'F*3     '/,NUMAS(119)/'202 '/
C-----I*3 (204) IM3, I23, I213
      DATA IASP(120)/'I*3     '/,NUMAS(120)/'204 '/
C-----P41,332 (212) P4332, P4132
      DATA IASP(121)/'P41,332 '/,NUMAS(121)/'212 '/
C-----P*3* (221) PM3M, P432, P-43M
      DATA IASP(122)/'P*3*    '/,NUMAS(122)/'221 '/
C-----P*3N (223) PM3N, P-43N
      DATA IASP(123)/'P*3n    '/,NUMAS(123)/'223 '/
C-----F*3* (225) FM3M, F432, F-43M
      DATA IASP(124)/'F*3*    '/,NUMAS(124)/'225 '/
C-----F*3C (226) FM3C, F-43C
      DATA IASP(125)/'F*3c    '/,NUMAS(125)/'226 '/
C-----I*3* (229) IM3M, I432, I-43M
      DATA IASP(126)/'I*3*    '/,NUMAS(126)/'229 '/
C
C-----ALSO ACCEPT THE FOUR ASPECTS WITHOUT LAUE SYMMETRY
C-----P*,-1 (2)    ACCEPT P*
      DATA IASP(127)/'P*      '/,NUMAS(127)/'  2 '/
C-----P*,-3 (147)    ACCEPT P*
      DATA IASP(128)/'P*      '/,NUMAS(128)/'147 '/
C-----P*1C,-3M (163)    ACCEPT P*1C
      DATA IASP(129)/'P*1c    '/,NUMAS(129)/'163 '/
C-----P*C1,-3M (165)    ACCEPT P*C1
      DATA IASP(130)/'P*c1    '/,NUMAS(130)/'165 '/
      DATA IHC,IHD,IH1,IH3,IHM/',','-','1','3','m'/
      DATA IASPEC(1)/' '/, IASPEC(2)/'*'/
C-----BEGINING
 10   IOK=0
      IMATCH=0
      NASPEC=1
C
C-----TEST ICRS TO DETERMINE WHICH CRYSTAL SYSTEM
C
      IF(ICRS.EQ.ITCRS(1)) GO TO 100
      IF(ICRS.EQ.ITCRS(2)) GO TO 200
      IF(ICRS.EQ.ITCRS(3)) GO TO 300
      IF(ICRS.EQ.ITCRS(4)) GO TO 400
      IF(ICRS.EQ.ITCRS(5)) GO TO 500
      IF(ICRS.EQ.ITCRS(6)) GO TO 500
      IF(ICRS.EQ.ITCRS(7)) GO TO 600
      GO TO 700
C-----ANORTHIC REGION
100   DO 110  I= 1,2
      IF(ISGC.NE.ILSG(I))  GO TO 110
      IOK=1
      IMATCH=I
      GO TO 120
110   CONTINUE
      IF(ISGC.NE.IASP(1).AND.ISGC.NE.IASP(127)) GO TO 120
      IOK=1
      IMATCH=1
      IF(ISGC.EQ.IASP(127)) IMATCH=127
      NASPEC=2
120   CONTINUE
      GO TO 700
C-----MONOCLINIC REGION
C-----DO NOT ASSIGN NUMBER IF A-CENTERED, A-UNIQUE ETC
200   IF(IPASS.EQ.1.AND.SPGI(1:1).EQ.ITSG(2).AND.IFA.EQ.0)GO TO 700
      IF(IPASS.EQ.1.AND.SPGI(1:1).EQ.ITSG(3).AND.IFB.EQ.0)GO TO 700
      IF(IPASS.EQ.1.AND.SPGI(1:1).EQ.ITSG(4).AND.IFC.EQ.0)GO TO 700
      DO 210  I=3,31
      IF(ISGC.NE.ILSG(I)) GO TO 210
      IOK=1
      IMATCH=I
      GO TO 230
210   CONTINUE
      DO 220 I=2,12
      IF(ISGC.NE.IASP(I)) GO TO 220
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 230
220   CONTINUE
230   CONTINUE
      GO TO 700
C-----ORTHORHOMBIC REGION
300   DO 310  I=32,248
      IF(ISGC.NE.ILSG(I))  GO TO 310
      IOK=1
      IMATCH=I
      GO TO 330
310   CONTINUE
      DO 320 I=13,78
      IF(ISGC.NE.IASP(I)) GO TO 320
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 330
320   CONTINUE
330   CONTINUE
      GO TO 700
C-----TETRAGONAL REGION
400   DO 410 I=249,319
      IF(ISGC.NE.ILSG(I))  GO TO 410
      IOK=1
      IMATCH=I
      GO TO 430
410   CONTINUE
      DO 420 I=79,96
      IF(ISGC.NE.IASP(I)) GO TO 420
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 430
420   CONTINUE
430   CONTINUE
      GO TO 700
C-----HEXAGONAL AND RHOMBOHEDRAL REGION
500   DO 510  I=320,378
      IF(ISGC.NE.ILSG(I))  GO TO 510
      IOK=1
      IMATCH=I
      GO TO 530
510   CONTINUE
      DO 520 I=97,117
      IF(ISGC.NE.IASP(I)) GO TO 520
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 530
520   CONTINUE
      DO 525 I=128,130
      IF(ISGC.NE.IASP(I)) GO TO 525
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 530
525   CONTINUE
530   CONTINUE
      GO TO 700
C-----CUBIC REGION
600   DO 610  I=379,415
      IF(ISGC.NE.ILSG(I))  GO TO 610
      IOK=1
      IMATCH=I
      GO TO 630
610   CONTINUE
      DO 620 I=118,126
      IF(ISGC.NE.IASP(I)) GO TO 620
      IOK=1
      IMATCH=I
      NASPEC=2
      GO TO 630
620   CONTINUE
630   CONTINUE
C
C-----WAS SPGR# FOUND?
C
700   IF(IOK.EQ.1) GOTO 800
      IMATCH=416
C
C-----TEST IF FIRST OR SECOND PASS
C
800   IF(IPASS.EQ.2) GOTO 900
      SPGIA=IASPEC(NASPEC)
      IF(NASPEC.EQ.1) GO TO 810
      SPGIN=NUMAS(IMATCH)
      GO TO 820
810   SPGIN=NUMSP(IMATCH)
 820  CONTINUE
      GOTO 999
900   SPGTA=IASPEC(NASPEC)
      IF(NASPEC.EQ.1) GO TO 910
      SPGTN=NUMAS(IMATCH)
C
C-----CONVERT TO STANDARD ASPECTS FOR CD CELL
C-----P* TO P*,-1 OR P*,-3  P*c1 TO P*c1,-3m  P*1c TO P*1c,-3m
C
      IF(IMATCH.EQ.127)GO TO 901
      IF(IMATCH.EQ.128)GO TO 902
      IF(IMATCH.EQ.129.OR.IMATCH.EQ.130)GO TO 903
      GO TO 920
901   SPGT(3:3) = IHC
      SPGT(4:4) = IHD
      SPGT(5:5) = IH1
      GO TO 920
902   SPGT(3:3) = IHC
      SPGT(4:4) = IHD
      SPGT(5:5) = IH3
      GO TO 920
903   SPGT(5:5) = IHC
      SPGT(6:6) = IHD
      SPGT(7:7) = IH3
      SPGT(8:8) = IHM
      GO TO 920
910   SPGTN=NUMSP(IMATCH)
 920  CONTINUE
      IF(SPGT(2:2).EQ.ITED(1) .OR. IOK.EQ.1) GOTO 999
      IERR=IERR+1
      WRITE(NTOUT,930) SPGT
930   FORMAT(1H ,33H**ERROR** Crystal data space group,1X, A8,
     * 13H not in table)
999   RETURN
      END

      SUBROUTINE FINDEX
C**************************************************************************
C
C----THIS SUBROUTINE USES THE SPACE GROUP NUMBER AND ORIENTATION
C-----TO SET UP THE EXTINCTION CODES FOR HKL GENERATION
C
C-----A CENTERING SYMBOL BY ITSELF ALSO SETS UP THE APPROPRIATE EXT CODES
C
      COMMON/CELLI/AI,BI,CI,ALPHI,BETI,GAMI,VI,ERRI(7)
      COMMON/CCELLI/ SPGI,SPGIA,SPGIN,ICRS
      COMMON/IO/NTOUT,NTIN,NEXTN
      COMMON/CHAR/ITIH(7),ITCRS(8),ITSG(7),ITED(4)
      COMMON/EDITR/IED1(6)
      COMMON/PPEXTN/IOP(27),JOP(27),NOPT
      COMMON/IERRS/IWARN,IERR
      CHARACTER*1 SPGIA,ICRS
      CHARACTER*1 IED1
      CHARACTER*4 SPGIN
      CHARACTER*8 SPGI
      CHARACTER*1 ITSG,ITCRS,ITED,ITIH
      CHARACTER*4 IHBB0B,NSG
      DIMENSION ITEMP(27)
      DATA IHBB0B/'  0 '/
      IF(SPGIN.EQ.IHBB0B) GOTO 219
      DO 10 I=1,27
10    IOP(I)=0
C-----READ FILE OF EXTINCTION CODES WITH SPACE GROUP # AND ORIENTATION
100   READ (NEXTN,110,END=200) (ITEMP(I),I=1,27),NSG
110   FORMAT (20X,27I1,29X,A4)
      IF (NSG .NE. SPGIN) GO TO 100
C-----LOCATED THE CORRECT SPACE GROUP AND ORIENTATION
C-----SAVE THE EXTINCTION CODES
      DO 120 I=1,27
120   IOP(I)=ITEMP(I)
      RETURN
C-----END OF FILE LOCATED WITHOUT FINDING SPACE GROUP
C------AND ORIENTATION OF AUTHORS
200   IERR=IERR+1
      WRITE (NTOUT,210) SPGIN
210   FORMAT(53H0**ERROR** No entry in extinction file for space group
     *, A4)
C
C-----CHECK IF MORE THAN A CENTERING SYMBOL WAS INPUT
C
219   IF(SPGI(2:2).EQ.ITED(1))GO TO 225
      IWARN=IWARN+1
      WRITE(NTOUT,222) SPGI
222   FORMAT(' **WARNING** You should input extinctions explicitly for',
     *' space group ',A8,'**WARNING**'/
     * ' ',11X,'Only conditions for lattice centering generated')
C
C-----SPACE GROUP SYMBOL IS NOT IN FILE.  IS THERE A CENTERING SYMBOL?
C-----(RHOMBOHEDRAL CENTERING ON HEXAGONAL CELL CODE IS SET
C----- IN SUBROUTINE OPSET)
C
225   IF(SPGI(1:1).EQ.ITSG(1)) GOTO 999
C
C-----SET UP CODE FOR 'A' CENTERING
C
      IF(SPGI(1:1).NE.ITSG(2)) GOTO 226
      IOP(3)=2
      GOTO 999
C
C
C-----SET UP CODE FOR 'B' CENTERING
226   IF(SPGI(1:1).NE.ITSG(3)) GOTO 230
      IOP(2)=2
      GOTO 999
C
C-----SET UP CODE FOR 'C' CENTERING
C
230   IF(SPGI(1:1).NE.ITSG(4)) GOTO 240
      IOP(1)=2
      GOTO 999
C
C-----SET UP CODE FOR 'F' CENTERING
C
240   IF(SPGI(1:1).NE.ITSG(5) .OR. IED1(2).EQ.ITCRS(6)) GOTO 250
      IOP(4)=2
      GOTO 999
C
C-----SET UP CODE FOR 'I' CENTERING
C
250   IF(SPGI(1:1).NE.ITSG(6) .OR. IED1(2).EQ.ITCRS(6)) GOTO 999
      IOP(5)=2
999   RETURN
      END

      SUBROUTINE CHKEXT(IH,IK,IL,JEXT)
C CHECKS MILLER INDICES IH,IK,IL FOR EXTINCTIONS - JEXT SET TO 1
C IF CURRENT REFLECTION NOT ACCEPTABLE, JEXT SET TO 0 IF IT IS
      COMMON/ADATA/IFI(2,27),IFJ(3,27),IHKL(6,3),JHKL(10,3)
      COMMON/PPEXTN/IOP(27),JOP(27),NOPT
      JEXT=0
      DO 22 m=1,NOPT
        L=JOP(m)
        IDIV=IOP(L)
        DO J=1,2
          IFIJ=IFI(J,L)
          IF (IFIJ.LT.1.OR.IFIJ.GT.6) GO TO 12
          IANS=iH*IHKL(IFIJ,1)+iK*IHKL(IFIJ,2)+iL*IHKL(IFIJ,3)
          IF (IANS.NE.0) GO TO 22
        enddo
  12    DO 23 K=1,3
          IFJK=IFJ(K,L)
          IF (IFJK.LT.1.OR.IFJK.GT.10) GO TO 22
          IARG=JHKL(IFJK,1)*iH+JHKL(IFJK,2)*iK+JHKL(IFJK,3)*iL
          IF (MOD(IARG,IDIV).EQ.0) GO TO 23
          JEXT=1
          GO TO 24
  23    CONTINUE
 22   CONTINUE
 24   RETURN
      END

      SUBROUTINE CELLCK(GOOD)
C*************************************************************************
C
C REVISED  13 APRIL 1981 CRH  ADDED TEST FOR ANGLE>179.9 DEGREES
C
C************************************************************************
      COMMON/CELLI/AI,BI,CI,ALPHI,BETI,GAMI,VI,ERRI(7)
      COMMON/CCELLI/ SPGI,SPGIA,SPGIN,ICRS
      COMMON/CONTR/IXPD,IJOB,IPHKL,IDOLSQ
      COMMON/CCONTR/ ID0
      COMMON/SWFG/R
      COMMON/UNQ/ IFA,IFB,IFC,IRH
      COMMON/IO/NTOUT,NTIN,NEXTN
      COMMON/CHAR/ITIH(7),ITCRS(8),ITSG(7),ITED(4)
      COMMON/IERRS/ IWARN,IERR
      CHARACTER*7 ID0
      CHARACTER*1 SPGIA,ICRS
      CHARACTER*4 SPGIN
      CHARACTER*8 SPGI
      CHARACTER*1 ITSG,ITCRS,ITED,ITIH
      LOGICAL GOOD
C
C-----INITIALIZE FLAGS
C
      IFA=0
      IFB=0
      IFC=0
      IRH=0
C
C-----COMPLETE CELL ANGLES, ERRORS
C-----SET FLAGS FOR ANGLES NOT INPUT. =0 FOR INPUT, =1 FOR ABSENT
C
      IF(ALPHI.GT. 0.1) GO TO 10
C-----ALPHA NOT INPUT. SET ALPHA TO 90.0 AND ERROR TO 0.0
      IFA=1
      ALPHI=90.0
      ERRI(4)=0
10    IF(BETI .GT. 0.1) GO TO 20
C-----BETA  NOT INPUT. SET BETA  TO 90.0 AND ERROR TO 0.0
      IFB=1
      BETI=90.0
      ERRI(5)=0
20    IF(GAMI .GT. 0.1) GO TO 22
C-----GAMMA NOT INPUT.  SET GAMMA TO 90.0 AND ERROR TO 0.0
      IFC=1
      GAMI=90.0
      ERRI(6)=0
C
C-----IFSUM WILL INDICATE THE NUMBER OF ANGLE ABSENT ON INPUT
C
22    IFSUM=IFA+IFB+IFC
C
C-----FOR RHOBOHEDRAL SYSTEM DETERMINE IF ON HEXAGONAL AXES (IRH=1)
C-----                            OR IF ON RHOMBOHEDRAL AXES (IRH=0)
C
      IF(ICRS.NE.ITCRS(6).OR. CI.LT.1.0) GOTO 23
      IF(BI.EQ.AI .AND. CI.EQ.AI) GOTO 23
C-----IT IS RHOMBOHEDRAL ON HEXAGONAL AXES. TEMPORARILY SET ICRS='H'
      ICRS =ITCRS(5)
      IRH=1
      GOTO 29
C
C-----TEST IF TRICLINIC. IF IT IS THEN 3 ANGLES MUST BE INPUT
C
23    IF(ICRS.NE.ITCRS(1)) GOTO 25
      IF(IFSUM.EQ.0) GOTO 32
      WRITE(NTOUT,24)
24    FORMAT(' **ERROR** All 3 angles must be entered in triclinic s',
     *'ystem' )
      IERR=IERR+1
      GOTO 32
C
C-----TEST IF MONOCLINIC. IF SO ONLY ONE ANGLE SHOULD BE INPUT
C
25    IF(ICRS.NE.ITCRS(2)) GOTO 27
      IF(IFSUM.EQ.2) GOTO 32
      WRITE(NTOUT,26)
26    FORMAT(1H ,'**ERROR** For monoclinic two angles must be '
     *'input as blanks.', ' program assuming B-unique')
      IFA=1
      IFB=0
      IFC=1
      IERR=IERR+1
      GOTO 32
C
C-----TEST IF RHOMBOHEDRAL ON R-AXES. IF SO ONLY ALPHA SHOULD BE INPUT
C
27    IF(ICRS.NE.ITCRS(6)) GOTO 29
      IF(IFSUM.EQ.2 .AND. IFA.EQ.0) GOTO 32
      IF(IJOB.NE.1.AND.IFA.EQ.0.AND.BETI.EQ.ALPHI.AND.GAMI.EQ.ALPHI)
     * GOTO 32
      WRITE(NTOUT,28)
28    FORMAT(' **ERROR** Only angle alpha should be input for rhoboh',
     *'edral system on r-axes')
      IERR=IERR+1
      GOTO 32
C
C-----MUST BE ORTHO, TETRAGONAL, HEXAGONAL, CUBIC OR RHOMB ON H-AXES
C-----TEST THAT NO ANGLE WAS INPUT
C
29    IF(IFSUM.EQ.3) GOTO 32
      IF(IJOB.NE.1.AND.ALPHI.EQ.90.0.AND.BETI.EQ.90.0.AND.
     + (GAMI.EQ.90.0.OR.GAMI.EQ.120.0)) GOTO 32
      WRITE(NTOUT,30) ICRS
30    FORMAT(' **ERROR** No angles should be input in crystal system ',
     * A1)
      IERR=IERR+1
C
C-----FOR TETRAGONAL, HEXAGONAL, RHOMBOREDRAL AND CUBIC  SET  BI=AI
C
32    IF(ICRS.NE.ITCRS(5) .AND. ICRS.NE.ITCRS(4) .AND. ICRS.NE.ITCRS(7)
     * .AND. ICRS.NE.ITCRS(6)) GOTO 48
      IF(BI.LT.0.1) GOTO 34
      IF(IJOB.NE.1 .AND. BI.EQ.AI) GOTO 35
      WRITE(NTOUT,33)
33    FORMAT(1H ,44H**ERROR** Cell parameter 'b' should be blank )
      IERR=IERR+1
34    BI=AI
35    ERRI(2)=ERRI(1)
C
C-----FOR CUBIC AND RHOMBOHERDRAL R-AXES SET CI = AI
C
      IF (ICRS.NE.ITCRS(6).AND.ICRS.NE.ITCRS(7)) GOTO 42
      IF(CI.LT.0.1) GOTO 38
      IF(IJOB.NE.1 .AND. CI.EQ.AI) GOTO 39
      WRITE(NTOUT,37)
37    FORMAT(1H ,44H**ERROR** Cell parameter 'c' should be blank )
      IERR=IERR+1
38    CI=AI
39    ERRI(3)=ERRI(1)
      GOTO 46
C
C-----IF HEXAGONAL SET GAMMA
C
42    IF (ICRS.NE.ITCRS(5)) GOTO 46
      GAMI=120.0
      ERRI(6)=0
      GOTO 48
C
C-----IF RHOMBOHEDRAL ON R-AXES THE SET EQUIVALENCES
C
46    IF(ICRS.NE.ITCRS(6)) GO TO 48
      BETI=ALPHI
      GAMI=ALPHI
      ERRI(5)=ERRI(4)
      ERRI(6)=ERRI(4)
C
C-----IF RHOMBOHEDRAL ON HEXAGONAL AXES THEN RESET ICRS TO 'R'
C
48    IF(IRH.EQ.1) ICRS=ITCRS(6)
C
C-----CHECK INITIAL CELL PARAMETERS FOR REASONABLE MAGNITUDES
C
      IF(AI.LE.30.0 .AND. BI.LE.30.0 .AND. CI.LE.40.0) GOTO 51
      WRITE(NTOUT,50)
50    FORMAT(1H ,32H**WARNING**ai,bi and/or ci > 30a )
      IWARN=IWARN+1
51    IF(AI.GE. 3.0 .AND. BI.GE. 3.0 .AND. CI.GE. 3.0)  GOTO 53
      WRITE(NTOUT,52)
52    FORMAT(1H ,32H**WARNING**ai,bi and/or ci <  3a )
      IWARN=IWARN+1
53    IF(ALPHI.LE.140.0 .AND. BETI.LE.140.0 .AND. GAMI.LE.140.0) GOTO 55
      WRITE(NTOUT,54)
54    FORMAT(1H ,43H**WARNING**alphi,beti and/or gami > 140 deg )
      IWARN=IWARN+1
55    IF(ALPHI.GE. 50.0 .AND. BETI.GE. 50.0 .AND. GAMI.GE. 50.0) GOTO 57
      WRITE(NTOUT,56)
      IWARN=IWARN+1
56    FORMAT(1H ,43H**WARNING**alphi,beti and/or gami <  50 deg )
57    IF(ALPHI.GT.179.9 .OR. BETI.GT.179.9 .OR. GAMI.GT.179.9) GOTO 60
C
C-----TEST FOR A VALID CELL - THAT IS THE THREE VECTORS ARE NOT COPLANAR
C
      GOOD=.TRUE.
      COS1 = COS(ALPHI/R)
      COS2 = COS(BETI/R)
      COS3 = COS(GAMI/R)
      TEM = (1.0-COS1**2-COS2**2-COS3**2+2.0*(COS1*COS2*COS3))
      IF(TEM.GT.0.0001) GOTO 80
60    WRITE(NTOUT,62) ID0
      IERR=IERR+1
62    FORMAT(' **ERROR** Cell parameters do not define a valid cell-',
     *'-entry: ', 1X, A7)
      GOOD = .FALSE.
      RETURN
C
C-----CALCULATE THE INITIAL CELL VOLUME
C
80    VI = AI*BI*CI*SQRT(TEM)
      IF(VI .LT. 1.0) GOTO 60
      RETURN
      END
