1      SUBROUTINE XNAM3(IOP)
2C
3C***  READ OR WRITE NAMELIST BODY
4C
5      COMMON /BODYI/  A4(129)
6      COMMON /CONSNT/ PI,DEG,UNUSED,RAD,KAND
7      EQUIVALENCE (TYPE,A4(127))
8C
9      INTEGER BODY
10      LOGICAL EOF
11C
12      DIMENSION LEN4(15),LDM4(15),BODY(44),LOC4(15)
13      DIMENSION NLNAME(4)
14      DATA NLNAME / 4HB   ,4HO   ,4HD   ,4HY   /
15      DATA LEN4 / 2,4*1,2,2,5,5,3,3,2,5,6,5 /
16      DATA LDM4 / 1,6*20,8*1 /
17      DATA LOC4 / 1,2,22,42,62,82,102,122,123,124,125,126,127,128,
18     1            129 /
19      DATA BODY /     4HN   ,4HX   ,4HX   ,4HS   ,4HP   ,4HR   ,
20     1  4HZ   ,4HU   ,4HZ   ,4HL   ,4HB   ,4HN   ,4HO   ,4HS   ,
21     2  4HE   ,4HB   ,4HT   ,4HA   ,4HI   ,4HL   ,4HB   ,4HL   ,
22     3  4HN   ,4HB   ,4HL   ,4HA   ,4HD   ,4HS   ,4HI   ,4HT   ,
23     4  4HY   ,4HP   ,4HE   ,4HM   ,4HE   ,4HT   ,4HH   ,4HO   ,
24     5  4HD   ,4HE   ,4HL   ,4HL   ,4HI   ,4HP   /
25C
26C**   IF IOP EQUAL ZERO READ NAMELIST BODY
27C**   IF IOP EQUAL ONE WRITE NAMELIST BODY
28C
29      IF(IOP .EQ. 0)
30     1  CALL NAMER(KAND,9,NLNAME,4,BODY,44,LEN4,15,LDM4,A4,129,
31     2              LOC4,EOF)
32      IF(IOP .EQ. 1)
33     1  CALL NAMEW (KAND,6,NLNAME,4,BODY,44,LEN4,15,LDM4,A4,129,LOC4)
34C
35C
36C  BODY INPUTS ARE TO SET AFTER ALL BODY NAMELISTS HAVE
37C  BEEN READ.  ONLY THREE TYPES OF INPUTS WILL BE
38C  PERMITTED, AS FOLLOWS
39C    (1) X AND R
40C    (2) X AND S
41C    (3) X, R, S AND P
42C
43C  THIS CHANGE IS MADE TO PREVENT USER PROBLEMS EVEN THOUGH
44C  ONLY TWO OF R, S OR P ARE REQUIRED
45C
46      IF(TYPE .EQ. UNUSED) TYPE=2.0
47      IF(TYPE .LT. 1.0) TYPE=1.0
48      IF(TYPE .GT. 3.0) TYPE=3.0
49      RETURN
50      END
51