1c 2c subroutine spgen. contains the data necessary to produce the generators 3c for the 230 crystallographic space groups and the 46 molecular point 4c groups found in appendix III of "chemical applications of group theory" 5c by F.A. Cotton, Wiley Interscience, isbn: 0 471 17570 6 6c 7c detailed data on the space groups can be found in the International 8c Tables for Crystallograpy Vol. A, Space Group Symmetry 9c 10c A.C. Hess and D.G. Clerc 11c 12c*********************************************************************** 13 subroutine spgen(itype,numgrp,numset,symops,cntvec,numgen,numvec, 14 $ group_name,max_gen,s_vec,oprint) 15c 16c--->Note: array "gens" in gensym.f = arrray "symops" in spgen.f 17C$Id$ 18 implicit real*8 (a-h,o-z) 19#include "errquit.fh" 20 character*10 spgnam(230),lyrnam(80),linenam(99),molname(46) 21 dimension tranv(46,3),roto(3,4,30) 22 dimension igen(1:230,40) 23 dimension ilgen(1:80,40) 24 dimension ipgen(1:99,40) 25 dimension imgen(1:46,40) 26 dimension cntvec(3,3),symops(18,4),vec(3),igenstr(40) 27 character*(*) group_name 28 logical oprint 29c 30c-->s_vec contains the offset vectors for the generators. 31 integer max_gen 32 double precision s_vec(max_gen,3) 33c 34c--> equivs. 35 double precision tranvl(46*3) 36 equivalence (tranvl, tranv) 37c 38 double precision rotol(3*4*30) 39 equivalence (rotol, roto) 40c 41 integer igenl(230*40) 42 equivalence (igenl, igen) 43c 44 integer ilgenl(80*40) 45 equivalence (ilgenl, ilgen) 46c 47 integer ipgenl(99*40) 48 equivalence (ipgenl, ipgen) 49c 50 integer imgenl(46*40) 51 equivalence (imgenl, imgen) 52c 53c--> names of the 3-dimensional space groups 54c 55 data (spgnam(i),i=1,95) / 56 &' P1',' P-1',' P2',' P2_1',' C2', 57 &' Pm',' Pc',' Cm',' Cc',' P2/m', 58 &' P2_1/m',' C2/m',' P2/c',' P2_1/c',' C2/c', 59 &' P222',' P222_1',' P2_12_12','P2_12_12_1',' C222_1', 60 &' C222',' F222',' I222','I2_12_12_1',' Pmm2', 61 &' Pmc2_1',' Pcc2',' Pma2',' Pca2_1',' Pnc2', 62 &' Pmn2_1',' Pba2',' Pna2_1',' Pnn2',' Cmm2', 63 &' Cmc2_1',' Ccc2',' Amm2',' Abm2',' Ama2', 64 &' Aba2',' Fmm2',' Fdd2',' Imm2',' Iba2', 65 &' Ima2',' Pmmm',' Pnnn',' Pccm',' Pban', 66 &' Pmma',' Pnna',' Pmna',' Pcca',' Pbam', 67 &' Pccn',' Pbcm',' Pnnm',' Pmmn',' Pbcn', 68 &' Pbca',' Pnma',' Cmcm',' Cmca',' Cmmm', 69 &' Cccm',' Cmma',' Ccca',' Fmmm',' Fddd', 70 &' Immm',' Ibam',' Ibca',' Imma',' P4', 71 &' P4_1',' P4_2',' P4_3',' I4',' I4_1', 72 &' P-4',' I-4',' P4/m',' P4_2/m',' P4/n', 73 &' P4_2/n',' I4/m',' I4_1/a',' P422',' P42_12', 74 &' P4_122',' P4_12_12',' P4_222',' P4_22_12',' P4_322'/ 75 data (spgnam(i),i=96,190) / 76 &' P4_32_12',' I422',' I4_122',' P4mm',' P4bm', 77 &' P4_2cm',' P4_2nm',' P4cc',' P4nc',' P4_2mc', 78 &' P4_2bc',' I4mm',' I4cm',' I4_1md',' I4_1cd', 79 &' P-42m',' P-42c',' P-42_1m',' P-42_1c',' P-4m2', 80 &' P-4c2',' P-4b2',' P-4n2',' I-4m2',' I-4c2', 81 &' I-42m',' I-42d',' P4/mmm',' P4/mcc',' P4/nbm', 82 &' P4/nnc',' P4/mbm',' P4/mnc',' P4/nmm',' P4/ncc', 83 &' P4_2/mmc',' P4_2/mcm',' P4_2/nbc',' P4_2/nnm',' P4_2/mbc', 84 &' P4_2/mnm',' P4_2/nmc',' P4_2/ncm',' I4/mmm',' I4/mcm', 85 &' I4_1/amd',' I4_1/acd',' P3',' P3_1',' P3_2', 86 &' R3',' P-3',' R-3',' P312',' P321', 87 &' P3_112',' P3_121',' P3_212',' P3_221',' R32', 88 &' P3m1',' P31m',' P3c1',' P31c',' R3m', 89 &' R3c',' P-31m',' P-31c',' P-3m1',' P-3c1', 90 &' R-3m',' R-3c',' P6',' P6_1',' P6_5', 91 &' P6_2',' P6_4',' P6_3',' P-6',' P6/m', 92 &' P6_3/m',' P622',' P6_122',' P6_522',' P6_222', 93 &' P6_422',' P6_322',' P6mm',' P6cc',' P6_3cm', 94 &' P6_3mc',' P-6m2',' P-6c2',' P-62m',' P-62c'/ 95 data (spgnam(i),i=191,230) / 96 &' P6/mmm',' P6/mcc',' P6_3/mcm',' P6_3/mmc',' P23', 97 &' F23',' I23',' P2_13',' I2_13',' Pm-3', 98 &' Pn-3',' Fm-3',' Fd-3',' Im-3',' Pa-3', 99 &' Ia-3',' P432',' P4_232',' F432',' F4_132', 100 &' I432',' P4_332',' P4_132',' I4_132',' P-43m', 101 &' F-43m',' I-43m',' P-43n',' F-43c',' I-43d', 102 &' Pm-3m',' Pn-3n',' Pm-3n',' Pn-3m',' Fm-3m', 103 &' Fm-3c',' Fd-3m',' Fd-3c',' Im-3m',' Ia-3d'/ 104c 105cdgc---> names of the 80 layer groups 106c 107 data (lyrnam(i),i=1,80) / 108 &' P1',' P-1',' P112',' P11m',' P11a', 109 &' P112/m',' P112/a',' P211',' P2_111',' C211', 110 &' Pm11',' Pb11',' Cm11',' P2/m11',' P2_1/m11', 111 &' C2/m11',' P2/b11',' P2_1/b11',' P222',' P2_122', 112 &' P2_12_12',' C222',' Pmm2',' Pma2',' Pba2', 113 &' Cmm2',' P2mm',' P2_1am',' P2_1ma',' P2mb', 114 &' P2_1mn',' P2aa',' P2_1ab',' P2an',' C2mm', 115 &' C2mb',' Pmmm',' Pmam',' Pmma',' Pmmn', 116 &' Pbam',' Pmaa',' Pman',' Pbma',' Pbaa', 117 &' Pban',' Cmmm',' Cmma',' P4',' P-4', 118 &' P4/m',' P4/n',' P422',' P42_12',' P4mm', 119 &' P4bm',' P-42m',' P-42_1m',' P-4m2',' P-4b2', 120 &' P4/mmm',' P4/nbm',' P4/mbm',' P4/nmm',' P3', 121 &' P-3',' P312',' P321',' P3m1',' P31m', 122 &' P-31m',' P-3m1',' P6',' P-6',' P6/m', 123 &' P622',' P6mm',' P-6m2',' P-62m',' P6/mmm'/ 124c 125cdgc--> names of the 1-dimensional line groups (z direction) 126c 127 data (linenam(i),i=1,99) / 128 &' P1',' P-1',' P112',' P112_1', 129 &' P121',' P111',' P11m',' P1m1', 130 &' P1c1',' Pm11',' Pc11',' P112/m', 131 &' P112_1/m',' P12/m1',' P12/c1',' P2/m11', 132 &' P2/c11',' P222',' P222_1',' Pmm2', 133 &' Pmc2_1',' Pcm2_1',' Pcc2',' Pm2m', 134 &' Pc2m',' P2mm',' P2cm',' Pmmm', 135 &' Pccm',' Pcmm',' Pmcm',' P4', 136 &' P4_1',' P4_2',' P4_3',' P-4', 137 &' P4/m',' P4_2/m',' P422',' P4_122', 138 &' P4_222',' P4_322',' P4mm',' P4_2cm', 139 &' P4cc',' P4_2mc',' P-42m',' P-42c', 140 &' P-4m2',' P-4c2',' P4/mmm',' P4/mcc', 141 &' P4_2/mmc',' P4_2/mcm',' P3',' P3_1', 142 &' P3_2',' P-3',' P312',' P3_112', 143 &' P3_212',' P321',' P3_121',' P3_221', 144 &' P3m1',' P3c1',' P31m',' P31c', 145 &' P-31m',' P-31c',' P-3m1',' P-3c1', 146 &' P6',' P6_1',' P6_5',' P6_2', 147 &' P6_4',' P6_3',' P-6',' P6/m', 148 &' P6_3/m',' P622',' P6_122',' P6_522', 149 &' P6_222',' P6_422',' P6_322',' P6mm', 150 &' P6cc',' P6_3cm',' P6_3mc',' P-6m2', 151 &' P-6c2',' P-62m',' P-62c',' P6/mmm', 152 &' P6/mcc',' P6_3/mcm',' P6_3/mmc'/ 153c 154cdgc--> names of the molecular point groups 155c 156 data molname/ 157 &'C1 ','Cs ','Ci ','C2 ','C3 ', 158 &'C4 ','C5 ','C6 ','C7 ','C8 ', 159 &'D2 ','D3 ','D4 ','D5 ','D6 ', 160 &'C2v ','C3v ','C4v ','C5v ','C6v ', 161 &'C2h ','C3h ','C4h ','C5h ','C6h ', 162 &'D2h ','D3h ','D4h ','D5h ','D6h ', 163 &'D8h ','D2d ','D3d ','D4d ','D5d ', 164 &'D6d ',' S4 ',' S6 ',' S8 ',' T ', 165 &' Th ',' Td ',' O ',' Oh ',' I ', 166 &' Ih '/ 167c 168c--> fundamental generating translation vectors (46 of them) 169c 170 data (tranvl(i), i= 1, 57)/ 171 & 0.5000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 172 & 0.5000000000000000d0, 0.5000000000000000d0, 0.0000000000000000d0, 173 & 0.5000000000000000d0, 0.2500000000000000d0, 0.0000000000000000d0, 174 & 0.0000000000000000d0, 0.2500000000000000d0, 0.2500000000000000d0, 175 & 0.0000000000000000d0, 0.2500000000000000d0, 0.0000000000000000d0, 176 & 0.0000000000000000d0, 0.1250000000000000d0, 0.1250000000000000d0, 177 & 0.1250000000000000d0, 0.3750000000000000d0, 0.3750000000000000d0, 178 & 0.3750000000000000d0, 0.0000000000000000d0, 0.7500000000000000d0, 179 & 0.0000000000000000d0,-0.2500000000000000d0, 0.0000000000000000d0, 180 & 0.2500000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 181 & 0.0000000000000000d0, 0.2500000000000000d0,-0.2500000000000000d0, 182 & 0.2500000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 183 & 0.3750000000000000d0, 0.3750000000000000d0, 0.1250000000000000d0, 184 & 0.1250000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 185 & 0.0000000000000000d0,-0.3333333333333333d0, 0.6666666666666666d0, 186 & 0.3333333333333333d0, 0.0000000000000000d0, 0.5000000000000000d0, 187 & 0.0000000000000000d0, 0.5000000000000000d0, 0.0000000000000000d0, 188 & 0.5000000000000000d0, 0.5000000000000000d0, 0.0000000000000000d0, 189 & 0.2500000000000000d0, 0.0000000000000000d0, 0.2500000000000000d0/ 190 data (tranvl(i), i= 58, 114)/ 191 & 0.0000000000000000d0, 0.2500000000000000d0, 0.2500000000000000d0, 192 & 0.1250000000000000d0, 0.0000000000000000d0, 0.1250000000000000d0, 193 & 0.0000000000000000d0, 0.1250000000000000d0, 0.3750000000000000d0, 194 & 0.0000000000000000d0, 0.3750000000000000d0, 0.0000000000000000d0, 195 & 0.7500000000000000d0,-0.2500000000000000d0, 0.2500000000000000d0, 196 &-0.2500000000000000d0, 0.0000000000000000d0, 0.2500000000000000d0, 197 &-0.2500000000000000d0, 0.5000000000000000d0, 0.5000000000000000d0, 198 & 0.5000000000000000d0, 0.0000000000000000d0, 0.2500000000000000d0, 199 &-0.2500000000000000d0, 0.1250000000000000d0, 0.0000000000000000d0, 200 & 0.3750000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 201 & 0.0000000000000000d0, 0.0000000000000000d0,-0.1666666666666667d0, 202 & 0.3333333333333333d0, 0.6666666666666666d0, 0.0000000000000000d0, 203 & 0.0000000000000000d0, 0.5000000000000000d0, 0.0000000000000000d0, 204 & 0.5000000000000000d0, 0.5000000000000000d0, 0.5000000000000000d0, 205 & 0.0000000000000000d0, 0.0000000000000000d0, 0.2500000000000000d0, 206 & 0.0000000000000000d0, 0.2500000000000000d0, 0.2500000000000000d0, 207 & 0.2500000000000000d0, 0.0000000000000000d0, 0.1250000000000000d0, 208 & 0.0000000000000000d0, 0.1250000000000000d0, 0.1250000000000000d0, 209 & 0.0000000000000000d0, 0.3750000000000000d0, 0.3750000000000000d0/ 210 data (tranvl(i),i= 115, 138)/ 211 & 0.7500000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 212 & 0.0000000000000000d0, 0.2500000000000000d0, 0.1250000000000000d0, 213 & 0.1250000000000000d0, 0.1250000000000000d0, 0.2500000000000000d0, 214 & 0.0000000000000000d0, 0.0000000000000000d0, 0.3750000000000000d0, 215 & 0.3750000000000000d0, 0.3750000000000000d0, 0.0000000000000000d0, 216 & 0.1250000000000000d0, 0.0000000000000000d0, 0.3750000000000000d0, 217 & 0.3333333333333333d0, 0.6666666666666666d0, 0.1666666666666667d0, 218 & 0.0000000000000000d0, 0.3333333333333333d0, 0.6666666666666666d0/ 219c write(*,*) (i,tranvl(i),i=1,138) 220c do 1220 i=1,46 221c write(*,1221) i,(tranv(i,j),j=1,3) 222c1220 continue 223c1221 format('tranv(',i2,',1-3)=',3(f8.5,1x)) 224c 225c--> fundamental generating rotoinversion operators (13) total 226c contains information for both molecules and 3-dim solids 227c 228 data (rotol(i),i= 1, 57)/ 229 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 230 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 231 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 232 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 233 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 234 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 235 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 236 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 237 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 238 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 239 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 240 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 241 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 242 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 243 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 244 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 245 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 246 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 247 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0/ 248 data (rotol(i),i= 58, 114)/ 249 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 250 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 251 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 252 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 253 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 254 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 255 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 256 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 257 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 258 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 259 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 260 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 261 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 262 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 263 &-1.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 264 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 265 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 266 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 267 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0/ 268 data (rotol(i),i= 115, 171)/ 269 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 270 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 271 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 272 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 273 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 274 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 275 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 276 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 277 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 278 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 279 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 280 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 281 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 282 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 283 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 284 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 285 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 286 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 287 & 0.3090169943749475d0, 0.9510565162951536d0, 0.0000000000000000d0/ 288 data (rotol(i),i= 172, 228)/ 289 &-0.9510565162951536d0, 0.3090169943749475d0, 0.0000000000000000d0, 290 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 291 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 292 &-0.8090169943749475d0,-0.5877852522924731d0, 0.0000000000000000d0, 293 & 0.5877852522924731d0,-0.8090169943749475d0, 0.0000000000000000d0, 294 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 295 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 296 & 0.6234898018587335d0, 0.7818314824680298d0, 0.0000000000000000d0, 297 &-0.7818314824680298d0, 0.6234898018587335d0, 0.0000000000000000d0, 298 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 299 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 300 &-0.9009688679024191d0, 0.4338837391175581d0, 0.0000000000000000d0, 301 &-0.4338837391175581d0,-0.9009688679024191d0, 0.0000000000000000d0, 302 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 303 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 304 & 0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 305 &-0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 306 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 307 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0/ 308 data (rotol(i),i= 229, 285)/ 309 &-0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 310 &-0.7071067811865475d0,-0.7071067811865475d0, 0.0000000000000000d0, 311 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 312 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 313 & 0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 314 &-0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 315 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 316 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 317 &-0.7071067811865475d0, 0.7071067811865475d0, 0.0000000000000000d0, 318 &-0.7071067811865475d0,-0.7071067811865475d0, 0.0000000000000000d0, 319 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 320 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 321 & 0.8660254037844386d0, 0.5000000000000000d0, 0.0000000000000000d0, 322 &-0.5000000000000000d0, 0.8660254037844386d0, 0.0000000000000000d0, 323 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 324 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 325 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 326 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 327 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0/ 328 data (rotol(i),i= 286, 342)/ 329 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 330 & 0.6708203932499370d0, 0.6881909602355868d0,-0.2763932022500210d0, 331 &-0.1624598481164533d0, 0.5000000000000000d0, 0.8506508083520400d0, 332 & 0.7236067977499789d0,-0.5257311121191337d0, 0.4472135954999580d0, 333 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 334 & 1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 335 & 0.0000000000000000d0,-1.0000000000000000d0, 0.0000000000000000d0, 336 & 0.0000000000000000d0, 0.0000000000000000d0,-1.0000000000000000d0, 337 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 338 &-0.0527864045000420d0, 0.6881909602355868d0,-0.7236067977499789d0, 339 & 0.6881909602355869d0,-0.5000000000000000d0,-0.5257311121191336d0, 340 &-0.7236067977499790d0,-0.5257311121191337d0,-0.4472135954999580d0, 341 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 342 &-0.1381966011250104d0,-0.4253254041760200d0,-0.8944271909999160d0, 343 & 0.9510565162951536d0,-0.3090169943749475d0, 0.0000000000000000d0, 344 &-0.2763932022500212d0,-0.8506508083520401d0, 0.4472135954999581d0, 345 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 346 &-0.5000000000000000d0, 0.8660254037844386d0, 0.0000000000000000d0, 347 &-0.8660254037844386d0,-0.5000000000000000d0, 0.0000000000000000d0/ 348 data (rotol(i),i= 343, 360)/ 349 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 350 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 351 &-1.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0, 352 & 0.0000000000000000d0, 1.0000000000000000d0, 0.0000000000000000d0, 353 & 0.0000000000000000d0, 0.0000000000000000d0, 1.0000000000000000d0, 354 & 0.0000000000000000d0, 0.0000000000000000d0, 0.0000000000000000d0/ 355c 356c write(*,*) (i,rotol(i),i=1,348) 357c do 1320 k=1,29 358c do 1319 i=1,3 359c write(*,1321) i,k,(roto(i,j,k),j=1,4) 360c1319 continue 361c write(*,*) ' ' 362c1320 continue 363c1321 format('roto(',i2,',1-4,',i2,')=',4(f8.5,1x)) 364c 365c--> pointer arrays for the 230 space groups, stored in groups of 366c 25. see file space_group_generators and makedat.f for a defn. 367c of this pointer structure 368 data (igenl(i),i= 1, 380)/ 369 & 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 370 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 371 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 372 & 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 373 & 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 374 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 375 & 1, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 376 & 2, 2, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 377 & 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 378 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 379 & 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 380 & 1, 2, 1, 2, 1, 1, 2, 2, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 381 & 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0, 0, 0, 0, 382 & 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 3, 3, 1, 1, 1, 0, 0, 0, 0, 383 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 3, 3, 384 & 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 385 & 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 386 & 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 387 & 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 2, 0, 2, 0, 0/ 388 data (igenl(i),i= 381, 760)/ 389 & 0, 0, 0, 0, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 390 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 391 & 0, 0, 0, 0, 0, 3, 1, 0, 1, 0, 0, 3, 3, 1, 0, 1, 0, 0, 3, 3, 392 & 1, 0, 0, 1, 0, 3, 1, 0, 3, 1, 0, 0, 0, 0, 3, 3, 3, 3, 1, 1, 393 & 0, 0, 0, 0, 4, 0, 0, 4, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 4, 394 & 4, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 6, 395 & 6, 6, 6, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396 & 0, 0, 4, 4, 4, 4, 4, 4, 6, 6, 7, 7, 7, 7, 0, 0, 0, 0, 7, 7, 397 & 0, 7, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 398 & 0, 0, 0, 0, 0, 0, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 399 & 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 400 & 7, 7, 0, 0, 0,45, 0,45, 0, 0, 0, 0, 0, 0,45, 0, 0, 0, 0,45, 401 &45, 0, 0, 0, 0,45,45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 402 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 0, 7, 0, 403 & 0, 6, 6, 7, 0, 7, 0, 0, 6, 6, 7, 0, 0, 7, 0, 6, 7, 0, 6, 7, 404 & 0, 0, 0, 0, 6, 6, 6, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 405 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 406 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 407 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5/ 408 data (igenl(i),i= 761,1140)/ 409 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 410 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 411 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 412 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,46, 0,46, 0, 0, 413 & 0, 0, 0, 0,46, 0, 0, 0, 0,46,46, 0, 0, 0, 0,46,46, 0, 0, 0, 414 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 415 & 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 5, 5, 416 & 0, 0, 0, 0, 0, 5, 0, 0, 5, 0, 0, 0, 0, 0, 5, 5, 5, 5, 0, 0, 417 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 418 & 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419 & 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 420 & 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 421 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 422 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 423 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 424 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 425 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 426 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 427 & 0, 4, 4, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0/ 428 data (igenl(i),i=1141,1520)/ 429 & 0, 0, 0, 0, 4, 4, 4, 4, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 430 & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 431 & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 432 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 433 & 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 434 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 435 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 436 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 2, 2, 2, 2, 437 & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 2, 2, 2, 438 & 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 439 & 4, 4, 4, 4, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 440 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 441 & 0, 0, 0, 2, 0, 0, 3, 0, 3, 0, 2, 0, 0, 2, 0, 0, 3, 0, 3, 3, 442 & 0, 0, 0, 3, 0, 3, 0, 0, 3, 0, 3, 0, 3, 0, 0, 3, 0, 0, 0, 0, 443 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 3, 444 & 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 3, 0, 3, 445 & 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 3, 0, 0, 3, 3, 0, 3, 0, 0, 446 & 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 448 data (igenl(i),i=1521,1900)/ 449 & 3, 3, 0,41,42, 0, 0, 0, 0, 0,41,41,42,42, 0, 0, 0, 0, 0, 0, 450 & 0, 0, 0, 0, 0, 0, 0, 0,41,42,42,41, 0, 0, 0, 0, 0,41,42,42, 451 &41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 452 & 0, 0, 0, 0, 3, 3, 0, 0, 0, 3, 0, 3, 3, 3, 0, 0, 0, 0, 0, 3, 453 & 0, 0, 0, 0, 0, 0, 3, 3, 0, 3, 1, 2, 3, 3, 3, 6, 6, 6, 6, 3, 454 & 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 455 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 456 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 457 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 458 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 459 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 460 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, 9, 9, 9, 9, 9, 9, 9, 461 & 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 462 & 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 463 & 9, 9, 9, 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 464 & 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 465 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10,10, 0, 0, 0, 8, 0, 466 & 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 467 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8, 8, 0,11, 0, 0, 0,11/ 468 data (igenl(i),i=1901,2280)/ 469 & 8, 8, 0, 9, 0, 0, 9,11, 0, 0, 0, 0, 8, 9, 0, 0, 0, 0, 0,11, 470 & 0, 0, 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0, 0, 471 & 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 473 &11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 475 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 476 & 0, 0, 0, 0, 8, 8, 0, 0, 0, 9, 0, 8, 8, 8, 0, 0, 0, 0, 0, 8, 477 & 0, 0, 0, 0, 0, 0, 9, 9, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 478 & 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 0, 3, 3, 1, 1, 3, 479 & 5, 1, 1, 5, 0, 3, 3, 0, 0, 1, 1, 0,12, 0, 1, 1, 0, 0, 0, 0, 480 & 0, 2, 0, 0, 2, 2, 2, 2, 2, 0, 2, 2, 0, 2, 0, 0, 2, 0, 0, 0, 481 & 0, 2, 2, 2, 0,10, 3,23, 0,10, 0, 0, 0, 3, 0, 3, 0,10, 0, 0, 482 &10,10, 3, 3,23,23, 0,10, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0,10,10, 483 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 484 & 3, 3, 3, 3, 3, 3, 3, 3, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 485 & 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 486 & 0, 0, 3, 0, 0, 3, 0, 3, 3, 0, 0, 3, 0, 0, 3, 3, 0, 0, 0, 0, 487 & 0, 0, 3, 3, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 2/ 488 data (igenl(i),i=2281,2660)/ 489 & 0, 2, 2, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 2, 0, 2, 490 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 491 & 3, 3, 3, 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 492 & 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 493 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 7, 7, 7, 7, 7, 7, 494 & 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 495 & 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 496 & 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 497 & 7, 7, 0, 0, 0, 0, 2, 2,11,12,11,12,11,12,12,13,14,13,14,13, 498 &13,11,11,12,12,12,12, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 499 & 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 500 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 501 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 502 & 0, 0, 0, 0, 0, 0,10, 8,10,10, 0, 0, 0,10, 0, 0, 0, 0, 0, 9, 503 & 0, 9, 9, 9, 0, 0, 0, 0, 9, 0, 9, 0,15, 0, 9, 0, 0, 0,10, 0, 504 & 0,12,12,10, 8,10,10,12, 8,10,10, 0,10,10, 0,10, 0, 0, 0, 0, 505 & 0, 8,10, 0, 0, 0, 0, 0, 0,26, 0, 0, 0, 0, 2, 2, 0,26, 0, 2, 506 & 0, 2, 0, 2, 0, 2, 0,26, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0,26,26, 507 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2/ 508 data (igenl(i),i=2661,3040)/ 509 & 0, 0, 2, 2, 0, 2, 2, 2, 0, 0,26,26, 0, 0, 0, 0, 0, 0, 0, 0, 510 &41, 0,43, 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0,10, 0,10, 0, 0, 0, 511 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0,10, 512 & 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 8, 513 & 0,10,10,10, 0, 0, 0, 0, 0,10, 0, 0, 0, 0, 0, 0, 8, 8, 0,10, 514 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 515 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 516 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 517 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 518 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 2, 0, 2, 0, 0, 0, 1, 519 & 3, 5, 3, 5, 0, 1, 0, 3, 0, 3, 0, 0, 2, 2, 0, 3, 1, 5, 0, 3, 520 & 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 521 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 522 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 523 & 0, 0, 0, 3, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 524 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 525 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 526 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 527 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2/ 528 data (igenl(i),i=3041,3420)/ 529 & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 530 & 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 3, 3, 531 & 3, 3, 3, 3, 3, 3, 3, 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 532 & 3, 3, 3, 3, 6, 6, 6, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 533 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 534 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 535 & 0, 0, 0, 0, 2, 2,12,12,12,12,12,12,13,13,13,13,13,13,12,12, 536 &12,12,12,12,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, 537 &10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, 538 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 539 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540 & 0, 0, 0, 0, 0, 0, 0,14, 0,11, 0, 0, 0, 0, 0, 0, 0, 0,11, 0, 541 & 0, 0, 0, 0, 0, 0, 0,13, 0,19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 542 & 0, 0, 0, 0,11,14, 0,29, 0, 8, 0,28, 0,12, 0,34, 0,34, 0, 9, 543 & 0, 9, 0, 9, 0, 9, 0, 0, 0, 0, 0,10, 8,12, 0, 0, 9, 9, 0, 0, 544 & 0,34, 0,10, 0, 0, 8,12, 8,12, 0,10,10, 0, 8,12,12, 8, 0,10, 545 &34,28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 546 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,43,41,41, 547 &43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0/ 548 data (igenl(i),i=3421,3800)/ 549 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 550 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 551 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 552 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 553 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 554 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 555 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 557 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 558 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 559 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 560 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 561 & 0, 4, 4, 4, 0, 0, 0, 7, 7,14, 0, 0, 4, 4, 0, 4, 4, 4, 0, 4, 562 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 563 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 565 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 566 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 567 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 568 data (igenl(i),i=3801,4180)/ 569 & 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 570 & 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 571 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 572 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 2, 573 & 2, 2, 2, 2, 2, 2,12,12,12,12,12,12,12,12,14,14,14,14,14,14, 574 &12,12,12,12,12,12,12,12,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 575 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 576 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 577 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 578 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 579 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 580 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,14, 0, 0,11,11, 581 & 0, 0,14,14, 0, 0,14,14, 0, 0,29,29, 0, 0, 0, 0, 0, 0, 0, 0, 582 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 583 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 584 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,14, 0,19, 0, 0, 0, 0,10, 0,36, 585 & 0,35,30,30, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,10,36,36, 0,30, 586 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 587 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 588 data (igenl(i),i=4181,4560)/ 589 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 590 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 591 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 593 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 594 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 595 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 597 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 598 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 599 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 601 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 602 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 603 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 604 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 605 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 606 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 607 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 608 data (igenl(i),i=4561,4940)/ 609 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 610 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 611 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 612 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 613 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 614 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 616 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 617 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 618 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 620 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 621 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 622 & 0,14, 0,14, 0, 0,19,22, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 623 & 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 624 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 625 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 626 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 627 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 628 data (igenl(i),i=4941,5320)/ 629 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 630 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 631 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 632 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 633 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 634 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 635 & 0, 0, 0, 0, 6, 0, 0, 6, 6, 0, 0, 6, 0, 0, 6, 0, 0, 0, 0, 0, 636 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 637 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 638 & 0, 0, 0, 0, 0, 0, 0, 4, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639 & 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 640 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 641 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 642 & 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 643 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 644 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 645 & 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 646 & 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 647 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 648 data (igenl(i),i=5321,5700)/ 649 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 650 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 651 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 652 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 653 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 655 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 656 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 657 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 658 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 659 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 660 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 661 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 663 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 664 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 665 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 666 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 667 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 668 data (igenl(i),i=5701,6080)/ 669 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 670 & 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 671 & 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0, 3, 0, 0, 1, 0, 1, 0, 672 & 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 673 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 675 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 676 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 677 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 678 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 679 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 680 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 681 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 683 & 0, 0, 4, 4, 4, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0, 684 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 685 & 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 686 & 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 687 & 0, 0, 0, 0, 4, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 688 data (igenl(i),i=6081,6460)/ 689 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 690 & 0, 0, 0, 0, 4, 4, 0, 0, 4, 4, 0, 0, 4, 4, 0, 0, 4, 4, 0, 0, 691 & 4, 4, 0, 0, 0,10, 0,10, 0, 0, 0, 0, 0, 0,10, 0, 0, 0, 0,10, 692 &10, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 693 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694 & 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 695 & 0, 4, 0, 4, 0, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 696 & 0, 0, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 697 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0,11, 698 & 0, 0, 0, 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0,20, 699 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 8, 0, 0, 700 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 701 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0,11,11, 702 & 0, 0,11,11, 0, 0,11,11, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 703 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 704 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 705 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0,17, 0, 0, 0, 0, 0, 0, 0, 706 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 0,11, 0, 0,37,39, 0, 0, 707 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 708 data (igenl(i),i=6461,6840)/ 709 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 710 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 711 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 712 & 0, 0, 0, 0, 0, 3, 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 713 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 714 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 715 &10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 716 & 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 717 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 718 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 719 & 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 720 & 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 721 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 722 & 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 723 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 7, 0, 0, 724 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 7, 7, 726 & 0, 0, 7, 7, 0, 0, 7, 7, 0, 0, 7, 7, 0, 0, 0, 0, 0, 2, 0, 0, 727 & 0, 0, 0, 0,11, 0, 0, 0, 0,14,14, 0, 0, 0, 0,11,11, 0, 0, 0/ 728 data (igenl(i),i=6841,7220)/ 729 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 730 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 731 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 3, 3, 0, 0, 732 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 733 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 734 & 0, 0, 0, 0, 0, 0, 0,12, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 735 & 0, 0, 0, 0, 0, 0, 0,10, 0,21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 736 & 0, 0, 0, 0,11,26, 0,32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 737 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 738 & 0, 0, 0, 0,11,11, 0, 0,11,11, 0, 0,11,11, 0, 0,11,11, 0, 0, 739 &33,33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 740 & 0, 0, 0, 0, 0, 0,31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 742 &12, 0,18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 743 & 0,12, 0,12, 0, 0,40,38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 744 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 745 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 746 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 747 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 748 data (igenl(i),i=7221,7600)/ 749 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 750 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 751 & 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 753 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 754 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 755 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 757 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 758 & 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 759 & 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760 & 0, 0, 0, 0, 2, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 761 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 762 & 0, 0, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 763 & 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 764 & 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 765 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 766 &10, 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 767 & 0,10, 0,10, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 768 data (igenl(i),i=7601,7980)/ 769 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 770 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 771 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 772 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 773 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 774 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,12, 0, 0, 0,10, 775 & 0, 0, 8,12, 0, 0, 0,10, 0, 0,12, 8, 0, 0, 0, 0, 0, 0, 0, 0, 776 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 777 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 778 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 779 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 781 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 782 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 783 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 784 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 785 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 786 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 787 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 788 data (igenl(i),i=7981,8360)/ 789 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 790 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 791 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 792 & 0, 0, 0, 4, 0, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 793 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 794 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 795 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 796 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 797 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 798 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2, 2, 799 & 0, 0, 2, 2, 0, 0, 2, 2, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 800 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 801 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 802 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 803 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,12, 0,12, 0, 0,12,12, 0, 0, 804 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 805 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 806 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 807 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 808 data (igenl(i),i=8361,8740)/ 809 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 810 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 812 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 813 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 814 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 815 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 816 & 0,10, 0, 0, 0, 0,27,25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 817 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 818 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 819 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 820 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 821 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 822 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 824 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 825 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 826 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 827 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 828 data (igenl(i),i=8741,9120)/ 829 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 830 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 831 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 832 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 833 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 834 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 835 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 836 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 837 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 838 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 839 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 840 & 0, 2, 0, 2, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 841 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 842 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 843 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 844 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 845 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 846 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 847 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 848 data (igenl(i),i=9121,9200)/ 849 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 851 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 852 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 853c 854cdgc--> pointer block for layers 855c 856 data (ilgenl(i),i= 1, 380)/ 857 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 858 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 859 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 860 & 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 861 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 862 & 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 863 & 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 864 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 865 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 866 & 0, 4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 867 & 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 868 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 869 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 870 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 871 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 872 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 874 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 875 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 876 data (ilgenl(i),i= 381, 760)/ 877 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 878 & 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 879 & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 880 & 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 881 & 4, 4, 4, 4, 1, 2, 2, 2, 2, 2, 3, 3, 2, 2, 3, 3, 3, 3, 3, 4, 882 & 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 0, 0, 1, 0, 0, 1, 0, 1, 883 & 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 884 & 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 885 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 886 & 1, 2, 4, 5, 5, 4, 4,26,26,26,30,30,30,26,26,26,26,26, 4,26, 887 & 4, 4, 4, 4, 4, 4,26,26,26,26,26,26,26,26,26,26, 4, 3, 4, 4, 888 & 4,26, 3, 3,26, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 889 & 4, 4, 4, 4, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 890 & 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 891 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 8, 8, 0, 892 & 0, 0, 8, 0, 9, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 893 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 894 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 895 & 2, 0, 0, 1, 1, 0, 0, 1, 0, 2, 4, 1, 1, 1, 0, 0, 0, 0, 0, 2/ 896 data (ilgenl(i),i= 761,1140)/ 897 & 2, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 898 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 899 & 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 3, 3, 900 & 3, 3, 6, 6, 6, 6, 6, 6, 6, 5, 5, 6, 6, 6, 6, 6, 3, 4, 3, 3, 901 & 3, 3, 4,26, 4, 3, 3, 3, 7, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 902 & 7, 7, 7, 7, 0, 2,11,12,13,14,11,12, 4, 5, 4, 4, 4, 5, 5, 4, 903 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 904 & 8, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 9, 0, 0, 0, 8, 905 & 8, 8,11, 9, 8, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 906 & 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 907 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 908 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 909 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 2, 0, 1, 910 & 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 911 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 912 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 913 & 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 2, 2, 3, 3, 6, 6, 3, 3, 6, 6, 914 & 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2,12,13,13,12,12, 915 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 916 data (ilgenl(i),i=1141,1520)/ 917 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 918 & 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0,11, 0, 8, 0, 9, 0, 8, 0, 9, 919 & 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 920 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 921 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 922 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 923 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 924 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 925 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 926 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 927 & 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 928 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 929 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 930 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 931 & 0,11, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 932 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 933 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 934 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 935 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 936 data (ilgenl(i),i=1521,1900)/ 937 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 938 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 939 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 940 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 941 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 942 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 943 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 944 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 945 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 946 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 947 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 948 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 949 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 950 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 951 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 952 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 953 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 954 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 955 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 956 data (ilgenl(i),i=1901,2280)/ 957 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 958 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 959 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 960 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 961 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 962 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 963 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 964 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 965 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 966 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 967 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 968 & 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 969 & 0, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 970 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 971 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,11, 972 & 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 973 & 0,11, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 974 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 975 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2/ 976 data (ilgenl(i),i=2281,2660)/ 977 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 978 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 979 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 980 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 981 & 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 982 & 0, 7, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 983 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 984 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 985 & 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 986 & 0,11, 0,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 987 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 988 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 989 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 990 & 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 991 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 992 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 993 & 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 994 & 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 995 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 996 data (ilgenl(i),i=2661,3040)/ 997 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 998 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 999 & 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1001 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1002 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1003 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1004 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1005 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1006 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1007 & 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1008 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1009 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1010 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1011 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1012 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1013 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1014 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1015 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1016 data (ilgenl(i),i=3041,3200)/ 1017 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1018 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1019 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1020 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1021 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1022 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1023 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1024 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1025c 1026cdgc--> pointer block for line groups (z direction) 1027c 1028 data (ipgenl(i),i= 1, 380)/ 1029 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1030 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1031 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1032 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1033 & 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1034 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1035 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1036 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1037 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1038 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1039 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1040 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1041 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1042 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1043 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1044 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1045 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1046 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1047 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1048 data (ipgenl(i),i= 381, 760)/ 1049 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1050 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1051 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1052 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1053 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1054 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1055 & 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1056 & 2, 2, 3, 3, 3, 3, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1057 & 3, 3, 3, 3, 3, 4, 4, 4, 4, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1058 & 2, 2, 2, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 1059 & 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 0, 0, 0, 3, 0, 0, 1060 & 0, 0, 3, 0, 3, 0, 3, 0, 0, 0, 0, 0, 3, 0, 3, 3, 0, 0, 0, 0, 1061 & 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 1062 & 0, 0, 0, 0, 0, 0, 0, 0, 0,41,42, 0, 0,41,42, 0,41,42, 0, 0, 1063 & 0, 0, 0, 0, 0, 0, 0,41,42,42,41, 0, 0, 0, 0, 0,41,42,42,41, 1064 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 4, 4, 3,26, 5, 1065 & 6, 6,30,30, 4, 4, 3, 3,26,26, 4, 4, 4, 4, 4, 4, 3, 3,26,26, 1066 & 4, 4,26,26, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1067 & 4, 4, 4, 4, 4, 4, 4, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9/ 1068 data (ipgenl(i),i= 761,1140)/ 1069 & 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 1070 & 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 1071 & 0, 0, 0, 0, 0, 0,10, 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1072 & 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1073 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1074 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1075 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1076 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 3, 0, 3, 0, 0, 1077 & 0, 0, 0,10, 3,23, 0, 0, 3, 0,10, 3,23, 0, 3, 0, 3, 0, 0, 0, 1078 & 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 1079 & 0, 0, 0, 0, 3, 3, 0, 0, 3, 0, 0, 3, 0, 3, 3, 0, 0, 3, 0, 0, 1080 & 3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1081 & 0, 2, 2, 2, 2, 2, 2, 3, 3, 6, 6,30, 6,30,30, 6, 6, 3, 3, 3, 1082 & 3, 7, 7, 7, 7, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 1083 & 7, 7, 7, 7, 0, 0, 0, 2,11,11,11,12,12,12,13,13,14,14,11,11, 1084 &12,12, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1085 & 4, 5, 5, 5, 5, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1086 & 0, 0, 0, 0, 0, 0, 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0,10, 1087 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1088 data (ipgenl(i),i=1141,1520)/ 1089 & 0, 0, 0, 0, 0, 0, 0, 0,41,43, 0, 0, 0, 0, 0, 0, 0, 0,10, 0, 1090 &10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1091 & 0,10, 0,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1092 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1093 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 3, 0, 0, 1094 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1095 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 1096 & 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1097 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 1098 & 0, 0, 0, 2, 2, 3, 3, 3, 3, 6, 6, 6, 6, 3, 3, 6, 6, 3, 3, 3, 1099 & 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 1100 & 0, 0, 0, 0, 0, 0, 2, 2,12,12,12,12,12,12,13,13,13,13,13,13, 1101 &12,12,12,12,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1102 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1103 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0, 0, 0,10, 0,10, 1104 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1105 & 0, 0, 0, 0, 0, 0, 0, 0,43,41,41,43, 0, 0, 0, 0, 0, 0, 0, 0, 1106 & 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1107 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1108 data (ipgenl(i),i=1521,1900)/ 1109 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1110 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1111 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1112 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1113 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1114 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 1115 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1116 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1117 & 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1118 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1119 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1120 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1121 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1122 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1123 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1124 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1125 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1126 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1127 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1128 data (ipgenl(i),i=1901,2280)/ 1129 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1130 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1131 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1132 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1133 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1134 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1135 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1136 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1137 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1138 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1139 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1140 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1141 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1142 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1143 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1144 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1145 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1146 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1147 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1148 data (ipgenl(i),i=2281,2660)/ 1149 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1150 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1151 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1152 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1153 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1154 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1155 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1156 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1157 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1158 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1159 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1160 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1161 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1162 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1163 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1164 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1165 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1166 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1167 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1168 data (ipgenl(i),i=2661,3040)/ 1169 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1170 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1171 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1172 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1173 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1174 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1175 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1176 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1177 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1178 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1179 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1180 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1181 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1182 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1183 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1184 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1185 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1186 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1187 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1188 data (ipgenl(i),i=3041,3420)/ 1189 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1190 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1191 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1192 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1193 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1194 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1195 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1196 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1197 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1198 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1199 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1200 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1201 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1202 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1203 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1204 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1205 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1206 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1207 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1208 data (ipgenl(i),i=3421,3800)/ 1209 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1210 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1211 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1212 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1213 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1214 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1215 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1216 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1217 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1218 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1219 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1220 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1221 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1222 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1223 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1224 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1225 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1226 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1227 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1228 data (ipgenl(i),i=3801,3960)/ 1229 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1230 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1231 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1232 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1233 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1234 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1235 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1236 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1237c 1238cdgc--> pointer block for molecules 1239c 1240 data (imgenl(i),i= 1, 380)/ 1241 & 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 1242 & 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1243 & 1, 1, 1, 1, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1244 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1245 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1246 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1247 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1248 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1249 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1250 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1251 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1252 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1253 & 2, 2, 3, 3, 3, 2, 2, 3, 3, 3, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 1254 & 4, 3, 3, 3, 4, 4, 2, 2, 2, 3, 4, 4, 4, 5, 5, 5, 0, 0, 0, 0, 1255 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1256 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1257 & 0, 0, 1, 5, 2, 4,29, 4,15,29,17,19, 4,29, 4,15,29, 4,29, 4, 1258 &15,29, 4,29, 4,15,29, 4,29, 4,15,29,19, 4,29,21,15,23, 4,29, 1259 &21, 4, 4, 4, 4, 4,15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1260 data (imgenl(i),i= 381, 760)/ 1261 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1262 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1263 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1264 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1265 & 0, 0, 0, 0, 0, 7,16, 4,18,20, 3,12, 7,16, 4, 6,14, 7,16, 4, 1266 & 2, 5, 7,16, 4, 3, 5, 7,16, 4,20, 8,12,22,16, 4, 8, 2,22, 3, 1267 & 3, 3, 3, 3,16,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1268 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1269 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1270 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1271 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1272 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3,12, 0, 0, 6, 6,13, 0, 0, 1273 & 2, 5, 2, 2,12, 3, 5,12,12, 3, 2, 6,26,24, 0, 0, 0,10,10,10, 1274 &10,10,25,25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1275 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1276 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1277 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1278 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1279 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1280 data (imgenl(i),i= 761,1140)/ 1281 & 0, 0, 0, 2, 3, 2, 2, 0, 0, 0, 2, 6, 0, 0, 0, 0, 2,14,12,12, 1282 &27,27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1283 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1284 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1285 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1286 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1287 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1288 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,28,28, 1289 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1290 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1291 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1292 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1293 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1294 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1295 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1296 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1297 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1298 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1299 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1300 data (imgenl(i),i=1141,1520)/ 1301 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1302 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1303 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1304 & 9, 0, 0, 9, 0, 0, 0, 9, 0, 0, 9, 0, 9, 0, 0, 9, 0, 9, 0, 0, 1305 & 9, 0, 9, 0, 0, 9, 0, 0, 9, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 1306 & 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1307 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1308 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1309 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1310 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1311 & 0, 4, 0, 0, 0,12, 0, 0, 4, 0,14, 0, 0, 4, 0, 5, 0, 0, 4, 0, 1312 & 5, 0, 0, 4, 0, 0,12, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1313 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1314 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1315 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1316 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1317 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1318 & 0, 0, 0, 0, 0, 0,12, 0, 0, 0, 0,13, 0, 0, 0, 0, 2, 0,12, 0, 1319 & 0,12, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1320 data (imgenl(i),i=1521,1840)/ 1321 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1322 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1323 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1324 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1325 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1326 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1327 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1328 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1329 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1330 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1331 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1332 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1333 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1334 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1335 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1336 & 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/ 1337#ifdef SOLARIS 1338c needed with -stackvar option 1339 save tranv, roto, igen, imgen 1340#endif 1341c 1342c determine name of requested group 1343c 1344 if(itype.eq.3) then 1345 group_name = spgnam(numgrp) 1346 if (oprint) write(*,11) numgrp, spgnam(numgrp) 134711 format(5x,'3-DIMENSIONAL GROUP NUMBER =',i3,5x,'INTERNATIONAL 1348 & SYMBOL = ',a10) 1349c 1350 elseif(itype.eq.2) then 1351 group_name = lyrnam(numgrp) 1352 if (oprint) write(*,13) numgrp,lyrnam(numgrp) 1353 if (oprint) write(*,15) 135413 format(5x,'2-DIMENSIONAL GROUP NUMBER =',i3,5x,'INTERNATIONAL 1355 & SYMBOL = ',a10) 135615 format(20x,'SURFACE TRANSLATES IN XY (AB) PLANE') 1357c 1358 elseif(itype.eq.1) then 1359 group_name = linenam(numgrp) 1360 if (oprint) write(*,14) numgrp,linenam(numgrp) 1361 if (oprint) write(*,16) 136214 format(5x,'1-DIMENSIONAL GROUP NUMBER =',i3,5x,'INTERNATIONAL 1363 & SYMBOL = ',a10) 1364 16 format(20x,'POLYMER TRANSLATES IN Z (C) DIRECTION') 1365c 1366 elseif(itype.eq.0) then 1367 group_name = molname(numgrp) 1368 if (oprint) write(*,12) numgrp,group_name 136912 format(5x,'MOLECULAR POINT GROUP NUMBER =',i3,5x, 'SCHOENFLIES 1370 &SYMBOL = ',a10) 1371c 1372 endif 1373c 1374c--> begin code to assemble matrix reps. of the generators 1375c 1376c--> get the right row of pointer information for the group 1377c requested 1378c 1379 iflag_Ih=0 1380 if(itype.eq.3) then 1381 do 250 i=1,40 1382 igenstr(i)=igen(numgrp,i) 1383250 continue 1384c 1385 elseif(itype.eq.2) then 1386 do 808 i=1,40 1387 igenstr(i)=ilgen(numgrp,i) 1388808 continue 1389c 1390 elseif(itype.eq.1) then 1391 do 809 i=1,40 1392 igenstr(i)=ipgen(numgrp,i) 1393809 continue 1394c 1395 elseif(itype.eq.0) then 1396 do 800 i=1,40 1397 igenstr(i)=imgen(numgrp,i) 1398800 continue 1399c 1400c--> Add next line to detect Point group 46 (Ih). Since its 6th 1401c generator pointer is in the 2nd setting section of igenstr(), 1402c the flag igenstr(1)=3 is used to screen for Ih. 1403c DGC 3/9/94 1404 iflag_Ih=igenstr(1) 1405 else 1406 write(*,*) 'Bad group identification number = ',numgrp 1407 write(*,*) 'and/or Bad system type for the group number ',itype 1408 call errquit('spgen: symmetry input error', 0, INPUT_ERR) 1409 endif 1410c 1411c--> start to build operators, number of generators in group in genstr(6) 1412c find offset for setting requested (offset points at the number of centering 1413c vectors for the given setting) 1414c 1415 numgen=igenstr(6) 1416 if(numset.le.1) then 1417 ioffset=2 1418 else 1419 ioffset=22 1420 endif 1421c 1422c--> get and save the centering vectors 2nd col. of genstr=number vectors 1423c for the first setting, pointers to the vectors are in cells 3,4,5 1424c For the second setting number cntr. vecotors storedin genstr(22) 1425c vector pointers are then in 23,24,25. 1426c 1427 numvec=igenstr(ioffset) 1428 do 300 i=1,numvec 1429 iv=igenstr(ioffset+i) 1430 do 310 j=1,3 1431 cntvec(i,j)=tranv(iv,j) 1432310 continue 1433300 continue 1434 1435c 1436c--> get the start of the correct setting, each offset (for either the 1st or 1437c 2nd setting) points to the first vector of the genertor triples ie, v1i 1438c or v1j where i and j denote settings 1439c 1440 if(numset.le.1) then 1441 ioffset=7 1442 else 1443 ioffset=26 1444 endif 1445c 1446c--> assemble generators, if third pointer of generator triple (ie, s) is non-zero 1447c then the matrix rep. of the generator must be evaluated for an origin that 1448c differs from (0,0,0) by the vector s. That is, a new translational component for 1449c the operator must be evaluted by, {R2|v2}={R1|v1-R1s+s}. Since R1=R2, ie there 1450c is no effect of such a shift on the rotational part of the operator, the equation 1451c--> becomes: v2=v1-R1s+s, where R1s implies a matrix vector multiplication. 1452c 1453c--->If grp=#46(Ih), then set increment numgen by 1 (i.e. set numgen=6) DGC 112294 1454 if(iflag_Ih.eq.3) then 1455 numgen=numgen+1 1456 endif 1457c 1458 do 350 i=1,numgen 1459c 1460c--->All space & point groups have <= 5 generators except for #46(Ih), which has 6. 1461c The 1st 5 generators of #46 are obtained as for any other group, and the 6th is obtained 1462c by resetting the pointer k to the 2nd section of the igenstr() list. DGC 112294 1463c 1464 if(iflag_Ih.eq.3.and.i.eq.6) then 1465 k=26 1466 else 1467 k=ioffset+(i-1)*3 1468 endif 1469 ivpnt=igenstr(k) 1470 irpnt=igenstr(k+1) 1471 ispnt=igenstr(k+2) 1472c 1473c-->save generator offset vector s DGC 5/17/96 (See note below.) 1474 if(ispnt.gt.1) then 1475 do 20 j=1,3 1476 s_vec(i,j)=tranv(ispnt,j) 147720 continue 1478 else 1479 do 21 j=1,3 1480 s_vec(i,j)=0.00d+00 148121 continue 1482 endif 1483c 1484c--> fill in rotoinversion (3x3) piece of the operator 1485c 1486 kkl=0 1487 istrt=(i-1)*3+1 1488 do 360 is=istrt,istrt+2 1489 kkl=kkl+1 1490 do 370 is2=1,4 1491 symops(is,is2)=roto(kkl,is2,irpnt) 1492370 continue 1493360 continue 1494c 1495c--> check to see if operator is at an origin other than (0,0,0), if so compute 1496c new shift vector v2 (computing v-Rs+s, s=offset) 1497c 1498c-->Note: ispnt = 0 means offset = 0. Would screening out ispnt=1 (.5,0,0) cause 1499c problems if ispnt=1 were used as an offset vector? DGC 5/17/96 1500c 1501 if(ispnt.gt.1) then 1502 jvec=0 1503 do 380 j=istrt,istrt+2 1504 jvec=jvec+1 1505 sum=0.0d+00 1506 do 390 jj=1,3 1507 sum=sum+symops(j,jj)*tranv(ispnt,jj) 1508390 continue 1509 vec(jvec)=sum 1510380 continue 1511 if(ivpnt.ne.0) then 1512 do 420 j=1,3 1513 jj=istrt+(j-1) 1514 symops(jj,4)=tranv(ivpnt,j)-vec(j)+tranv(ispnt,j) 1515420 continue 1516 else 1517 do 480 j=1,3 1518 jj=istrt+(j-1) 1519 symops(jj,4)=-vec(j)+tranv(ispnt,j) 1520480 continue 1521 endif 1522 elseif(ivpnt.ne.0) then 1523 do 430 j=1,3 1524 jj=istrt+(j-1) 1525 symops(jj,4)=tranv(ivpnt,j) 1526430 continue 1527 endif 1528350 continue 1529c 1530c--> clean up translational components (put in standard convention) 1531c 1532551 do 550 j=1,numgen*3 1533 if(symops(j,4).lt.0.0d+00) then 1534 symops(j,4)=symops(j,4)+1.0d+00 1535 elseif(symops(j,4).gt.1.0d+00) then 1536 symops(j,4)=symops(j,4)-1.0d+00 1537 endif 1538c Not even sure if this is possible, but check anyway 1539 if(symops(j,4).lt.0.0d+00 .or. symops(j,4).gt.1.0d+00) goto 551 1540c 1541c---> Set translation components 1/3 and 2/3 of the generator 1542c products to double precision. 1543c Otherwise get 1/3=0.33333334 and 2/3=0.66666666. 1544c (A similar loop for generator products appears in "gensymt.f") 1545c 1546 if(symops(j,4).le..3334.and.symops(j,4).ge..3333) then 1547 symops(j,4)=1.0d+00/3.0d+00 1548 elseif(symops(j,4).le..6667.and.symops(j,4).ge..6666) then 1549 symops(j,4)=2.0d+00/3.0d+00 1550 endif 1551550 continue 1552c 1553c--> write out symops 1554c 1555c ista=1 1556c istp=3 1557c do 440 i=1,numgen 1558c write(*,31) i 1559c do 442 j=ista,istp 1560c write(*,30) (symops(j,k), k=1,4) 1561c442 continue 1562c ista=istp+1 1563c istp=istp+3 1564c440 continue 156530 format(4(f9.6,2x)) 156631 format(/,'Generator Number ',i2) 1567c 1568c------------------------> printing statements for debugging 1569 1570c--> write out tranv 1571c 1572c do 100 i=1,46 1573c write(*,10) (tranv(i,j), j=1,3) 1574c write(*,*) ' ' 1575c100 continue 1576c10 format(5x,3(f11.8,2x)) 1577c 1578c--> write out roto 1579c 1580c do 500 i=1,14 1581c do 502 j=1,3 1582c write(*,20) (roto(j,k,i), k=1,4) 1583c502 continue 1584c write(*,*) 1585c500 continue 1586c20 format(5x,4(f9.6,2x)) 1587c 1588c--> write out 3-d pointer table 1589c 1590c do 400 i=1,230 1591c write(40,25) (igen(i,j),j=1,40) 1592c400 continue 1593c25 format(40(i2,1x)) 1594 return 1595 end 1596 1597 1598 1599 1600 1601