EffC++ warnings corrected.
[u/mrichter/AliRoot.git] / ISAJET / isarun / dialog.F
1 #include "isajet/pilot.h"
2       SUBROUTINE DIALOG
3 C
4 C          Set up user data with interactive commands from standard
5 C          Fortran input.
6 C
7 C          V6.26: Fixed FORCE to allow automatic top decays and to use
8 C          correct limit for maximum number.
9 C
10 #if defined(CERNLIB_IMPNONE)
11       IMPLICIT NONE
12 #endif
13 #include "isajet/itapes.inc"
14 #include "isajet/mbgen.inc"
15 #include "isajet/force.inc"
16 #include "isajet/eepar.inc"
17 #include "isajet/dkytab.inc"
18 #include "isajet/qcdpar.inc"
19 #include "isajet/idrun.inc"
20 #include "isajet/frgpar.inc"
21 #include "isajet/keys.inc"
22 #include "isajet/prtout.inc"
23 #include "isajet/seed.inc"
24 #include "isajet/types.inc"
25 #include "isajet/primar.inc"
26 #include "isajet/jetlim.inc"
27 #include "isajet/nodcay.inc"
28 #include "isajet/wcon.inc"
29 #include "isajet/dylim.inc"
30 #include "isajet/qlmass.inc"
31 #include "isajet/q1q2.inc"
32 #include "isajet/jetpar.inc"
33 #include "isajet/isloop.inc"
34 #include "isajet/tcpar.inc"
35 #include "isajet/xmssm.inc"
36 #include "isajet/sugnu.inc"
37 #if defined(CERNLIB_PDFLIB)
38 #include "isajet/w50510.inc"
39 * Ignoring t=pass
40 #endif
41 #if defined(CERNLIB_PDFLIB)
42 #include "isajet/w50517.inc"
43 * Ignoring t=pass
44 #endif
45 #include "isajet/hcon.inc"
46 #include "isajet/kkgrav.inc"
47 #include "isajet/mglims.inc"
48 C
49 #include "isajet/const.inc"
50 C
51       LOGICAL SETTYP,DUMY
52       CHARACTER*8 TTL(10),WORD,LSTRUC,BLANK,LIST(29)
53       CHARACTER*8 WTYP(4),RDID(2)
54       CHARACTER*4 YN
55       INTEGER IFL,I1,I2,I3,J1,I,IKEY,IJ,J,KK,IDXQK
56       INTEGER NSEL,K,KFORCE(5),INDEX,IDG1,IDG2,IDG3,IDG4,IDXQ,IDXLEP
57 #if defined(CERNLIB_SINGLE)
58       REAL    SEED
59 #endif
60 #if defined(CERNLIB_DOUBLE)
61       DOUBLE PRECISION SEED
62 #endif
63       INTEGER NLAP(3,17)
64       REAL EMIN,YLIM1,YLIM2,ANGL1,ANGL2,XLIM1,XLIM2,AMW,AMZ
65       INTEGER NFTEMP
66       CHARACTER*8 HTYPE
67 #if defined(CERNLIB_PDFLIB)
68       CHARACTER*20 PDFPAR(20)
69 #endif
70 #if (defined(CERNLIB_PDFLIB))&&(defined(CERNLIB_SINGLE))
71       REAL PDFVAL(20)
72       REAL DX,DSCALE,DXPDF(-6:6)
73 #endif
74 #if (defined(CERNLIB_PDFLIB))&&(defined(CERNLIB_DOUBLE))
75       DOUBLE PRECISION PDFVAL(20)
76       DOUBLE PRECISION DX,DSCALE,DXPDF(-6:6)
77 #endif
78       REAL AMLIM1,AMLIM2
79       INTEGER JLIM1,JLIM2
80 C
81 C          Overlapping variable flags.
82       DATA NLAP/1,2,3, 1,2,7 ,1,2,8, 1,3,5, 1,3,6, 1,3,7, 1,3,8, 1,5,7,
83      X          1,5,8, 1,6,7, 1,6,8, 2,3,7, 2,3,8, 3,5,7, 3,6,7, 3,5,8,
84      X          3,6,8/
85       DATA BLANK/'        '/
86 C          Duplicate data to avoid requiring ALDATA
87       DATA LIST/'GL','UP','UB','DN','DB','ST','SB','CH','CB','BT','BB',
88      $'TP','TB','NUE','ANUE','E-','E+','NUM','ANUM','MU-','MU+',
89      $'NUT','ANUT','TAU-','TAU+','ALL','QUARKS','LEPTONS','NUS'/
90 C
91 C          Entry
92 C
93       IFL=0
94       NFTEMP=0
95 C
96 1111  PRINT 11
97 11    FORMAT(//,10X,' Use CAPITAL LETTERS only for all commands.',//,
98      1 10X,' Give title for this run.')
99 C
100 C          Read title
101 C
102       READ 1,TTL
103     1 FORMAT(10A8)
104       WRITE(ITCOM,1) TTL
105       IF(TTL(1).EQ.'STOP    ') GOTO 999
106 C
107 C          Read energy and no. of events
108 C
109       PRINT*,' total energy, # of events, # to print, # to skip.'
110       READ*,ECM,NEVENT,NEVPRT,NJUMP
111       WRITE(ITCOM,*)ECM,NEVENT,NEVPRT,NJUMP
112 C
113 C          Reset all variables if title is not 'SAME'
114 C
115       IF(TTL(1).NE.'SAME    ') THEN
116         DO 20 I=1,10
117    20   TITLE(I)=TTL(I)
118         CALL RESET
119         KEYON=.FALSE.
120 C
121 C          Read reaction and set keys and NJET
122 C
123    21   PRINT 22
124    22   FORMAT(/,' Choose one of the following reactions:',/,
125      $' TWOJET E+E- DRELLYAN MINBIAS SUSY WPAIR HIGGS',
126      $' PHOTON TCOLOR WHIGGS')
127         READ 3,REAC
128     3   FORMAT(A8)
129         DO 18 I=1,MXKEYS
130 18      KEYS(I)=.FALSE.
131         KEYON=.FALSE.
132 C
133         IF(REAC.EQ.'TWOJET  ') THEN
134           KEYS(1)=.TRUE.
135           IKEY=1
136           NJET=2
137         ELSEIF(REAC.EQ.'E+E-    ') THEN
138           KEYS(2)=.TRUE.
139           IKEY=2
140           NJET=2
141         ELSEIF(REAC.EQ.'DRELLYAN') THEN
142           KEYS(3)=.TRUE.
143           IKEY=3
144           NJET=3
145         ELSEIF(REAC.EQ.'MINBIAS ') THEN
146           KEYS(4)=.TRUE.
147           IKEY=4
148           NJET=0
149         ELSEIF(REAC.EQ.'SUPERSYM'.OR.REAC.EQ.'SUSY    ') THEN
150           KEYS(5)=.TRUE.
151           IKEY=5
152           NJET=2
153         ELSEIF(REAC.EQ.'WPAIR   ') THEN
154           KEYS(6)=.TRUE.
155           IKEY=6
156           NJET=2
157         ELSEIF(REAC.EQ.'HIGGS   ') THEN
158           KEYS(7)=.TRUE.
159           IKEY=7
160           NJET=2
161        ELSEIF(REAC.EQ.'PHOTON  ') THEN
162          KEYS(8)=.TRUE.
163          IKEY=8
164          NJET=2
165         ELSEIF(REAC.EQ.'TCOLOR  ') THEN
166           KEYS(9)=.TRUE.
167           IKEYS=9
168           NJET=2
169         ELSEIF(REAC.EQ.'WHIGGS  ') THEN
170           KEYS(10)=.TRUE.
171           IKEY=10
172           NJET=2
173         ELSE
174           PRINT* ,' You must choose a valid reaction, try again.'
175           GOTO 21
176         ENDIF
177 C
178         WRITE(ITCOM,3) REAC
179       ENDIF
180 C
181       EMIN=1.0
182       SCM=ECM**2
183       HALFE=ECM/2
184       YLIM2=ALOG(ECM)
185       YLIM1=-YLIM2
186       NSEL=0
187       ANGL1=0
188       ANGL2=2*PI
189       XLIM1=-1.0
190       XLIM2=1.0
191 C
192 C          Read keyword. For each recognized keyword read corresponding
193 C          variables and set LOC flag.
194 C
195       NSEL=0
196 1000  PRINT 99
197 99    FORMAT(//,
198      $'      Choose among the following:',/,
199      $'      Jet limits:',/,
200      $' JETTYPE1 JETTYPE2 JETTYPE3 P PHI PT TH X Y WMODE1 WMODE2',/,
201      $'      Drell Yan/Higgs limits:',/,
202      $' HTYPE PHIW QMH QMW QTW THW WTYPE XW YW',/,
203      $'      Decays:',/,
204      $' FORCE FORCE1 NODECAY NOETA NOEVOLVE NOFRGMNT NOPI0',/,
205      $'      Physics parameters:',/,
206      $' CUTJET CUTOFF FRAGMENT GAUGINO HMASS HMASSES LAMBDA',/,
207      $' MSSMA MSSMB MSSMC MSSMD MSSME SIGQT SIN2W SLEPTON SQUARK',/,
208      $' SUGRA TCMASS TMASS WMASS XGEN',/,
209      $'      Other:',/,
210      $' BEAMS EPOL NPOMERON NSIGMA NTRIES PDFLIB SEED STRUC WFUDGE',/,
211      $' WMMODE WPMODE Z0MODE',/,
212      $'      Terminate with END. Use HELP for help.',/)
213 C
214 100   PRINT* ,' Give a variable name.'
215       READ 3,WORD
216       IF(WORD.EQ.'HELP    ') GO TO 1000
217       NSEL=NSEL+1
218 C
219 C          Keyword END
220       IF(WORD.EQ.'END     ') THEN
221 C
222 C              End of run
223 C
224           WRITE(ITCOM,3) WORD
225           PRINT 889
226   889 FORMAT(//,10X,' NEW RUN',/,' If you are finished answer STOP.',/,
227      1  ' If you answer SAME the parameters from previous run will be',
228      2  ' used,',/,' unless you request otherwise.')
229         GO TO 101
230       ENDIF
231 C
232 C          Keyword P
233       IF(WORD.EQ.'P       ') THEN
234         WRITE(ITCOM,3) WORD
235         PRINT 562
236         PRINT 563,EMIN,HALFE
237         READ*, (PMIN(K),PMAX(K),K=1,NJET)
238         WRITE(ITCOM,*)(PMIN(K),PMAX(K),K=1,NJET)
239         LOC(1)=NSEL
240         GO TO 1000
241       ENDIF
242 C
243 C          Keyword Y
244       IF(WORD.EQ.'Y       ') THEN
245         WRITE(ITCOM,3) WORD
246         PRINT 562
247         PRINT 563,YLIM1,YLIM2
248         READ*, (YJMIN(K),YJMAX(K),K=1,NJET)
249         WRITE(ITCOM,*)(YJMIN(K),YJMAX(K),K=1,NJET)
250         LOC(2)=NSEL
251         GO TO 1000
252       ENDIF
253 C
254 C          Keyword X
255       IF(WORD.EQ.'X       ') THEN
256         WRITE(ITCOM,3) WORD
257         PRINT 562
258         PRINT 563,XLIM1,XLIM2
259         READ*, (XJMIN(K),XJMAX(K),K=1,NJET)
260         WRITE(ITCOM,*)(XJMIN(K),XJMAX(K),K=1,NJET)
261         LOC(3)=NSEL
262         GO TO 1000
263       ENDIF
264 C
265 C          Keyword PHI
266       IF(WORD.EQ.'PHI     ') THEN
267         WRITE(ITCOM,3) WORD
268         PRINT 562
269         PRINT 563,ANGL1,ANGL2
270         READ*, (PHIMIN(K),PHIMAX(K),K=1,NJET)
271         WRITE(ITCOM,*)(PHIMIN(K),PHIMAX(K),K=1,NJET)
272         LOC(4)=NSEL
273         GO TO 1000
274       ENDIF
275 C
276 C          Keyword TH
277         IF(WORD.EQ.'TH      '.OR.WORD.EQ.'THETA   ') THEN
278         WRITE(ITCOM,3) WORD
279         PRINT 562
280         PRINT 563,ANGL1,PI
281         READ*, (THMIN(K),THMAX(K),K=1,NJET)
282         WRITE(ITCOM,*)(THMIN(K),THMAX(K),K=1,NJET)
283         LOC(5)=NSEL
284         LOC(6)=NSEL
285         GO TO 1000
286       ENDIF
287 C
288 C          Keyword PT
289       IF(WORD.EQ.'PT      '.OR.WORD.EQ.'PPERP   ') THEN
290         WRITE(ITCOM,3) WORD
291         PRINT 562
292         PRINT 563,EMIN,HALFE
293         READ*, (PTMIN(K),PTMAX(K),K=1,NJET)
294         WRITE(ITCOM,*)(PTMIN(K),PTMAX(K),K=1,NJET)
295         LOC(7)=NSEL
296         LOC(8)=NSEL
297         GO TO 1000
298       ENDIF
299 C
300 C          Keyword NODECAY
301       IF(WORD.EQ.'NODECAY ') THEN
302         WRITE(ITCOM,3) WORD
303         PRINT 572
304         READ 571,NODCAY
305 571     FORMAT(L1)
306         WRITE(ITCOM,571) NODCAY
307         LOC(9)=NSEL
308         GO TO 1000
309       ENDIF
310 C
311 C          Keyword NOETA
312       IF(WORD.EQ.'NOETA   ') THEN
313         WRITE(ITCOM,3) WORD
314         PRINT 572
315         READ 571, NOETA
316         WRITE(ITCOM,571) NOETA
317         LOC(10)=NSEL
318         GO TO 1000
319       ENDIF
320 C
321 C          Keyword NOPI0
322       IF(WORD.EQ.'NOPI0   ') THEN
323         WRITE(ITCOM,3) WORD
324         PRINT 572
325         READ 571, NOPI0
326         WRITE(ITCOM,571)  NOPI0
327         LOC(11)=NSEL
328         GO TO 1000
329       ENDIF
330 C
331 C          Keyword BEAMS
332       IF(WORD.EQ.'BEAMS   ') THEN
333         WRITE(ITCOM,3) WORD
334    58   PRINT*,' Select each beam enclosed in single quotes.'
335         PRINT*,' Allowed names are: P  N  AP  AN'
336         READ *,RDID(1),RDID(2)
337         IDIN(1)=0
338         IDIN(2)=0
339         DO 583 K=1,2
340         IF(RDID(K).EQ.'P       ') IDIN(K)=+1120
341         IF(RDID(K).EQ.'AP      ') IDIN(K)=-1120
342         IF(RDID(K).EQ.'N       ') IDIN(K)=+1220
343         IF(RDID(K).EQ.'AN      ') IDIN(K)=-1220
344 583     CONTINUE
345         IF(IDIN(1)*IDIN(2).EQ.0) GOTO 58
346         LOC(12)=NSEL
347         WRITE(ITCOM,4) RDID(1),RDID(2)
348         GO TO 1000
349       ENDIF
350 C
351 C          Keyword FRAGMENT
352       IF(WORD.EQ.'FRAGMENT') THEN
353         WRITE(ITCOM,3) WORD
354         PRINT 584
355         READ*, FRPAR
356         WRITE(ITCOM,*) FRPAR
357         LOC(13)=NSEL
358         GO TO 1000
359       ENDIF
360 C
361 C          Keyword SEED
362       IF(WORD.EQ.'SEED    ') THEN
363         WRITE(ITCOM,3) WORD
364         PRINT 584
365         READ*, SEED
366         WRITE(ITCOM,*) SEED
367         CALL RANFST(SEED)
368         LOC(14)=NSEL
369         GO TO 1000
370       ENDIF
371 C
372 C          Keywords JETTYPE1, JETTYPE2, JETTYPE3
373       IF(WORD.EQ.'JETTYPE1'.OR.WORD.EQ.'JETTYPE2'.OR.WORD.EQ.
374      $'JETTYPE3') THEN
375         WRITE(ITCOM,3) WORD
376 C          Print allowed types
377 60      IF(KEYS(6)) THEN
378           PRINT 6001
379           PRINT 6002
380 6001      FORMAT(' Give a list of jet types enclosed in single quotes ',
381      $    'and separated by commas.',/,' Terminate list with a /')
382 6002      FORMAT(' The recognized W types are: W+, W-, Z0, GM and ALL')
383         ELSE
384           PRINT 6001
385           PRINT 6003, LIST
386 6003      FORMAT(' The recognized jet types are:',/,4(1X,8A8,/),1X,5A8)
387         ENDIF
388         IF(KEYS(1)) THEN
389           PRINT 6004
390 6004      FORMAT(' A fourth generation is also allowed:',/,
391      $    ' X, XB for up, Y, YB for down.',/,
392      $    ' The fourth generation is normally turned off.')
393         ENDIF
394         IF(WORD.EQ.'JETTYPE1') IJ=1
395         IF(WORD.EQ.'JETTYPE2') IJ=2
396         IF(WORD.EQ.'JETTYPE3') IJ=3
397         READ*,(JETYP(K,IJ),K=1,25)
398         DO 61 K=1,25
399 61      IF(JETYP(K,IJ).NE.BLANK) NJTTYP(IJ)=NJTTYP(IJ)+1
400 C          Check that only legal jet types are in the list
401         IF(SETTYP(0)) GOTO 60
402         WRITE(ITCOM,4)(JETYP(K,IJ),K=1,NJTTYP(IJ))
403     4   FORMAT(1H',A,2H',)
404         IF(NJTTYP(IJ).LT.25) WRITE(ITCOM,*) '/'
405         LOC(15)=NSEL
406         GO TO 1000
407       ENDIF
408 C
409 C          Keyword SIN2W
410       IF(WORD.EQ.'SIN2W   ') THEN
411         WRITE(ITCOM,3) WORD
412         PRINT 584
413         READ*, SIN2W
414         WRITE(ITCOM,*) SIN2W
415         LOC(17)=NSEL
416         GO TO 1000
417       ENDIF
418 C
419 C          Keyword TMASS
420       IF(WORD.EQ.'TMASS   ') THEN
421         WRITE(ITCOM,3) WORD
422         PRINT 584
423         READ*, AMLEP(6),AMLEP(7),AMLEP(8)
424         WRITE(ITCOM,*) AMLEP(6),AMLEP(7),AMLEP(8)
425         LOC(18)=NSEL
426         GO TO 1000
427       ENDIF
428 C
429 C          Keyword QMH (note that it uses same variable as QMW)
430       IF(WORD.EQ.'QMH     ') THEN
431         WRITE(ITCOM,3) WORD
432         PRINT*,' Give minimum and maximum MASS for Higgs.'
433         READ*,QMIN,QMAX
434         WRITE(ITCOM,*)QMIN,QMAX
435         LOC(19)=NSEL
436         GO TO 1000
437       ENDIF
438 C
439 C          Keyword QMW
440       IF(WORD.EQ.'QMW     ') THEN
441         WRITE(ITCOM,3) WORD
442         PRINT*,' Give minimum and maximum MASS for W(Z0).'
443         READ*,QMIN,QMAX
444         WRITE(ITCOM,*)QMIN,QMAX
445         LOC(19)=NSEL
446         GO TO 1000
447       ENDIF
448 C
449 C          Keyword QTW
450       IF(WORD.EQ.'QTW     ') THEN
451         WRITE(ITCOM,3) WORD
452         PRINT*,' Give minimum and maximum PT for W(Z0).'
453         PRINT 563,EMIN,HALFE
454         PRINT*,' Fix QTW to zero for standard Drell-Yan.'
455         READ*, QTMIN,QTMAX
456         WRITE(ITCOM,*) QTMIN,QTMAX
457         LOC(20)=NSEL
458         GO TO 1000
459       ENDIF
460 C
461 C          Keyword YW
462       IF(WORD.EQ.'YW      ') THEN
463         WRITE(ITCOM,3) WORD
464         PRINT*,' Give minimum and maximum Y for W(Z0).'
465         PRINT 563,YLIM1,YLIM2
466         READ*, YWMIN,YWMAX
467         WRITE(ITCOM,*)YWMIN,YWMAX
468         LOC(21)=NSEL
469         GO TO 1000
470       ENDIF
471 C
472 C          Keyword XW
473       IF(WORD.EQ.'XW      ') THEN
474         WRITE(ITCOM,3) WORD
475         PRINT*,' Give minimum and maximum X for W(Z0).'
476         PRINT 563,XLIM1,XLIM2
477         READ*, XWMIN,XWMAX
478         WRITE(ITCOM,*)XWMIN,XWMAX
479         LOC(22)=NSEL
480         GO TO 1000
481       ENDIF
482 C
483 C          Keyword THW
484       IF(WORD.EQ.'THW     ') THEN
485         WRITE(ITCOM,3) WORD
486         PRINT*,' Give minimum and maximum THETA for W(Z0).'
487         PRINT 563,ANGL1,PI
488         READ*, THWMIN,THWMAX
489         WRITE(ITCOM,*)THWMIN,THWMAX
490         LOC(23)=NSEL
491         GO TO 1000
492       ENDIF
493 C
494 C          Keyword PHIW
495       IF(WORD.EQ.'PHIW    ') THEN
496         WRITE(ITCOM,3) WORD
497         PRINT*,' Give minimum and maximum PHI for W(Z0).'
498         PRINT 563,ANGL1,ANGL2
499         READ*, PHWMIN,PHWMAX
500         WRITE(ITCOM,*)PHWMIN,PHWMAX
501         LOC(24)=NSEL
502         GO TO 1000
503       ENDIF
504 C
505 C          Keyword NONUNU
506       IF(WORD.EQ.'NONUNU  ') THEN
507         WRITE(ITCOM,3) WORD
508         PRINT 572
509         READ 571,NONUNU
510         WRITE(ITCOM,571) NONUNU
511         LOC(25)=NSEL
512         GO TO 1000
513       ENDIF
514 C
515 C          Keyword WTYPE
516       IF(WORD.EQ.'WTYPE   ') THEN
517         WRITE(ITCOM,3) WORD
518    92   PRINT*,' Choose from one set of bosons: W+,W- or Z0,GM'
519         PRINT*,' Enclose each in single quotes and terminate with / '
520         DO 191 J=1,4
521         WTYP(J)=BLANK
522   191   GODY(J)=.FALSE.
523         READ*,WTYP
524         DO 192 K=1,4
525         IF(WTYP(K).EQ.'GM      ') GODY(1)=.TRUE.
526         IF(WTYP(K).EQ.'W+      ') GODY(2)=.TRUE.
527         IF(WTYP(K).EQ.'W-      ') GODY(3)=.TRUE.
528         IF(WTYP(K).EQ.'Z0      ') GODY(4)=.TRUE.
529   192   CONTINUE
530         IF(GODY(1)) JWTYP=1
531         IF(GODY(2).OR.GODY(3)) JWTYP=3
532         IF(GODY(4)) JWTYP=4
533         IF((GODY(3).OR.GODY(2)).AND.(GODY(1).OR.GODY(4)).OR.JWTYP
534      1  .EQ.0) THEN
535           PRINT 2003
536           GOTO 92
537         ELSE
538           WRITE(ITCOM,4) WTYP
539           LOC(26)=NSEL
540         ENDIF
541         GO TO 1000
542       ENDIF
543 C
544 C          Keyword LAMBDA
545       IF(WORD.EQ.'LAMBDA  ') THEN
546         WRITE(ITCOM,3) WORD
547         PRINT 584
548         READ*, ALAM
549         WRITE(ITCOM,*) ALAM
550         ALAM2=ALAM**2
551         LOC(27)=NSEL
552         GO TO 1000
553       ENDIF
554 C
555 C          Keyword NTRIES
556       IF(WORD.EQ.'NTRIES  ') THEN
557         WRITE(ITCOM,3) WORD
558         PRINT 584
559         READ*,NTRIES
560         WRITE(ITCOM,*)NTRIES
561         LOC(28)=NSEL
562         GO TO 1000
563       ENDIF
564 C
565 C          Keyword CUTOFF
566       IF(WORD.EQ.'CUTOFF  ') THEN
567         WRITE(ITCOM,3) WORD
568         PRINT 584
569         READ*,CUTOFF,CUTPOW
570         WRITE(ITCOM,*)CUTOFF,CUTPOW
571         LOC(29)=NSEL
572         GO TO 1000
573       ENDIF
574 C
575 C          Keyword XGEN
576       IF(WORD.EQ.'XGEN    ') THEN
577         WRITE(ITCOM,3) WORD
578         PRINT 584
579         READ*,XGEN
580         WRITE(ITCOM,*)XGEN
581         LOC(30)=NSEL
582         GO TO 1000
583       ENDIF
584 C
585 C          Keyword SIGQT
586       IF(WORD.EQ.'SIGQT   ') THEN
587         WRITE(ITCOM,3) WORD
588         PRINT 584
589         READ*,SIGQT
590         WRITE(ITCOM,*)SIGQT
591         LOC(31)=NSEL
592         GO TO 1000
593       ENDIF
594 C
595 C          Keyword CUTJET
596       IF(WORD.EQ.'CUTJET  ') THEN
597         WRITE(ITCOM,3) WORD
598         PRINT 584
599         READ*, CUTJET
600         WRITE(ITCOM,*) CUTJET
601         LOC(32)=NSEL
602         GO TO 1000
603       ENDIF
604 C
605 C          Keyword WFUDGE
606       IF(WORD.EQ.'WFUDGE  ') THEN
607         WRITE(ITCOM,3) WORD
608         PRINT 584
609         READ*, WFUDGE
610         WRITE(ITCOM,*) WFUDGE
611         LOC(50)=NSEL
612         GO TO 1000
613       ENDIF
614 C
615 C          Keyword STRUC
616       IF(WORD.EQ.'STRUC   ') THEN
617         WRITE(ITCOM,3) WORD
618         ISTRUC=0
619    69   PRINT*,' Choose a structure function: OWENS, BAIER or EICHTEN'
620         PRINT*,' Enclose in single quotes'
621         READ*,LSTRUC
622         IF(LSTRUC.EQ.'OWENS   ') ISTRUC=1
623         IF(LSTRUC.EQ.'BAIER   ') ISTRUC=2
624         IF(LSTRUC.EQ.'EICHTEN ') ISTRUC=3
625         IF(LSTRUC.EQ.'DUKE    '.OR.LSTRUC.EQ.'DO      ') ISTRUC=4
626         IF(LSTRUC.EQ.'CTEQ2L  ') ISTRUC=5
627         IF(LSTRUC.EQ.'CTEQ    '.OR.LSTRUC.EQ.'CTEQ3L  ') ISTRUC=6
628         IF(ISTRUC.EQ.0) GOTO 69
629         WRITE(ITCOM,*) LSTRUC
630         LOC(33)=NSEL
631         GO TO 1000
632       ENDIF
633 C
634 C          Keyword NPOMERON
635       IF(WORD.EQ.'NPOMERON') THEN
636         WRITE(ITCOM,3) WORD
637    93   PRINT*,' Give min and max; allowed range is 1 to 20.'
638         READ*,MNPOM,MXPOM
639         IF(MNPOM.LT.1.OR.MNPOM.GT.MXPOM.OR.MXPOM.GT.LIMPOM)
640      1  GO TO 93
641         WRITE(ITCOM,*)MNPOM,MXPOM
642         LOC(34)=NSEL
643         GO TO 1000
644       ENDIF
645 C
646 C          Keyword FORCE
647       IF(WORD.EQ.'FORCE   ') THEN
648         PRINT*,' Force decay of a particle and its anti-particle.'
649         PRINT*,' Use FORCE1 if you want to decay only one of them.'
650         PRINT*,' Give a particle IDENT and IDENTs for decay mode.'
651         PRINT*,' Max. number of decay products is 5.'
652         NFTEMP=NFTEMP+2
653         IF(NFTEMP.LE.MXFORC) THEN
654           WRITE(ITCOM,3) WORD
655           DO 72 K=1,5
656   72      MFORCE(K,NFTEMP)=0
657           READ*,IFORCE(NFTEMP),(MFORCE(K,NFTEMP),K=1,5)
658           WRITE(ITCOM,*)IFORCE(NFTEMP),(MFORCE(K,NFTEMP),K=1,5)
659           LOC(35)=NSEL
660         ELSE
661           PRINT*,' You exceeded the maximum allowed forced decays.'
662         ENDIF
663         GO TO 1000
664       ENDIF
665 C
666 C          Keyword FORCE1
667       IF(WORD.EQ.'FORCE1  ') THEN
668         PRINT*,' Force decay of a particle.'
669         PRINT*,' Give a particle IDENT and IDENTs for decay mode.'
670         PRINT*,' Max. number of decay products is 5.'
671         NFTEMP=NFTEMP+1
672         IF(NFTEMP.LE.MXFORC) THEN
673           WRITE(ITCOM,3) WORD
674           DO 73 K=1,5
675   73      MFORCE(K,NFTEMP)=0
676           READ*,IFORCE(NFTEMP),(MFORCE(K,NFTEMP),K=1,5)
677           WRITE(ITCOM,*)IFORCE(NFTEMP),(MFORCE(K,NFTEMP),K=1,5)
678           LOC(35)=NSEL
679         ELSE
680           PRINT*,' You exceeded the maximun allowed forced decays.'
681         ENDIF
682         GO TO 1000
683       ENDIF
684 C
685 C          Keyword HMASSES - also see HMASS
686       IF(WORD.EQ.'HMASSES ') THEN
687         WRITE(ITCOM,3) WORD
688         PRINT*,
689      $  ' Give Higgs masses (HIGGS,H10,H20,H30,H40,H1+,H2+,H1++,H2++)'
690         CALL FLAVOR(80,I1,I2,I3,J1,INDEX)
691         READ*,(AMLEP(INDEX+K),K=1,9)
692         WRITE(ITCOM,*)(AMLEP(INDEX+K),K=1,9)
693         LOC(36)=NSEL
694         GO TO 1000
695       ENDIF
696 C
697 C          Keywords WMODE1,WMODE2
698       IF(WORD.EQ.'WMODE1  '.OR.WORD.EQ.'WMODE2  ') THEN
699         WRITE(ITCOM,3) WORD
700 95      PRINT 6001
701         PRINT 6003, LIST
702         IF(WORD.EQ.'WMODE1  ') IJ=1
703         IF(WORD.EQ.'WMODE2  ') IJ=2
704         READ*,(WWTYP(K,IJ),K=1,25)
705         DO 372 K=1,25
706 372     IF(WWTYP(K,IJ).NE.BLANK) NWWTYP(IJ)=NWWTYP(IJ)+1
707         IF(SETTYP(0)) GOTO 95
708         WRITE(ITCOM,4)(WWTYP(K,IJ),K=1,NWWTYP(IJ))
709         IF(NWWTYP(IJ).LT.25) WRITE(ITCOM,*) '/'
710         LOC(37)=NSEL
711         GO TO 1000
712       ENDIF
713 C
714 C          Keyword NOEVOLVE
715       IF(WORD.EQ.'NOEVOLVE') THEN
716         WRITE(ITCOM,3) WORD
717         PRINT 572
718         READ 571,NOEVOL
719         WRITE(ITCOM,571) NOEVOL
720         LOC(38)=NSEL
721         GO TO 1000
722       ENDIF
723 C
724 C          Keyword NOHADRON
725       IF(WORD.EQ.'NOHADRON') THEN
726         WRITE(ITCOM,3) WORD
727         PRINT 572
728         READ 571,NOEVOL
729         WRITE(ITCOM,571) NOEVOL
730         LOC(39)=NSEL
731         GO TO 1000
732       ENDIF
733 C
734 C          Keyword GAUGINO
735       IF(WORD.EQ.'GAUGINO ') THEN
736         WRITE(ITCOM,3) WORD
737         PRINT*,' Give masses (GLSS,GMSS,W+SS,W-SS)'
738         CALL FLAVOR(29,I1,I2,I3,J1,IDG1)
739         CALL FLAVOR(30,I1,I2,I3,J1,IDG2)
740         CALL FLAVOR(39,I1,I2,I3,J1,IDG3)
741         CALL FLAVOR(40,I1,I2,I3,J1,IDG4)
742         READ*, AMLEP(IDG1),AMLEP(IDG2),AMLEP(IDG3),AMLEP(IDG4)
743         WRITE(ITCOM,*) AMLEP(IDG1),AMLEP(IDG2),AMLEP(IDG3),AMLEP(IDG4)
744         LOC(40)=NSEL
745         GO TO 1000
746       ENDIF
747 C
748 C          Keyword SQUARK
749       IF(WORD.EQ.'SQUARK  ') THEN
750         WRITE(ITCOM,3) WORD
751         PRINT*,' Give masses (UPSS,DNSS,STSS,CHSS,BTSS,TPSS).'
752         CALL FLAVOR(21,I1,I2,I3,J1,IDXQK)
753         READ*, (AMLEP(IDXQK+K-1),K=1,6)
754         WRITE(ITCOM,*) (AMLEP(IDXQK+K-1),K=1,6)
755         LOC(41)=NSEL
756         GO TO 1000
757       ENDIF
758 C
759 C          Keyword SLEPTON
760       IF(WORD.EQ.'SLEPTON ') THEN
761         WRITE(ITCOM,3) WORD
762         PRINT*,' Give masses (NUESS,E-SS,NUMSS,MU-SS,NUTSS,T-SS).'
763         CALL FLAVOR(31,I1,I2,I3,J1,IDXLEP)
764         READ*, (AMLEP(IDXLEP+K-1),K=1,6)
765         WRITE(ITCOM,*) (AMLEP(IDXLEP+K-1),K=1,6)
766         LOC(42)=NSEL
767         GO TO 1000
768       ENDIF
769 C
770 C          Keyword NSIGMA
771       IF(WORD.EQ.'NSIGMA  ') THEN
772         WRITE(ITCOM,3) WORD
773         PRINT 584
774         READ*,NSIGMA
775         WRITE(ITCOM,*) NSIGMA
776         LOC(43)=NSEL
777         GO TO 1000
778       ENDIF
779 C
780 C          Keyword XGENSS
781       IF(WORD.EQ.'XGENSS  ') THEN
782         WRITE(ITCOM,3) WORD
783         PRINT 584
784         READ*, XGENSS(9),(XGENSS(KK),KK=1,8)
785         WRITE(ITCOM,*) XGENSS(9),(XGENSS(KK),KK=1,8)
786         LOC(44)=NSEL
787         GO TO 1000
788       ENDIF
789 C
790 C          Keyword HMASS - just standard Higgs
791       IF(WORD.EQ.'HMASS   ') THEN
792         WRITE(ITCOM,3) WORD
793         PRINT 584
794         CALL FLAVOR(81,I1,I2,I3,J1,INDEX)
795         READ *, AMLEP(INDEX)
796         WRITE(ITCOM,*) AMLEP(INDEX)
797         LOC(45)=NSEL
798         GO TO 1000
799       ENDIF
800 C
801 C          Keywords WPMODE, WMMODE, Z0MODE
802       IF(WORD.EQ.'WPMODE  '.OR.WORD.EQ.'WMMODE  '
803      $.OR.WORD.EQ.'Z0MODE  ') THEN
804         IF(WORD.EQ.'WPMODE  ') IJ=1
805         IF(WORD.EQ.'WMMODE  ') IJ=2
806         IF(WORD.EQ.'Z0MODE  ') IJ=3
807         WRITE(ITCOM,3) WORD
808         PRINT 6001
809         PRINT 6003, LIST
810         READ *, (WMODES(K,IJ),K=1,25)
811         DO 463 K=1,25
812 463     IF(WMODES(K,IJ).NE.BLANK) NWMODE(IJ)=NWMODE(IJ)+1
813         WRITE(ITCOM,*) (WMODES(K,IJ),K=1,NWMODE(IJ))
814         LOC(46)=NSEL
815         GO TO 1000
816       ENDIF
817 C
818 C          Keyword WMASS
819       IF(WORD.EQ.'WMASS   ') THEN
820         PRINT 584
821         READ*, AMW,AMZ
822         WRITE(ITCOM,*) AMW,AMZ
823         WMASS(1)=0.
824         WMASS(2)=AMW
825         WMASS(3)=AMW
826         WMASS(4)=AMZ
827         CALL FLAVOR(80,I1,I2,I3,J,INDEX)
828         AMLEP(INDEX)=AMW
829         CALL FLAVOR(90,I1,I2,I3,J,INDEX)
830         AMLEP(INDEX)=AMZ
831         LOC(47)=NSEL
832         GO TO 1000
833       ENDIF
834 C
835 C          Keyword NEVOLVE
836       IF(WORD.EQ.'NEVOLVE ') THEN
837         WRITE(ITCOM,3) WORD
838         PRINT 584
839         READ*,NEVOLV
840         WRITE(ITCOM,*) NEVOLV
841         LOC(48)=NSEL
842         GO TO 1000
843       ENDIF
844 C
845 C          Keyword NHADRON
846       IF(WORD.EQ.'NHADRON ') THEN
847         WRITE(ITCOM,3) WORD
848         PRINT 584
849         READ*,NFRGMN
850         WRITE(ITCOM,*)NFRGMN
851         LOC(49)=NSEL
852         GO TO 1000
853       ENDIF
854 C
855 C          Keyword TCMASS
856       IF(WORD.EQ.'TCMASS  ') THEN
857         WRITE(ITCOM,3) WORD
858         PRINT 584
859         READ*,TCMRHO,TCGRHO
860         WRITE(ITCOM,*) TCMRHO,TCGRHO
861         LOC(50)=NSEL
862         GO TO 1000
863       ENDIF
864 C
865 C          Keyword MSSMA
866       IF(WORD.EQ.'MSSMA   ') THEN
867         WRITE(ITCOM,3) WORD
868         PRINT 585
869         READ *, XGLSS,XMUSS,XHASS,XTBSS
870         WRITE(ITCOM,*) XGLSS,XMUSS,XHASS,XTBSS
871         LOC(51)=NSEL
872         GOMSSM=.TRUE.
873         GO TO 1000
874       ENDIF
875 C
876 C          Keyword MSSMB
877       IF(WORD.EQ.'MSSMB   ') THEN
878         WRITE(ITCOM,3) WORD
879         PRINT 586
880         READ*, XQ1SS,XDRSS,XURSS,XL1SS,XERSS
881         WRITE(ITCOM,*) XQ1SS,XDRSS,XURSS,XL1SS,XERSS
882         LOC(52)=NSEL
883         GOMSSM=.TRUE.
884         GO TO 1000
885       ENDIF
886 C
887 C          Keyword MSSMC
888       IF(WORD.EQ.'MSSMC   ') THEN
889         WRITE(ITCOM,3) WORD
890         PRINT 587
891         READ*, XQ3SS,XBRSS,XTRSS,XL3SS,XTARSS,XATSS,XABSS,XATASS
892         WRITE(ITCOM,*)XQ3SS,XBRSS,XTRSS,XL3SS,XTARSS,XATSS,XABSS,XATASS
893         LOC(53)=NSEL
894         GOMSSM=.TRUE.
895         GO TO 1000
896       ENDIF
897 C
898 C          Keyword PDFLIB: parameters for PDFLIB
899 #if defined(CERNLIB_PDFLIB)
900       IF(WORD.EQ.'PDFLIB  ') THEN
901         WRITE(ITCOM,3) WORD
902         DO 541 I=1,20
903           PDFPAR(I)='                    '
904           PDFVAL(I)=0
905 541     CONTINUE
906         PRINT 588
907         READ*, (PDFPAR(I),PDFVAL(I),I=1,20)
908         DO 542 I=1,20
909           IF(PDFPAR(I).NE.'                    ') THEN
910             WRITE(ITCOM,5401) PDFPAR(I)
911 5401        FORMAT(1H',A,1H')
912             WRITE(ITCOM,*) PDFVAL(I)
913           ENDIF
914 542     CONTINUE
915         WRITE(ITCOM,*) '/'
916         ISTRUC=-999
917         LOC(54)=NSEL
918         GO TO 1000
919       ENDIF
920 #endif
921 C
922 C          Keyword SUGRA
923       IF(WORD.EQ.'SUGRA   ') THEN
924         WRITE(ITCOM,3) WORD
925         PRINT 589
926         READ*, XM0SU,XMHSU,XA0SU,XTGBSU,XSMUSU
927         WRITE(ITCOM,*) XM0SU,XMHSU,XA0SU,XTGBSU,XSMUSU
928         LOC(55)=NSEL
929         GOMSSM=.TRUE.
930         GOSUG=.TRUE.
931         GO TO 1000
932       ENDIF
933 C
934 C          Keyword HTYPE
935       IF(WORD.EQ.'HTYPE   ') THEN
936         PRINT*,' Enter Higgs type (HL0, HH0, HA0) in single quotes'
937         READ*, HTYPE
938         IHTYPE=0
939         IF(HTYPE.EQ.'HL0     ') IHTYPE=82
940         IF(HTYPE.EQ.'HH0     ') IHTYPE=83
941         IF(HTYPE.EQ.'HA0     ') IHTYPE=84
942         IF(IHTYPE.EQ.0) THEN
943           PRINT*, 'Invalid Higgs type - try again'
944           GO TO 1000
945         ENDIF
946         WRITE(ITCOM,3) WORD
947         WRITE(ITCOM,*) HTYPE
948         LOC(56)=NSEL
949         GO TO 1000
950       ENDIF
951 C
952 C          Keyword EPOL
953       IF(WORD.EQ.'EPOL    ') THEN
954         WRITE(ITCOM,3) WORD
955         PRINT 590
956         READ*,PLEM,PLEP
957         WRITE(ITCOM,*) PLEM,PLEP
958         LOC(57)=NSEL
959         GO TO 1000
960       ENDIF
961 C
962 C          Keyword MSSMD
963       IF(WORD.EQ.'MSSMD   ') THEN
964         WRITE(ITCOM,3) WORD
965         PRINT 591
966         READ*,XQ2SS,XSRSS,XCRSS,XL2SS,XMRSS
967         WRITE(ITCOM,*) XQ2SS,XSRSS,XCRSS,XL2SS,XMRSS
968         LOC(58)=NSEL
969         GO TO 1000
970       ENDIF
971 C
972 C          Keyword MSSME
973       IF(WORD.EQ.'MSSME   ') THEN
974         WRITE(ITCOM,3) WORD
975         PRINT 592
976         READ*, XM1SS,XM2SS
977         WRITE(ITCOM,*) XM1SS,XM2SS
978         LOC(59)=NSEL
979         GO TO 100
980       ENDIF
981 C
982 C          Keyword GMSB
983       IF(WORD.EQ.'GMSB    ') THEN
984         WRITE(ITCOM,3) WORD
985         PRINT 593
986         READ*, XLAMGM,XMESGM,XN5GM,XTGBSU,XSMUSU,XCMGV
987         WRITE(ITCOM,*) XLAMGM,XMESGM,XN5GM,XTGBSU,XSMUSU,XCMGV
988         LOC(60)=NSEL
989         GOMSSM=.TRUE.
990         GOGMSB=.TRUE.
991         GO TO 1000
992       ENDIF
993 C
994 C          Keyword NUSUG1: optional GUT scale gaugino masses
995       IF(WORD.EQ.'NUSUG1   ') THEN
996         WRITE(ITCOM,3) WORD
997         PRINT 594
998         READ*, XNUSUG(1),XNUSUG(2),XNUSUG(3)
999         WRITE(ITCOM,*) XNUSUG(1),XNUSUG(2),XNUSUG(3)
1000         LOC(61)=NSEL
1001         GO TO 100
1002       ENDIF
1003 C
1004 C          Keyword NUSUG2: optional GUT scale A terms
1005       IF(WORD.EQ.'NUSUG2   ') THEN
1006         WRITE(ITCOM,3) WORD
1007         PRINT 595
1008         READ*, XNUSUG(6),XNUSUG(5),XNUSUG(4)
1009         WRITE(ITCOM,*) XNUSUG(6),XNUSUG(5),XNUSUG(4)
1010         LOC(62)=NSEL
1011         GO TO 100
1012       ENDIF
1013 C
1014 C          Keyword NUSUG3: optional GUT scale Higgs masses
1015       IF(WORD.EQ.'NUSUG3   ') THEN
1016         WRITE(ITCOM,3) WORD
1017         PRINT 596
1018         READ*, XNUSUG(7),XNUSUG(8)
1019         WRITE(ITCOM,*) XNUSUG(7),XNUSUG(8)
1020         LOC(63)=NSEL
1021         GO TO 100
1022       ENDIF
1023 C
1024 C          Keyword NUSUG4: optional GUT scale 1st/2nd gen. masses
1025       IF(WORD.EQ.'NUSUG4   ') THEN
1026         WRITE(ITCOM,3) WORD
1027         PRINT 597
1028         READ*, XNUSUG(13),XNUSUG(11),XNUSUG(12),XNUSUG(10)
1029      $,XNUSUG(9)
1030         WRITE(ITCOM,*) XNUSUG(13),XNUSUG(11),XNUSUG(12),XNUSUG(10)
1031      $,XNUSUG(9)
1032         LOC(64)=NSEL
1033         GO TO 100
1034       ENDIF
1035 C
1036 C          Keyword NUSUG5: optional GUT scale 3rd gen. masses
1037       IF(WORD.EQ.'NUSUG5   ') THEN
1038         WRITE(ITCOM,3) WORD
1039         PRINT 598
1040         READ*, XNUSUG(18),XNUSUG(16),XNUSUG(17),XNUSUG(15)
1041      $,XNUSUG(14)
1042         WRITE(ITCOM,*) XNUSUG(18),XNUSUG(16),XNUSUG(17),XNUSUG(15)
1043      $,XNUSUG(14)
1044         LOC(65)=NSEL
1045         GO TO 100
1046       ENDIF
1047 C
1048 C          Keyword NOGRAV: No gravitino decays
1049       IF(WORD.EQ.'NOGRAV  ') THEN
1050         WRITE(ITCOM,3) WORD
1051         PRINT 572
1052         READ 571,NOGRAV
1053         WRITE(ITCOM,571) NOGRAV
1054         LOC(66)=NSEL
1055         GO TO 1000
1056       ENDIF
1057 C
1058 C          Keyword MGVTNO: Sets the gravitino mass
1059       IF(WORD.EQ.'MGVTNO  ') THEN
1060         WRITE(ITCOM,3) WORD
1061         PRINT 599
1062         READ*, XMGVTO
1063         WRITE(ITCOM,*) XMGVTO
1064         LOC(67)=NSEL
1065         GO TO 1000
1066       ENDIF
1067 C
1068 C          Keyword AL3UNI: Impose alpha_s unification at M_GUT
1069       IF(WORD.EQ.'AL3UNI  ') THEN
1070         WRITE(ITCOM,3) WORD
1071         PRINT 600
1072         READ*, AL3UNI
1073         WRITE(ITCOM,*) AL3UNI
1074         LOC(68)=NSEL
1075         GO TO 1000
1076       ENDIF
1077 C
1078 C          Keyword GMSB2: additional GMSB parameters
1079       IF(WORD.EQ.'GMSB2   ') THEN
1080        WRITE(ITCOM,3) WORD
1081        PRINT 601
1082        READ*, XRSLGM,XDHDGM,XDHUGM,XDYGM,XN51GM,XN52GM,XN53GM
1083        WRITE(ITCOM,*) XRSLGM,XDHDGM,XDHUGM,XDYGM,XN51GM,XN52GM,XN53GM
1084        LOC(69)=NSEL
1085        GO TO 1000
1086       ENDIF
1087 C
1088 C          Keyword EEBREM: do bremsstralung
1089       IF(WORD.EQ.'EEBREM  ') THEN
1090        WRITE(ITCOM,3) WORD
1091        PRINT 602
1092        READ*, RSHMIN,RSHMAX
1093        WRITE(ITCOM,*) RSHMIN,RSHMAX
1094        IBREM=.TRUE.
1095        LOC(70)=NSEL
1096        GO TO 1000
1097       ENDIF
1098 C
1099 C          Keyword EEBEAM: do beamstralung
1100       IF(WORD.EQ.'EEBEAM   ') THEN
1101        WRITE(ITCOM,3) WORD
1102        PRINT 603
1103        READ*, RSHMIN,RSHMAX,UPSLON,SIGZ
1104        WRITE(ITCOM,*) RSHMIN,RSHMAX,UPSLON,SIGZ
1105        IBREM=.TRUE.
1106        IBEAM=.TRUE.
1107        LOC(71)=NSEL
1108        GO TO 1000
1109       ENDIF
1110 C
1111 C          Keyword QMKKG (QMW for EXTRADIM)
1112       IF(WORD.EQ.'QMKKG   ') THEN
1113         WRITE(ITCOM,3) WORD
1114         PRINT*,'KK graviton mass limits?'
1115         READ*, QMIN,QMAX
1116         WRITE(ITCOM,*) QMIN,QMAX
1117         LOC(19)=NSEL
1118         GO TO 1000
1119       ENDIF
1120 C
1121 C          Keyword QTKKG (QTW for EXTRADIM)
1122       IF(WORD.EQ.'QTKKG   ') THEN
1123         WRITE(ITCOM,3) WORD
1124         PRINT*,'KK graviton qt limits?'
1125         READ*, QTMIN,QTMAX
1126         WRITE(ITCOM,*) QTMIN,QTMAX
1127         LOC(20)=NSEL
1128         GO TO 1000
1129       ENDIF
1130 C
1131 C          Keyword EXTRAD for EXTRADIM
1132       IF(WORD.EQ.'EXTRAD  ') THEN
1133         WRITE(ITCOM,3) WORD
1134         PRINT*,'KK delta n, mass, UVCUT flag?'
1135         READ*, NEXTRAD,MASSD,UVCUT
1136         WRITE(ITCOM,*) NEXTRAD,MASSD,UVCUT
1137         LOC(72)=NSEL
1138         GO TO 1000
1139       ENDIF
1140 C
1141 C          Keyword MIJLIM
1142       IF(WORD.EQ.'MIJLIM  ') THEN
1143         WRITE(ITCOM,3) WORD
1144         PRINT*,'Dijet pair mass limits i,j,min,max?'
1145         READ*, JLIM1,JLIM2,AMLIM1,AMLIM2
1146         WRITE(ITCOM,*) JLIM1,JLIM2,AMLIM1,AMLIM2
1147         LOC(73)=NSEL
1148         GO TO 1000
1149       ENDIF
1150 C
1151 C          Keyword MTOT
1152       IF(WORD.EQ.'MTOT    ') THEN
1153         WRITE(ITCOM,3) WORD
1154         PRINT*,'Total mass limits?'
1155         READ*, EHMGMN,EHMGMX
1156         WRITE(ITCOM,*) EHMGMN,EHMGMX
1157         LOC(74)=NSEL
1158         GO TO 1000
1159       ENDIF
1160 C
1161 C          Keyword SUGRHN: enter right-neutrino parameters
1162       IF(WORD.EQ.'SUGRHN   ') THEN
1163        WRITE(ITCOM,3) WORD
1164        PRINT 604
1165        READ*, XMN3NR,XMAJNR,XANSS,XNRSS
1166        WRITE(ITCOM,*) XMN3NR,XMAJNR,XANSS,XNRSS
1167        LOC(75)=NSEL
1168        GO TO 1000
1169       ENDIF
1170 C
1171 C          Keyword AMSB
1172       IF(WORD.EQ.'AMSB    ') THEN
1173         WRITE(ITCOM,3) WORD
1174         PRINT 605
1175         READ*, XM0SU,XMHSU,XTGBSU,XSMUSU
1176         WRITE(ITCOM,*) XM0SU,XMHSU,XTGBSU,XSMUSU
1177         LOC(76)=NSEL
1178         GOMSSM=.TRUE.
1179         GOSUG=.TRUE.
1180         GOAMSB=.TRUE.
1181         GO TO 1000
1182       ENDIF
1183 C
1184 C          Keyword SSBCSC
1185       IF(WORD.EQ.'SSBCSC  ') THEN
1186         WRITE(ITCOM,3) WORD
1187         PRINT 606
1188         READ*, XSBCS
1189         WRITE(ITCOM,*) XSBCS
1190         LOC(77)=NSEL
1191         GO TO 1000
1192       ENDIF
1193 C
1194 C          None of the above
1195 C
1196       PRINT 99
1197       GO TO 1000
1198 C
1199   562 FORMAT(' Give jet limits: min1,max1,min2,max2, etc.',
1200      1' Terminate list with a /.',/,
1201      2' To fix a variable give only minimum value.',/)
1202   563 FORMAT(' Allowed range is ',F9.2,' - ',F9.2)
1203   572 FORMAT('  T or F?')
1204   584 FORMAT(' Value?')
1205   585 FORMAT(' Give M(gluino), mu, M(ha), tan(beta)')
1206   586 FORMAT(' Give M(ul), M(dr), M(ur), M(el), M(er), ')
1207   587 FORMAT(' Give M(tl), M(br), M(tr), M(taul), M(taur), A(t),',
1208      $' A(b), A(tau)')
1209   588 FORMAT(' Give PDFLIB keyword, value, ...')
1210   589 FORMAT(' Give M_0, M_(1/2), A_0, tan(beta), sgn(mu)')
1211   590 FORMAT(' Give polarizations P_L(e-), P_L(e+)')
1212   591 FORMAT(' Give optional M(cl), M(sr), M(cr), M(mul), M(mur), ')
1213   592 FORMAT(' Give optional M_1, M_2')
1214   593 FORMAT(' Give LAM, M_MES, XN5, tan(beta), sgn(mu), C_mgv')
1215   594 FORMAT(' Give optional GUT scale M_1, M_2, M_3')
1216   595 FORMAT(' Give optional GUT scale A_t, A_b, A_tau')
1217   596 FORMAT(' Give optional GUT scale m_Hd, m_Hu')
1218   597 FORMAT(' Give optional M(ul), M(dr), M(ur), M(el), M(er), ')
1219   598 FORMAT(' Give optional M(tl), M(br), M(tr), M(Ll), M(Lr), ')
1220   599 FORMAT(' Enter optional m(gravitino), ')
1221   600 FORMAT(' Enter .TRUE. if alpha_s unification is wanted:, ')
1222   601 FORMAT(' Enter Rsl,dmH_d,dmH_u,RDY,n5_1,n5_2,n5_3: ')
1223   602 FORMAT(' Enter RSHMIN,RSHMAX for bremsstrahlung: ')
1224   603 FORMAT(' Enter RSHMIN,RSHMAX,UPSLON,SIGZ for beamstrahlung: ')
1225   604 FORMAT(' Enter M_N3, M_MAJ, A_N, M_NRSS for RHN model: ')
1226   605 FORMAT(' Give M_0, M_(3/2), tan(beta), sgn(mu)')
1227   606 FORMAT(' Enter Q_max= max scale choice for SUSY BCs')
1228 C
1229 C          CHECK FOR ERRORS AND OVERLAPPING VARIABLES.
1230 C          PRINT ERROR MESSAGE OR WARNINGS
1231   101 CONTINUE
1232       IF(LOC(2)*LOC(5).NE.0) PRINT 2001
1233       IF(LOC(2)*LOC(6).NE.0) PRINT 2001
1234       IF(LOC(15).NE.0.OR.LOC(37).NE.0) DUMY=SETTYP(0)
1235       DO 120 I=1,17
1236       I1=NLAP(1,I)
1237       I2=NLAP(2,I)
1238       I3=NLAP(3,I)
1239       IF(LOC(I1)*LOC(I2)*LOC(I3).NE.0) PRINT 1001
1240   120 CONTINUE
1241  1001 FORMAT(//,2X,'YOU HAVE GIVEN LIMITS FOR AN OVERLAPPING SET OF',
1242      C  ' VARIABLES. SET MINIMIZING PPERP INTERVAL WILL BE USED')
1243  2001 FORMAT(//,2X,' YOU CANNOT GIVE LIMITS FOR BOTH THETA AND Y. MAKE',
1244      C  ' UP YOUR MIND. JOB TERMINATED')
1245  2003 FORMAT(/,'  YOU CANNOT RUN WS AND Z0 OR GAMMAS AT THE SAME TIME')
1246  2004 FORMAT(//,'  PARAMETER OUT OF RANGE. ')
1247       GOTO 1111
1248   999 REWIND ITCOM
1249       RETURN
1250       END