1      SUBROUTINE DQAG(F,A,B,EPSABS,EPSREL,KEY,RESULT,ABSERR,NEVAL,IER,
2     1                LIMIT,LENW,LAST,IWORK,WORK)
3C
4C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
5C   DATAPLOT USAGE.
6C
7C***BEGIN PROLOGUE  DQAG
8C***DATE WRITTEN   800101   (YYMMDD)
9C***REVISION DATE  830518   (YYMMDD)
10C***CATEGORY NO.  H2A1A1
11C***KEYWORDS  AUTOMATIC INTEGRATOR,GAUSS-KRONROD,GENERAL-PURPOSE,
12C             GLOBALLY ADAPTIVE,INTEGRAND EXAMINATOR
13C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
14C             K. U. LEUVEN
15C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
16C             K. U. LEUVEN
17C***PURPOSE  The routine calculates an approximation result to a given
18C            definite integral I = integral of F over (A,B),
19C            hopefully satisfying following claim for accuracy
20C            ABS(I-RESULT)LE.MAX(EPSABS,EPSREL*ABS(I)).
21C***DESCRIPTION
22C
23C        Computation of a definite integral
24C        Standard fortran subroutine
25C        Double precision version
26C
27C            F      - Double precision
28C                     Function subprogam defining the integrand
29C                     Function F(X). The actual name for F needs to be
30C                     Declared E X T E R N A L in the driver program.
31C
32C            A      - Double precision
33C                     Lower limit of integration
34C
35C            B      - Double precision
36C                     Upper limit of integration
37C
38C            EPSABS - Double precision
39C                     Absolute accoracy requested
40C            EPSREL - Double precision
41C                     Relative accuracy requested
42C                     If  EPSABS.LE.0
43C                     And EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
44C                     The routine will end with IER = 6.
45C
46C            KEY    - Integer
47C                     Key for choice of local integration rule
48C                     A GAUSS-KRONROD PAIR is used with
49C                       7 - 15 POINTS If KEY.LT.2,
50C                      10 - 21 POINTS If KEY = 2,
51C                      15 - 31 POINTS If KEY = 3,
52C                      20 - 41 POINTS If KEY = 4,
53C                      25 - 51 POINTS If KEY = 5,
54C                      30 - 61 POINTS If KEY.GT.5.
55C
56C         ON RETURN
57C            RESULT - Double precision
58C                     Approximation to the integral
59C
60C            ABSERR - Double precision
61C                     Estimate of the modulus of the absolute error,
62C                     Which should EQUAL or EXCEED ABS(I-RESULT)
63C
64C            NEVAL  - Integer
65C                     Number of integrand evaluations
66C
67C            IER    - Integer
68C                     IER = 0 Normal and reliable termination of the
69C                             routine. It is assumed that the requested
70C                             accuracy has been achieved.
71C                     IER.GT.0 Abnormal termination of the routine
72C                             The estimates for RESULT and ERROR are
73C                             Less reliable. It is assumed that the
74C                             requested accuracy has not been achieved.
75C                      ERROR MESSAGES
76C                     IER = 1 Maximum number of subdivisions allowed
77C                             has been achieved. One can allow more
78C                             subdivisions by increasing the value of
79C                             LIMIT (and taking the according dimension
80C                             adjustments into account). HOWEVER, If
81C                             this yield no improvement it is advised
82C                             to analyze the integrand in order to
83C                             determine the integration difficulaties.
84C                             If the position of a local difficulty can
85C                             be determined (I.E.SINGULARITY,
86C                             DISCONTINUITY WITHIN THE INTERVAL) One
87C                             will probably gain from splitting up the
88C                             interval at this point and calling the
89C                             INTEGRATOR on the SUBRANGES. If possible,
90C                             AN APPROPRIATE SPECIAL-PURPOSE INTEGRATOR
91C                             should be used which is designed for
92C                             handling the type of difficulty involved.
93C                         = 2 The occurrence of roundoff error is
94C                             detected, which prevents the requested
95C                             tolerance from being achieved.
96C                         = 3 Extremely bad integrand behaviour occurs
97C                             at some points of the integration
98C                             interval.
99C                         = 6 The input is invalid, because
100C                             (EPSABS.LE.0 AND
101C                              EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28))
102C                             OR LIMIT.LT.1 OR LENW.LT.LIMIT*4.
103C                             RESULT, ABSERR, NEVAL, LAST are set
104C                             to zero.
105C                             EXCEPT when LENW is invalid, IWORK(1),
106C                             WORK(LIMIT*2+1) and WORK(LIMIT*3+1) are
107C                             set to zero, WORK(1) is set to A and
108C                             WORK(LIMIT+1) to B.
109C
110C         DIMENSIONING PARAMETERS
111C            LIMIT - Integer
112C                    Dimensioning parameter for IWORK
113C                    Limit determines the maximum number of subintervals
114C                    in the partition of the given integration interval
115C                    (A,B), LIMIT.GE.1.
116C                    If LIMIT.LT.1, the routine will end with IER = 6.
117C
118C            LENW  - Integer
119C                    Dimensioning parameter for work
120C                    LENW must be at least LIMIT*4.
121C                    IF LENW.LT.LIMIT*4, the routine will end with
122C                    IER = 6.
123C
124C            LAST  - Integer
125C                    On return, LAST equals the number of subintervals
126C                    produced in the subdiviosion process, which
127C                    determines the number of significant elements
128C                    actually in the WORK ARRAYS.
129C
130C         WORK ARRAYS
131C            IWORK - Integer
132C                    Vector of dimension at least limit, the first K
133C                    elements of which contain pointers to the error
134C                    estimates over the subintervals, such that
135C                    WORK(LIMIT*3+IWORK(1)),... , WORK(LIMIT*3+IWORK(K))
136C                    form a decreasing sequence with K = LAST If
137C                    LAST.LE.(LIMIT/2+2), and K = LIMIT+1-LAST otherwise
138C
139C            WORK  - Double precision
140C                    Vector of dimension at least LENW
141C                    on return
142C                    WORK(1), ..., WORK(LAST) contain the left end
143C                    points of the subintervals in the partition of
144C                     (A,B),
145C                    WORK(LIMIT+1), ..., WORK(LIMIT+LAST) contain the
146C                     right end points,
147C                    WORK(LIMIT*2+1), ..., WORK(LIMIT*2+LAST) contain
148C                     the integral approximations over the subintervals,
149C                    WORK(LIMIT*3+1), ..., WORK(LIMIT*3+LAST) contain
150C                     the error estimates.
151C***REFERENCES  (NONE)
152C***ROUTINES CALLED  DQAGE,XERROR
153C***END PROLOGUE  DQAG
154C
155      INCLUDE 'DPCOMC.INC'
156      INCLUDE 'DPCOP2.INC'
157C
158      DOUBLE PRECISION A,ABSERR,B,EPSABS,EPSREL,F,RESULT,WORK
159      INTEGER IER,IWORK,KEY,LAST,LENW,LIMIT,LVL,L1,L2,L3,NEVAL
160C
161      DIMENSION IWORK(LIMIT),WORK(LENW)
162C
163      EXTERNAL F
164C
165C         CHECK VALIDITY OF LENW.
166C
167C***FIRST EXECUTABLE STATEMENT  DQAG
168      IER = 6
169      NEVAL = 0
170      LAST = 0
171      RESULT = 0.0D+00
172      ABSERR = 0.0D+00
173      IF(LIMIT.LT.1.OR.LENW.LT.LIMIT*4) GO TO 10
174C
175C         PREPARE CALL FOR DQAGE.
176C
177      L1 = LIMIT+1
178      L2 = LIMIT+L1
179      L3 = LIMIT+L2
180C
181      CALL DQAGE(F,A,B,EPSABS,EPSREL,KEY,LIMIT,RESULT,ABSERR,NEVAL,
182     1  IER,WORK(1),WORK(L1),WORK(L2),WORK(L3),IWORK,LAST)
183C
184C         CALL ERROR HANDLER IF NECESSARY.
185C
186      LVL = 0
18710    IF(IER.EQ.6) LVL = 1
188      IF(IER.NE.0) THEN
189CCCCC   CALL XERROR( 'ABNORMAL RETURN FROM DQAG ',26,IER,LVL)
190        WRITE(ICOUT,999)
191  999   FORMAT(1X)
192        CALL DPWRST('XXX','BUG ')
193        WRITE(ICOUT,901)
194  901   FORMAT('***** ERROR--ABNORMAL RETURN FROM DQAG INTEGRATION ',
195     1         'ROUTINE.')
196        CALL DPWRST('XXX','BUG ')
197      ENDIF
198      RETURN
199      END
200      SUBROUTINE DQAGE(F,A,B,EPSABS,EPSREL,KEY,LIMIT,RESULT,ABSERR,
201     1   NEVAL,IER,ALIST,BLIST,RLIST,ELIST,IORD,LAST)
202C
203C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
204C   DATAPLOT USAGE.
205C
206C***BEGIN PROLOGUE  DQAGE
207C***DATE WRITTEN   800101   (YYMMDD)
208C***REVISION DATE  830518   (YYMMDD)
209C***REVISION HISTORY (YYMMDD)
210C   000601   Changed DMAX1/DABS to generic MAX/ABS
211C***CATEGORY NO.  H2A1A1
212C***KEYWORDS  AUTOMATIC INTEGRATOR,GAUSS-KRONROD,GENERAL-PURPOSE,
213C             GLOBALLY ADAPTIVE,INTEGRAND EXAMINATOR
214C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
215C             K. U. LEUVEN
216C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
217C             K. U. LEUVEN
218C***PURPOSE  The routine calculates an approximation result to a given
219C            definite integral   I = Integral of F over (A,B),
220C            hopefully satisfying following claim for accuracy
221C            ABS(I-RESLT).LE.MAX(EPSABS,EPSREL*ABS(I)).
222C***DESCRIPTION
223C
224C        Computation of a definite integral
225C        Standard fortran subroutine
226C        Double precision version
227C
228C        PARAMETERS
229C         ON ENTRY
230C            F      - Double precision
231C                     Function subprogram defining the integrand
232C                     function F(X). The actual name for F needs to be
233C                     declared E X T E R N A L in the driver program.
234C
235C            A      - Double precision
236C                     Lower limit of integration
237C
238C            B      - Double precision
239C                     Upper limit of integration
240C
241C            EPSABS - Double precision
242C                     Absolute accuracy requested
243C            EPSREL - Double precision
244C                     Relative accuracy requested
245C                     If  EPSABS.LE.0
246C                     and EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
247C                     the routine will end with IER = 6.
248C
249C            KEY    - Integer
250C                     Key for choice of local integration rule
251C                     A Gauss-Kronrod pair is used with
252C                          7 - 15 points if KEY.LT.2,
253C                         10 - 21 points if KEY = 2,
254C                         15 - 31 points if KEY = 3,
255C                         20 - 41 points if KEY = 4,
256C                         25 - 51 points if KEY = 5,
257C                         30 - 61 points if KEY.GT.5.
258C
259C            LIMIT  - Integer
260C                     Gives an upperbound on the number of subintervals
261C                     in the partition of (A,B), LIMIT.GE.1.
262C
263C         ON RETURN
264C            RESULT - Double precision
265C                     Approximation to the integral
266C
267C            ABSERR - Double precision
268C                     Estimate of the modulus of the absolute error,
269C                     which should equal or exceed ABS(I-RESULT)
270C
271C            NEVAL  - Integer
272C                     Number of integrand evaluations
273C
274C            IER    - Integer
275C                     IER = 0 Normal and reliable termination of the
276C                             routine. It is assumed that the requested
277C                             accuracy has been achieved.
278C                     IER.GT.0 Abnormal termination of the routine
279C                             The estimates for result and error are
280C                             less reliable. It is assumed that the
281C                             requested accuracy has not been achieved.
282C            ERROR MESSAGES
283C                     IER = 1 Maximum number of subdivisions allowed
284C                             has been achieved. One can allow more
285C                             subdivisions by increasing the value
286C                             of LIMIT.
287C                             However, if this yields no improvement it
288C                             is rather advised to analyze the integrand
289C                             in order to determine the integration
290C                             difficulties. If the position of a local
291C                             difficulty can be determined(e.g.
292C                             SINGULARITY, DISCONTINUITY within the
293C                             interval) one will probably gain from
294C                             splitting up the interval at this point
295C                             and calling the integrator on the
296C                             subranges. If possible, an appropriate
297C                             special-purpose integrator should be used
298C                             which is designed for handling the type of
299C                             difficulty involved.
300C                         = 2 The occurrence of roundoff error is
301C                             detected, which prevents the requested
302C                             tolerance from being achieved.
303C                         = 3 Extremely bad integrand behaviour occurs
304C                             at some points of the integration
305C                             interval.
306C                         = 6 The input is invalid, because
307C                             (EPSABS.LE.0 and
308C                              EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
309C                             RESULT, ABSERR, NEVAL, LAST, RLIST(1) ,
310C                             ELIST(1) and IORD(1) are set to zero.
311C                             ALIST(1) and BLIST(1) are set to A and B
312C                             respectively.
313C
314C            ALIST   - Double precision
315C                      Vector of dimension at least LIMIT, the first
316C                       LAST  elements of which are the left
317C                      end points of the subintervals in the partition
318C                      of the given integration range (A,B)
319C
320C            BLIST   - Double precision
321C                      Vector of dimension at least LIMIT, the first
322C                       LAST  elements of which are the right
323C                      end points of the subintervals in the partition
324C                      of the given integration range (A,B)
325C
326C            RLIST   - Double precision
327C                      Vector of dimension at least LIMIT, the first
328C                       LAST  elements of which are the
329C                      integral approximations on the subintervals
330C
331C            ELIST   - Double precision
332C                      Vector of dimension at least LIMIT, the first
333C                       LAST  elements of which are the moduli of the
334C                      absolute error estimates on the subintervals
335C
336C            IORD    - Integer
337C                      Vector of dimension at least LIMIT, the first K
338C                      elements of which are pointers to the
339C                      error estimates over the subintervals,
340C                      such that ELIST(IORD(1)), ...,
341C                      ELIST(IORD(K)) form a decreasing sequence,
342C                      with K = LAST if LAST.LE.(LIMIT/2+2), and
343C                      K = LIMIT+1-LAST otherwise
344C
345C            LAST    - Integer
346C                      Number of subintervals actually produced in the
347C                      subdivision process
348C***REFERENCES  (NONE)
349C***ROUTINES CALLED  D1MACH,DQK15,DQK21,DQK31,DQK41,DQK51,DQK61,DQPSRT
350C***END PROLOGUE  DQAGE
351C
352      INCLUDE 'DPCOMC.INC'
353      INCLUDE 'DPCOP2.INC'
354C
355      DOUBLE PRECISION A,ABSERR,ALIST,AREA,AREA1,AREA12,AREA2,A1,A2,B,
356     1  BLIST,B1,B2,DEFABS,DEFAB1,DEFAB2,ELIST,EPMACH,
357     2  EPSABS,EPSREL,ERRBND,ERRMAX,ERROR1,ERROR2,ERRO12,ERRSUM,F,
358     3  RESABS,RESULT,RLIST,UFLOW
359      INTEGER IER,IORD,IROFF1,IROFF2,K,KEY,KEYF,LAST,LIMIT,MAXERR,NEVAL,
360     1  NRMAX
361C
362      DIMENSION ALIST(LIMIT),BLIST(LIMIT),ELIST(LIMIT),IORD(LIMIT),
363     1  RLIST(LIMIT)
364C
365      EXTERNAL F
366C
367C            LIST OF MAJOR VARIABLES
368C            -----------------------
369C
370C           ALIST     - LIST OF LEFT END POINTS OF ALL SUBINTERVALS
371C                       CONSIDERED UP TO NOW
372C           BLIST     - LIST OF RIGHT END POINTS OF ALL SUBINTERVALS
373C                       CONSIDERED UP TO NOW
374C           RLIST(I)  - APPROXIMATION TO THE INTEGRAL OVER
375C                      (ALIST(I),BLIST(I))
376C           ELIST(I)  - ERROR ESTIMATE APPLYING TO RLIST(I)
377C           MAXERR    - POINTER TO THE INTERVAL WITH LARGEST
378C                       ERROR ESTIMATE
379C           ERRMAX    - ELIST(MAXERR)
380C           AREA      - SUM OF THE INTEGRALS OVER THE SUBINTERVALS
381C           ERRSUM    - SUM OF THE ERRORS OVER THE SUBINTERVALS
382C           ERRBND    - REQUESTED ACCURACY MAX(EPSABS,EPSREL*
383C                       ABS(RESULT))
384C           *****1    - VARIABLE FOR THE LEFT SUBINTERVAL
385C           *****2    - VARIABLE FOR THE RIGHT SUBINTERVAL
386C           LAST      - INDEX FOR SUBDIVISION
387C
388C
389C           MACHINE DEPENDENT CONSTANTS
390C           ---------------------------
391C
392C           EPMACH  IS THE LARGEST RELATIVE SPACING.
393C           UFLOW  IS THE SMALLEST POSITIVE MAGNITUDE.
394C
395C***FIRST EXECUTABLE STATEMENT  DQAGE
396      EPMACH = D1MACH(4)
397      UFLOW = D1MACH(1)
398C
399C           TEST ON VALIDITY OF PARAMETERS
400C           ------------------------------
401C
402      IER = 0
403      NEVAL = 0
404      LAST = 0
405      RESULT = 0.0D+00
406      ABSERR = 0.0D+00
407      ALIST(1) = A
408      BLIST(1) = B
409      RLIST(1) = 0.0D+00
410      ELIST(1) = 0.0D+00
411      IORD(1) = 0
412      IF(EPSABS.LE.0.0D+00.AND.
413     1  EPSREL.LT.MAX(0.5D+02*EPMACH,0.5D-28)) IER = 6
414      IF(IER.EQ.6) GO TO 999
415C
416C           FIRST APPROXIMATION TO THE INTEGRAL
417C           -----------------------------------
418C
419      KEYF = KEY
420      IF(KEY.LE.0) KEYF = 1
421      IF(KEY.GE.7) KEYF = 6
422      NEVAL = 0
423      IF(KEYF.EQ.1) CALL DQK15(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
424      IF(KEYF.EQ.2) CALL DQK21(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
425      IF(KEYF.EQ.3) CALL DQK31(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
426      IF(KEYF.EQ.4) CALL DQK41(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
427      IF(KEYF.EQ.5) CALL DQK51(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
428      IF(KEYF.EQ.6) CALL DQK61(F,A,B,RESULT,ABSERR,DEFABS,RESABS)
429      LAST = 1
430      RLIST(1) = RESULT
431      ELIST(1) = ABSERR
432      IORD(1) = 1
433C
434C           TEST ON ACCURACY.
435C
436      ERRBND = MAX(EPSABS,EPSREL*ABS(RESULT))
437      IF(ABSERR.LE.0.5D+02*EPMACH*DEFABS.AND.ABSERR.GT.ERRBND) IER = 2
438      IF(LIMIT.EQ.1) IER = 1
439      IF(IER.NE.0.OR.(ABSERR.LE.ERRBND.AND.ABSERR.NE.RESABS)
440     1  .OR.ABSERR.EQ.0.0D+00) GO TO 60
441C
442C           INITIALIZATION
443C           --------------
444C
445C
446      ERRMAX = ABSERR
447      MAXERR = 1
448      AREA = RESULT
449      ERRSUM = ABSERR
450      NRMAX = 1
451      IROFF1 = 0
452      IROFF2 = 0
453C
454C           MAIN DO-LOOP
455C           ------------
456C
457      DO 30 LAST = 2,LIMIT
458C
459C           BISECT THE SUBINTERVAL WITH THE LARGEST ERROR ESTIMATE.
460C
461        A1 = ALIST(MAXERR)
462        B1 = 0.5D+00*(ALIST(MAXERR)+BLIST(MAXERR))
463        A2 = B1
464        B2 = BLIST(MAXERR)
465        IF(KEYF.EQ.1) CALL DQK15(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
466        IF(KEYF.EQ.2) CALL DQK21(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
467        IF(KEYF.EQ.3) CALL DQK31(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
468        IF(KEYF.EQ.4) CALL DQK41(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
469        IF(KEYF.EQ.5) CALL DQK51(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
470        IF(KEYF.EQ.6) CALL DQK61(F,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
471        IF(KEYF.EQ.1) CALL DQK15(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
472        IF(KEYF.EQ.2) CALL DQK21(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
473        IF(KEYF.EQ.3) CALL DQK31(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
474        IF(KEYF.EQ.4) CALL DQK41(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
475        IF(KEYF.EQ.5) CALL DQK51(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
476        IF(KEYF.EQ.6) CALL DQK61(F,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
477C
478C           IMPROVE PREVIOUS APPROXIMATIONS TO INTEGRAL
479C           AND ERROR AND TEST FOR ACCURACY.
480C
481        NEVAL = NEVAL+1
482        AREA12 = AREA1+AREA2
483        ERRO12 = ERROR1+ERROR2
484        ERRSUM = ERRSUM+ERRO12-ERRMAX
485        AREA = AREA+AREA12-RLIST(MAXERR)
486        IF(DEFAB1.EQ.ERROR1.OR.DEFAB2.EQ.ERROR2) GO TO 5
487        IF(ABS(RLIST(MAXERR)-AREA12).LE.0.1D-04*ABS(AREA12)
488     1  .AND.ERRO12.GE.0.99D+00*ERRMAX) IROFF1 = IROFF1+1
489        IF(LAST.GT.10.AND.ERRO12.GT.ERRMAX) IROFF2 = IROFF2+1
490    5   RLIST(MAXERR) = AREA1
491        RLIST(LAST) = AREA2
492        ERRBND = MAX(EPSABS,EPSREL*ABS(AREA))
493        IF(ERRSUM.LE.ERRBND) GO TO 8
494C
495C           TEST FOR ROUNDOFF ERROR AND EVENTUALLY SET ERROR FLAG.
496C
497        IF(IROFF1.GE.6.OR.IROFF2.GE.20) IER = 2
498C
499C           SET ERROR FLAG IN THE CASE THAT THE NUMBER OF SUBINTERVALS
500C           EQUALS LIMIT.
501C
502        IF(LAST.EQ.LIMIT) IER = 1
503C
504C           SET ERROR FLAG IN THE CASE OF BAD INTEGRAND BEHAVIOUR
505C           AT A POINT OF THE INTEGRATION RANGE.
506C
507        IF(MAX(ABS(A1),ABS(B2)).LE.(0.1D+01+0.1D+03*
508     1  EPMACH)*(ABS(A2)+0.1D+04*UFLOW)) IER = 3
509C
510C           APPEND THE NEWLY-CREATED INTERVALS TO THE LIST.
511C
512    8   IF(ERROR2.GT.ERROR1) GO TO 10
513        ALIST(LAST) = A2
514        BLIST(MAXERR) = B1
515        BLIST(LAST) = B2
516        ELIST(MAXERR) = ERROR1
517        ELIST(LAST) = ERROR2
518        GO TO 20
519   10   ALIST(MAXERR) = A2
520        ALIST(LAST) = A1
521        BLIST(LAST) = B1
522        RLIST(MAXERR) = AREA2
523        RLIST(LAST) = AREA1
524        ELIST(MAXERR) = ERROR2
525        ELIST(LAST) = ERROR1
526C
527C           CALL SUBROUTINE DQPSRT TO MAINTAIN THE DESCENDING ORDERING
528C           IN THE LIST OF ERROR ESTIMATES AND SELECT THE SUBINTERVAL
529C           WITH THE LARGEST ERROR ESTIMATE (TO BE BISECTED NEXT).
530C
531   20   CALL DQPSRT(LIMIT,LAST,MAXERR,ERRMAX,ELIST,IORD,NRMAX)
532C ***JUMP OUT OF DO-LOOP
533        IF(IER.NE.0.OR.ERRSUM.LE.ERRBND) GO TO 40
534   30 CONTINUE
535C
536C           COMPUTE FINAL RESULT.
537C           ---------------------
538C
539   40 RESULT = 0.0D+00
540      DO 50 K=1,LAST
541        RESULT = RESULT+RLIST(K)
542   50 CONTINUE
543      ABSERR = ERRSUM
544   60 IF(KEYF.NE.1) NEVAL = (10*KEYF+1)*(2*NEVAL+1)
545      IF(KEYF.EQ.1) NEVAL = 30*NEVAL+15
546  999 RETURN
547      END
548      SUBROUTINE DQAGI(F,BOUND,INF,EPSABS,EPSREL,RESULT,ABSERR,NEVAL,
549     1   IER,LIMIT,LENW,LAST,IWORK,WORK)
550C
551C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
552C   DATAPLOT USAGE.
553C
554C***BEGIN PROLOGUE  DQAGI
555C***DATE WRITTEN   800101   (YYMMDD)
556C***REVISION DATE  830518   (YYMMDD)
557C***CATEGORY NO.  H2A3A1,H2A4A1
558C***KEYWORDS  AUTOMATIC INTEGRATOR,EXTRAPOLATION,GENERAL-PURPOSE,
559C             GLOBALLY ADAPTIVE,INFINITE INTERVALS,TRANSFORMATION
560C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
561C             K. U. LEUVEN
562C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
563C             K. U. LEUVEN
564C***PURPOSE  The routine calculates an approximation result to a given
565C            INTEGRAL   I = Integral of F over (BOUND,+INFINITY)
566C            OR I = Integral of F over (-INFINITY,BOUND)
567C            OR I = Integral of F over (-INFINITY,+INFINITY)
568C            Hopefully satisfying following claim for accuracy
569C            ABS(I-RESULT).LE.MAX(EPSABS,EPSREL*ABS(I)).
570C***DESCRIPTION
571C
572C        Integration over infinite intervals
573C        Standard fortran subroutine
574C
575C        PARAMETERS
576C         ON ENTRY
577C            F      - Double precision
578C                     Function subprogram defining the integrand
579C                     function F(X). The actual name for F needs to be
580C                     declared E X T E R N A L in the driver program.
581C
582C            BOUND  - Double precision
583C                     Finite bound of integration range
584C                     (has no meaning if interval is doubly-infinite)
585C
586C            INF    - Integer
587C                     indicating the kind of integration range involved
588C                     INF = 1 corresponds to  (BOUND,+INFINITY),
589C                     INF = -1            to  (-INFINITY,BOUND),
590C                     INF = 2             to (-INFINITY,+INFINITY).
591C
592C            EPSABS - Double precision
593C                     Absolute accuracy requested
594C            EPSREL - Double precision
595C                     Relative accuracy requested
596C                     If  EPSABS.LE.0
597C                     and EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
598C                     the routine will end with IER = 6.
599C
600C
601C         ON RETURN
602C            RESULT - Double precision
603C                     Approximation to the integral
604C
605C            ABSERR - Double precision
606C                     Estimate of the modulus of the absolute error,
607C                     which should equal or exceed ABS(I-RESULT)
608C
609C            NEVAL  - Integer
610C                     Number of integrand evaluations
611C
612C            IER    - Integer
613C                     IER = 0 normal and reliable termination of the
614C                             routine. It is assumed that the requested
615C                             accuracy has been achieved.
616C                   - IER.GT.0 abnormal termination of the routine. The
617C                             estimates for result and error are less
618C                             reliable. It is assumed that the requested
619C                             accuracy has not been achieved.
620C            ERROR MESSAGES
621C                     IER = 1 Maximum number of subdivisions allowed
622C                             has been achieved. One can allow more
623C                             subdivisions by increasing the value of
624C                             LIMIT (and taking the according dimension
625C                             adjustments into account). However, if
626C                             this yields no improvement it is advised
627C                             to analyze the integrand in order to
628C                             determine the integration difficulties. If
629C                             the position of a local difficulty can be
630C                             determined (e.g. SINGULARITY,
631C                             DISCONTINUITY within the interval) one
632C                             will probably gain from splitting up the
633C                             interval at this point and calling the
634C                             integrator on the subranges. If possible,
635C                             an appropriate special-purpose integrator
636C                             should be used, which is designed for
637C                             handling the type of difficulty involved.
638C                         = 2 The occurrence of roundoff error is
639C                             detected, which prevents the requested
640C                             tolerance from being achieved.
641C                             The error may be under-estimated.
642C                         = 3 Extremely bad integrand behaviour occurs
643C                             at some points of the integration
644C                             interval.
645C                         = 4 The algorithm does not converge.
646C                             Roundoff error is detected in the
647C                             extrapolation table.
648C                             It is assumed that the requested tolerance
649C                             cannot be achieved, and that the returned
650C                             RESULT is the best which can be obtained.
651C                         = 5 The integral is probably divergent, or
652C                             slowly convergent. It must be noted that
653C                             divergence can occur with any other value
654C                             of IER.
655C                         = 6 The input is invalid, because
656C                             (EPSABS.LE.0 and
657C                              EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28))
658C                              or LIMIT.LT.1 or LENIW.LT.LIMIT*4.
659C                             RESULT, ABSERR, NEVAL, LAST are set to
660C                             zero. Exept when LIMIT or LENIW is
661C                             invalid, IWORK(1), WORK(LIMIT*2+1) and
662C                             WORK(LIMIT*3+1) are set to ZERO, WORK(1)
663C                             is set to A and WORK(LIMIT+1) to B.
664C
665C         DIMENSIONING PARAMETERS
666C            LIMIT - Integer
667C                    Dimensioning parameter for IWORK
668C                    LIMIT determines the maximum number of subintervals
669C                    in the partition of the given integration interval
670C                    (A,B), LIMIT.GE.1.
671C                    If LIMIT.LT.1, the routine will end with IER = 6.
672C
673C            LENW  - Integer
674C                    Dimensioning parameter for WORK
675C                    LENW must be at least LIMIT*4.
676C                    If LENW.LT.LIMIT*4, the routine will end
677C                    with IER = 6.
678C
679C            LAST  - Integer
680C                    On return, LAST equals the number of subintervals
681C                    produced in the subdivision process, which
682C                    determines the number of significant elements
683C                    actually in the WORK ARRAYS.
684C
685C         WORK ARRAYS
686C            IWORK - Integer
687C                    Vector of dimension at least LIMIT, the first
688C                    K elements of which contain pointers
689C                    to the error estimates over the subintervals,
690C                    such that WORK(LIMIT*3+IWORK(1)),... ,
691C                    WORK(LIMIT*3+IWORK(K)) form a decreasing
692C                    sequence, with K = LAST if LAST.LE.(LIMIT/2+2), and
693C                    K = LIMIT+1-LAST otherwise
694C
695C            WORK  - Double precision
696C                    Vector of dimension at least LENW
697C                    on return
698C                    WORK(1), ..., WORK(LAST) contain the left
699C                     end points of the subintervals in the
700C                     partition of (A,B),
701C                    WORK(LIMIT+1), ..., WORK(LIMIT+LAST) Contain
702C                     the right end points,
703C                    WORK(LIMIT*2+1), ...,WORK(LIMIT*2+LAST) contain the
704C                     integral approximations over the subintervals,
705C                    WORK(LIMIT*3+1), ..., WORK(LIMIT*3)
706C                     contain the error estimates.
707C***REFERENCES  (NONE)
708C***ROUTINES CALLED  DQAGIE,XERROR
709C***END PROLOGUE  DQAGI
710C
711      DOUBLE PRECISION ABSERR,BOUND,EPSABS,EPSREL,F,RESULT,WORK
712      INTEGER IER,INF,IWORK,LAST,LENW,LIMIT,LVL,L1,L2,L3,NEVAL
713C
714      DIMENSION IWORK(LIMIT),WORK(LENW)
715C
716      INCLUDE 'DPCOMC.INC'
717      INCLUDE 'DPCOP2.INC'
718C
719      EXTERNAL F
720C
721C         CHECK VALIDITY OF LIMIT AND LENW.
722C
723C***FIRST EXECUTABLE STATEMENT  DQAGI
724      IER = 6
725      NEVAL = 0
726      LAST = 0
727      RESULT = 0.0D+00
728      ABSERR = 0.0D+00
729      IF(LIMIT.LT.1.OR.LENW.LT.LIMIT*4) GO TO 10
730C
731C         PREPARE CALL FOR DQAGIE.
732C
733      L1 = LIMIT+1
734      L2 = LIMIT+L1
735      L3 = LIMIT+L2
736C
737      CALL DQAGIE(F,BOUND,INF,EPSABS,EPSREL,LIMIT,RESULT,ABSERR,
738     1  NEVAL,IER,WORK(1),WORK(L1),WORK(L2),WORK(L3),IWORK,LAST)
739C
740C         CALL ERROR HANDLER IF NECESSARY.
741C
742       LVL = 0
74310    IF(IER.EQ.6) LVL = 1
744      IF(IER.NE.0) THEN
745CCCCC   CALL XERROR( 'ABNORMAL RETURN FROM  QAGI',
746CCCCC1  26,IER,LVL)
747        WRITE(ICOUT,999)
748  999   FORMAT(1X)
749        CALL DPWRST('XXX','BUG ')
750        WRITE(ICOUT,901)
751  901   FORMAT('***** ERROR--ABNORMAL RETURN FROM QAGI INTEGRATION ',
752     1         'ROUTINE.')
753        CALL DPWRST('XXX','BUG ')
754      ENDIF
755      RETURN
756      END
757      SUBROUTINE DQAGIE(F,BOUND,INF,EPSABS,EPSREL,LIMIT,RESULT,ABSERR,
758     1   NEVAL,IER,ALIST,BLIST,RLIST,ELIST,IORD,LAST)
759C
760C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
761C   DATAPLOT USAGE.
762C
763C***BEGIN PROLOGUE  DQAGIE
764C***DATE WRITTEN   800101   (YYMMDD)
765C***REVISION DATE  830518   (YYMMDD)
766C***REVISION DATE  980526   (YYMMDD) Fixed documentation of parameter INF
767C***REVISION HISTORY (YYMMDD)
768C   000601   Changed DMAX1/DABS to generic MAX/ABS
769C***CATEGORY NO.  H2A3A1,H2A4A1
770C***KEYWORDS  AUTOMATIC INTEGRATOR,EXTRAPOLATION,GENERAL-PURPOSE,
771C             GLOBALLY ADAPTIVE,INFINITE INTERVALS,TRANSFORMATION
772C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
773C             K. U. LEUVEN
774C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
775C             K. U. LEUVEN
776C***PURPOSE  The routine calculates an approximation result to a given
777C            integral   I = Integral of F over (BOUND,+INFINITY)
778C            or I = Integral of F over (-INFINITY,BOUND)
779C            or I = Integral of F over (-INFINITY,+INFINITY),
780C            hopefully satisfying following claim for accuracy
781C            ABS(I-RESULT).LE.MAX(EPSABS,EPSREL*ABS(I))
782C***DESCRIPTION
783C
784C Integration over infinite intervals
785C Standard fortran subroutine
786C
787C            F      - Double precision
788C                     Function subprogram defining the integrand
789C                     function F(X). The actual name for F needs to be
790C                     declared E X T E R N A L in the driver program.
791C
792C            BOUND  - Double precision
793C                     Finite bound of integration range
794C                     (has no meaning if interval is doubly-infinite)
795C
796C            INF    - Integer
797C                     Indicating the kind of integration range involved
798C                     INF = 1 corresponds to  (BOUND,+INFINITY),
799C                     INF = -1            to  (-INFINITY,BOUND),
800C                     INF = 2             to (-INFINITY,+INFINITY).
801C
802C            EPSABS - Double precision
803C                     Absolute accuracy requested
804C            EPSREL - Double precision
805C                     Relative accuracy requested
806C                     If  EPSABS.LE.0
807C                     and EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
808C                     the routine will end with IER = 6.
809C
810C            LIMIT  - Integer
811C                     Gives an upper bound on the number of subintervals
812C                     in the partition of (A,B), LIMIT.GE.1
813C
814C         ON RETURN
815C            RESULT - Double precision
816C                     Approximation to the integral
817C
818C            ABSERR - Double precision
819C                     Estimate of the modulus of the absolute error,
820C                     which should equal or exceed ABS(I-RESULT)
821C
822C            NEVAL  - Integer
823C                     Number of integrand evaluations
824C
825C            IER    - Integer
826C                     IER = 0 Normal and reliable termination of the
827C                             routine. It is assumed that the requested
828C                             accuracy has been achieved.
829C                   - IER.GT.0 Abnormal termination of the routine. The
830C                             estimates for result and error are less
831C                             reliable. It is assumed that the requested
832C                             accuracy has not been achieved.
833C            ERROR MESSAGES
834C                     IER = 1 Maximum number of subdivisions allowed
835C                             has been achieved. One can allow more
836C                             subdivisions by increasing the value of
837C                             LIMIT (and taking the according dimension
838C                             adjustments into account). However,if
839C                             this yields no improvement it is advised
840C                             to analyze the integrand in order to
841C                             determine the integration difficulties.
842C                             If the position of a local difficulty can
843C                             be determined (e.g. SINGULARITY,
844C                             DISCONTINUITY within the interval) one
845C                             will probably gain from splitting up the
846C                             interval at this point and calling the
847C                             integrator on the subranges. If possible,
848C                             an appropriate special-purpose integrator
849C                             should be used, which is designed for
850C                             handling the type of difficulty involved.
851C                         = 2 The occurrence of roundoff error is
852C                             detected, which prevents the requested
853C                             tolerance from being achieved.
854C                             The error may be under-estimated.
855C                         = 3 Extremely bad integrand behaviour occurs
856C                             at some points of the integration
857C                             interval.
858C                         = 4 The algorithm does not converge.
859C                             Roundoff error is detected in the
860C                             extrapolation table.
861C                             It is assumed that the requested tolerance
862C                             cannot be achieved, and that the returned
863C                             result is the best which can be obtained.
864C                         = 5 The integral is probably divergent, or
865C                             slowly convergent. It must be noted that
866C                             divergence can occur with any other value
867C                             of IER.
868C                         = 6 The input is invalid, because
869C                             (EPSABS.LE.0 and
870C                              EPSREL.LT.MAX(50*REL.MACH.ACC.,0.5D-28),
871C                             RESULT, ABSERR, NEVAL, LAST, RLIST(1),
872C                             ELIST(1) and IORD(1) are set to zero.
873C                             ALIST(1) and BLIST(1) are set to 0
874C                             and 1 respectively.
875C
876C            ALIST  - Double precision
877C                     Vector of dimension at least LIMIT, the first
878C                      LAST  elements of which are the left
879C                     end points of the subintervals in the partition
880C                     of the transformed integration range (0,1).
881C
882C            BLIST  - Double precision
883C                     Vector of dimension at least LIMIT, the first
884C                      LAST  elements of which are the right
885C                     end points of the subintervals in the partition
886C                     of the transformed integration range (0,1).
887C
888C            RLIST  - Double precision
889C                     Vector of dimension at least LIMIT, the first
890C                      LAST  elements of which are the integral
891C                     approximations on the subintervals
892C
893C            ELIST  - Double precision
894C                     Vector of dimension at least LIMIT,  the first
895C                     LAST elements of which are the moduli of the
896C                     absolute error estimates on the subintervals
897C
898C            IORD   - Integer
899C                     Vector of dimension LIMIT, the first K
900C                     elements of which are pointers to the
901C                     error estimates over the subintervals,
902C                     such that ELIST(IORD(1)), ..., ELIST(IORD(K))
903C                     form a decreasing sequence, with K = LAST
904C                     If LAST.LE.(LIMIT/2+2), and K = LIMIT+1-LAST
905C                     otherwise
906C
907C            LAST   - Integer
908C                     Number of subintervals actually produced
909C                     in the subdivision process
910C***REFERENCES  (NONE)
911C***ROUTINES CALLED  D1MACH,DQELG,DQK15I,DQPSRT
912C***END PROLOGUE  DQAGIE
913      DOUBLE PRECISION ABSEPS,ABSERR,ALIST,AREA,AREA1,AREA12,AREA2,A1,
914     1  A2,BLIST,BOUN,BOUND,B1,B2,CORREC,DEFABS,DEFAB1,DEFAB2,
915     2  DRES,ELIST,EPMACH,EPSABS,EPSREL,ERLARG,ERLAST,
916     3  ERRBND,ERRMAX,ERROR1,ERROR2,ERRO12,ERRSUM,ERTEST,F,OFLOW,RESABS,
917     4  RESEPS,RESULT,RES3LA,RLIST,RLIST2,SMALL,UFLOW
918      INTEGER ID,IER,IERRO,INF,IORD,IROFF1,IROFF2,IROFF3,JUPBND,K,KSGN,
919     1  KTMIN,LAST,LIMIT,MAXERR,NEVAL,NRES,NRMAX,NUMRL2
920      LOGICAL EXTRAP,NOEXT
921C
922      DIMENSION ALIST(LIMIT),BLIST(LIMIT),ELIST(LIMIT),IORD(LIMIT),
923     1  RES3LA(3),RLIST(LIMIT),RLIST2(52)
924C
925      INCLUDE 'DPCOMC.INC'
926      INCLUDE 'DPCOP2.INC'
927C
928      EXTERNAL F
929C
930C            THE DIMENSION OF RLIST2 IS DETERMINED BY THE VALUE OF
931C            LIMEXP IN SUBROUTINE DQELG.
932C
933C
934C            LIST OF MAJOR VARIABLES
935C            -----------------------
936C
937C           ALIST     - LIST OF LEFT END POINTS OF ALL SUBINTERVALS
938C                       CONSIDERED UP TO NOW
939C           BLIST     - LIST OF RIGHT END POINTS OF ALL SUBINTERVALS
940C                       CONSIDERED UP TO NOW
941C           RLIST(I)  - APPROXIMATION TO THE INTEGRAL OVER
942C                       (ALIST(I),BLIST(I))
943C           RLIST2    - ARRAY OF DIMENSION AT LEAST (LIMEXP+2),
944C                       CONTAINING THE PART OF THE EPSILON TABLE
945C                       WICH IS STILL NEEDED FOR FURTHER COMPUTATIONS
946C           ELIST(I)  - ERROR ESTIMATE APPLYING TO RLIST(I)
947C           MAXERR    - POINTER TO THE INTERVAL WITH LARGEST ERROR
948C                       ESTIMATE
949C           ERRMAX    - ELIST(MAXERR)
950C           ERLAST    - ERROR ON THE INTERVAL CURRENTLY SUBDIVIDED
951C                       (BEFORE THAT SUBDIVISION HAS TAKEN PLACE)
952C           AREA      - SUM OF THE INTEGRALS OVER THE SUBINTERVALS
953C           ERRSUM    - SUM OF THE ERRORS OVER THE SUBINTERVALS
954C           ERRBND    - REQUESTED ACCURACY MAX(EPSABS,EPSREL*
955C                       ABS(RESULT))
956C           *****1    - VARIABLE FOR THE LEFT SUBINTERVAL
957C           *****2    - VARIABLE FOR THE RIGHT SUBINTERVAL
958C           LAST      - INDEX FOR SUBDIVISION
959C           NRES      - NUMBER OF CALLS TO THE EXTRAPOLATION ROUTINE
960C           NUMRL2    - NUMBER OF ELEMENTS CURRENTLY IN RLIST2. IF AN
961C                       APPROPRIATE APPROXIMATION TO THE COMPOUNDED
962C                       INTEGRAL HAS BEEN OBTAINED, IT IS PUT IN
963C                       RLIST2(NUMRL2) AFTER NUMRL2 HAS BEEN INCREASED
964C                       BY ONE.
965C           SMALL     - LENGTH OF THE SMALLEST INTERVAL CONSIDERED UP
966C                       TO NOW, MULTIPLIED BY 1.5
967C           ERLARG    - SUM OF THE ERRORS OVER THE INTERVALS LARGER
968C                       THAN THE SMALLEST INTERVAL CONSIDERED UP TO NOW
969C           EXTRAP    - LOGICAL VARIABLE DENOTING THAT THE ROUTINE
970C                       IS ATTEMPTING TO PERFORM EXTRAPOLATION. I.E.
971C                       BEFORE SUBDIVIDING THE SMALLEST INTERVAL WE
972C                       TRY TO DECREASE THE VALUE OF ERLARG.
973C           NOEXT     - LOGICAL VARIABLE DENOTING THAT EXTRAPOLATION
974C                       IS NO LONGER ALLOWED (TRUE-VALUE)
975C
976C            MACHINE DEPENDENT CONSTANTS
977C            ---------------------------
978C
979C           EPMACH IS THE LARGEST RELATIVE SPACING.
980C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
981C           OFLOW IS THE LARGEST POSITIVE MAGNITUDE.
982C
983C***FIRST EXECUTABLE STATEMENT  DQAGIE
984       EPMACH = D1MACH(4)
985C
986C           TEST ON VALIDITY OF PARAMETERS
987C           -----------------------------
988C
989      IER = 0
990      NEVAL = 0
991      LAST = 0
992      RESULT = 0.0D+00
993      ABSERR = 0.0D+00
994      ALIST(1) = 0.0D+00
995      BLIST(1) = 0.1D+01
996      RLIST(1) = 0.0D+00
997      ELIST(1) = 0.0D+00
998      SMALL = 0.0D0
999      CORREC = 0.0D0
1000      ERTEST = 0.0D0
1001      ERLARG = 0.0D0
1002      IORD(1) = 0
1003      IF(EPSABS.LE.0.0D+00.AND.EPSREL.LT.MAX(0.5D+02*EPMACH,0.5D-28))
1004     1  IER = 6
1005       IF(IER.EQ.6) GO TO 999
1006C
1007C
1008C           FIRST APPROXIMATION TO THE INTEGRAL
1009C           -----------------------------------
1010C
1011C           DETERMINE THE INTERVAL TO BE MAPPED ONTO (0,1).
1012C           IF INF = 2 THE INTEGRAL IS COMPUTED AS I = I1+I2, WHERE
1013C           I1 = INTEGRAL OF F OVER (-INFINITY,0),
1014C           I2 = INTEGRAL OF F OVER (0,+INFINITY).
1015C
1016      BOUN = BOUND
1017      IF(INF.EQ.2) BOUN = 0.0D+00
1018      CALL DQK15I(F,BOUN,INF,0.0D+00,0.1D+01,RESULT,ABSERR,
1019     1  DEFABS,RESABS)
1020C
1021C           TEST ON ACCURACY
1022C
1023      LAST = 1
1024      RLIST(1) = RESULT
1025      ELIST(1) = ABSERR
1026      IORD(1) = 1
1027      DRES = ABS(RESULT)
1028      ERRBND = MAX(EPSABS,EPSREL*DRES)
1029      IF(ABSERR.LE.1.0D+02*EPMACH*DEFABS.AND.ABSERR.GT.ERRBND) IER = 2
1030      IF(LIMIT.EQ.1) IER = 1
1031      IF(IER.NE.0.OR.(ABSERR.LE.ERRBND.AND.ABSERR.NE.RESABS).OR.
1032     1  ABSERR.EQ.0.0D+00) GO TO 130
1033C
1034C           INITIALIZATION
1035C           --------------
1036C
1037      UFLOW = D1MACH(1)
1038      OFLOW = D1MACH(2)
1039      RLIST2(1) = RESULT
1040      ERRMAX = ABSERR
1041      MAXERR = 1
1042      AREA = RESULT
1043      ERRSUM = ABSERR
1044      ABSERR = OFLOW
1045      NRMAX = 1
1046      NRES = 0
1047      KTMIN = 0
1048      NUMRL2 = 2
1049      EXTRAP = .FALSE.
1050      NOEXT = .FALSE.
1051      IERRO = 0
1052      IROFF1 = 0
1053      IROFF2 = 0
1054      IROFF3 = 0
1055      KSGN = -1
1056      IF(DRES.GE.(0.1D+01-0.5D+02*EPMACH)*DEFABS) KSGN = 1
1057C
1058C           MAIN DO-LOOP
1059C           ------------
1060C
1061      DO 90 LAST = 2,LIMIT
1062C
1063C           BISECT THE SUBINTERVAL WITH NRMAX-TH LARGEST ERROR ESTIMATE.
1064C
1065        A1 = ALIST(MAXERR)
1066        B1 = 0.5D+00*(ALIST(MAXERR)+BLIST(MAXERR))
1067        A2 = B1
1068        B2 = BLIST(MAXERR)
1069        ERLAST = ERRMAX
1070        CALL DQK15I(F,BOUN,INF,A1,B1,AREA1,ERROR1,RESABS,DEFAB1)
1071        CALL DQK15I(F,BOUN,INF,A2,B2,AREA2,ERROR2,RESABS,DEFAB2)
1072C
1073C           IMPROVE PREVIOUS APPROXIMATIONS TO INTEGRAL
1074C           AND ERROR AND TEST FOR ACCURACY.
1075C
1076        AREA12 = AREA1+AREA2
1077        ERRO12 = ERROR1+ERROR2
1078        ERRSUM = ERRSUM+ERRO12-ERRMAX
1079        AREA = AREA+AREA12-RLIST(MAXERR)
1080        IF(DEFAB1.EQ.ERROR1.OR.DEFAB2.EQ.ERROR2)GO TO 15
1081        IF(ABS(RLIST(MAXERR)-AREA12).GT.0.1D-04*ABS(AREA12)
1082     1  .OR.ERRO12.LT.0.99D+00*ERRMAX) GO TO 10
1083        IF(EXTRAP) IROFF2 = IROFF2+1
1084        IF(.NOT.EXTRAP) IROFF1 = IROFF1+1
1085   10   IF(LAST.GT.10.AND.ERRO12.GT.ERRMAX) IROFF3 = IROFF3+1
1086   15   RLIST(MAXERR) = AREA1
1087        RLIST(LAST) = AREA2
1088        ERRBND = MAX(EPSABS,EPSREL*ABS(AREA))
1089C
1090C           TEST FOR ROUNDOFF ERROR AND EVENTUALLY SET ERROR FLAG.
1091C
1092        IF(IROFF1+IROFF2.GE.10.OR.IROFF3.GE.20) IER = 2
1093        IF(IROFF2.GE.5) IERRO = 3
1094C
1095C           SET ERROR FLAG IN THE CASE THAT THE NUMBER OF
1096C           SUBINTERVALS EQUALS LIMIT.
1097C
1098        IF(LAST.EQ.LIMIT) IER = 1
1099C
1100C           SET ERROR FLAG IN THE CASE OF BAD INTEGRAND BEHAVIOUR
1101C           AT SOME POINTS OF THE INTEGRATION RANGE.
1102C
1103        IF(MAX(ABS(A1),ABS(B2)).LE.(0.1D+01+0.1D+03*EPMACH)*
1104     1  (ABS(A2)+0.1D+04*UFLOW)) IER = 4
1105C
1106C           APPEND THE NEWLY-CREATED INTERVALS TO THE LIST.
1107C
1108        IF(ERROR2.GT.ERROR1) GO TO 20
1109        ALIST(LAST) = A2
1110        BLIST(MAXERR) = B1
1111        BLIST(LAST) = B2
1112        ELIST(MAXERR) = ERROR1
1113        ELIST(LAST) = ERROR2
1114        GO TO 30
1115   20   ALIST(MAXERR) = A2
1116        ALIST(LAST) = A1
1117        BLIST(LAST) = B1
1118        RLIST(MAXERR) = AREA2
1119        RLIST(LAST) = AREA1
1120        ELIST(MAXERR) = ERROR2
1121        ELIST(LAST) = ERROR1
1122C
1123C           CALL SUBROUTINE DQPSRT TO MAINTAIN THE DESCENDING ORDERING
1124C           IN THE LIST OF ERROR ESTIMATES AND SELECT THE SUBINTERVAL
1125C           WITH NRMAX-TH LARGEST ERROR ESTIMATE (TO BE BISECTED NEXT).
1126C
1127   30   CALL DQPSRT(LIMIT,LAST,MAXERR,ERRMAX,ELIST,IORD,NRMAX)
1128        IF(ERRSUM.LE.ERRBND) GO TO 115
1129        IF(IER.NE.0) GO TO 100
1130        IF(LAST.EQ.2) GO TO 80
1131        IF(NOEXT) GO TO 90
1132        ERLARG = ERLARG-ERLAST
1133        IF(ABS(B1-A1).GT.SMALL) ERLARG = ERLARG+ERRO12
1134        IF(EXTRAP) GO TO 40
1135C
1136C           TEST WHETHER THE INTERVAL TO BE BISECTED NEXT IS THE
1137C           SMALLEST INTERVAL.
1138C
1139        IF(ABS(BLIST(MAXERR)-ALIST(MAXERR)).GT.SMALL) GO TO 90
1140        EXTRAP = .TRUE.
1141        NRMAX = 2
1142   40   IF(IERRO.EQ.3.OR.ERLARG.LE.ERTEST) GO TO 60
1143C
1144C           THE SMALLEST INTERVAL HAS THE LARGEST ERROR.
1145C           BEFORE BISECTING DECREASE THE SUM OF THE ERRORS OVER THE
1146C           LARGER INTERVALS (ERLARG) AND PERFORM EXTRAPOLATION.
1147C
1148        ID = NRMAX
1149        JUPBND = LAST
1150        IF(LAST.GT.(2+LIMIT/2)) JUPBND = LIMIT+3-LAST
1151        DO 50 K = ID,JUPBND
1152          MAXERR = IORD(NRMAX)
1153          ERRMAX = ELIST(MAXERR)
1154          IF(ABS(BLIST(MAXERR)-ALIST(MAXERR)).GT.SMALL) GO TO 90
1155          NRMAX = NRMAX+1
1156   50   CONTINUE
1157C
1158C           PERFORM EXTRAPOLATION.
1159C
1160   60   NUMRL2 = NUMRL2+1
1161        RLIST2(NUMRL2) = AREA
1162        CALL DQELG(NUMRL2,RLIST2,RESEPS,ABSEPS,RES3LA,NRES)
1163        KTMIN = KTMIN+1
1164        IF(KTMIN.GT.5.AND.ABSERR.LT.0.1D-02*ERRSUM) IER = 5
1165        IF(ABSEPS.GE.ABSERR) GO TO 70
1166        KTMIN = 0
1167        ABSERR = ABSEPS
1168        RESULT = RESEPS
1169        CORREC = ERLARG
1170        ERTEST = MAX(EPSABS,EPSREL*ABS(RESEPS))
1171        IF(ABSERR.LE.ERTEST) GO TO 100
1172C
1173C            PREPARE BISECTION OF THE SMALLEST INTERVAL.
1174C
1175   70   IF(NUMRL2.EQ.1) NOEXT = .TRUE.
1176        IF(IER.EQ.5) GO TO 100
1177        MAXERR = IORD(1)
1178        ERRMAX = ELIST(MAXERR)
1179        NRMAX = 1
1180        EXTRAP = .FALSE.
1181        SMALL = SMALL*0.5D+00
1182        ERLARG = ERRSUM
1183        GO TO 90
1184   80   SMALL = 0.375D+00
1185        ERLARG = ERRSUM
1186        ERTEST = ERRBND
1187        RLIST2(2) = AREA
1188   90 CONTINUE
1189C
1190C           SET FINAL RESULT AND ERROR ESTIMATE.
1191C           ------------------------------------
1192C
1193  100 IF(ABSERR.EQ.OFLOW) GO TO 115
1194      IF((IER+IERRO).EQ.0) GO TO 110
1195      IF(IERRO.EQ.3) ABSERR = ABSERR+CORREC
1196      IF(IER.EQ.0) IER = 3
1197      IF(RESULT.NE.0.0D+00.AND.AREA.NE.0.0D+00)GO TO 105
1198      IF(ABSERR.GT.ERRSUM)GO TO 115
1199      IF(AREA.EQ.0.0D+00) GO TO 130
1200      GO TO 110
1201  105 IF(ABSERR/ABS(RESULT).GT.ERRSUM/ABS(AREA))GO TO 115
1202C
1203C           TEST ON DIVERGENCE
1204C
1205  110 IF(KSGN.EQ.(-1).AND.MAX(ABS(RESULT),ABS(AREA)).LE.
1206     1 DEFABS*0.1D-01) GO TO 130
1207      IF(0.1D-01.GT.(RESULT/AREA).OR.(RESULT/AREA).GT.0.1D+03.
1208     1OR.ERRSUM.GT.ABS(AREA)) IER = 6
1209      GO TO 130
1210C
1211C           COMPUTE GLOBAL INTEGRAL SUM.
1212C
1213  115 RESULT = 0.0D+00
1214      DO 120 K = 1,LAST
1215        RESULT = RESULT+RLIST(K)
1216  120 CONTINUE
1217      ABSERR = ERRSUM
1218  130 NEVAL = 30*LAST-15
1219      IF(INF.EQ.2) NEVAL = 2*NEVAL
1220      IF(IER.GT.2) IER=IER-1
1221  999 RETURN
1222      END
1223      SUBROUTINE DQELG(N,EPSTAB,RESULT,ABSERR,RES3LA,NRES)
1224C
1225C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
1226C   DATAPLOT USAGE.
1227C
1228C***BEGIN PROLOGUE  DQELG
1229C***REFER TO  DQAGIE,DQAGOE,DQAGPE,DQAGSE
1230C***ROUTINES CALLED  D1MACH
1231C***REVISION DATE  830518   (YYMMDD)
1232C***REVISION HISTORY (YYMMDD)
1233C   000601   Changed DMAX1/DABS to generic MAX/ABS
1234C***KEYWORDS  CONVERGENCE ACCELERATION,EPSILON ALGORITHM,EXTRAPOLATION
1235C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
1236C             K. U. LEUVEN
1237C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
1238C             K. U. LEUVEN
1239C***PURPOSE  The routine determines the limit of a given sequence of
1240C            approximations, by means of the Epsilon algorithm of
1241C            P.Wynn. An estimate of the absolute error is also given.
1242C            The condensed Epsilon table is computed. Only those
1243C            elements needed for the computation of the next diagonal
1244C            are preserved.
1245C***DESCRIPTION
1246C
1247C           Epsilon algorithm
1248C           Standard fortran subroutine
1249C           Double precision version
1250C
1251C           PARAMETERS
1252C              N      - Integer
1253C                       EPSTAB(N) contains the new element in the
1254C                       first column of the epsilon table.
1255C
1256C              EPSTAB - Double precision
1257C                       Vector of dimension 52 containing the elements
1258C                       of the two lower diagonals of the triangular
1259C                       epsilon table. The elements are numbered
1260C                       starting at the right-hand corner of the
1261C                       triangle.
1262C
1263C              RESULT - Double precision
1264C                       Resulting approximation to the integral
1265C
1266C              ABSERR - Double precision
1267C                       Estimate of the absolute error computed from
1268C                       RESULT and the 3 previous results
1269C
1270C              RES3LA - Double precision
1271C                       Vector of dimension 3 containing the last 3
1272C                       results
1273C
1274C              NRES   - Integer
1275C                       Number of calls to the routine
1276C                       (should be zero at first call)
1277C***END PROLOGUE  DQELG
1278C
1279      DOUBLE PRECISION ABSERR,DELTA1,DELTA2,DELTA3,
1280     1  EPMACH,EPSINF,EPSTAB,ERROR,ERR1,ERR2,ERR3,E0,E1,E1ABS,E2,E3,
1281     2  OFLOW,RES,RESULT,RES3LA,SS,TOL1,TOL2,TOL3
1282      INTEGER I,IB,IB2,IE,INDX,K1,K2,K3,LIMEXP,N,NEWELM,NRES,NUM
1283      DIMENSION EPSTAB(52),RES3LA(3)
1284C
1285      INCLUDE 'DPCOMC.INC'
1286      INCLUDE 'DPCOP2.INC'
1287C
1288C           LIST OF MAJOR VARIABLES
1289C           -----------------------
1290C
1291C           E0     - THE 4 ELEMENTS ON WHICH THE COMPUTATION OF A NEW
1292C           E1       ELEMENT IN THE EPSILON TABLE IS BASED
1293C           E2
1294C           E3                 E0
1295C                        E3    E1    NEW
1296C                              E2
1297C           NEWELM - NUMBER OF ELEMENTS TO BE COMPUTED IN THE NEW
1298C                    DIAGONAL
1299C           ERROR  - ERROR = ABS(E1-E0)+ABS(E2-E1)+ABS(NEW-E2)
1300C           RESULT - THE ELEMENT IN THE NEW DIAGONAL WITH LEAST VALUE
1301C                    OF ERROR
1302C
1303C           MACHINE DEPENDENT CONSTANTS
1304C           ---------------------------
1305C
1306C           EPMACH IS THE LARGEST RELATIVE SPACING.
1307C           OFLOW IS THE LARGEST POSITIVE MAGNITUDE.
1308C           LIMEXP IS THE MAXIMUM NUMBER OF ELEMENTS THE EPSILON
1309C           TABLE CAN CONTAIN. IF THIS NUMBER IS REACHED, THE UPPER
1310C           DIAGONAL OF THE EPSILON TABLE IS DELETED.
1311C
1312C***FIRST EXECUTABLE STATEMENT  DQELG
1313      EPMACH = D1MACH(4)
1314      OFLOW = D1MACH(2)
1315      NRES = NRES+1
1316      ABSERR = OFLOW
1317      RESULT = EPSTAB(N)
1318      IF(N.LT.3) GO TO 100
1319      LIMEXP = 50
1320      EPSTAB(N+2) = EPSTAB(N)
1321      NEWELM = (N-1)/2
1322      EPSTAB(N) = OFLOW
1323      NUM = N
1324      K1 = N
1325      DO 40 I = 1,NEWELM
1326        K2 = K1-1
1327        K3 = K1-2
1328        RES = EPSTAB(K1+2)
1329        E0 = EPSTAB(K3)
1330        E1 = EPSTAB(K2)
1331        E2 = RES
1332        E1ABS = ABS(E1)
1333        DELTA2 = E2-E1
1334        ERR2 = ABS(DELTA2)
1335        TOL2 = MAX(ABS(E2),E1ABS)*EPMACH
1336        DELTA3 = E1-E0
1337        ERR3 = ABS(DELTA3)
1338        TOL3 = MAX(E1ABS,ABS(E0))*EPMACH
1339        IF(ERR2.GT.TOL2.OR.ERR3.GT.TOL3) GO TO 10
1340C
1341C           IF E0, E1 AND E2 ARE EQUAL TO WITHIN MACHINE
1342C           ACCURACY, CONVERGENCE IS ASSUMED.
1343C           RESULT = E2
1344C           ABSERR = ABS(E1-E0)+ABS(E2-E1)
1345C
1346        RESULT = RES
1347        ABSERR = ERR2+ERR3
1348C ***JUMP OUT OF DO-LOOP
1349        GO TO 100
1350   10   E3 = EPSTAB(K1)
1351        EPSTAB(K1) = E1
1352        DELTA1 = E1-E3
1353        ERR1 = ABS(DELTA1)
1354        TOL1 = MAX(E1ABS,ABS(E3))*EPMACH
1355C
1356C           IF TWO ELEMENTS ARE VERY CLOSE TO EACH OTHER, OMIT
1357C           A PART OF THE TABLE BY ADJUSTING THE VALUE OF N
1358C
1359        IF(ERR1.LE.TOL1.OR.ERR2.LE.TOL2.OR.ERR3.LE.TOL3) GO TO 20
1360        SS = 0.1D+01/DELTA1+0.1D+01/DELTA2-0.1D+01/DELTA3
1361        EPSINF = ABS(SS*E1)
1362C
1363C           TEST TO DETECT IRREGULAR BEHAVIOUR IN THE TABLE, AND
1364C           EVENTUALLY OMIT A PART OF THE TABLE ADJUSTING THE VALUE
1365C           OF N.
1366C
1367        IF(EPSINF.GT.0.1D-03) GO TO 30
1368   20   N = I+I-1
1369C ***JUMP OUT OF DO-LOOP
1370        GO TO 50
1371C
1372C           COMPUTE A NEW ELEMENT AND EVENTUALLY ADJUST
1373C           THE VALUE OF RESULT.
1374C
1375   30   RES = E1+0.1D+01/SS
1376        EPSTAB(K1) = RES
1377        K1 = K1-2
1378        ERROR = ERR2+ABS(RES-E2)+ERR3
1379        IF(ERROR.GT.ABSERR) GO TO 40
1380        ABSERR = ERROR
1381        RESULT = RES
1382   40 CONTINUE
1383C
1384C           SHIFT THE TABLE.
1385C
1386   50 IF(N.EQ.LIMEXP) N = 2*(LIMEXP/2)-1
1387      IB = 1
1388      IF((NUM/2)*2.EQ.NUM) IB = 2
1389      IE = NEWELM+1
1390      DO 60 I=1,IE
1391        IB2 = IB+2
1392        EPSTAB(IB) = EPSTAB(IB2)
1393        IB = IB2
1394   60 CONTINUE
1395      IF(NUM.EQ.N) GO TO 80
1396      INDX = NUM-N+1
1397      DO 70 I = 1,N
1398        EPSTAB(I)= EPSTAB(INDX)
1399        INDX = INDX+1
1400   70 CONTINUE
1401   80 IF(NRES.GE.4) GO TO 90
1402      RES3LA(NRES) = RESULT
1403      ABSERR = OFLOW
1404      GO TO 100
1405C
1406C           COMPUTE ERROR ESTIMATE
1407C
1408   90 ABSERR = ABS(RESULT-RES3LA(3))+ABS(RESULT-RES3LA(2))
1409     1  +ABS(RESULT-RES3LA(1))
1410      RES3LA(1) = RES3LA(2)
1411      RES3LA(2) = RES3LA(3)
1412      RES3LA(3) = RESULT
1413  100 ABSERR = MAX(ABSERR,0.5D+01*EPMACH*ABS(RESULT))
1414      RETURN
1415      END
1416      SUBROUTINE DQK15(F,A,B,RESULT,ABSERR,RESABS,RESASC)
1417C
1418C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
1419C   DATAPLOT USAGE.
1420C
1421C***BEGIN PROLOGUE  DQK15
1422C***DATE WRITTEN   800101   (YYMMDD)
1423C***REVISION DATE  830518   (YYMMDD)
1424C***REVISION HISTORY (YYMMDD)
1425C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
1426C***CATEGORY NO.  H2A1A2
1427C***KEYWORDS  15-POINT GAUSS-KRONROD RULES
1428C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
1429C             K. U. LEUVEN
1430C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
1431C             K. U. LEUVEN
1432C***PURPOSE  To compute I = Integral of F over (A,B), with error
1433C                           estimate
1434C                       J = integral of ABS(F) over (A,B)
1435C***DESCRIPTION
1436C
1437C           Integration rules
1438C           Standard fortran subroutine
1439C           Double precision version
1440C
1441C           PARAMETERS
1442C            ON ENTRY
1443C              F      - Double precision
1444C                       Function subprogram defining the integrand
1445C                       FUNCTION F(X). The actual name for F needs to be
1446C                       Declared E X T E R N A L in the calling program.
1447C
1448C              A      - Double precision
1449C                       Lower limit of integration
1450C
1451C              B      - Double precision
1452C                       Upper limit of integration
1453C
1454C            ON RETURN
1455C              RESULT - Double precision
1456C                       Approximation to the integral I
1457C                       Result is computed by applying the 15-POINT
1458C                       KRONROD RULE (RESK) obtained by optimal addition
1459C                       of abscissae to the7-POINT GAUSS RULE(RESG).
1460C
1461C              ABSERR - Double precision
1462C                       Estimate of the modulus of the absolute error,
1463C                       which should not exceed ABS(I-RESULT)
1464C
1465C              RESABS - Double precision
1466C                       Approximation to the integral J
1467C
1468C              RESASC - Double precision
1469C                       Approximation to the integral of ABS(F-I/(B-A))
1470C                       over (A,B)
1471C***REFERENCES  (NONE)
1472C***ROUTINES CALLED  D1MACH
1473C***END PROLOGUE  DQK15
1474C
1475C
1476      INCLUDE 'DPCOMC.INC'
1477      INCLUDE 'DPCOP2.INC'
1478C
1479      DOUBLE PRECISION A,ABSC,ABSERR,B,CENTR,DHLGTH,
1480     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
1481     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
1482      INTEGER J,JTW,JTWM1
1483      EXTERNAL F
1484C
1485      DIMENSION FV1(7),FV2(7),WG(4),WGK(8),XGK(8)
1486C
1487C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE INTERVAL (-1,1).
1488C           BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND THEIR
1489C           CORRESPONDING WEIGHTS ARE GIVEN.
1490C
1491C           XGK    - ABSCISSAE OF THE 15-POINT KRONROD RULE
1492C                    XGK(2), XGK(4), ...  ABSCISSAE OF THE 7-POINT
1493C                    GAUSS RULE
1494C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
1495C                    ADDED TO THE 7-POINT GAUSS RULE
1496C
1497C           WGK    - WEIGHTS OF THE 15-POINT KRONROD RULE
1498C
1499C           WG     - WEIGHTS OF THE 7-POINT GAUSS RULE
1500C
1501C
1502C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
1503C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
1504C BELL LABS, NOV. 1981.
1505C
1506      DATA WG  (  1) / 0.1294849661 6886969327 0611432679 082 D0 /
1507      DATA WG  (  2) / 0.2797053914 8927666790 1467771423 780 D0 /
1508      DATA WG  (  3) / 0.3818300505 0511894495 0369775488 975 D0 /
1509      DATA WG  (  4) / 0.4179591836 7346938775 5102040816 327 D0 /
1510C
1511      DATA XGK (  1) / 0.9914553711 2081263920 6854697526 329 D0 /
1512      DATA XGK (  2) / 0.9491079123 4275852452 6189684047 851 D0 /
1513      DATA XGK (  3) / 0.8648644233 5976907278 9712788640 926 D0 /
1514      DATA XGK (  4) / 0.7415311855 9939443986 3864773280 788 D0 /
1515      DATA XGK (  5) / 0.5860872354 6769113029 4144838258 730 D0 /
1516      DATA XGK (  6) / 0.4058451513 7739716690 6606412076 961 D0 /
1517      DATA XGK (  7) / 0.2077849550 0789846760 0689403773 245 D0 /
1518      DATA XGK (  8) / 0.0000000000 0000000000 0000000000 000 D0 /
1519C
1520      DATA WGK (  1) / 0.0229353220 1052922496 3732008058 970 D0 /
1521      DATA WGK (  2) / 0.0630920926 2997855329 0700663189 204 D0 /
1522      DATA WGK (  3) / 0.1047900103 2225018383 9876322541 518 D0 /
1523      DATA WGK (  4) / 0.1406532597 1552591874 5189590510 238 D0 /
1524      DATA WGK (  5) / 0.1690047266 3926790282 6583426598 550 D0 /
1525      DATA WGK (  6) / 0.1903505780 6478540991 3256402421 014 D0 /
1526      DATA WGK (  7) / 0.2044329400 7529889241 4161999234 649 D0 /
1527      DATA WGK (  8) / 0.2094821410 8472782801 2999174891 714 D0 /
1528C
1529C
1530C           LIST OF MAJOR VARIABLES
1531C           -----------------------
1532C
1533C           CENTR  - MID POINT OF THE INTERVAL
1534C           HLGTH  - HALF-LENGTH OF THE INTERVAL
1535C           ABSC   - ABSCISSA
1536C           FVAL*  - FUNCTION VALUE
1537C           RESG   - RESULT OF THE 7-POINT GAUSS FORMULA
1538C           RESK   - RESULT OF THE 15-POINT KRONROD FORMULA
1539C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF F OVER (A,B),
1540C                    I.E. TO I/(B-A)
1541C
1542C           MACHINE DEPENDENT CONSTANTS
1543C           ---------------------------
1544C
1545C           EPMACH IS THE LARGEST RELATIVE SPACING.
1546C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
1547C
1548C***FIRST EXECUTABLE STATEMENT  DQK15
1549      EPMACH = D1MACH(4)
1550      UFLOW = D1MACH(1)
1551C
1552      CENTR = 0.5D+00*(A+B)
1553      HLGTH = 0.5D+00*(B-A)
1554      DHLGTH = ABS(HLGTH)
1555C
1556C           COMPUTE THE 15-POINT KRONROD APPROXIMATION TO
1557C           THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
1558C
1559      FC = F(CENTR)
1560      RESG = FC*WG(4)
1561      RESK = FC*WGK(8)
1562      RESABS = ABS(RESK)
1563      DO 10 J=1,3
1564        JTW = J*2
1565        ABSC = HLGTH*XGK(JTW)
1566        FVAL1 = F(CENTR-ABSC)
1567        FVAL2 = F(CENTR+ABSC)
1568        FV1(JTW) = FVAL1
1569        FV2(JTW) = FVAL2
1570        FSUM = FVAL1+FVAL2
1571        RESG = RESG+WG(J)*FSUM
1572        RESK = RESK+WGK(JTW)*FSUM
1573        RESABS = RESABS+WGK(JTW)*(ABS(FVAL1)+ABS(FVAL2))
1574   10 CONTINUE
1575      DO 15 J = 1,4
1576        JTWM1 = J*2-1
1577        ABSC = HLGTH*XGK(JTWM1)
1578        FVAL1 = F(CENTR-ABSC)
1579        FVAL2 = F(CENTR+ABSC)
1580        FV1(JTWM1) = FVAL1
1581        FV2(JTWM1) = FVAL2
1582        FSUM = FVAL1+FVAL2
1583        RESK = RESK+WGK(JTWM1)*FSUM
1584        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+ABS(FVAL2))
1585   15 CONTINUE
1586      RESKH = RESK*0.5D+00
1587      RESASC = WGK(8)*ABS(FC-RESKH)
1588      DO 20 J=1,7
1589        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
1590   20 CONTINUE
1591      RESULT = RESK*HLGTH
1592      RESABS = RESABS*DHLGTH
1593      RESASC = RESASC*DHLGTH
1594      ABSERR = ABS((RESK-RESG)*HLGTH)
1595      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.0D+00)
1596     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
1597      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
1598     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
1599      RETURN
1600      END
1601      SUBROUTINE DQK15I(F,BOUN,INF,A,B,RESULT,ABSERR,RESABS,RESASC)
1602C
1603C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
1604C   DATAPLOT USAGE.
1605C
1606C***BEGIN PROLOGUE  DQK15I
1607C***DATE WRITTEN   800101   (YYMMDD)
1608C***REVISION DATE  830518   (YYMMDD)
1609C***REVISION HISTORY (YYMMDD)
1610C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
1611C***CATEGORY NO.  H2A3A2,H2A4A2
1612C***KEYWORDS  15-POINT TRANSFORMED GAUSS-KRONROD RULES
1613C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
1614C             K. U. LEUVEN
1615C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
1616C             K. U. LEUVEN
1617C***PURPOSE  The original (infinite integration range is mapped
1618C            onto the interval (0,1) and (A,B) is a part of (0,1).
1619C            it is the purpose to compute
1620C            I = Integral of transformed integrand over (A,B),
1621C            J = Integral of ABS(Transformed Integrand) over (A,B).
1622C***DESCRIPTION
1623C
1624C           Integration Rule
1625C           Standard Fortran subroutine
1626C           Double precision version
1627C
1628C           PARAMETERS
1629C            ON ENTRY
1630C              F      - Double precision
1631C                       Fuction subprogram defining the integrand
1632C                       FUNCTION F(X). The actual name for F needs to be
1633C                       Declared E X T E R N A L in the calling program.
1634C
1635C              BOUN   - Double precision
1636C                       Finite bound of original integration
1637C                       Range (SET TO ZERO IF INF = +2)
1638C
1639C              INF    - Integer
1640C                       If INF = -1, the original interval is
1641C                                   (-INFINITY,BOUND),
1642C                       If INF = +1, the original interval is
1643C                                   (BOUND,+INFINITY),
1644C                       If INF = +2, the original interval is
1645C                                   (-INFINITY,+INFINITY) AND
1646C                       The integral is computed as the sum of two
1647C                       integrals, one over (-INFINITY,0) and one over
1648C                       (0,+INFINITY).
1649C
1650C              A      - Double precision
1651C                       Lower limit for integration over subrange
1652C                       of (0,1)
1653C
1654C              B      - Double precision
1655C                       Upper limit for integration over subrange
1656C                       of (0,1)
1657C
1658C            ON RETURN
1659C              RESULT - Double precision
1660C                       Approximation to the integral I
1661C                       Result is computed by applying the 15-POINT
1662C                       KRONROD RULE(RESK) obtained by optimal addition
1663C                       of abscissae to the 7-POINT GAUSS RULE(RESG).
1664C
1665C              ABSERR - Double precision
1666C                       Estimate of the modulus of the absolute error,
1667C                       WHICH SHOULD EQUAL or EXCEED ABS(I-RESULT)
1668C
1669C              RESABS - Double precision
1670C                       Approximation to the integral J
1671C
1672C              RESASC - Double precision
1673C                       Approximation to the integral of
1674C                       ABS((TRANSFORMED INTEGRAND)-I/(B-A)) over (A,B)
1675C***REFERENCES  (NONE)
1676C***ROUTINES CALLED  D1MACH
1677C***END PROLOGUE  DQK15I
1678C
1679      DOUBLE PRECISION A,ABSC,ABSC1,ABSC2,ABSERR,B,BOUN,CENTR,DINF,
1680     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,
1681     2  RESABS,RESASC,RESG,RESK,RESKH,RESULT,TABSC1,TABSC2,UFLOW,WG,WGK,
1682     3  XGK
1683      INTEGER INF,J
1684C
1685      INCLUDE 'DPCOMC.INC'
1686      INCLUDE 'DPCOP2.INC'
1687C
1688      EXTERNAL F
1689C
1690      DIMENSION FV1(7),FV2(7),XGK(8),WGK(8),WG(8)
1691C
1692C           THE ABSCISSAE AND WEIGHTS ARE SUPPLIED FOR THE INTERVAL
1693C           (-1,1).  BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND
1694C           THEIR CORRESPONDING WEIGHTS ARE GIVEN.
1695C
1696C           XGK    - ABSCISSAE OF THE 15-POINT KRONROD RULE
1697C                    XGK(2), XGK(4), ... ABSCISSAE OF THE 7-POINT
1698C                    GAUSS RULE
1699C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
1700C                    ADDED TO THE 7-POINT GAUSS RULE
1701C
1702C           WGK    - WEIGHTS OF THE 15-POINT KRONROD RULE
1703C
1704C           WG     - WEIGHTS OF THE 7-POINT GAUSS RULE, CORRESPONDING
1705C                    TO THE ABSCISSAE XGK(2), XGK(4), ...
1706C                    WG(1), WG(3), ... ARE SET TO ZERO.
1707C
1708      DATA XGK(1),XGK(2),XGK(3),XGK(4),XGK(5),XGK(6),XGK(7),XGK(8)/
1709     1     0.9914553711208126D+00,     0.9491079123427585D+00,
1710     2     0.8648644233597691D+00,     0.7415311855993944D+00,
1711     3     0.5860872354676911D+00,     0.4058451513773972D+00,
1712     4     0.2077849550078985D+00,     0.0000000000000000D+00/
1713C
1714      DATA WGK(1),WGK(2),WGK(3),WGK(4),WGK(5),WGK(6),WGK(7),WGK(8)/
1715     1     0.2293532201052922D-01,     0.6309209262997855D-01,
1716     2     0.1047900103222502D+00,     0.1406532597155259D+00,
1717     3     0.1690047266392679D+00,     0.1903505780647854D+00,
1718     4     0.2044329400752989D+00,     0.2094821410847278D+00/
1719C
1720      DATA WG(1),WG(2),WG(3),WG(4),WG(5),WG(6),WG(7),WG(8)/
1721     1     0.0000000000000000D+00,     0.1294849661688697D+00,
1722     2     0.0000000000000000D+00,     0.2797053914892767D+00,
1723     3     0.0000000000000000D+00,     0.3818300505051189D+00,
1724     4     0.0000000000000000D+00,     0.4179591836734694D+00/
1725C
1726C
1727C           LIST OF MAJOR VARIABLES
1728C           -----------------------
1729C
1730C           CENTR  - MID POINT OF THE INTERVAL
1731C           HLGTH  - HALF-LENGTH OF THE INTERVAL
1732C           ABSC*  - ABSCISSA
1733C           TABSC* - TRANSFORMED ABSCISSA
1734C           FVAL*  - FUNCTION VALUE
1735C           RESG   - RESULT OF THE 7-POINT GAUSS FORMULA
1736C           RESK   - RESULT OF THE 15-POINT KRONROD FORMULA
1737C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF THE TRANSFORMED
1738C                    INTEGRAND OVER (A,B), I.E. TO I/(B-A)
1739C
1740C           MACHINE DEPENDENT CONSTANTS
1741C           ---------------------------
1742C
1743C           EPMACH IS THE LARGEST RELATIVE SPACING.
1744C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
1745C
1746C***FIRST EXECUTABLE STATEMENT  DQK15I
1747      EPMACH = D1MACH(4)
1748      UFLOW = D1MACH(1)
1749      DINF = MIN0(1,INF)
1750C
1751      CENTR = 0.5D+00*(A+B)
1752      HLGTH = 0.5D+00*(B-A)
1753      TABSC1 = BOUN+DINF*(0.1D+01-CENTR)/CENTR
1754      FVAL1 = F(TABSC1)
1755      IF(INF.EQ.2) FVAL1 = FVAL1+F(-TABSC1)
1756      FC = (FVAL1/CENTR)/CENTR
1757C
1758C           COMPUTE THE 15-POINT KRONROD APPROXIMATION TO
1759C           THE INTEGRAL, AND ESTIMATE THE ERROR.
1760C
1761      RESG = WG(8)*FC
1762      RESK = WGK(8)*FC
1763      RESABS = ABS(RESK)
1764      DO 10 J=1,7
1765        ABSC = HLGTH*XGK(J)
1766        ABSC1 = CENTR-ABSC
1767        ABSC2 = CENTR+ABSC
1768        TABSC1 = BOUN+DINF*(0.1D+01-ABSC1)/ABSC1
1769        TABSC2 = BOUN+DINF*(0.1D+01-ABSC2)/ABSC2
1770        FVAL1 = F(TABSC1)
1771        FVAL2 = F(TABSC2)
1772        IF(INF.EQ.2) FVAL1 = FVAL1+F(-TABSC1)
1773        IF(INF.EQ.2) FVAL2 = FVAL2+F(-TABSC2)
1774        FVAL1 = (FVAL1/ABSC1)/ABSC1
1775        FVAL2 = (FVAL2/ABSC2)/ABSC2
1776        FV1(J) = FVAL1
1777        FV2(J) = FVAL2
1778        FSUM = FVAL1+FVAL2
1779        RESG = RESG+WG(J)*FSUM
1780        RESK = RESK+WGK(J)*FSUM
1781        RESABS = RESABS+WGK(J)*(ABS(FVAL1)+ABS(FVAL2))
1782   10 CONTINUE
1783      RESKH = RESK*0.5D+00
1784      RESASC = WGK(8)*ABS(FC-RESKH)
1785      DO 20 J=1,7
1786        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
1787   20 CONTINUE
1788      RESULT = RESK*HLGTH
1789      RESASC = RESASC*HLGTH
1790      RESABS = RESABS*HLGTH
1791      ABSERR = ABS((RESK-RESG)*HLGTH)
1792      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.D0) ABSERR = RESASC*
1793     1 MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
1794      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
1795     1 ((EPMACH*0.5D+02)*RESABS,ABSERR)
1796      RETURN
1797      END
1798      SUBROUTINE DQK21(F,A,B,RESULT,ABSERR,RESABS,RESASC)
1799C
1800C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
1801C   DATAPLOT USAGE.
1802C
1803C***BEGIN PROLOGUE  DQK21
1804C***DATE WRITTEN   800101   (YYMMDD)
1805C***REVISION DATE  830518   (YYMMDD)
1806C***REVISION HISTORY (YYMMDD)
1807C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
1808C***CATEGORY NO.  H2A1A2
1809C***KEYWORDS  21-POINT GAUSS-KRONROD RULES
1810C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
1811C             K. U. LEUVEN
1812C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
1813C             K. U. LEUVEN
1814C***PURPOSE  To compute I = Integral of F over (A,B), with error
1815C                           estimate
1816C                       J = Integral of ABS(F) over (A,B)
1817C***DESCRIPTION
1818C
1819C           Integration rules
1820C           Standard fortran subroutine
1821C           Double precision version
1822C
1823C           PARAMETERS
1824C            ON ENTRY
1825C              F      - Double precision
1826C                       Function subprogram defining the integrand
1827C                       FUNCTION F(X). The actual name for F needs to be
1828C                       Declared E X T E R N A L in the driver program.
1829C
1830C              A      - Double precision
1831C                       Lower limit of integration
1832C
1833C              B      - Double precision
1834C                       Upper limit of integration
1835C
1836C            ON RETURN
1837C              RESULT - Double precision
1838C                       Approximation to the integral I
1839C                       RESULT is computed by applying the 21-POINT
1840C                       KRONROD RULE (RESK) obtained by optimal addition
1841C                       of abscissae to the 10-POINT GAUSS RULE (RESG).
1842C
1843C              ABSERR - Double precision
1844C                       Estimate of the modulus of the absolute error,
1845C                       which should not exceed ABS(I-RESULT)
1846C
1847C              RESABS - Double precision
1848C                       Approximation to the integral J
1849C
1850C              RESASC - Double precision
1851C                       Approximation to the integral of ABS(F-I/(B-A))
1852C                       over (A,B)
1853C***REFERENCES  (NONE)
1854C***ROUTINES CALLED  D1MACH
1855C***END PROLOGUE  DQK21
1856C
1857      INCLUDE 'DPCOMC.INC'
1858      INCLUDE 'DPCOP2.INC'
1859C
1860      DOUBLE PRECISION A,ABSC,ABSERR,B,CENTR,DHLGTH,
1861     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
1862     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
1863      INTEGER J,JTW,JTWM1
1864      EXTERNAL F
1865C
1866      DIMENSION FV1(10),FV2(10),WG(5),WGK(11),XGK(11)
1867C
1868C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE INTERVAL (-1,1).
1869C           BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND THEIR
1870C           CORRESPONDING WEIGHTS ARE GIVEN.
1871C
1872C           XGK    - ABSCISSAE OF THE 21-POINT KRONROD RULE
1873C                    XGK(2), XGK(4), ...  ABSCISSAE OF THE 10-POINT
1874C                    GAUSS RULE
1875C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
1876C                    ADDED TO THE 10-POINT GAUSS RULE
1877C
1878C           WGK    - WEIGHTS OF THE 21-POINT KRONROD RULE
1879C
1880C           WG     - WEIGHTS OF THE 10-POINT GAUSS RULE
1881C
1882C
1883C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
1884C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
1885C BELL LABS, NOV. 1981.
1886C
1887      DATA WG  (  1) / 0.0666713443 0868813759 3568809893 332 D0 /
1888      DATA WG  (  2) / 0.1494513491 5058059314 5776339657 697 D0 /
1889      DATA WG  (  3) / 0.2190863625 1598204399 5534934228 163 D0 /
1890      DATA WG  (  4) / 0.2692667193 0999635509 1226921569 469 D0 /
1891      DATA WG  (  5) / 0.2955242247 1475287017 3892994651 338 D0 /
1892C
1893      DATA XGK (  1) / 0.9956571630 2580808073 5527280689 003 D0 /
1894      DATA XGK (  2) / 0.9739065285 1717172007 7964012084 452 D0 /
1895      DATA XGK (  3) / 0.9301574913 5570822600 1207180059 508 D0 /
1896      DATA XGK (  4) / 0.8650633666 8898451073 2096688423 493 D0 /
1897      DATA XGK (  5) / 0.7808177265 8641689706 3717578345 042 D0 /
1898      DATA XGK (  6) / 0.6794095682 9902440623 4327365114 874 D0 /
1899      DATA XGK (  7) / 0.5627571346 6860468333 9000099272 694 D0 /
1900      DATA XGK (  8) / 0.4333953941 2924719079 9265943165 784 D0 /
1901      DATA XGK (  9) / 0.2943928627 0146019813 1126603103 866 D0 /
1902      DATA XGK ( 10) / 0.1488743389 8163121088 4826001129 720 D0 /
1903      DATA XGK ( 11) / 0.0000000000 0000000000 0000000000 000 D0 /
1904C
1905      DATA WGK (  1) / 0.0116946388 6737187427 8064396062 192 D0 /
1906      DATA WGK (  2) / 0.0325581623 0796472747 8818972459 390 D0 /
1907      DATA WGK (  3) / 0.0547558965 7435199603 1381300244 580 D0 /
1908      DATA WGK (  4) / 0.0750396748 1091995276 7043140916 190 D0 /
1909      DATA WGK (  5) / 0.0931254545 8369760553 5065465083 366 D0 /
1910      DATA WGK (  6) / 0.1093871588 0229764189 9210590325 805 D0 /
1911      DATA WGK (  7) / 0.1234919762 6206585107 7958109831 074 D0 /
1912      DATA WGK (  8) / 0.1347092173 1147332592 8054001771 707 D0 /
1913      DATA WGK (  9) / 0.1427759385 7706008079 7094273138 717 D0 /
1914      DATA WGK ( 10) / 0.1477391049 0133849137 4841515972 068 D0 /
1915      DATA WGK ( 11) / 0.1494455540 0291690566 4936468389 821 D0 /
1916C
1917C
1918C           LIST OF MAJOR VARIABLES
1919C           -----------------------
1920C
1921C           CENTR  - MID POINT OF THE INTERVAL
1922C           HLGTH  - HALF-LENGTH OF THE INTERVAL
1923C           ABSC   - ABSCISSA
1924C           FVAL*  - FUNCTION VALUE
1925C           RESG   - RESULT OF THE 10-POINT GAUSS FORMULA
1926C           RESK   - RESULT OF THE 21-POINT KRONROD FORMULA
1927C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF F OVER (A,B),
1928C                    I.E. TO I/(B-A)
1929C
1930C
1931C           MACHINE DEPENDENT CONSTANTS
1932C           ---------------------------
1933C
1934C           EPMACH IS THE LARGEST RELATIVE SPACING.
1935C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
1936C
1937C***FIRST EXECUTABLE STATEMENT  DQK21
1938      EPMACH = D1MACH(4)
1939      UFLOW = D1MACH(1)
1940C
1941      CENTR = 0.5D+00*(A+B)
1942      HLGTH = 0.5D+00*(B-A)
1943      DHLGTH = ABS(HLGTH)
1944C
1945C           COMPUTE THE 21-POINT KRONROD APPROXIMATION TO
1946C           THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
1947C
1948      RESG = 0.0D+00
1949      FC = F(CENTR)
1950      RESK = WGK(11)*FC
1951      RESABS = ABS(RESK)
1952      DO 10 J=1,5
1953        JTW = 2*J
1954        ABSC = HLGTH*XGK(JTW)
1955        FVAL1 = F(CENTR-ABSC)
1956        FVAL2 = F(CENTR+ABSC)
1957        FV1(JTW) = FVAL1
1958        FV2(JTW) = FVAL2
1959        FSUM = FVAL1+FVAL2
1960        RESG = RESG+WG(J)*FSUM
1961        RESK = RESK+WGK(JTW)*FSUM
1962        RESABS = RESABS+WGK(JTW)*(ABS(FVAL1)+ABS(FVAL2))
1963   10 CONTINUE
1964      DO 15 J = 1,5
1965        JTWM1 = 2*J-1
1966        ABSC = HLGTH*XGK(JTWM1)
1967        FVAL1 = F(CENTR-ABSC)
1968        FVAL2 = F(CENTR+ABSC)
1969        FV1(JTWM1) = FVAL1
1970        FV2(JTWM1) = FVAL2
1971        FSUM = FVAL1+FVAL2
1972        RESK = RESK+WGK(JTWM1)*FSUM
1973        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+ABS(FVAL2))
1974   15 CONTINUE
1975      RESKH = RESK*0.5D+00
1976      RESASC = WGK(11)*ABS(FC-RESKH)
1977      DO 20 J=1,10
1978        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
1979   20 CONTINUE
1980      RESULT = RESK*HLGTH
1981      RESABS = RESABS*DHLGTH
1982      RESASC = RESASC*DHLGTH
1983      ABSERR = ABS((RESK-RESG)*HLGTH)
1984      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.0D+00)
1985     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
1986      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
1987     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
1988      RETURN
1989      END
1990      SUBROUTINE DQK31(F,A,B,RESULT,ABSERR,RESABS,RESASC)
1991C
1992C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
1993C   DATAPLOT USAGE.
1994C
1995C***BEGIN PROLOGUE  DQK31
1996C***DATE WRITTEN   800101   (YYMMDD)
1997C***REVISION DATE  830518   (YYMMDD)
1998C***REVISION HISTORY (YYMMDD)
1999C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
2000C***CATEGORY NO.  H2A1A2
2001C***KEYWORDS  31-POINT GAUSS-KRONROD RULES
2002C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
2003C             K. U. LEUVEN
2004C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
2005C             K. U. LEUVEN
2006C***PURPOSE  To compute I = Integral of F over (A,B) with error
2007C                           estimate
2008C                       J = Integral of ABS(F) over (A,B)
2009C***DESCRIPTION
2010C
2011C           Integration rules
2012C           Standard fortran subroutine
2013C           Double precision version
2014C
2015C           PARAMETERS
2016C            ON ENTRY
2017C              F      - Double precision
2018C                       Function subprogram defining the integrand
2019C                       FUNCTION F(X). The actual name for F needs to be
2020C                       Declared E X T E R N A L in the calling program.
2021C
2022C              A      - Double precision
2023C                       Lower limit of integration
2024C
2025C              B      - Double precision
2026C                       Upper limit of integration
2027C
2028C            ON RETURN
2029C              RESULT - Double precision
2030C                       Approximation to the integral I
2031C                       RESULT is computed by applying the 31-POINT
2032C                       GAUSS-KRONROD RULE (RESK), obtained by optimal
2033C                       addition of abscissae to the 15-POINT GAUSS
2034C                       RULE (RESG).
2035C
2036C              ABSERR - Double precison
2037C                       Estimate of the modulus of the modulus,
2038C                       which should not exceed ABS(I-RESULT)
2039C
2040C              RESABS - Double precision
2041C                       Approximation to the integral J
2042C
2043C              RESASC - Double precision
2044C                       Approximation to the integral of ABS(F-I/(B-A))
2045C                       over (A,B)
2046C***REFERENCES  (NONE)
2047C***ROUTINES CALLED  D1MACH
2048C***END PROLOGUE  DQK31
2049C
2050      INCLUDE 'DPCOMC.INC'
2051      INCLUDE 'DPCOP2.INC'
2052C
2053      DOUBLE PRECISION A,ABSC,ABSERR,B,CENTR,DHLGTH,
2054     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
2055     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
2056      INTEGER J,JTW,JTWM1
2057      EXTERNAL F
2058C
2059      DIMENSION FV1(15),FV2(15),XGK(16),WGK(16),WG(8)
2060C
2061C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE INTERVAL (-1,1).
2062C           BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND THEIR
2063C           CORRESPONDING WEIGHTS ARE GIVEN.
2064C
2065C           XGK    - ABSCISSAE OF THE 31-POINT KRONROD RULE
2066C                    XGK(2), XGK(4), ...  ABSCISSAE OF THE 15-POINT
2067C                    GAUSS RULE
2068C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
2069C                    ADDED TO THE 15-POINT GAUSS RULE
2070C
2071C           WGK    - WEIGHTS OF THE 31-POINT KRONROD RULE
2072C
2073C           WG     - WEIGHTS OF THE 15-POINT GAUSS RULE
2074C
2075C
2076C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
2077C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
2078C BELL LABS, NOV. 1981.
2079C
2080      DATA WG  (  1) / 0.0307532419 9611726835 4628393577 204 D0 /
2081      DATA WG  (  2) / 0.0703660474 8810812470 9267416450 667 D0 /
2082      DATA WG  (  3) / 0.1071592204 6717193501 1869546685 869 D0 /
2083      DATA WG  (  4) / 0.1395706779 2615431444 7804794511 028 D0 /
2084      DATA WG  (  5) / 0.1662692058 1699393355 3200860481 209 D0 /
2085      DATA WG  (  6) / 0.1861610000 1556221102 6800561866 423 D0 /
2086      DATA WG  (  7) / 0.1984314853 2711157645 6118326443 839 D0 /
2087      DATA WG  (  8) / 0.2025782419 2556127288 0620199967 519 D0 /
2088C
2089      DATA XGK (  1) / 0.9980022986 9339706028 5172840152 271 D0 /
2090      DATA XGK (  2) / 0.9879925180 2048542848 9565718586 613 D0 /
2091      DATA XGK (  3) / 0.9677390756 7913913425 7347978784 337 D0 /
2092      DATA XGK (  4) / 0.9372733924 0070590430 7758947710 209 D0 /
2093      DATA XGK (  5) / 0.8972645323 4408190088 2509656454 496 D0 /
2094      DATA XGK (  6) / 0.8482065834 1042721620 0648320774 217 D0 /
2095      DATA XGK (  7) / 0.7904185014 4246593296 7649294817 947 D0 /
2096      DATA XGK (  8) / 0.7244177313 6017004741 6186054613 938 D0 /
2097      DATA XGK (  9) / 0.6509967412 9741697053 3735895313 275 D0 /
2098      DATA XGK ( 10) / 0.5709721726 0853884753 7226737253 911 D0 /
2099      DATA XGK ( 11) / 0.4850818636 4023968069 3655740232 351 D0 /
2100      DATA XGK ( 12) / 0.3941513470 7756336989 7207370981 045 D0 /
2101      DATA XGK ( 13) / 0.2991800071 5316881216 6780024266 389 D0 /
2102      DATA XGK ( 14) / 0.2011940939 9743452230 0628303394 596 D0 /
2103      DATA XGK ( 15) / 0.1011420669 1871749902 7074231447 392 D0 /
2104      DATA XGK ( 16) / 0.0000000000 0000000000 0000000000 000 D0 /
2105C
2106      DATA WGK (  1) / 0.0053774798 7292334898 7792051430 128 D0 /
2107      DATA WGK (  2) / 0.0150079473 2931612253 8374763075 807 D0 /
2108      DATA WGK (  3) / 0.0254608473 2671532018 6874001019 653 D0 /
2109      DATA WGK (  4) / 0.0353463607 9137584622 2037948478 360 D0 /
2110      DATA WGK (  5) / 0.0445897513 2476487660 8227299373 280 D0 /
2111      DATA WGK (  6) / 0.0534815246 9092808726 5343147239 430 D0 /
2112      DATA WGK (  7) / 0.0620095678 0067064028 5139230960 803 D0 /
2113      DATA WGK (  8) / 0.0698541213 1872825870 9520077099 147 D0 /
2114      DATA WGK (  9) / 0.0768496807 5772037889 4432777482 659 D0 /
2115      DATA WGK ( 10) / 0.0830805028 2313302103 8289247286 104 D0 /
2116      DATA WGK ( 11) / 0.0885644430 5621177064 7275443693 774 D0 /
2117      DATA WGK ( 12) / 0.0931265981 7082532122 5486872747 346 D0 /
2118      DATA WGK ( 13) / 0.0966427269 8362367850 5179907627 589 D0 /
2119      DATA WGK ( 14) / 0.0991735987 2179195933 2393173484 603 D0 /
2120      DATA WGK ( 15) / 0.1007698455 2387559504 4946662617 570 D0 /
2121      DATA WGK ( 16) / 0.1013300070 1479154901 7374792767 493 D0 /
2122C
2123C
2124C           LIST OF MAJOR VARIABLES
2125C           -----------------------
2126C           CENTR  - MID POINT OF THE INTERVAL
2127C           HLGTH  - HALF-LENGTH OF THE INTERVAL
2128C           ABSC   - ABSCISSA
2129C           FVAL*  - FUNCTION VALUE
2130C           RESG   - RESULT OF THE 15-POINT GAUSS FORMULA
2131C           RESK   - RESULT OF THE 31-POINT KRONROD FORMULA
2132C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF F OVER (A,B),
2133C                    I.E. TO I/(B-A)
2134C
2135C           MACHINE DEPENDENT CONSTANTS
2136C           ---------------------------
2137C           EPMACH IS THE LARGEST RELATIVE SPACING.
2138C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
2139C***FIRST EXECUTABLE STATEMENT  DQK31
2140      EPMACH = D1MACH(4)
2141      UFLOW = D1MACH(1)
2142C
2143      CENTR = 0.5D+00*(A+B)
2144      HLGTH = 0.5D+00*(B-A)
2145      DHLGTH = ABS(HLGTH)
2146C
2147C           COMPUTE THE 31-POINT KRONROD APPROXIMATION TO
2148C           THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
2149C
2150      FC = F(CENTR)
2151      RESG = WG(8)*FC
2152      RESK = WGK(16)*FC
2153      RESABS = ABS(RESK)
2154      DO 10 J=1,7
2155        JTW = J*2
2156        ABSC = HLGTH*XGK(JTW)
2157        FVAL1 = F(CENTR-ABSC)
2158        FVAL2 = F(CENTR+ABSC)
2159        FV1(JTW) = FVAL1
2160        FV2(JTW) = FVAL2
2161        FSUM = FVAL1+FVAL2
2162        RESG = RESG+WG(J)*FSUM
2163        RESK = RESK+WGK(JTW)*FSUM
2164        RESABS = RESABS+WGK(JTW)*(ABS(FVAL1)+ABS(FVAL2))
2165   10 CONTINUE
2166      DO 15 J = 1,8
2167        JTWM1 = J*2-1
2168        ABSC = HLGTH*XGK(JTWM1)
2169        FVAL1 = F(CENTR-ABSC)
2170        FVAL2 = F(CENTR+ABSC)
2171        FV1(JTWM1) = FVAL1
2172        FV2(JTWM1) = FVAL2
2173        FSUM = FVAL1+FVAL2
2174        RESK = RESK+WGK(JTWM1)*FSUM
2175        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+ABS(FVAL2))
2176   15 CONTINUE
2177      RESKH = RESK*0.5D+00
2178      RESASC = WGK(16)*ABS(FC-RESKH)
2179      DO 20 J=1,15
2180        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
2181   20 CONTINUE
2182      RESULT = RESK*HLGTH
2183      RESABS = RESABS*DHLGTH
2184      RESASC = RESASC*DHLGTH
2185      ABSERR = ABS((RESK-RESG)*HLGTH)
2186      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.0D+00)
2187     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
2188      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
2189     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
2190      RETURN
2191      END
2192      SUBROUTINE DQK41(F,A,B,RESULT,ABSERR,RESABS,RESASC)
2193C
2194C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
2195C   DATAPLOT USAGE.
2196C
2197C***BEGIN PROLOGUE  DQK41
2198C***DATE WRITTEN   800101   (YYMMDD)
2199C***REVISION DATE  830518   (YYMMDD)
2200C***REVISION HISTORY (YYMMDD)
2201C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
2202C***CATEGORY NO.  H2A1A2
2203C***KEYWORDS  41-POINT GAUSS-KRONROD RULES
2204C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
2205C             K. U. LEUVEN
2206C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
2207C             K. U. LEUVEN
2208C***PURPOSE  To compute I = Integral of F over (A,B), with error
2209C                           estimate
2210C                       J = Integral of ABS(F) over (A,B)
2211C***DESCRIPTION
2212C
2213C           Integration rules
2214C           Standard fortran subroutine
2215C           Double precision version
2216C
2217C           PARAMETERS
2218C            ON ENTRY
2219C              F      - Double precision
2220C                       Function subprogram defining the integrand
2221C                       FUNCTION F(X). The actual name for F needs to be
2222C                       declared E X T E R N A L in the calling program.
2223C
2224C              A      - Double precision
2225C                       Lower limit of integration
2226C
2227C              B      - Double precision
2228C                       Upper limit of integration
2229C
2230C            ON RETURN
2231C              RESULT - Double precision
2232C                       Approximation to the integral I
2233C                       RESULT is computed by applying the 41-POINT
2234C                       GAUSS-KRONROD RULE (RESK) obtained by optimal
2235C                       addition of abscissae to the 20-POINT GAUSS
2236C                       RULE (RESG).
2237C
2238C              ABSERR - Double precision
2239C                       Estimate of the modulus of the absolute error,
2240C                       which should not exceed ABS(I-RESULT)
2241C
2242C              RESABS - Double precision
2243C                       Approximation to the integral J
2244C
2245C              RESASC - Double precision
2246C                       Approximation to the integal of ABS(F-I/(B-A))
2247C                       over (A,B)
2248C***REFERENCES  (NONE)
2249C***ROUTINES CALLED  D1MACH
2250C***END PROLOGUE  DQK41
2251C
2252      INCLUDE 'DPCOMC.INC'
2253      INCLUDE 'DPCOP2.INC'
2254C
2255      DOUBLE PRECISION A,ABSC,ABSERR,B,CENTR,DHLGTH,
2256     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
2257     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
2258      INTEGER J,JTW,JTWM1
2259      EXTERNAL F
2260C
2261      DIMENSION FV1(20),FV2(20),XGK(21),WGK(21),WG(10)
2262C
2263C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE INTERVAL (-1,1).
2264C           BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND THEIR
2265C           CORRESPONDING WEIGHTS ARE GIVEN.
2266C
2267C           XGK    - ABSCISSAE OF THE 41-POINT GAUSS-KRONROD RULE
2268C                    XGK(2), XGK(4), ...  ABSCISSAE OF THE 20-POINT
2269C                    GAUSS RULE
2270C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
2271C                    ADDED TO THE 20-POINT GAUSS RULE
2272C
2273C           WGK    - WEIGHTS OF THE 41-POINT GAUSS-KRONROD RULE
2274C
2275C           WG     - WEIGHTS OF THE 20-POINT GAUSS RULE
2276C
2277C
2278C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
2279C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
2280C BELL LABS, NOV. 1981.
2281C
2282      DATA WG  (  1) / 0.0176140071 3915211831 1861962351 853 D0 /
2283      DATA WG  (  2) / 0.0406014298 0038694133 1039952274 932 D0 /
2284      DATA WG  (  3) / 0.0626720483 3410906356 9506535187 042 D0 /
2285      DATA WG  (  4) / 0.0832767415 7670474872 4758143222 046 D0 /
2286      DATA WG  (  5) / 0.1019301198 1724043503 6750135480 350 D0 /
2287      DATA WG  (  6) / 0.1181945319 6151841731 2377377711 382 D0 /
2288      DATA WG  (  7) / 0.1316886384 4917662689 8494499748 163 D0 /
2289      DATA WG  (  8) / 0.1420961093 1838205132 9298325067 165 D0 /
2290      DATA WG  (  9) / 0.1491729864 7260374678 7828737001 969 D0 /
2291      DATA WG  ( 10) / 0.1527533871 3072585069 8084331955 098 D0 /
2292C
2293      DATA XGK (  1) / 0.9988590315 8827766383 8315576545 863 D0 /
2294      DATA XGK (  2) / 0.9931285991 8509492478 6122388471 320 D0 /
2295      DATA XGK (  3) / 0.9815078774 5025025919 3342994720 217 D0 /
2296      DATA XGK (  4) / 0.9639719272 7791379126 7666131197 277 D0 /
2297      DATA XGK (  5) / 0.9408226338 3175475351 9982722212 443 D0 /
2298      DATA XGK (  6) / 0.9122344282 5132590586 7752441203 298 D0 /
2299      DATA XGK (  7) / 0.8782768112 5228197607 7442995113 078 D0 /
2300      DATA XGK (  8) / 0.8391169718 2221882339 4529061701 521 D0 /
2301      DATA XGK (  9) / 0.7950414288 3755119835 0638833272 788 D0 /
2302      DATA XGK ( 10) / 0.7463319064 6015079261 4305070355 642 D0 /
2303      DATA XGK ( 11) / 0.6932376563 3475138480 5490711845 932 D0 /
2304      DATA XGK ( 12) / 0.6360536807 2651502545 2836696226 286 D0 /
2305      DATA XGK ( 13) / 0.5751404468 1971031534 2946036586 425 D0 /
2306      DATA XGK ( 14) / 0.5108670019 5082709800 4364050955 251 D0 /
2307      DATA XGK ( 15) / 0.4435931752 3872510319 9992213492 640 D0 /
2308      DATA XGK ( 16) / 0.3737060887 1541956067 2548177024 927 D0 /
2309      DATA XGK ( 17) / 0.3016278681 1491300432 0555356858 592 D0 /
2310      DATA XGK ( 18) / 0.2277858511 4164507808 0496195368 575 D0 /
2311      DATA XGK ( 19) / 0.1526054652 4092267550 5220241022 678 D0 /
2312      DATA XGK ( 20) / 0.0765265211 3349733375 4640409398 838 D0 /
2313      DATA XGK ( 21) / 0.0000000000 0000000000 0000000000 000 D0 /
2314C
2315      DATA WGK (  1) / 0.0030735837 1852053150 1218293246 031 D0 /
2316      DATA WGK (  2) / 0.0086002698 5564294219 8661787950 102 D0 /
2317      DATA WGK (  3) / 0.0146261692 5697125298 3787960308 868 D0 /
2318      DATA WGK (  4) / 0.0203883734 6126652359 8010231432 755 D0 /
2319      DATA WGK (  5) / 0.0258821336 0495115883 4505067096 153 D0 /
2320      DATA WGK (  6) / 0.0312873067 7703279895 8543119323 801 D0 /
2321      DATA WGK (  7) / 0.0366001697 5820079803 0557240707 211 D0 /
2322      DATA WGK (  8) / 0.0416688733 2797368626 3788305936 895 D0 /
2323      DATA WGK (  9) / 0.0464348218 6749767472 0231880926 108 D0 /
2324      DATA WGK ( 10) / 0.0509445739 2372869193 2707670050 345 D0 /
2325      DATA WGK ( 11) / 0.0551951053 4828599474 4832372419 777 D0 /
2326      DATA WGK ( 12) / 0.0591114008 8063957237 4967220648 594 D0 /
2327      DATA WGK ( 13) / 0.0626532375 5478116802 5870122174 255 D0 /
2328      DATA WGK ( 14) / 0.0658345971 3361842211 1563556969 398 D0 /
2329      DATA WGK ( 15) / 0.0686486729 2852161934 5623411885 368 D0 /
2330      DATA WGK ( 16) / 0.0710544235 5344406830 5790361723 210 D0 /
2331      DATA WGK ( 17) / 0.0730306903 3278666749 5189417658 913 D0 /
2332      DATA WGK ( 18) / 0.0745828754 0049918898 6581418362 488 D0 /
2333      DATA WGK ( 19) / 0.0757044976 8455667465 9542775376 617 D0 /
2334      DATA WGK ( 20) / 0.0763778676 7208073670 5502835038 061 D0 /
2335      DATA WGK ( 21) / 0.0766007119 1799965644 5049901530 102 D0 /
2336C
2337C
2338C           LIST OF MAJOR VARIABLES
2339C           -----------------------
2340C
2341C           CENTR  - MID POINT OF THE INTERVAL
2342C           HLGTH  - HALF-LENGTH OF THE INTERVAL
2343C           ABSC   - ABSCISSA
2344C           FVAL*  - FUNCTION VALUE
2345C           RESG   - RESULT OF THE 20-POINT GAUSS FORMULA
2346C           RESK   - RESULT OF THE 41-POINT KRONROD FORMULA
2347C           RESKH  - APPROXIMATION TO MEAN VALUE OF F OVER (A,B), I.E.
2348C                    TO I/(B-A)
2349C
2350C           MACHINE DEPENDENT CONSTANTS
2351C           ---------------------------
2352C
2353C           EPMACH IS THE LARGEST RELATIVE SPACING.
2354C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
2355C
2356C***FIRST EXECUTABLE STATEMENT  DQK41
2357      EPMACH = D1MACH(4)
2358      UFLOW = D1MACH(1)
2359C
2360      CENTR = 0.5D+00*(A+B)
2361      HLGTH = 0.5D+00*(B-A)
2362      DHLGTH = ABS(HLGTH)
2363C
2364C           COMPUTE THE 41-POINT GAUSS-KRONROD APPROXIMATION TO
2365C           THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
2366C
2367      RESG = 0.0D+00
2368      FC = F(CENTR)
2369      RESK = WGK(21)*FC
2370      RESABS = ABS(RESK)
2371      DO 10 J=1,10
2372        JTW = J*2
2373        ABSC = HLGTH*XGK(JTW)
2374        FVAL1 = F(CENTR-ABSC)
2375        FVAL2 = F(CENTR+ABSC)
2376        FV1(JTW) = FVAL1
2377        FV2(JTW) = FVAL2
2378        FSUM = FVAL1+FVAL2
2379        RESG = RESG+WG(J)*FSUM
2380        RESK = RESK+WGK(JTW)*FSUM
2381        RESABS = RESABS+WGK(JTW)*(ABS(FVAL1)+ABS(FVAL2))
2382   10 CONTINUE
2383      DO 15 J = 1,10
2384        JTWM1 = J*2-1
2385        ABSC = HLGTH*XGK(JTWM1)
2386        FVAL1 = F(CENTR-ABSC)
2387        FVAL2 = F(CENTR+ABSC)
2388        FV1(JTWM1) = FVAL1
2389        FV2(JTWM1) = FVAL2
2390        FSUM = FVAL1+FVAL2
2391        RESK = RESK+WGK(JTWM1)*FSUM
2392        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+ABS(FVAL2))
2393   15 CONTINUE
2394      RESKH = RESK*0.5D+00
2395      RESASC = WGK(21)*ABS(FC-RESKH)
2396      DO 20 J=1,20
2397        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
2398   20 CONTINUE
2399      RESULT = RESK*HLGTH
2400      RESABS = RESABS*DHLGTH
2401      RESASC = RESASC*DHLGTH
2402      ABSERR = ABS((RESK-RESG)*HLGTH)
2403      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.D+00)
2404     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
2405      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
2406     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
2407      RETURN
2408      END
2409      SUBROUTINE DQK51(F,A,B,RESULT,ABSERR,RESABS,RESASC)
2410C
2411C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
2412C   DATAPLOT USAGE.
2413C
2414C***BEGIN PROLOGUE  DQK51
2415C***DATE WRITTEN   800101   (YYMMDD)
2416C***REVISION DATE  830518   (YYMMDD)
2417C                  960627   Missing WGK(26) restored (RFB).
2418C                  000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
2419C***CATEGORY NO.  H2A1A2
2420C***KEYWORDS  51-POINT GAUSS-KRONROD RULES
2421C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
2422C             K. U. LEUVEN
2423C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
2424C             K. U. LEUVEN
2425C***PURPOSE  To compute I = Integral of F over (A,B) with error
2426C                           estimate
2427C                       J = Integral of ABS(F) over (A,B)
2428C***DESCRIPTION
2429C
2430C           Integration rules
2431C           Standard fortran subroutine
2432C           Double precision version
2433C
2434C           PARAMETERS
2435C            ON ENTRY
2436C              F      - Double precision
2437C                       Function subroutine defining the integrand
2438C                       function F(X). The actual name for F needs to be
2439C                       declared E X T E R N A L in the calling program.
2440C
2441C              A      - Double precision
2442C                       Lower limit of integration
2443C
2444C              B      - Double precision
2445C                       Upper limit of integration
2446C
2447C            ON RETURN
2448C              RESULT - Double precision
2449C                       Approximation to the integral I
2450C                       RESULT is computed by applying the 51-point
2451C                       Kronrod rule (RESK) obtained by optimal addition
2452C                       of abscissae to the 25-point Gauss rule (RESG).
2453C
2454C              ABSERR - Double precision
2455C                       Estimate of the modulus of the absolute error,
2456C                       which should not exceed ABS(I-RESULT)
2457C
2458C              RESABS - Double precision
2459C                       Approximation to the integral J
2460C
2461C              RESASC - Double precision
2462C                       Approximation to the integral of ABS(F-I/(B-A))
2463C                       over (A,B)
2464C***REFERENCES  (NONE)
2465C***ROUTINES CALLED  D1MACH
2466C***END PROLOGUE  DQK51
2467C
2468      INCLUDE 'DPCOMC.INC'
2469      INCLUDE 'DPCOP2.INC'
2470C
2471      DOUBLE PRECISION A,ABSC,ABSERR,B,CENTR,DHLGTH,
2472     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
2473     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
2474      INTEGER J,JTW,JTWM1
2475      EXTERNAL F
2476C
2477      DIMENSION FV1(25),FV2(25),XGK(26),WGK(26),WG(13)
2478C
2479C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE INTERVAL (-1,1).
2480C           BECAUSE OF SYMMETRY ONLY THE POSITIVE ABSCISSAE AND THEIR
2481C           CORRESPONDING WEIGHTS ARE GIVEN.
2482C
2483C           XGK    - ABSCISSAE OF THE 51-POINT KRONROD RULE
2484C                    XGK(2), XGK(4), ...  ABSCISSAE OF THE 25-POINT
2485C                    GAUSS RULE
2486C                    XGK(1), XGK(3), ...  ABSCISSAE WHICH ARE OPTIMALLY
2487C                    ADDED TO THE 25-POINT GAUSS RULE
2488C
2489C           WGK    - WEIGHTS OF THE 51-POINT KRONROD RULE
2490C
2491C           WG     - WEIGHTS OF THE 25-POINT GAUSS RULE
2492C
2493C
2494C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
2495C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
2496C BELL LABS, NOV. 1981.
2497C
2498      DATA WG  (  1) / 0.0113937985 0102628794 7902964113 235 D0 /
2499      DATA WG  (  2) / 0.0263549866 1503213726 1901815295 299 D0 /
2500      DATA WG  (  3) / 0.0409391567 0130631265 5623487711 646 D0 /
2501      DATA WG  (  4) / 0.0549046959 7583519192 5936891540 473 D0 /
2502      DATA WG  (  5) / 0.0680383338 1235691720 7187185656 708 D0 /
2503      DATA WG  (  6) / 0.0801407003 3500101801 3234959669 111 D0 /
2504      DATA WG  (  7) / 0.0910282619 8296364981 1497220702 892 D0 /
2505      DATA WG  (  8) / 0.1005359490 6705064420 2206890392 686 D0 /
2506      DATA WG  (  9) / 0.1085196244 7426365311 6093957050 117 D0 /
2507      DATA WG  ( 10) / 0.1148582591 4571164833 9325545869 556 D0 /
2508      DATA WG  ( 11) / 0.1194557635 3578477222 8178126512 901 D0 /
2509      DATA WG  ( 12) / 0.1222424429 9031004168 8959518945 852 D0 /
2510      DATA WG  ( 13) / 0.1231760537 2671545120 3902873079 050 D0 /
2511C
2512      DATA XGK (  1) / 0.9992621049 9260983419 3457486540 341 D0 /
2513      DATA XGK (  2) / 0.9955569697 9049809790 8784946893 902 D0 /
2514      DATA XGK (  3) / 0.9880357945 3407724763 7331014577 406 D0 /
2515      DATA XGK (  4) / 0.9766639214 5951751149 8315386479 594 D0 /
2516      DATA XGK (  5) / 0.9616149864 2584251241 8130033660 167 D0 /
2517      DATA XGK (  6) / 0.9429745712 2897433941 4011169658 471 D0 /
2518      DATA XGK (  7) / 0.9207471152 8170156174 6346084546 331 D0 /
2519      DATA XGK (  8) / 0.8949919978 7827536885 1042006782 805 D0 /
2520      DATA XGK (  9) / 0.8658470652 9327559544 8996969588 340 D0 /
2521      DATA XGK ( 10) / 0.8334426287 6083400142 1021108693 570 D0 /
2522      DATA XGK ( 11) / 0.7978737979 9850005941 0410904994 307 D0 /
2523      DATA XGK ( 12) / 0.7592592630 3735763057 7282865204 361 D0 /
2524      DATA XGK ( 13) / 0.7177664068 1308438818 6654079773 298 D0 /
2525      DATA XGK ( 14) / 0.6735663684 7346836448 5120633247 622 D0 /
2526      DATA XGK ( 15) / 0.6268100990 1031741278 8122681624 518 D0 /
2527      DATA XGK ( 16) / 0.5776629302 4122296772 3689841612 654 D0 /
2528      DATA XGK ( 17) / 0.5263252843 3471918259 9623778158 010 D0 /
2529      DATA XGK ( 18) / 0.4730027314 4571496052 2182115009 192 D0 /
2530      DATA XGK ( 19) / 0.4178853821 9303774885 1814394594 572 D0 /
2531      DATA XGK ( 20) / 0.3611723058 0938783773 5821730127 641 D0 /
2532      DATA XGK ( 21) / 0.3030895389 3110783016 7478909980 339 D0 /
2533      DATA XGK ( 22) / 0.2438668837 2098843204 5190362797 452 D0 /
2534      DATA XGK ( 23) / 0.1837189394 2104889201 5969888759 528 D0 /
2535      DATA XGK ( 24) / 0.1228646926 1071039638 7359818808 037 D0 /
2536      DATA XGK ( 25) / 0.0615444830 0568507888 6546392366 797 D0 /
2537      DATA XGK ( 26) / 0.0000000000 0000000000 0000000000 000 D0 /
2538C
2539      DATA WGK (  1) / 0.0019873838 9233031592 6507851882 843 D0 /
2540      DATA WGK (  2) / 0.0055619321 3535671375 8040236901 066 D0 /
2541      DATA WGK (  3) / 0.0094739733 8617415160 7207710523 655 D0 /
2542      DATA WGK (  4) / 0.0132362291 9557167481 3656405846 976 D0 /
2543      DATA WGK (  5) / 0.0168478177 0912829823 1516667536 336 D0 /
2544      DATA WGK (  6) / 0.0204353711 4588283545 6568292235 939 D0 /
2545      DATA WGK (  7) / 0.0240099456 0695321622 0092489164 881 D0 /
2546      DATA WGK (  8) / 0.0274753175 8785173780 2948455517 811 D0 /
2547      DATA WGK (  9) / 0.0307923001 6738748889 1109020215 229 D0 /
2548      DATA WGK ( 10) / 0.0340021302 7432933783 6748795229 551 D0 /
2549      DATA WGK ( 11) / 0.0371162714 8341554356 0330625367 620 D0 /
2550      DATA WGK ( 12) / 0.0400838255 0403238207 4839284467 076 D0 /
2551      DATA WGK ( 13) / 0.0428728450 2017004947 6895792439 495 D0 /
2552      DATA WGK ( 14) / 0.0455029130 4992178890 9870584752 660 D0 /
2553      DATA WGK ( 15) / 0.0479825371 3883671390 6392255756 915 D0 /
2554      DATA WGK ( 16) / 0.0502776790 8071567196 3325259433 440 D0 /
2555      DATA WGK ( 17) / 0.0523628858 0640747586 4366712137 873 D0 /
2556      DATA WGK ( 18) / 0.0542511298 8854549014 4543370459 876 D0 /
2557      DATA WGK ( 19) / 0.0559508112 2041231730 8240686382 747 D0 /
2558      DATA WGK ( 20) / 0.0574371163 6156783285 3582693939 506 D0 /
2559      DATA WGK ( 21) / 0.0586896800 2239420796 1974175856 788 D0 /
2560      DATA WGK ( 22) / 0.0597203403 2417405997 9099291932 562 D0 /
2561      DATA WGK ( 23) / 0.0605394553 7604586294 5360267517 565 D0 /
2562      DATA WGK ( 24) / 0.0611285097 1705304830 5859030416 293 D0 /
2563      DATA WGK ( 25) / 0.0614711898 7142531666 1544131965 264 D0 /
2564      DATA WGK ( 26) / 0.0615808180 6783293507 8759824240 055 D0 /
2565C
2566C
2567C           LIST OF MAJOR VARIABLES
2568C           -----------------------
2569C
2570C           CENTR  - MID POINT OF THE INTERVAL
2571C           HLGTH  - HALF-LENGTH OF THE INTERVAL
2572C           ABSC   - ABSCISSA
2573C           FVAL*  - FUNCTION VALUE
2574C           RESG   - RESULT OF THE 25-POINT GAUSS FORMULA
2575C           RESK   - RESULT OF THE 51-POINT KRONROD FORMULA
2576C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF F OVER (A,B),
2577C                    I.E. TO I/(B-A)
2578C
2579C           MACHINE DEPENDENT CONSTANTS
2580C           ---------------------------
2581C
2582C           EPMACH IS THE LARGEST RELATIVE SPACING.
2583C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
2584C
2585C***FIRST EXECUTABLE STATEMENT  DQK51
2586      EPMACH = D1MACH(4)
2587      UFLOW = D1MACH(1)
2588C
2589      CENTR = 0.5D+00*(A+B)
2590      HLGTH = 0.5D+00*(B-A)
2591      DHLGTH = ABS(HLGTH)
2592C
2593C           COMPUTE THE 51-POINT KRONROD APPROXIMATION TO
2594C           THE INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
2595C
2596      FC = F(CENTR)
2597      RESG = WG(13)*FC
2598      RESK = WGK(26)*FC
2599      RESABS = ABS(RESK)
2600      DO 10 J=1,12
2601        JTW = J*2
2602        ABSC = HLGTH*XGK(JTW)
2603        FVAL1 = F(CENTR-ABSC)
2604        FVAL2 = F(CENTR+ABSC)
2605        FV1(JTW) = FVAL1
2606        FV2(JTW) = FVAL2
2607        FSUM = FVAL1+FVAL2
2608        RESG = RESG+WG(J)*FSUM
2609        RESK = RESK+WGK(JTW)*FSUM
2610        RESABS = RESABS+WGK(JTW)*(ABS(FVAL1)+ABS(FVAL2))
2611   10 CONTINUE
2612      DO 15 J = 1,13
2613        JTWM1 = J*2-1
2614        ABSC = HLGTH*XGK(JTWM1)
2615        FVAL1 = F(CENTR-ABSC)
2616        FVAL2 = F(CENTR+ABSC)
2617        FV1(JTWM1) = FVAL1
2618        FV2(JTWM1) = FVAL2
2619        FSUM = FVAL1+FVAL2
2620        RESK = RESK+WGK(JTWM1)*FSUM
2621        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+ABS(FVAL2))
2622   15 CONTINUE
2623      RESKH = RESK*0.5D+00
2624      RESASC = WGK(26)*ABS(FC-RESKH)
2625      DO 20 J=1,25
2626        RESASC = RESASC+WGK(J)*(ABS(FV1(J)-RESKH)+ABS(FV2(J)-RESKH))
2627   20 CONTINUE
2628      RESULT = RESK*HLGTH
2629      RESABS = RESABS*DHLGTH
2630      RESASC = RESASC*DHLGTH
2631      ABSERR = ABS((RESK-RESG)*HLGTH)
2632      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.0D+00)
2633     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
2634      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
2635     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
2636      RETURN
2637      END
2638      SUBROUTINE DQK61(F,A,B,RESULT,ABSERR,RESABS,RESASC)
2639C
2640C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
2641C   DATAPLOT USAGE.
2642C
2643C***BEGIN PROLOGUE  DQK61
2644C***DATE WRITTEN   800101   (YYMMDD)
2645C***REVISION DATE  830518   (YYMMDD)
2646C***REVISION HISTORY (YYMMDD)
2647C   000601   Changed DMAX1/DMIN1/DABS to generic MAX/MIN/ABS
2648C***CATEGORY NO.  H2A1A2
2649C***KEYWORDS  61-POINT GAUSS-KRONROD RULES
2650C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
2651C             K. U. LEUVEN
2652C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
2653C             K. U. LEUVEN
2654C***PURPOSE  To compute I = Integral of F over (A,B) with error
2655C                           estimate
2656C                       J = Integral of DABS(F) over (A,B)
2657C***DESCRIPTION
2658C
2659C        Integration rule
2660C        Standard fortran subroutine
2661C        Double precision version
2662C
2663C
2664C        PARAMETERS
2665C         ON ENTRY
2666C           F      - Double precision
2667C                    Function subprogram defining the integrand
2668C                    function F(X). The actual name for F needs to be
2669C                    declared E X T E R N A L in the calling program.
2670C
2671C           A      - Double precision
2672C                    Lower limit of integration
2673C
2674C           B      - Double precision
2675C                    Upper limit of integration
2676C
2677C         ON RETURN
2678C           RESULT - Double precision
2679C                    Approximation to the integral I
2680C                    RESULT is computed by applying the 61-point
2681C                    Kronrod rule (RESK) obtained by optimal addition of
2682C                    abscissae to the 30-point Gauss rule (RESG).
2683C
2684C           ABSERR - Double precision
2685C                    Estimate of the modulus of the absolute error,
2686C                    which should equal or exceed DABS(I-RESULT)
2687C
2688C           RESABS - Double precision
2689C                    Approximation to the integral J
2690C
2691C           RESASC - Double precision
2692C                    Approximation to the integral of DABS(F-I/(B-A))
2693C***REFERENCES  (NONE)
2694C***ROUTINES CALLED  D1MACH
2695C***END PROLOGUE  DQK61
2696C
2697      INCLUDE 'DPCOMC.INC'
2698      INCLUDE 'DPCOP2.INC'
2699C
2700CCCCC DOUBLE PRECISION A,DABSC,ABSERR,B,CENTR,ABS,DHLGTH,
2701      DOUBLE PRECISION A,DABSC,ABSERR,B,CENTR,DHLGTH,
2702     1  EPMACH,F,FC,FSUM,FVAL1,FVAL2,FV1,FV2,HLGTH,RESABS,RESASC,
2703     2  RESG,RESK,RESKH,RESULT,UFLOW,WG,WGK,XGK
2704      INTEGER J,JTW,JTWM1
2705      EXTERNAL F
2706C
2707      DIMENSION FV1(30),FV2(30),XGK(31),WGK(31),WG(15)
2708C
2709C           THE ABSCISSAE AND WEIGHTS ARE GIVEN FOR THE
2710C           INTERVAL (-1,1). BECAUSE OF SYMMETRY ONLY THE POSITIVE
2711C           ABSCISSAE AND THEIR CORRESPONDING WEIGHTS ARE GIVEN.
2712C
2713C           XGK   - ABSCISSAE OF THE 61-POINT KRONROD RULE
2714C                   XGK(2), XGK(4)  ... ABSCISSAE OF THE 30-POINT
2715C                   GAUSS RULE
2716C                   XGK(1), XGK(3)  ... OPTIMALLY ADDED ABSCISSAE
2717C                   TO THE 30-POINT GAUSS RULE
2718C
2719C           WGK   - WEIGHTS OF THE 61-POINT KRONROD RULE
2720C
2721C           WG    - WEIGTHS OF THE 30-POINT GAUSS RULE
2722C
2723C
2724C GAUSS QUADRATURE WEIGHTS AND KRONRON QUADRATURE ABSCISSAE AND WEIGHTS
2725C AS EVALUATED WITH 80 DECIMAL DIGIT ARITHMETIC BY L. W. FULLERTON,
2726C BELL LABS, NOV. 1981.
2727C
2728      DATA WG  (  1) / 0.0079681924 9616660561 5465883474 674 D0 /
2729      DATA WG  (  2) / 0.0184664683 1109095914 2302131912 047 D0 /
2730      DATA WG  (  3) / 0.0287847078 8332336934 9719179611 292 D0 /
2731      DATA WG  (  4) / 0.0387991925 6962704959 6801936446 348 D0 /
2732      DATA WG  (  5) / 0.0484026728 3059405290 2938140422 808 D0 /
2733      DATA WG  (  6) / 0.0574931562 1761906648 1721689402 056 D0 /
2734      DATA WG  (  7) / 0.0659742298 8218049512 8128515115 962 D0 /
2735      DATA WG  (  8) / 0.0737559747 3770520626 8243850022 191 D0 /
2736      DATA WG  (  9) / 0.0807558952 2942021535 4694938460 530 D0 /
2737      DATA WG  ( 10) / 0.0868997872 0108297980 2387530715 126 D0 /
2738      DATA WG  ( 11) / 0.0921225222 3778612871 7632707087 619 D0 /
2739      DATA WG  ( 12) / 0.0963687371 7464425963 9468626351 810 D0 /
2740      DATA WG  ( 13) / 0.0995934205 8679526706 2780282103 569 D0 /
2741      DATA WG  ( 14) / 0.1017623897 4840550459 6428952168 554 D0 /
2742      DATA WG  ( 15) / 0.1028526528 9355884034 1285636705 415 D0 /
2743C
2744      DATA XGK (  1) / 0.9994844100 5049063757 1325895705 811 D0 /
2745      DATA XGK (  2) / 0.9968934840 7464954027 1630050918 695 D0 /
2746      DATA XGK (  3) / 0.9916309968 7040459485 8628366109 486 D0 /
2747      DATA XGK (  4) / 0.9836681232 7974720997 0032581605 663 D0 /
2748      DATA XGK (  5) / 0.9731163225 0112626837 4693868423 707 D0 /
2749      DATA XGK (  6) / 0.9600218649 6830751221 6871025581 798 D0 /
2750      DATA XGK (  7) / 0.9443744447 4855997941 5831324037 439 D0 /
2751      DATA XGK (  8) / 0.9262000474 2927432587 9324277080 474 D0 /
2752      DATA XGK (  9) / 0.9055733076 9990779854 6522558925 958 D0 /
2753      DATA XGK ( 10) / 0.8825605357 9205268154 3116462530 226 D0 /
2754      DATA XGK ( 11) / 0.8572052335 4606109895 8658510658 944 D0 /
2755      DATA XGK ( 12) / 0.8295657623 8276839744 2898119732 502 D0 /
2756      DATA XGK ( 13) / 0.7997278358 2183908301 3668942322 683 D0 /
2757      DATA XGK ( 14) / 0.7677774321 0482619491 7977340974 503 D0 /
2758      DATA XGK ( 15) / 0.7337900624 5322680472 6171131369 528 D0 /
2759      DATA XGK ( 16) / 0.6978504947 9331579693 2292388026 640 D0 /
2760      DATA XGK ( 17) / 0.6600610641 2662696137 0053668149 271 D0 /
2761      DATA XGK ( 18) / 0.6205261829 8924286114 0477556431 189 D0 /
2762      DATA XGK ( 19) / 0.5793452358 2636169175 6024932172 540 D0 /
2763      DATA XGK ( 20) / 0.5366241481 4201989926 4169793311 073 D0 /
2764      DATA XGK ( 21) / 0.4924804678 6177857499 3693061207 709 D0 /
2765      DATA XGK ( 22) / 0.4470337695 3808917678 0609900322 854 D0 /
2766      DATA XGK ( 23) / 0.4004012548 3039439253 5476211542 661 D0 /
2767      DATA XGK ( 24) / 0.3527047255 3087811347 1037207089 374 D0 /
2768      DATA XGK ( 25) / 0.3040732022 7362507737 2677107199 257 D0 /
2769      DATA XGK ( 26) / 0.2546369261 6788984643 9805129817 805 D0 /
2770      DATA XGK ( 27) / 0.2045251166 8230989143 8957671002 025 D0 /
2771      DATA XGK ( 28) / 0.1538699136 0858354696 3794672743 256 D0 /
2772      DATA XGK ( 29) / 0.1028069379 6673703014 7096751318 001 D0 /
2773      DATA XGK ( 30) / 0.0514718425 5531769583 3025213166 723 D0 /
2774      DATA XGK ( 31) / 0.0000000000 0000000000 0000000000 000 D0 /
2775C
2776      DATA WGK (  1) / 0.0013890136 9867700762 4551591226 760 D0 /
2777      DATA WGK (  2) / 0.0038904611 2709988405 1267201844 516 D0 /
2778      DATA WGK (  3) / 0.0066307039 1593129217 3319826369 750 D0 /
2779      DATA WGK (  4) / 0.0092732796 5951776342 8441146892 024 D0 /
2780      DATA WGK (  5) / 0.0118230152 5349634174 2232898853 251 D0 /
2781      DATA WGK (  6) / 0.0143697295 0704580481 2451432443 580 D0 /
2782      DATA WGK (  7) / 0.0169208891 8905327262 7572289420 322 D0 /
2783      DATA WGK (  8) / 0.0194141411 9394238117 3408951050 128 D0 /
2784      DATA WGK (  9) / 0.0218280358 2160919229 7167485738 339 D0 /
2785      DATA WGK ( 10) / 0.0241911620 7808060136 5686370725 232 D0 /
2786      DATA WGK ( 11) / 0.0265099548 8233310161 0601709335 075 D0 /
2787      DATA WGK ( 12) / 0.0287540487 6504129284 3978785354 334 D0 /
2788      DATA WGK ( 13) / 0.0309072575 6238776247 2884252943 092 D0 /
2789      DATA WGK ( 14) / 0.0329814470 5748372603 1814191016 854 D0 /
2790      DATA WGK ( 15) / 0.0349793380 2806002413 7499670731 468 D0 /
2791      DATA WGK ( 16) / 0.0368823646 5182122922 3911065617 136 D0 /
2792      DATA WGK ( 17) / 0.0386789456 2472759295 0348651532 281 D0 /
2793      DATA WGK ( 18) / 0.0403745389 5153595911 1995279752 468 D0 /
2794      DATA WGK ( 19) / 0.0419698102 1516424614 7147541285 970 D0 /
2795      DATA WGK ( 20) / 0.0434525397 0135606931 6831728117 073 D0 /
2796      DATA WGK ( 21) / 0.0448148001 3316266319 2355551616 723 D0 /
2797      DATA WGK ( 22) / 0.0460592382 7100698811 6271735559 374 D0 /
2798      DATA WGK ( 23) / 0.0471855465 6929915394 5261478181 099 D0 /
2799      DATA WGK ( 24) / 0.0481858617 5708712914 0779492298 305 D0 /
2800      DATA WGK ( 25) / 0.0490554345 5502977888 7528165367 238 D0 /
2801      DATA WGK ( 26) / 0.0497956834 2707420635 7811569379 942 D0 /
2802      DATA WGK ( 27) / 0.0504059214 0278234684 0893085653 585 D0 /
2803      DATA WGK ( 28) / 0.0508817958 9874960649 2297473049 805 D0 /
2804      DATA WGK ( 29) / 0.0512215478 4925877217 0656282604 944 D0 /
2805      DATA WGK ( 30) / 0.0514261285 3745902593 3862879215 781 D0 /
2806      DATA WGK ( 31) / 0.0514947294 2945156755 8340433647 099 D0 /
2807C
2808C           LIST OF MAJOR VARIABLES
2809C           -----------------------
2810C
2811C           CENTR  - MID POINT OF THE INTERVAL
2812C           HLGTH  - HALF-LENGTH OF THE INTERVAL
2813C           DABSC  - ABSCISSA
2814C           FVAL*  - FUNCTION VALUE
2815C           RESG   - RESULT OF THE 30-POINT GAUSS RULE
2816C           RESK   - RESULT OF THE 61-POINT KRONROD RULE
2817C           RESKH  - APPROXIMATION TO THE MEAN VALUE OF F
2818C                    OVER (A,B), I.E. TO I/(B-A)
2819C
2820C           MACHINE DEPENDENT CONSTANTS
2821C           ---------------------------
2822C
2823C           EPMACH IS THE LARGEST RELATIVE SPACING.
2824C           UFLOW IS THE SMALLEST POSITIVE MAGNITUDE.
2825C
2826C***FIRST EXECUTABLE STATEMENT  DQK61
2827      EPMACH = D1MACH(4)
2828      UFLOW = D1MACH(1)
2829C
2830      CENTR = 0.5D+00*(B+A)
2831      HLGTH = 0.5D+00*(B-A)
2832      DHLGTH = DABS(HLGTH)
2833C
2834C           COMPUTE THE 61-POINT KRONROD APPROXIMATION TO THE
2835C           INTEGRAL, AND ESTIMATE THE ABSOLUTE ERROR.
2836C
2837      RESG = 0.0D+00
2838      FC = F(CENTR)
2839      RESK = WGK(31)*FC
2840      RESABS = DABS(RESK)
2841      DO 10 J=1,15
2842        JTW = J*2
2843        DABSC = HLGTH*XGK(JTW)
2844        FVAL1 = F(CENTR-DABSC)
2845        FVAL2 = F(CENTR+DABSC)
2846        FV1(JTW) = FVAL1
2847        FV2(JTW) = FVAL2
2848        FSUM = FVAL1+FVAL2
2849        RESG = RESG+WG(J)*FSUM
2850        RESK = RESK+WGK(JTW)*FSUM
2851        RESABS = RESABS+WGK(JTW)*(DABS(FVAL1)+DABS(FVAL2))
2852   10 CONTINUE
2853      DO 15 J=1,15
2854        JTWM1 = J*2-1
2855        DABSC = HLGTH*XGK(JTWM1)
2856        FVAL1 = F(CENTR-DABSC)
2857        FVAL2 = F(CENTR+DABSC)
2858        FV1(JTWM1) = FVAL1
2859        FV2(JTWM1) = FVAL2
2860        FSUM = FVAL1+FVAL2
2861        RESK = RESK+WGK(JTWM1)*FSUM
2862        RESABS = RESABS+WGK(JTWM1)*(ABS(FVAL1)+DABS(FVAL2))
2863  15    CONTINUE
2864      RESKH = RESK*0.5D+00
2865      RESASC = WGK(31)*DABS(FC-RESKH)
2866      DO 20 J=1,30
2867        RESASC = RESASC+WGK(J)*(DABS(FV1(J)-RESKH)+DABS(FV2(J)-RESKH))
2868   20 CONTINUE
2869      RESULT = RESK*HLGTH
2870      RESABS = RESABS*DHLGTH
2871      RESASC = RESASC*DHLGTH
2872      ABSERR = DABS((RESK-RESG)*HLGTH)
2873      IF(RESASC.NE.0.0D+00.AND.ABSERR.NE.0.0D+00)
2874     1  ABSERR = RESASC*MIN(0.1D+01,(0.2D+03*ABSERR/RESASC)**1.5D+00)
2875      IF(RESABS.GT.UFLOW/(0.5D+02*EPMACH)) ABSERR = MAX
2876     1  ((EPMACH*0.5D+02)*RESABS,ABSERR)
2877      RETURN
2878      END
2879      SUBROUTINE DQPSRT(LIMIT,LAST,MAXERR,ERMAX,ELIST,IORD,NRMAX)
2880C
2881C   ADDED TO DATAPLOT 12/2003.  THIS ROUTINE ADDED FOR INTERNAL
2882C   DATAPLOT USAGE.
2883C
2884C***BEGIN PROLOGUE  DQPSRT
2885C***REFER TO  DQAGE,DQAGIE,DQAGPE,DQAWSE
2886C***ROUTINES CALLED  (NONE)
2887C***REVISION DATE  810101   (YYMMDD)
2888C***KEYWORDS  SEQUENTIAL SORTING
2889C***AUTHOR  PIESSENS, ROBERT, APPLIED MATH. AND PROGR. DIV. -
2890C             K. U. LEUVEN
2891C           DE DONCKER, ELISE, APPLIED MATH. AND PROGR. DIV. -
2892C             K. U. LEUVEN
2893C***PURPOSE  This routine maintains the descending ordering in the
2894C            list of the local error estimated resulting from the
2895C            interval subdivision process. At each call two error
2896C            estimates are inserted using the sequential search
2897C            method, top-down for the largest error estimate and
2898C            bottom-up for the smallest error estimate.
2899C***DESCRIPTION
2900C
2901C           Ordering routine
2902C           Standard fortran subroutine
2903C           Double precision version
2904C
2905C           PARAMETERS (MEANING AT OUTPUT)
2906C              LIMIT  - Integer
2907C                       Maximum number of error estimates the list
2908C                       can contain
2909C
2910C              LAST   - Integer
2911C                       Number of error estimates currently in the list
2912C
2913C              MAXERR - Integer
2914C                       Maxerr points to the NRMAX-th largest error
2915C                       estimate currently in the list
2916C
2917C              ERMAX  - Double precision
2918C                       NRMAX-th largest error estimate
2919C                       ERMAX = ELIST(MAXERR)
2920C
2921C              ELIST  - Double precision
2922C                       Vector of dimension LAST containing
2923C                       the error estimates
2924C
2925C              IORD   - Integer
2926C                       Vector of dimension LAST, the first K elements
2927C                       of which contain pointers to the error
2928C                       estimates, such that
2929C                       ELIST(IORD(1)),...,  ELIST(IORD(K))
2930C                       form a decreasing sequence, with
2931C                       K = LAST if LAST.LE.(LIMIT/2+2), and
2932C                       K = LIMIT+1-LAST otherwise
2933C
2934C              NRMAX  - Integer
2935C                       MAXERR = IORD(NRMAX)
2936C***END PROLOGUE  DQPSRT
2937C
2938      DOUBLE PRECISION ELIST,ERMAX,ERRMAX,ERRMIN
2939      INTEGER I,IBEG,IDO,IORD,ISUCC,J,JBND,JUPBN,K,LAST,LIMIT,MAXERR,
2940     1  NRMAX
2941      DIMENSION ELIST(LAST),IORD(LAST)
2942C
2943      INCLUDE 'DPCOMC.INC'
2944      INCLUDE 'DPCOP2.INC'
2945C
2946C           CHECK WHETHER THE LIST CONTAINS MORE THAN
2947C           TWO ERROR ESTIMATES.
2948C
2949C***FIRST EXECUTABLE STATEMENT  DQPSRT
2950      IF(LAST.GT.2) GO TO 10
2951      IORD(1) = 1
2952      IORD(2) = 2
2953      GO TO 90
2954C
2955C           THIS PART OF THE ROUTINE IS ONLY EXECUTED IF, DUE TO A
2956C           DIFFICULT INTEGRAND, SUBDIVISION INCREASED THE ERROR
2957C           ESTIMATE. IN THE NORMAL CASE THE INSERT PROCEDURE SHOULD
2958C           START AFTER THE NRMAX-TH LARGEST ERROR ESTIMATE.
2959C
2960   10 ERRMAX = ELIST(MAXERR)
2961      IF(NRMAX.EQ.1) GO TO 30
2962      IDO = NRMAX-1
2963      DO 20 I = 1,IDO
2964        ISUCC = IORD(NRMAX-1)
2965C ***JUMP OUT OF DO-LOOP
2966        IF(ERRMAX.LE.ELIST(ISUCC)) GO TO 30
2967        IORD(NRMAX) = ISUCC
2968        NRMAX = NRMAX-1
2969   20    CONTINUE
2970C
2971C           COMPUTE THE NUMBER OF ELEMENTS IN THE LIST TO BE MAINTAINED
2972C           IN DESCENDING ORDER. THIS NUMBER DEPENDS ON THE NUMBER OF
2973C           SUBDIVISIONS STILL ALLOWED.
2974C
2975   30 JUPBN = LAST
2976      IF(LAST.GT.(LIMIT/2+2)) JUPBN = LIMIT+3-LAST
2977      ERRMIN = ELIST(LAST)
2978C
2979C           INSERT ERRMAX BY TRAVERSING THE LIST TOP-DOWN,
2980C           STARTING COMPARISON FROM THE ELEMENT ELIST(IORD(NRMAX+1)).
2981C
2982      JBND = JUPBN-1
2983      IBEG = NRMAX+1
2984      IF(IBEG.GT.JBND) GO TO 50
2985      DO 40 I=IBEG,JBND
2986        ISUCC = IORD(I)
2987C ***JUMP OUT OF DO-LOOP
2988        IF(ERRMAX.GE.ELIST(ISUCC)) GO TO 60
2989        IORD(I-1) = ISUCC
2990   40 CONTINUE
2991   50 IORD(JBND) = MAXERR
2992      IORD(JUPBN) = LAST
2993      GO TO 90
2994C
2995C           INSERT ERRMIN BY TRAVERSING THE LIST BOTTOM-UP.
2996C
2997   60 IORD(I-1) = MAXERR
2998      K = JBND
2999      DO 70 J=I,JBND
3000        ISUCC = IORD(K)
3001C ***JUMP OUT OF DO-LOOP
3002        IF(ERRMIN.LT.ELIST(ISUCC)) GO TO 80
3003        IORD(K+1) = ISUCC
3004        K = K-1
3005   70 CONTINUE
3006      IORD(I) = LAST
3007      GO TO 90
3008   80 IORD(K+1) = LAST
3009C
3010C           SET MAXERR AND ERMAX.
3011C
3012   90 MAXERR = IORD(NRMAX)
3013      ERMAX = ELIST(MAXERR)
3014      RETURN
3015      END
3016      SUBROUTINE DQRDC(X,LDX,N,P,QRAUX,JPVT,WORK,JOB)
3017C***BEGIN PROLOGUE  DQRDC
3018C***DATE WRITTEN   780814   (YYMMDD)
3019C***REVISION DATE  820801   (YYMMDD)
3020C***REVISION HISTORY  (YYMMDD)
3021C   000330  Modified array declarations.  (JEC)
3022C***CATEGORY NO.  D5
3023C***KEYWORDS  DECOMPOSITION,DOUBLE PRECISION,LINEAR ALGEBRA,LINPACK,
3024C             MATRIX,ORTHOGONAL TRIANGULAR
3025C***AUTHOR  STEWART, G. W., (U. OF MARYLAND)
3026C***PURPOSE  Uses Householder transformations to compute the Qr factori-
3027C            zation of N by P matrix X.  Column pivoting is optional.
3028C***DESCRIPTION
3029C
3030C     DQRDC uses Householder transformations to compute the QR
3031C     factorization of an N by P matrix X.  Column pivoting
3032C     based on the 2-norms of the reduced columns may be
3033C     performed at the user's option.
3034C
3035C     On Entry
3036C
3037C        X       DOUBLE PRECISION(LDX,P), where LDX .GE. N.
3038C                X contains the matrix whose decomposition is to be
3039C                computed.
3040C
3041C        LDX     INTEGER.
3042C                LDX is the leading dimension of the array X.
3043C
3044C        N       INTEGER.
3045C                N is the number of rows of the matrix X.
3046C
3047C        P       INTEGER.
3048C                P is the number of columns of the matrix X.
3049C
3050C        JPVT    INTEGER(P).
3051C                JPVT contains integers that control the selection
3052C                of the pivot columns.  The K-th column X(K) of X
3053C                is placed in one of three classes according to the
3054C                value of JPVT(K).
3055C
3056C                   If JPVT(K) .GT. 0, then X(K) is an initial
3057C                                      column.
3058C
3059C                   If JPVT(K) .EQ. 0, then X(K) is a free column.
3060C
3061C                   If JPVT(K) .LT. 0, then X(K) is a final column.
3062C
3063C                Before the decomposition is computed, initial columns
3064C                are moved to the beginning of the array X and final
3065C                columns to the end.  Both initial and final columns
3066C                are frozen in place during the computation and only
3067C                free columns are moved.  At the K-th stage of the
3068C                reduction, if X(K) is occupied by a free column
3069C                it is interchanged with the free column of largest
3070C                reduced norm.  JPVT is not referenced if
3071C                JOB .EQ. 0.
3072C
3073C        WORK    DOUBLE PRECISION(P).
3074C                WORK is a work array.  WORK is not referenced if
3075C                JOB .EQ. 0.
3076C
3077C        JOB     INTEGER.
3078C                JOB is an integer that initiates column pivoting.
3079C                If JOB .EQ. 0, no pivoting is done.
3080C                If JOB .NE. 0, pivoting is done.
3081C
3082C     On Return
3083C
3084C        X       X contains in its upper triangle the upper
3085C                triangular matrix R of the QR factorization.
3086C                Below its diagonal X contains information from
3087C                which the orthogonal part of the decomposition
3088C                can be recovered.  Note that if pivoting has
3089C                been requested, the decomposition is not that
3090C                of the original matrix X but that of X
3091C                with its columns permuted as described by JPVT.
3092C
3093C        QRAUX   DOUBLE PRECISION(P).
3094C                QRAUX contains further information required to recover
3095C                the orthogonal part of the decomposition.
3096C
3097C        JPVT    JPVT(K) contains the index of the column of the
3098C                original matrix that has been interchanged into
3099C                the K-th column, if pivoting was requested.
3100C
3101C     LINPACK.  This version dated 08/14/78 .
3102C     G. W. Stewart, University of Maryland, Argonne National Lab.
3103C
3104C     DQRDC uses the following functions and subprograms.
3105C
3106C     BLAS DAXPY,DDOT,DSCAL,DSWAP,DNRM2
3107C     Fortran DABS,DMAX1,MIN0,DSQRT
3108C***REFERENCES  DONGARRA J.J., BUNCH J.R., MOLER C.B., STEWART G.W.,
3109C                 *LINPACK USERS  GUIDE*, SIAM, 1979.
3110C***ROUTINES CALLED  DAXPY,DDOT,DNRM2,DSCAL,DSWAP
3111C***END PROLOGUE  DQRDC
3112      INTEGER LDX,N,P,JOB
3113      INTEGER JPVT(*)
3114      DOUBLE PRECISION X(LDX,*),QRAUX(*),WORK(*)
3115C
3116      INTEGER J,JP,L,LP1,LUP,MAXJ,PL,PU
3117      DOUBLE PRECISION MAXNRM,DNRM2,TT
3118      DOUBLE PRECISION DDOT,NRMXL,T
3119      LOGICAL NEGJ,SWAPJ
3120C
3121C***FIRST EXECUTABLE STATEMENT  DQRDC
3122      PL = 1
3123      PU = 0
3124      IF (JOB .EQ. 0) GO TO 60
3125C
3126C        PIVOTING HAS BEEN REQUESTED.  REARRANGE THE COLUMNS
3127C        ACCORDING TO JPVT.
3128C
3129         DO 20 J = 1, P
3130            SWAPJ = JPVT(J) .GT. 0
3131            NEGJ = JPVT(J) .LT. 0
3132            JPVT(J) = J
3133            IF (NEGJ) JPVT(J) = -J
3134            IF (.NOT.SWAPJ) GO TO 10
3135               IF (J .NE. PL) CALL DSWAP(N,X(1,PL),1,X(1,J),1)
3136               JPVT(J) = JPVT(PL)
3137               JPVT(PL) = J
3138               PL = PL + 1
3139   10       CONTINUE
3140   20    CONTINUE
3141         PU = P
3142         DO 50 JJ = 1, P
3143            J = P - JJ + 1
3144            IF (JPVT(J) .GE. 0) GO TO 40
3145               JPVT(J) = -JPVT(J)
3146               IF (J .EQ. PU) GO TO 30
3147                  CALL DSWAP(N,X(1,PU),1,X(1,J),1)
3148                  JP = JPVT(PU)
3149                  JPVT(PU) = JPVT(J)
3150                  JPVT(J) = JP
3151   30          CONTINUE
3152               PU = PU - 1
3153   40       CONTINUE
3154   50    CONTINUE
3155   60 CONTINUE
3156C
3157C     COMPUTE THE NORMS OF THE FREE COLUMNS.
3158C
3159      IF (PU .LT. PL) GO TO 80
3160      DO 70 J = PL, PU
3161         QRAUX(J) = DNRM2(N,X(1,J),1)
3162         WORK(J) = QRAUX(J)
3163   70 CONTINUE
3164   80 CONTINUE
3165C
3166C     PERFORM THE HOUSEHOLDER REDUCTION OF X.
3167C
3168      LUP = MIN0(N,P)
3169      DO 200 L = 1, LUP
3170         IF (L .LT. PL .OR. L .GE. PU) GO TO 120
3171C
3172C           LOCATE THE COLUMN OF LARGEST NORM AND BRING IT
3173C           INTO THE PIVOT POSITION.
3174C
3175            MAXNRM = 0.0D0
3176            MAXJ = L
3177            DO 100 J = L, PU
3178               IF (QRAUX(J) .LE. MAXNRM) GO TO 90
3179                  MAXNRM = QRAUX(J)
3180                  MAXJ = J
3181   90          CONTINUE
3182  100       CONTINUE
3183            IF (MAXJ .EQ. L) GO TO 110
3184               CALL DSWAP(N,X(1,L),1,X(1,MAXJ),1)
3185               QRAUX(MAXJ) = QRAUX(L)
3186               WORK(MAXJ) = WORK(L)
3187               JP = JPVT(MAXJ)
3188               JPVT(MAXJ) = JPVT(L)
3189               JPVT(L) = JP
3190  110       CONTINUE
3191  120    CONTINUE
3192         QRAUX(L) = 0.0D0
3193         IF (L .EQ. N) GO TO 190
3194C
3195C           COMPUTE THE HOUSEHOLDER TRANSFORMATION FOR COLUMN L.
3196C
3197            NRMXL = DNRM2(N-L+1,X(L,L),1)
3198            IF (NRMXL .EQ. 0.0D0) GO TO 180
3199               IF (X(L,L) .NE. 0.0D0) NRMXL = DSIGN(NRMXL,X(L,L))
3200               CALL DSCAL(N-L+1,1.0D0/NRMXL,X(L,L),1)
3201               X(L,L) = 1.0D0 + X(L,L)
3202C
3203C              APPLY THE TRANSFORMATION TO THE REMAINING COLUMNS,
3204C              UPDATING THE NORMS.
3205C
3206               LP1 = L + 1
3207               IF (P .LT. LP1) GO TO 170
3208               DO 160 J = LP1, P
3209                  T = -DDOT(N-L+1,X(L,L),1,X(L,J),1)/X(L,L)
3210                  CALL DAXPY(N-L+1,T,X(L,L),1,X(L,J),1)
3211                  IF (J .LT. PL .OR. J .GT. PU) GO TO 150
3212                  IF (QRAUX(J) .EQ. 0.0D0) GO TO 150
3213                     TT = 1.0D0 - (DABS(X(L,J))/QRAUX(J))**2
3214                     TT = DMAX1(TT,0.0D0)
3215                     T = TT
3216                     TT = 1.0D0 + 0.05D0*TT*(QRAUX(J)/WORK(J))**2
3217                     IF (TT .EQ. 1.0D0) GO TO 130
3218                        QRAUX(J) = QRAUX(J)*DSQRT(T)
3219                     GO TO 140
3220  130                CONTINUE
3221                        QRAUX(J) = DNRM2(N-L,X(L+1,J),1)
3222                        WORK(J) = QRAUX(J)
3223  140                CONTINUE
3224  150             CONTINUE
3225  160          CONTINUE
3226  170          CONTINUE
3227C
3228C              SAVE THE TRANSFORMATION.
3229C
3230               QRAUX(L) = X(L,L)
3231               X(L,L) = -NRMXL
3232  180       CONTINUE
3233  190    CONTINUE
3234  200 CONTINUE
3235      RETURN
3236      END
3237      SUBROUTINE DQRSL(X,LDX,N,K,QRAUX,Y,QY,QTY,B,RSD,XB,JOB,INFO)
3238C***BEGIN PROLOGUE  DQRSL
3239C***DATE WRITTEN   780814   (YYMMDD)
3240C***REVISION DATE  820801   (YYMMDD)
3241C***REVISION HISTORY  (YYMMDD)
3242C   000330  Modified array declarations.  (JEC)
3243C***CATEGORY NO.  D9,D2A1
3244C***KEYWORDS  DOUBLE PRECISION,LINEAR ALGEBRA,LINPACK,MATRIX,
3245C             ORTHOGONAL TRIANGULAR,SOLVE
3246C***AUTHOR  STEWART, G. W., (U. OF MARYLAND)
3247C***PURPOSE  Applies the output of DQRDC to compute coordinate
3248C            transformations, projections, and least squares solutions.
3249C***DESCRIPTION
3250C
3251C     DQRSL applies the output of DQRDC to compute coordinate
3252C     transformations, projections, and least squares solutions.
3253C     For K .LE. MIN(N,P), let XK be the matrix
3254C
3255C            XK = (X(JPVT(1)),X(JPVT(2)), ... ,X(JPVT(K)))
3256C
3257C     formed from columnns JPVT(1), ... ,JPVT(K) of the original
3258C     N X P matrix X that was input to DQRDC (if no pivoting was
3259C     done, XK consists of the first K columns of X in their
3260C     original order).  DQRDC produces a factored orthogonal matrix Q
3261C     and an upper triangular matrix R such that
3262C
3263C              XK = Q * (R)
3264C                       (0)
3265C
3266C     This information is contained in coded form in the arrays
3267C     X and QRAUX.
3268C
3269C     On Entry
3270C
3271C        X      DOUBLE PRECISION(LDX,P).
3272C               X contains the output of DQRDC.
3273C
3274C        LDX    INTEGER.
3275C               LDX is the leading dimension of the array X.
3276C
3277C        N      INTEGER.
3278C               N is the number of rows of the matrix XK.  It must
3279C               have the same value as N in DQRDC.
3280C
3281C        K      INTEGER.
3282C               K is the number of columns of the matrix XK.  K
3283C               must not be greater than MIN(N,P), where P is the
3284C               same as in the calling sequence to DQRDC.
3285C
3286C        QRAUX  DOUBLE PRECISION(P).
3287C               QRAUX contains the auxiliary output from DQRDC.
3288C
3289C        Y      DOUBLE PRECISION(N)
3290C               Y contains an N-vector that is to be manipulated
3291C               by DQRSL.
3292C
3293C        JOB    INTEGER.
3294C               JOB specifies what is to be computed.  JOB has
3295C               the decimal expansion ABCDE, with the following
3296C               meaning.
3297C
3298C                    If A .NE. 0, compute QY.
3299C                    If B,C,D, or E .NE. 0, compute QTY.
3300C                    If C .NE. 0, compute B.
3301C                    If D .NE. 0, compute RSD.
3302C                    If E .NE. 0, compute XB.
3303C
3304C               Note that a request to compute B, RSD, or XB
3305C               automatically triggers the computation of QTY, for
3306C               which an array must be provided in the calling
3307C               sequence.
3308C
3309C     On Return
3310C
3311C        QY     DOUBLE PRECISION(N).
3312C               QY contains Q*Y, if its computation has been
3313C               requested.
3314C
3315C        QTY    DOUBLE PRECISION(N).
3316C               QTY contains TRANS(Q)*Y, if its computation has
3317C               been requested.  Here TRANS(Q) is the
3318C               transpose of the matrix Q.
3319C
3320C        B      DOUBLE PRECISION(K)
3321C               B contains the solution of the least squares problem
3322C
3323C                    minimize norm2(Y - XK*B),
3324C
3325C               if its computation has been requested.  (Note that
3326C               if pivoting was requested in DQRDC, the J-th
3327C               component of B will be associated with column JPVT(J)
3328C               of the original matrix X that was input into DQRDC.)
3329C
3330C        RSD    DOUBLE PRECISION(N).
3331C               RSD contains the least squares residual Y - XK*B,
3332C               if its computation has been requested.  RSD is
3333C               also the orthogonal projection of Y onto the
3334C               orthogonal complement of the column space of XK.
3335C
3336C        XB     DOUBLE PRECISION(N).
3337C               XB contains the least squares approximation XK*B,
3338C               if its computation has been requested.  XB is also
3339C               the orthogonal projection of Y onto the column space
3340C               of X.
3341C
3342C        INFO   INTEGER.
3343C               INFO is zero unless the computation of B has
3344C               been requested and R is exactly singular.  In
3345C               this case, INFO is the index of the first zero
3346C               diagonal element of R and B is left unaltered.
3347C
3348C     The parameters QY, QTY, B, RSD, and XB are not referenced
3349C     if their computation is not requested and in this case
3350C     can be replaced by dummy variables in the calling program.
3351C     To save storage, the user may in some cases use the same
3352C     array for different parameters in the calling sequence.  A
3353C     frequently occuring example is when one wishes to compute
3354C     any of B, RSD, or XB and does not need Y or QTY.  In this
3355C     case one may identify Y, QTY, and one of B, RSD, or XB, while
3356C     providing separate arrays for anything else that is to be
3357C     computed.  Thus the calling sequence
3358C
3359C          CALL DQRSL(X,LDX,N,K,QRAUX,Y,DUM,Y,B,Y,DUM,110,INFO)
3360C
3361C     will result in the computation of B and RSD, with RSD
3362C     overwriting Y.  More generally, each item in the following
3363C     list contains groups of permissible identifications for
3364C     a single calling sequence.
3365C
3366C          1. (Y,QTY,B) (RSD) (XB) (QY)
3367C
3368C          2. (Y,QTY,RSD) (B) (XB) (QY)
3369C
3370C          3. (Y,QTY,XB) (B) (RSD) (QY)
3371C
3372C          4. (Y,QY) (QTY,B) (RSD) (XB)
3373C
3374C          5. (Y,QY) (QTY,RSD) (B) (XB)
3375C
3376C          6. (Y,QY) (QTY,XB) (B) (RSD)
3377C
3378C     In any group the value returned in the array allocated to
3379C     the group corresponds to the last member of the group.
3380C
3381C     LINPACK.  This version dated 08/14/78 .
3382C     G. W. Stewart, University of Maryland, Argonne National Lab.
3383C
3384C     DQRSL uses the following functions and subprograms.
3385C
3386C     BLAS DAXPY,DCOPY,DDOT
3387C     Fortran DABS,MIN0,MOD
3388C***REFERENCES  DONGARRA J.J., BUNCH J.R., MOLER C.B., STEWART G.W.,
3389C                 *LINPACK USERS  GUIDE*, SIAM, 1979.
3390C***ROUTINES CALLED  DAXPY,DCOPY,DDOT
3391C***END PROLOGUE  DQRSL
3392      INTEGER LDX,N,K,JOB,INFO
3393      DOUBLE PRECISION X(LDX,*),QRAUX(*),Y(*),QY(*),QTY(*),B(*),RSD(*),
3394     1                 XB(*)
3395C
3396      INTEGER I,J,JJ,JU,KP1
3397      DOUBLE PRECISION DDOT,T,TEMP
3398      LOGICAL CB,CQY,CQTY,CR,CXB
3399C
3400C     SET INFO FLAG.
3401C
3402C***FIRST EXECUTABLE STATEMENT  DQRSL
3403      INFO = 0
3404C
3405C     DETERMINE WHAT IS TO BE COMPUTED.
3406C
3407      CQY = JOB/10000 .NE. 0
3408      CQTY = MOD(JOB,10000) .NE. 0
3409      CB = MOD(JOB,1000)/100 .NE. 0
3410      CR = MOD(JOB,100)/10 .NE. 0
3411      CXB = MOD(JOB,10) .NE. 0
3412      JU = MIN0(K,N-1)
3413C
3414C     SPECIAL ACTION WHEN N=1.
3415C
3416      IF (JU .NE. 0) GO TO 40
3417         IF (CQY) QY(1) = Y(1)
3418         IF (CQTY) QTY(1) = Y(1)
3419         IF (CXB) XB(1) = Y(1)
3420         IF (.NOT.CB) GO TO 30
3421            IF (X(1,1) .NE. 0.0D0) GO TO 10
3422               INFO = 1
3423            GO TO 20
3424   10       CONTINUE
3425               B(1) = Y(1)/X(1,1)
3426   20       CONTINUE
3427   30    CONTINUE
3428         IF (CR) RSD(1) = 0.0D0
3429      GO TO 250
3430   40 CONTINUE
3431C
3432C        SET UP TO COMPUTE QY OR QTY.
3433C
3434         IF (CQY) CALL DCOPY(N,Y,1,QY,1)
3435         IF (CQTY) CALL DCOPY(N,Y,1,QTY,1)
3436         IF (.NOT.CQY) GO TO 70
3437C
3438C           COMPUTE QY.
3439C
3440            DO 60 JJ = 1, JU
3441               J = JU - JJ + 1
3442               IF (QRAUX(J) .EQ. 0.0D0) GO TO 50
3443                  TEMP = X(J,J)
3444                  X(J,J) = QRAUX(J)
3445                  T = -DDOT(N-J+1,X(J,J),1,QY(J),1)/X(J,J)
3446                  CALL DAXPY(N-J+1,T,X(J,J),1,QY(J),1)
3447                  X(J,J) = TEMP
3448   50          CONTINUE
3449   60       CONTINUE
3450   70    CONTINUE
3451         IF (.NOT.CQTY) GO TO 100
3452C
3453C           COMPUTE TRANS(Q)*Y.
3454C
3455            DO 90 J = 1, JU
3456               IF (QRAUX(J) .EQ. 0.0D0) GO TO 80
3457                  TEMP = X(J,J)
3458                  X(J,J) = QRAUX(J)
3459                  T = -DDOT(N-J+1,X(J,J),1,QTY(J),1)/X(J,J)
3460                  CALL DAXPY(N-J+1,T,X(J,J),1,QTY(J),1)
3461                  X(J,J) = TEMP
3462   80          CONTINUE
3463   90       CONTINUE
3464  100    CONTINUE
3465C
3466C        SET UP TO COMPUTE B, RSD, OR XB.
3467C
3468         IF (CB) CALL DCOPY(K,QTY,1,B,1)
3469         KP1 = K + 1
3470         IF (CXB) CALL DCOPY(K,QTY,1,XB,1)
3471         IF (CR .AND. K .LT. N) CALL DCOPY(N-K,QTY(KP1),1,RSD(KP1),1)
3472         IF (.NOT.CXB .OR. KP1 .GT. N) GO TO 120
3473            DO 110 I = KP1, N
3474               XB(I) = 0.0D0
3475  110       CONTINUE
3476  120    CONTINUE
3477         IF (.NOT.CR) GO TO 140
3478            DO 130 I = 1, K
3479               RSD(I) = 0.0D0
3480  130       CONTINUE
3481  140    CONTINUE
3482         IF (.NOT.CB) GO TO 190
3483C
3484C           COMPUTE B.
3485C
3486            DO 170 JJ = 1, K
3487               J = K - JJ + 1
3488               IF (X(J,J) .NE. 0.0D0) GO TO 150
3489                  INFO = J
3490C           ......EXIT
3491                  GO TO 180
3492  150          CONTINUE
3493               B(J) = B(J)/X(J,J)
3494               IF (J .EQ. 1) GO TO 160
3495                  T = -B(J)
3496                  CALL DAXPY(J-1,T,X(1,J),1,B,1)
3497  160          CONTINUE
3498  170       CONTINUE
3499  180       CONTINUE
3500  190    CONTINUE
3501         IF (.NOT.CR .AND. .NOT.CXB) GO TO 240
3502C
3503C           COMPUTE RSD OR XB AS REQUIRED.
3504C
3505            DO 230 JJ = 1, JU
3506               J = JU - JJ + 1
3507               IF (QRAUX(J) .EQ. 0.0D0) GO TO 220
3508                  TEMP = X(J,J)
3509                  X(J,J) = QRAUX(J)
3510                  IF (.NOT.CR) GO TO 200
3511                     T = -DDOT(N-J+1,X(J,J),1,RSD(J),1)/X(J,J)
3512                     CALL DAXPY(N-J+1,T,X(J,J),1,RSD(J),1)
3513  200             CONTINUE
3514                  IF (.NOT.CXB) GO TO 210
3515                     T = -DDOT(N-J+1,X(J,J),1,XB(J),1)/X(J,J)
3516                     CALL DAXPY(N-J+1,T,X(J,J),1,XB(J),1)
3517  210             CONTINUE
3518                  X(J,J) = TEMP
3519  220          CONTINUE
3520  230       CONTINUE
3521  240    CONTINUE
3522  250 CONTINUE
3523      RETURN
3524      END
3525      SUBROUTINE DRAW0(X,Y,N,ID,
3526     1                 XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3527     1                 IBUGG3,ISUBRO,IERROR)
3528C
3529C     PURPOSE--XX
3530C
3531C     WRITTEN BY--DAVID W. BEHRINGER NOAA/AOML (MIAMI).
3532C                 AS PART OF NOAA'S CONCX V.3   MARCH 1988.
3533C     ORIGINAL VERSION (IN DATAPLOT)--AUGUST    1988.
3534C
3535C
3536C---------------------------------------------------------------------
3537C
3538      CHARACTER*4 IBUGG3
3539      CHARACTER*4 ISUBRO
3540      CHARACTER*4 IERROR
3541C
3542      DIMENSION X(*)
3543      DIMENSION Y(*)
3544C
3545      DIMENSION XTEMP(*)
3546      DIMENSION YTEMP(*)
3547      DIMENSION TATEMP(*)
3548C
3549      INCLUDE 'DPCOP2.INC'
3550C
3551C-----START POINT-----------------------------------------------------
3552C
3553      IF(IBUGG3.EQ.'ON' .OR. ISUBRO.EQ.'RAW0')THEN
3554        WRITE(ICOUT,52)ID
3555   52   FORMAT('FROM DRAW0: ID = ',I8)
3556        CALL DPWRST('XXX','BUG ')
3557      ENDIF
3558C
3559CCCCC IF (ID.NE.0) CALL GDASH(ID)    AUGUST 1988
3560      IF (N.GT.1) CALL GVECT(X,Y,N,
3561     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3562     1IBUGG3,ISUBRO,IERROR)
3563      N=1
3564C
3565      RETURN
3566      END
3567      SUBROUTINE DRAWL(X,Y,DST,N,IDSH,CHR,NCHR,SZ,DL0,
3568     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3569     1IBUGG3,ISUBRO,IERROR)
3570C
3571C     PURPOSE--XX
3572C
3573C     WRITTEN BY--DAVID W. BEHRINGER NOAA/AOML (MIAMI).
3574C                 AS PART OF NOAA'S CONCX V.3   MARCH 1988.
3575C     ORIGINAL VERSION (IN DATAPLOT)--AUGUST    1988.
3576C     UPDATED                         MAY       1989.  TRIG DEGREE FUNCTIONS
3577C
3578C---------------------------------------------------------------------
3579C
3580CCCCC CHARACTER CHR(NCHR)*1    AUGUST 1988
3581      CHARACTER CHR(15)*1
3582C
3583      CHARACTER*4 IBUGG3
3584      CHARACTER*4 ISUBRO
3585      CHARACTER*4 IERROR
3586C
3587CCCCC DIMENSION X(N),Y(N),DST(N),XL(3),YL(3)
3588C
3589      DIMENSION X(*)
3590      DIMENSION Y(*)
3591      DIMENSION DST(*)
3592C
3593      DIMENSION XTEMP(*)
3594      DIMENSION YTEMP(*)
3595      DIMENSION TATEMP(*)
3596C
3597      DIMENSION XL(3)
3598      DIMENSION YL(3)
3599C
3600      DATA EPS,RSSX/0.01,1.15/
3601C     DATA EPS,RSSX/0.01,1.05/
3602C
3603C-----START POINT-----------------------------------------------------
3604C
3605CCCCC THE FOLLOWING LINE WAS ADDED TO FIX         MAY 1989
3606CCCCC THE TRIG DEGREES FUNCTIONS PROBLEM          MAY 1989
3607      CONDR=3.1415926/180.0
3608C
3609      A=0.0
3610      SZ2=0.5*SZ
3611      SSZ=SZ*FLOAT(NCHR)+SZ2
3612      SSZ2=0.5*SSZ
3613      CHR(NCHR+1)='$'
3614      DST(1)=0.
3615      DO100I=2,N
3616        DST(I)=DST(I-1)+SQRT((X(I)-X(I-1))**2+(Y(I)-Y(I-1))**2)
3617 100  CONTINUE
3618      I=2
3619 200  CONTINUE
3620      IF(I.GT.N)GOTO299
3621CCCCC DO WHILE (I.LE.N)                  JANUARY 1989
3622        IF (DST(I).LE.DST(I-1)) THEN
3623          N=N-1
3624          DO210J=I,N
3625            DST(J)=DST(J+1)
3626            X(J)=X(J+1)
3627            Y(J)=Y(J+1)
3628 210      CONTINUE
3629        ELSE
3630          I=I+1
3631        END IF
3632      GOTO200
3633 299  CONTINUE
3634      IF (DST(N).LT.EPS.OR.N.EQ.1) THEN
3635        N=1
3636        GOTO9000
3637      END IF
3638      NLBL=MAX0(INT(DST(N)/DL0),1)
3639      SEP=SQRT((X(N)-X(1))**2+(Y(N)-Y(1))**2)
3640      DL=DST(N)/FLOAT(NLBL)
3641      IF (NLBL.EQ.1.AND.SEP.LT.EPS.AND.DST(N).LT.2.*SSZ) THEN
3642        IR=1
3643        DO300I=2,N
3644          IF(X(I).GT.X(IR)) IR=I
3645 300    CONTINUE
3646CCCCC   CALL GCHARJ(4)   AUGUST 1988
3647        CALL GCHAR(CHR,X(IR)+SSZ2,Y(IR),SZ,
3648     1IBUGG3,ISUBRO,IERROR)
3649        CALL DRAW0(X,Y,N,IDSH,
3650     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3651     1IBUGG3,ISUBRO,IERROR)
3652        GOTO9000
3653      END IF
3654      IE=2
3655      XE=X(1)
3656      YE=Y(1)
3657      DO400NL=1,NLBL
3658        L=0
3659        DLBL0=FLOAT(NL-1)*DL
3660        DLBL=(FLOAT(NL)-0.5)*DL-0.5*SSZ
3661        I0=IE
3662        IEO=IE
3663        XEO=XE
3664        YEO=YE
3665 500    CONTINUE
3666        IF(L.NE.0.OR.DLBL.LE.DLBL0)GOTO599
3667CCCCC   DO WHILE (L.EQ.0.AND.DLBL.GT.DLBL0)   JANAURY 1989
3668          I=I0-1
3669 600      CONTINUE
3670          IF(DST(I).GE.DLBL.OR.I.GE.N)GOTO699
3671CCCCC     DO WHILE (DST(I).LT.DLBL.AND.I.LT.N)   JANUARY 1989
3672            I=I+1
3673            GOTO600
3674 699      CONTINUE
3675          IF (DST(I).GE.DLBL) THEN
3676            IS=I-1
3677            R=(DLBL-DST(IS))/(DST(IS+1)-DST(IS))
3678            XS=X(IS)+R*(X(IS+1)-X(IS))
3679            YS=Y(IS)+R*(Y(IS+1)-Y(IS))
3680            C=SQRT((X(I)-XS)**2+(Y(I)-YS)**2)
3681            A0=C
3682 700        CONTINUE
3683            IF(C.GE.SSZ.OR.I.GE.N)GOTO799
3684CCCCC       DO WHILE (C.LT.SSZ.AND.I.LT.N)   JANUARY 1989
3685              A=C
3686              I=I+1
3687              C=SQRT((X(I)-XS)**2+(Y(I)-YS)**2)
3688              GOTO700
3689 799        CONTINUE
3690            IF (C.GE.SSZ) THEN
3691              IE=I
3692              IF (IE.GT.IS+1) THEN
3693                B=DST(IE)-DST(IE-1)
3694                ACS=(A**2+B**2-C**2)/(2.0*B)
3695                D=ACS+SQRT(SSZ**2-A**2+ACS**2)
3696                ANG=ATAN2(Y(IE)-Y(IE-1),X(IE)-X(IE-1))
3697                XE=D*COS(ANG)+X(IE-1)
3698                YE=D*SIN(ANG)+Y(IE-1)
3699                RSS=(A0+DST(IE-1)-DST(IS+1)+D)/SSZ
3700C               RSS=(A+D)/SSZ
3701              ELSE
3702                R=SSZ/(DST(IE)-DLBL)
3703                XE=XS+R*(X(IE)-XS)
3704                YE=YS+R*(Y(IE)-YS)
3705                RSS=1.0
3706              END IF
3707              IF (RSS.LE.RSSX) THEN
3708                L=1
3709                N0=IS-I0+1
3710                XL(1)=XEO
3711                YL(1)=YEO
3712                IF (N0.GT.0) THEN
3713                  XL(2)=X(IEO)
3714                  YL(2)=Y(IEO)
3715                  N2=2
3716                  CALL DRAW0(XL,YL,N2,IDSH,
3717     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3718     1IBUGG3,ISUBRO,IERROR)
3719                  XL(1)=X(IS)
3720                  YL(1)=Y(IS)
3721                  CALL DRAW0(X(I0),Y(I0),N0,IDSH,
3722     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3723     1IBUGG3,ISUBRO,IERROR)
3724                END IF
3725                XL(2)=XS
3726                YL(2)=YS
3727                N2=2
3728                CALL DRAW0(XL,YL,N2,IDSH,
3729     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3730     1IBUGG3,ISUBRO,IERROR)
3731CCCCC THE FOLLOWING LINE WAS FIXED BY THE       MAY 1989
3732CCCCC SUCCEEDING 2 LINES                        MAY 1989
3733CCCCC           ANG=ATAN2D(YE-YS,XE-XS)
3734                ANGR=ATAN2(YE-YS,XE-XS)
3735                ANG=ANGR/CONDR
3736             IF (ANG.GT.90.) THEN
3737                  IANG=INT(ANG-180.499)
3738               JST=5
3739             ELSE IF (ANG.LT.-90.) THEN
3740                  IANG=INT(ANG+180.499)
3741               JST=5
3742             ELSE
3743                  IANG=INT(ANG+SIGN(0.499,ANG))
3744               JST=3
3745             END IF
3746CCCCC           CALL GCHARA(IANG)  AUGUST 1988
3747CCCCC           CALL GCHARJ(JST)  AUGUST 1988
3748CCCCC THE FOLLOWING LINE WAS FIXED BY THE       MAY 1989
3749CCCCC SUCCEEDING 2 LINES                        MAY 1989
3750CCCCC           CALL GCHAR(CHR,XS+SZ2*COSD(ANG),YS+SZ2*SIND(ANG),SZ,
3751                ANGR=ANG*CONDR
3752                CALL GCHAR(CHR,XS+SZ2*COS(ANGR),YS+SZ2*SIN(ANGR),SZ,
3753     1IBUGG3,ISUBRO,IERROR)
3754              ELSE
3755                DLBL=DLBL-0.5*SSZ
3756              END IF
3757            ELSE
3758              DLBL=DLBL-0.5*SSZ
3759            END IF
3760          ELSE
3761            DLBL=DLBL-0.5*SSZ
3762          END IF
3763          GOTO500
3764 599    CONTINUE
3765 400  CONTINUE
3766      XL(1)=XE
3767      YL(1)=YE
3768      XL(2)=X(IE)
3769      YL(2)=Y(IE)
3770      N2=2
3771      CALL DRAW0(XL,YL,N2,IDSH,
3772     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3773     1IBUGG3,ISUBRO,IERROR)
3774      N0=N-IE+1
3775      CALL DRAW0(X(IE),Y(IE),N0,IDSH,
3776     1XTEMP,YTEMP,TATEMP,NTEMP,NTRACE,
3777     1IBUGG3,ISUBRO,IERROR)
3778      N=1
3779      GOTO9000
3780C
3781 9000 CONTINUE
3782      RETURN
3783      END
3784      SUBROUTINE DRCIL1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
3785     1IBUGD2,IFOUND,IERROR)
3786C
3787C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
3788C              FOR ROMAN COMPLEX ITALIC LOWER CASE (PART 1).
3789C     WRITTEN BY--JAMES J. FILLIBEN
3790C                 STATISTICAL ENGINEERING DIVISION
3791C                 CENTER FOR APPLIED MATHEMATICS
3792C                 NATIONAL BUREAU OF STANDARDS
3793C                 WASHINGTON, D. C. 20234
3794C                 PHONE--301-921-3651
3795C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
3796C           OF THE NATIONAL BUREAU OF STANDARDS.
3797C     LANGUAGE--ANSI FORTRAN (1977)
3798C     VERSION NUMBER--87/4
3799C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
3800C     UPDATED         --MAY       1982.
3801C     UPDATED         --MARCH     1987.
3802C
3803C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
3804C
3805      CHARACTER*4 IOP
3806      CHARACTER*4 IBUGD2
3807      CHARACTER*4 IFOUND
3808      CHARACTER*4 IERROR
3809C
3810      CHARACTER*4 IOPERA
3811C
3812C---------------------------------------------------------------------
3813C
3814      DIMENSION IOP(*)
3815      DIMENSION X(*)
3816      DIMENSION Y(*)
3817C
3818      DIMENSION IOPERA(300)
3819      DIMENSION IX(300)
3820      DIMENSION IY(300)
3821C
3822      DIMENSION IXMIND(30)
3823      DIMENSION IXMAXD(30)
3824      DIMENSION IXDELD(30)
3825      DIMENSION ISTARD(30)
3826      DIMENSION NUMCOO(30)
3827C
3828C---------------------------------------------------------------------
3829C
3830      INCLUDE 'DPCOP2.INC'
3831C
3832C-----DATA STATEMENTS-------------------------------------------------
3833C
3834C     DEFINE CHARACTER   2151--LOWER CASE A
3835C
3836      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   6,   5/
3837      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',   4,  -2/
3838      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',   3,  -6/
3839      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',   3,  -8/
3840      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',   4,  -9/
3841      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',   7,  -9/
3842      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',   9,  -7/
3843      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  10,  -5/
3844      DATA IOPERA(   9),IX(   9),IY(   9)/'MOVE',   7,   5/
3845      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   5,  -2/
3846      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   4,  -6/
3847      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   4,  -8/
3848      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   5,  -9/
3849      DATA IOPERA(  14),IX(  14),IY(  14)/'MOVE',   4,  -2/
3850      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   4,   1/
3851      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   3,   4/
3852      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   1,   5/
3853      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',  -1,   5/
3854      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -4,   4/
3855      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',  -6,   1/
3856      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  -7,  -2/
3857      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  -7,  -5/
3858      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -6,  -7/
3859      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -5,  -8/
3860      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -3,  -9/
3861      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -1,  -9/
3862      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   1,  -8/
3863      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   3,  -5/
3864      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   4,  -2/
3865      DATA IOPERA(  30),IX(  30),IY(  30)/'MOVE',  -1,   5/
3866      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -3,   4/
3867      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -5,   1/
3868      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -6,  -2/
3869      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -6,  -6/
3870      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -5,  -8/
3871C
3872      DATA IXMIND(   1)/ -10/
3873      DATA IXMAXD(   1)/  11/
3874      DATA IXDELD(   1)/  21/
3875      DATA ISTARD(   1)/   1/
3876      DATA NUMCOO(   1)/  35/
3877C
3878C     DEFINE CHARACTER   2152--LOWER CASE B
3879C
3880      DATA IOPERA(  36),IX(  36),IY(  36)/'MOVE',  -2,  12/
3881      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -6,  -1/
3882      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -6,  -4/
3883      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -5,  -7/
3884      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -4,  -8/
3885      DATA IOPERA(  41),IX(  41),IY(  41)/'MOVE',  -1,  12/
3886      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -5,  -1/
3887      DATA IOPERA(  43),IX(  43),IY(  43)/'MOVE',  -5,  -1/
3888      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -4,   2/
3889      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -2,   4/
3890      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   0,   5/
3891      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   2,   5/
3892      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',   4,   4/
3893      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   5,   3/
3894      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',   6,   1/
3895      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   6,  -2/
3896      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   5,  -5/
3897      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   3,  -8/
3898      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   0,  -9/
3899      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',  -2,  -9/
3900      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -4,  -8/
3901      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -5,  -5/
3902      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -5,  -1/
3903      DATA IOPERA(  59),IX(  59),IY(  59)/'MOVE',   4,   4/
3904      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   5,   2/
3905      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   5,  -2/
3906      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   4,  -5/
3907      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   2,  -8/
3908      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   0,  -9/
3909      DATA IOPERA(  65),IX(  65),IY(  65)/'MOVE',  -5,  12/
3910      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -1,  12/
3911C
3912      DATA IXMIND(   2)/ -10/
3913      DATA IXMAXD(   2)/   9/
3914      DATA IXDELD(   2)/  19/
3915      DATA ISTARD(   2)/  36/
3916      DATA NUMCOO(   2)/  31/
3917C
3918C     DEFINE CHARACTER   2153--LOWER CASE C
3919C
3920      DATA IOPERA(  67),IX(  67),IY(  67)/'MOVE',   5,   2/
3921      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   5,   1/
3922      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   6,   1/
3923      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   6,   2/
3924      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   5,   4/
3925      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   3,   5/
3926      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',   0,   5/
3927      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -3,   4/
3928      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -5,   1/
3929      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6,  -2/
3930      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -6,  -5/
3931      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -5,  -7/
3932      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -4,  -8/
3933      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -2,  -9/
3934      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   0,  -9/
3935      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   3,  -8/
3936      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   5,  -5/
3937      DATA IOPERA(  84),IX(  84),IY(  84)/'MOVE',   0,   5/
3938      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',  -2,   4/
3939      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -4,   1/
3940      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -5,  -2/
3941      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -5,  -6/
3942      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -4,  -8/
3943C
3944      DATA IXMIND(   3)/  -9/
3945      DATA IXMAXD(   3)/   9/
3946      DATA IXDELD(   3)/  18/
3947      DATA ISTARD(   3)/  67/
3948      DATA NUMCOO(   3)/  23/
3949C
3950C     DEFINE CHARACTER   2154--LOWER CASE D
3951C
3952      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE',   8,  12/
3953      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   4,  -2/
3954      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   3,  -6/
3955      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   3,  -8/
3956      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   4,  -9/
3957      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   7,  -9/
3958      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   9,  -7/
3959      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  10,  -5/
3960      DATA IOPERA(  98),IX(  98),IY(  98)/'MOVE',   9,  12/
3961      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   5,  -2/
3962      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   4,  -6/
3963      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   4,  -8/
3964      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   5,  -9/
3965      DATA IOPERA( 103),IX( 103),IY( 103)/'MOVE',   4,  -2/
3966      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   4,   1/
3967      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   3,   4/
3968      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   1,   5/
3969      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -1,   5/
3970      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',  -4,   4/
3971      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -6,   1/
3972      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -7,  -2/
3973      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -7,  -5/
3974      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',  -6,  -7/
3975      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -5,  -8/
3976      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',  -3,  -9/
3977      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -1,  -9/
3978      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   1,  -8/
3979      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   3,  -5/
3980      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   4,  -2/
3981      DATA IOPERA( 119),IX( 119),IY( 119)/'MOVE',  -1,   5/
3982      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',  -3,   4/
3983      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',  -5,   1/
3984      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',  -6,  -2/
3985      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -6,  -6/
3986      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -5,  -8/
3987      DATA IOPERA( 125),IX( 125),IY( 125)/'MOVE',   5,  12/
3988      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   9,  12/
3989C
3990      DATA IXMIND(   4)/ -10/
3991      DATA IXMAXD(   4)/  11/
3992      DATA IXDELD(   4)/  21/
3993      DATA ISTARD(   4)/  90/
3994      DATA NUMCOO(   4)/  37/
3995C
3996C     DEFINE CHARACTER   2155--LOWER CASE E
3997C
3998      DATA IOPERA( 127),IX( 127),IY( 127)/'MOVE',  -5,  -4/
3999      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -1,  -3/
4000      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   2,  -2/
4001      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   5,   0/
4002      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   6,   2/
4003      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   5,   4/
4004      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   3,   5/
4005      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   0,   5/
4006      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -3,   4/
4007      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -5,   1/
4008      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  -6,  -2/
4009      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  -6,  -5/
4010      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',  -5,  -7/
4011      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -4,  -8/
4012      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -2,  -9/
4013      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',   0,  -9/
4014      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',   3,  -8/
4015      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   5,  -6/
4016      DATA IOPERA( 145),IX( 145),IY( 145)/'MOVE',   0,   5/
4017      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',  -2,   4/
4018      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',  -4,   1/
4019      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -5,  -2/
4020      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -5,  -6/
4021      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -4,  -8/
4022C
4023      DATA IXMIND(   5)/  -9/
4024      DATA IXMAXD(   5)/   9/
4025      DATA IXDELD(   5)/  18/
4026      DATA ISTARD(   5)/ 127/
4027      DATA NUMCOO(   5)/  24/
4028C
4029C     DEFINE CHARACTER   2156--LOWER CASE F
4030C
4031      DATA IOPERA( 151),IX( 151),IY( 151)/'MOVE',   8,  11/
4032      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   7,  10/
4033      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   8,   9/
4034      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   9,  10/
4035      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   9,  11/
4036      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   8,  12/
4037      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   6,  12/
4038      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',   4,  11/
4039      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   3,  10/
4040      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',   2,   8/
4041      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',   1,   5/
4042      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -2,  -9/
4043      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -3, -13/
4044      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -4, -15/
4045      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',   6,  12/
4046      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   4,  10/
4047      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   3,   8/
4048      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   2,   4/
4049      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   0,  -5/
4050      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -1,  -9/
4051      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -2, -12/
4052      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -3, -14/
4053      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -4, -15/
4054      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -6, -16/
4055      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',  -8, -16/
4056      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',  -9, -15/
4057      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',  -9, -14/
4058      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',  -8, -13/
4059      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',  -7, -14/
4060      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -8, -15/
4061      DATA IOPERA( 181),IX( 181),IY( 181)/'MOVE',  -3,   5/
4062      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   7,   5/
4063C
4064      DATA IXMIND(   6)/  -7/
4065      DATA IXMAXD(   6)/   8/
4066      DATA IXDELD(   6)/  15/
4067      DATA ISTARD(   6)/ 151/
4068      DATA NUMCOO(   6)/  32/
4069C
4070C     DEFINE CHARACTER   2157--LOWER CASE G
4071C
4072      DATA IOPERA( 183),IX( 183),IY( 183)/'MOVE',   7,   5/
4073      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   3,  -9/
4074      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',   2, -12/
4075      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',   0, -15/
4076      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -3, -16/
4077      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',  -6, -16/
4078      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -8, -15/
4079      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',  -9, -14/
4080      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -9, -13/
4081      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',  -8, -12/
4082      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  -7, -13/
4083      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',  -8, -14/
4084      DATA IOPERA( 195),IX( 195),IY( 195)/'MOVE',   6,   5/
4085      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   2,  -9/
4086      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   1, -12/
4087      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -1, -15/
4088      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -3, -16/
4089      DATA IOPERA( 200),IX( 200),IY( 200)/'MOVE',   4,  -2/
4090      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   4,   1/
4091      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   3,   4/
4092      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',   1,   5/
4093      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -1,   5/
4094      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -4,   4/
4095      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -6,   1/
4096      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -7,  -2/
4097      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -7,  -5/
4098      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -6,  -7/
4099      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -5,  -8/
4100      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -3,  -9/
4101      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',  -1,  -9/
4102      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   1,  -8/
4103      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   3,  -5/
4104      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   4,  -2/
4105      DATA IOPERA( 216),IX( 216),IY( 216)/'MOVE',  -1,   5/
4106      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -3,   4/
4107      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -5,   1/
4108      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -6,  -2/
4109      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -6,  -6/
4110      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -5,  -8/
4111C
4112      DATA IXMIND(   7)/ -10/
4113      DATA IXMAXD(   7)/  10/
4114      DATA IXDELD(   7)/  20/
4115      DATA ISTARD(   7)/ 183/
4116      DATA NUMCOO(   7)/  39/
4117C
4118C     DEFINE CHARACTER   2158--LOWER CASE H
4119C
4120      DATA IOPERA( 222),IX( 222),IY( 222)/'MOVE',  -2,  12/
4121      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -8,  -9/
4122      DATA IOPERA( 224),IX( 224),IY( 224)/'MOVE',  -1,  12/
4123      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  -7,  -9/
4124      DATA IOPERA( 226),IX( 226),IY( 226)/'MOVE',  -5,  -2/
4125      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',  -3,   2/
4126      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',  -1,   4/
4127      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   1,   5/
4128      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',   3,   5/
4129      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   5,   4/
4130      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   6,   3/
4131      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',   6,   1/
4132      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   4,  -5/
4133      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   4,  -8/
4134      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   5,  -9/
4135      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',   3,   5/
4136      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   5,   3/
4137      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   5,   1/
4138      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   3,  -5/
4139      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   3,  -8/
4140      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',   4,  -9/
4141      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   7,  -9/
4142      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',   9,  -7/
4143      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',  10,  -5/
4144      DATA IOPERA( 246),IX( 246),IY( 246)/'MOVE',  -5,  12/
4145      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -1,  12/
4146C
4147      DATA IXMIND(   8)/ -10/
4148      DATA IXMAXD(   8)/  11/
4149      DATA IXDELD(   8)/  21/
4150      DATA ISTARD(   8)/ 222/
4151      DATA NUMCOO(   8)/  26/
4152C
4153C     DEFINE CHARACTER   2159--LOWER CASE I
4154C
4155      DATA IOPERA( 248),IX( 248),IY( 248)/'MOVE',   3,  12/
4156      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',   2,  11/
4157      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',   3,  10/
4158      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   4,  11/
4159      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   3,  12/
4160      DATA IOPERA( 253),IX( 253),IY( 253)/'MOVE',  -5,   1/
4161      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  -4,   3/
4162      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',  -2,   5/
4163      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   1,   5/
4164      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   2,   4/
4165      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   2,   1/
4166      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',   0,  -5/
4167      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',   0,  -8/
4168      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',   1,  -9/
4169      DATA IOPERA( 262),IX( 262),IY( 262)/'MOVE',   0,   5/
4170      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',   1,   4/
4171      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',   1,   1/
4172      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',  -1,  -5/
4173      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',  -1,  -8/
4174      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',   0,  -9/
4175      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   3,  -9/
4176      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',   5,  -7/
4177      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   6,  -5/
4178C
4179      DATA IXMIND(   9)/  -6/
4180      DATA IXMAXD(   9)/   7/
4181      DATA IXDELD(   9)/  13/
4182      DATA ISTARD(   9)/ 248/
4183      DATA NUMCOO(   9)/  23/
4184C
4185C     DEFINE CHARACTER   2160--LOWER CASE J
4186C
4187      DATA IOPERA( 271),IX( 271),IY( 271)/'MOVE',   4,  12/
4188      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   3,  11/
4189      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',   4,  10/
4190      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',   5,  11/
4191      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',   4,  12/
4192      DATA IOPERA( 276),IX( 276),IY( 276)/'MOVE',  -4,   1/
4193      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -3,   3/
4194      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -1,   5/
4195      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',   2,   5/
4196      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',   3,   4/
4197      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',   3,   1/
4198      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',   0,  -9/
4199      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',  -1, -12/
4200      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',  -2, -14/
4201      DATA IOPERA( 285),IX( 285),IY( 285)/'DRAW',  -3, -15/
4202      DATA IOPERA( 286),IX( 286),IY( 286)/'DRAW',  -5, -16/
4203      DATA IOPERA( 287),IX( 287),IY( 287)/'DRAW',  -7, -16/
4204      DATA IOPERA( 288),IX( 288),IY( 288)/'DRAW',  -8, -15/
4205      DATA IOPERA( 289),IX( 289),IY( 289)/'DRAW',  -8, -14/
4206      DATA IOPERA( 290),IX( 290),IY( 290)/'DRAW',  -7, -13/
4207      DATA IOPERA( 291),IX( 291),IY( 291)/'DRAW',  -6, -14/
4208      DATA IOPERA( 292),IX( 292),IY( 292)/'DRAW',  -7, -15/
4209      DATA IOPERA( 293),IX( 293),IY( 293)/'MOVE',   1,   5/
4210      DATA IOPERA( 294),IX( 294),IY( 294)/'DRAW',   2,   4/
4211      DATA IOPERA( 295),IX( 295),IY( 295)/'DRAW',   2,   1/
4212      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',  -1,  -9/
4213      DATA IOPERA( 297),IX( 297),IY( 297)/'DRAW',  -2, -12/
4214      DATA IOPERA( 298),IX( 298),IY( 298)/'DRAW',  -3, -14/
4215      DATA IOPERA( 299),IX( 299),IY( 299)/'DRAW',  -5, -16/
4216C
4217      DATA IXMIND(  10)/  -6/
4218      DATA IXMAXD(  10)/   7/
4219      DATA IXDELD(  10)/  13/
4220      DATA ISTARD(  10)/ 271/
4221      DATA NUMCOO(  10)/  29/
4222C
4223C-----START POINT-----------------------------------------------------
4224C
4225      IFOUND='YES'
4226      IERROR='NO'
4227C
4228      NUMCO=1
4229      ISTART=1
4230      ISTOP=1
4231      NC=1
4232C
4233C               ******************************************
4234C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
4235C               **  HERSHEY CHARACTER SET CASE          **
4236C               ******************************************
4237C
4238C
4239      IF(IBUGD2.EQ.'OFF')GOTO90
4240      WRITE(ICOUT,999)
4241  999 FORMAT(1X)
4242      CALL DPWRST('XXX','BUG ')
4243      WRITE(ICOUT,51)
4244   51 FORMAT('***** AT THE BEGINNING OF DRCIL1--')
4245      CALL DPWRST('XXX','BUG ')
4246      WRITE(ICOUT,52)ICHARN
4247   52 FORMAT('ICHARN = ',I8)
4248      CALL DPWRST('XXX','BUG ')
4249      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
4250   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
4251      CALL DPWRST('XXX','BUG ')
4252   90 CONTINUE
4253C
4254C               **************************************
4255C               **  STEP 2--                        **
4256C               **  EXTRACT THE COORDINATES         **
4257C               **  FOR THIS PARTICULAR CHARACTER.  **
4258C               **************************************
4259C
4260      ISTART=ISTARD(ICHARN)
4261      NC=NUMCOO(ICHARN)
4262      ISTOP=ISTART+NC-1
4263      J=0
4264      DO1100I=ISTART,ISTOP
4265      J=J+1
4266      IOP(J)=IOPERA(I)
4267      X(J)=IX(I)
4268      Y(J)=IY(I)
4269 1100 CONTINUE
4270      NUMCO=J
4271      IXMINS=IXMIND(ICHARN)
4272      IXMAXS=IXMAXD(ICHARN)
4273      IXDELS=IXDELD(ICHARN)
4274C
4275      GOTO9000
4276C
4277C               *****************
4278C               **  STEP 90--  **
4279C               **  EXIT       **
4280C               *****************
4281C
4282 9000 CONTINUE
4283      IF(IBUGD2.EQ.'OFF')GOTO9090
4284      WRITE(ICOUT,999)
4285      CALL DPWRST('XXX','BUG ')
4286      WRITE(ICOUT,9011)
4287 9011 FORMAT('***** AT THE END       OF DRCIL1--')
4288      CALL DPWRST('XXX','BUG ')
4289      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
4290 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
4291      CALL DPWRST('XXX','BUG ')
4292      WRITE(ICOUT,9013)ICHARN
4293 9013 FORMAT('ICHARN = ',I8)
4294      CALL DPWRST('XXX','BUG ')
4295      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
4296 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
4297      CALL DPWRST('XXX','BUG ')
4298      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
4299      DO9015I=1,NUMCO
4300      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
4301 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
4302      CALL DPWRST('XXX','BUG ')
4303 9015 CONTINUE
4304 9019 CONTINUE
4305      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
4306 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
4307      CALL DPWRST('XXX','BUG ')
4308 9090 CONTINUE
4309C
4310      RETURN
4311      END
4312      SUBROUTINE DRCIL2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
4313     1IBUGD2,IFOUND,IERROR)
4314C
4315C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
4316C              FOR ROMAN COMPLEX ITALIC LOWER CASE (PART 2).
4317C     WRITTEN BY--JAMES J. FILLIBEN
4318C                 STATISTICAL ENGINEERING DIVISION
4319C                 CENTER FOR APPLIED MATHEMATICS
4320C                 NATIONAL BUREAU OF STANDARDS
4321C                 WASHINGTON, D. C. 20234
4322C                 PHONE--301-921-3651
4323C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
4324C           OF THE NATIONAL BUREAU OF STANDARDS.
4325C     LANGUAGE--ANSI FORTRAN (1977)
4326C     VERSION NUMBER--87/4
4327C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
4328C     UPDATED         --MAY       1982.
4329C     UPDATED         --MARCH     1987.
4330C
4331C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
4332C
4333      CHARACTER*4 IOP
4334      CHARACTER*4 IBUGD2
4335      CHARACTER*4 IFOUND
4336      CHARACTER*4 IERROR
4337C
4338      CHARACTER*4 IOPERA
4339C
4340C---------------------------------------------------------------------
4341C
4342      DIMENSION IOP(*)
4343      DIMENSION X(*)
4344      DIMENSION Y(*)
4345C
4346      DIMENSION IOPERA(300)
4347      DIMENSION IX(300)
4348      DIMENSION IY(300)
4349C
4350      DIMENSION IXMIND(30)
4351      DIMENSION IXMAXD(30)
4352      DIMENSION IXDELD(30)
4353      DIMENSION ISTARD(30)
4354      DIMENSION NUMCOO(30)
4355C
4356C---------------------------------------------------------------------
4357C
4358      INCLUDE 'DPCOP2.INC'
4359C
4360C-----DATA STATEMENTS-------------------------------------------------
4361C
4362C     DEFINE CHARACTER   2161--LOWER CASE K
4363C
4364      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',  -2,  12/
4365      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -8,  -9/
4366      DATA IOPERA(   3),IX(   3),IY(   3)/'MOVE',  -1,  12/
4367      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -7,  -9/
4368      DATA IOPERA(   5),IX(   5),IY(   5)/'MOVE',   6,   4/
4369      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',   5,   3/
4370      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',   6,   2/
4371      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',   7,   3/
4372      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',   7,   4/
4373      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   6,   5/
4374      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   5,   5/
4375      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   3,   4/
4376      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -1,   0/
4377      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -3,  -1/
4378      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',  -5,  -1/
4379      DATA IOPERA(  16),IX(  16),IY(  16)/'MOVE',  -3,  -1/
4380      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -1,  -2/
4381      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   1,  -8/
4382      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   2,  -9/
4383      DATA IOPERA(  20),IX(  20),IY(  20)/'MOVE',  -3,  -1/
4384      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  -2,  -2/
4385      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   0,  -8/
4386      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   1,  -9/
4387      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   3,  -9/
4388      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   5,  -8/
4389      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   7,  -5/
4390      DATA IOPERA(  27),IX(  27),IY(  27)/'MOVE',  -5,  12/
4391      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -1,  12/
4392C
4393      DATA IXMIND(  11)/ -10/
4394      DATA IXMAXD(  11)/  10/
4395      DATA IXDELD(  11)/  20/
4396      DATA ISTARD(  11)/   1/
4397      DATA NUMCOO(  11)/  28/
4398C
4399C     DEFINE CHARACTER   2162--LOWER CASE L
4400C
4401      DATA IOPERA(  29),IX(  29),IY(  29)/'MOVE',   3,  12/
4402      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -1,  -2/
4403      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -2,  -6/
4404      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -2,  -8/
4405      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -1,  -9/
4406      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   2,  -9/
4407      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   4,  -7/
4408      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   5,  -5/
4409      DATA IOPERA(  37),IX(  37),IY(  37)/'MOVE',   4,  12/
4410      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   0,  -2/
4411      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -1,  -6/
4412      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -1,  -8/
4413      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   0,  -9/
4414      DATA IOPERA(  42),IX(  42),IY(  42)/'MOVE',   0,  12/
4415      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   4,  12/
4416C
4417      DATA IXMIND(  12)/  -5/
4418      DATA IXMAXD(  12)/   7/
4419      DATA IXDELD(  12)/  12/
4420      DATA ISTARD(  12)/  29/
4421      DATA NUMCOO(  12)/  15/
4422C
4423C     DEFINE CHARACTER   2163--LOWER CASE M
4424C
4425      DATA IOPERA(  44),IX(  44),IY(  44)/'MOVE', -16,   1/
4426      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW', -15,   3/
4427      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW', -13,   5/
4428      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW', -10,   5/
4429      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -9,   4/
4430      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -9,   2/
4431      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW', -10,  -2/
4432      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW', -12,  -9/
4433      DATA IOPERA(  52),IX(  52),IY(  52)/'MOVE', -11,   5/
4434      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW', -10,   4/
4435      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW', -10,   2/
4436      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW', -11,  -2/
4437      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW', -13,  -9/
4438      DATA IOPERA(  57),IX(  57),IY(  57)/'MOVE', -10,  -2/
4439      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -8,   2/
4440      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -6,   4/
4441      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -4,   5/
4442      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -2,   5/
4443      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   0,   4/
4444      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   1,   3/
4445      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   1,   1/
4446      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -2,  -9/
4447      DATA IOPERA(  66),IX(  66),IY(  66)/'MOVE',  -2,   5/
4448      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   0,   3/
4449      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   0,   1/
4450      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -3,  -9/
4451      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',   0,  -2/
4452      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   2,   2/
4453      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   4,   4/
4454      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',   6,   5/
4455      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',   8,   5/
4456      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  10,   4/
4457      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  11,   3/
4458      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  11,   1/
4459      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   9,  -5/
4460      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   9,  -8/
4461      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  10,  -9/
4462      DATA IOPERA(  81),IX(  81),IY(  81)/'MOVE',   8,   5/
4463      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',  10,   3/
4464      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  10,   1/
4465      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   8,  -5/
4466      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   8,  -8/
4467      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   9,  -9/
4468      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  12,  -9/
4469      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  14,  -7/
4470      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  15,  -5/
4471C
4472      DATA IXMIND(  13)/ -17/
4473      DATA IXMAXD(  13)/  16/
4474      DATA IXDELD(  13)/  33/
4475      DATA ISTARD(  13)/  44/
4476      DATA NUMCOO(  13)/  46/
4477C
4478C     DEFINE CHARACTER   2164--LOWER CASE N
4479C
4480      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE', -11,   1/
4481      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW', -10,   3/
4482      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -8,   5/
4483      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',  -5,   5/
4484      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -4,   4/
4485      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -4,   2/
4486      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -5,  -2/
4487      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -7,  -9/
4488      DATA IOPERA(  98),IX(  98),IY(  98)/'MOVE',  -6,   5/
4489      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',  -5,   4/
4490      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  -5,   2/
4491      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -6,  -2/
4492      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',  -8,  -9/
4493      DATA IOPERA( 103),IX( 103),IY( 103)/'MOVE',  -5,  -2/
4494      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -3,   2/
4495      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -1,   4/
4496      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   1,   5/
4497      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   3,   5/
4498      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   5,   4/
4499      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   6,   3/
4500      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   6,   1/
4501      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   4,  -5/
4502      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   4,  -8/
4503      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   5,  -9/
4504      DATA IOPERA( 114),IX( 114),IY( 114)/'MOVE',   3,   5/
4505      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   5,   3/
4506      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   5,   1/
4507      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   3,  -5/
4508      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   3,  -8/
4509      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   4,  -9/
4510      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',   7,  -9/
4511      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   9,  -7/
4512      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',  10,  -5/
4513C
4514      DATA IXMIND(  14)/ -12/
4515      DATA IXMAXD(  14)/  11/
4516      DATA IXDELD(  14)/  23/
4517      DATA ISTARD(  14)/  90/
4518      DATA NUMCOO(  14)/  33/
4519C
4520C     DEFINE CHARACTER   2165--LOWER CASE O
4521C
4522      DATA IOPERA( 123),IX( 123),IY( 123)/'MOVE',   0,   5/
4523      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -3,   4/
4524      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -5,   1/
4525      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -6,  -2/
4526      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',  -6,  -5/
4527      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -5,  -7/
4528      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -4,  -8/
4529      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -2,  -9/
4530      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   0,  -9/
4531      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   3,  -8/
4532      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   5,  -5/
4533      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   6,  -2/
4534      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   6,   1/
4535      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   5,   3/
4536      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',   4,   4/
4537      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',   2,   5/
4538      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   0,   5/
4539      DATA IOPERA( 140),IX( 140),IY( 140)/'MOVE',   0,   5/
4540      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -2,   4/
4541      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -4,   1/
4542      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -5,  -2/
4543      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -5,  -6/
4544      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -4,  -8/
4545      DATA IOPERA( 146),IX( 146),IY( 146)/'MOVE',   0,  -9/
4546      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   2,  -8/
4547      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   4,  -5/
4548      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   5,  -2/
4549      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   5,   2/
4550      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   4,   4/
4551C
4552      DATA IXMIND(  15)/  -9/
4553      DATA IXMAXD(  15)/   9/
4554      DATA IXDELD(  15)/  18/
4555      DATA ISTARD(  15)/ 123/
4556      DATA NUMCOO(  15)/  29/
4557C
4558C     DEFINE CHARACTER   2166--LOWER CASE P
4559C
4560      DATA IOPERA( 152),IX( 152),IY( 152)/'MOVE', -10,   1/
4561      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -9,   3/
4562      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',  -7,   5/
4563      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -4,   5/
4564      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -3,   4/
4565      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -3,   2/
4566      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -4,  -2/
4567      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -8, -16/
4568      DATA IOPERA( 160),IX( 160),IY( 160)/'MOVE',  -5,   5/
4569      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -4,   4/
4570      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -4,   2/
4571      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -5,  -2/
4572      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -9, -16/
4573      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',  -4,  -2/
4574      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -3,   1/
4575      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -1,   4/
4576      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   1,   5/
4577      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   3,   5/
4578      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   5,   4/
4579      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   6,   3/
4580      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   7,   1/
4581      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',   7,  -2/
4582      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',   6,  -5/
4583      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   4,  -8/
4584      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   1,  -9/
4585      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',  -1,  -9/
4586      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',  -3,  -8/
4587      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',  -4,  -5/
4588      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -4,  -2/
4589      DATA IOPERA( 181),IX( 181),IY( 181)/'MOVE',   5,   4/
4590      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   6,   2/
4591      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   6,  -2/
4592      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   5,  -5/
4593      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',   3,  -8/
4594      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',   1,  -9/
4595      DATA IOPERA( 187),IX( 187),IY( 187)/'MOVE', -12, -16/
4596      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',  -5, -16/
4597C
4598      DATA IXMIND(  16)/ -11/
4599      DATA IXMAXD(  16)/  10/
4600      DATA IXDELD(  16)/  21/
4601      DATA ISTARD(  16)/ 152/
4602      DATA NUMCOO(  16)/  37/
4603C
4604C     DEFINE CHARACTER   2167--LOWER CASE Q
4605C
4606      DATA IOPERA( 189),IX( 189),IY( 189)/'MOVE',   6,   5/
4607      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   0, -16/
4608      DATA IOPERA( 191),IX( 191),IY( 191)/'MOVE',   7,   5/
4609      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   1, -16/
4610      DATA IOPERA( 193),IX( 193),IY( 193)/'MOVE',   4,  -2/
4611      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   4,   1/
4612      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   3,   4/
4613      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   1,   5/
4614      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  -1,   5/
4615      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -4,   4/
4616      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -6,   1/
4617      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -7,  -2/
4618      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -7,  -5/
4619      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -6,  -7/
4620      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -5,  -8/
4621      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -3,  -9/
4622      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -1,  -9/
4623      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   1,  -8/
4624      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   3,  -5/
4625      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',   4,  -2/
4626      DATA IOPERA( 209),IX( 209),IY( 209)/'MOVE',  -1,   5/
4627      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -3,   4/
4628      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -5,   1/
4629      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',  -6,  -2/
4630      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',  -6,  -6/
4631      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',  -5,  -8/
4632      DATA IOPERA( 215),IX( 215),IY( 215)/'MOVE',  -3, -16/
4633      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   4, -16/
4634C
4635      DATA IXMIND(  17)/ -10/
4636      DATA IXMAXD(  17)/  10/
4637      DATA IXDELD(  17)/  20/
4638      DATA ISTARD(  17)/ 189/
4639      DATA NUMCOO(  17)/  28/
4640C
4641C     DEFINE CHARACTER   2168--LOWER CASE R
4642C
4643      DATA IOPERA( 217),IX( 217),IY( 217)/'MOVE',  -8,   1/
4644      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -7,   3/
4645      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -5,   5/
4646      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -2,   5/
4647      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -1,   4/
4648      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',  -1,   2/
4649      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -2,  -2/
4650      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',  -4,  -9/
4651      DATA IOPERA( 225),IX( 225),IY( 225)/'MOVE',  -3,   5/
4652      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  -2,   4/
4653      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',  -2,   2/
4654      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',  -3,  -2/
4655      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',  -5,  -9/
4656      DATA IOPERA( 230),IX( 230),IY( 230)/'MOVE',  -2,  -2/
4657      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   0,   2/
4658      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   2,   4/
4659      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',   4,   5/
4660      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   6,   5/
4661      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   7,   4/
4662      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   7,   3/
4663      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',   6,   2/
4664      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   5,   3/
4665      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   6,   4/
4666C
4667      DATA IXMIND(  18)/  -9/
4668      DATA IXMAXD(  18)/   8/
4669      DATA IXDELD(  18)/  17/
4670      DATA ISTARD(  18)/ 217/
4671      DATA NUMCOO(  18)/  23/
4672C
4673C     DEFINE CHARACTER   2169--LOWER CASE S
4674C
4675      DATA IOPERA( 240),IX( 240),IY( 240)/'MOVE',   6,   3/
4676      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   6,   2/
4677      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',   7,   2/
4678      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   7,   3/
4679      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',   6,   4/
4680      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',   3,   5/
4681      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',   0,   5/
4682      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -3,   4/
4683      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -4,   3/
4684      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -4,   1/
4685      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',  -3,   0/
4686      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   4,  -4/
4687      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   5,  -5/
4688      DATA IOPERA( 253),IX( 253),IY( 253)/'MOVE',  -4,   2/
4689      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  -3,   1/
4690      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',   4,  -3/
4691      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   5,  -4/
4692      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   5,  -7/
4693      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   4,  -8/
4694      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',   1,  -9/
4695      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -2,  -9/
4696      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -5,  -8/
4697      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -6,  -7/
4698      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -6,  -6/
4699      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -5,  -6/
4700      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',  -5,  -7/
4701C
4702      DATA IXMIND(  19)/  -8/
4703      DATA IXMAXD(  19)/   9/
4704      DATA IXDELD(  19)/  17/
4705      DATA ISTARD(  19)/ 240/
4706      DATA NUMCOO(  19)/  26/
4707C
4708C     DEFINE CHARACTER   2170--LOWER CASE T
4709C
4710      DATA IOPERA( 266),IX( 266),IY( 266)/'MOVE',   2,  12/
4711      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',  -2,  -2/
4712      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',  -3,  -6/
4713      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',  -3,  -8/
4714      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',  -2,  -9/
4715      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',   1,  -9/
4716      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   3,  -7/
4717      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',   4,  -5/
4718      DATA IOPERA( 274),IX( 274),IY( 274)/'MOVE',   3,  12/
4719      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -1,  -2/
4720      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -2,  -6/
4721      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -2,  -8/
4722      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -1,  -9/
4723      DATA IOPERA( 279),IX( 279),IY( 279)/'MOVE',  -4,   5/
4724      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',   5,   5/
4725C
4726      DATA IXMIND(  20)/  -7/
4727      DATA IXMAXD(  20)/   7/
4728      DATA IXDELD(  20)/  14/
4729      DATA ISTARD(  20)/ 266/
4730      DATA NUMCOO(  20)/  15/
4731C
4732C-----START POINT-----------------------------------------------------
4733C
4734      IFOUND='YES'
4735      IERROR='NO'
4736C
4737      NUMCO=1
4738      ISTART=1
4739      ISTOP=1
4740      NC=1
4741C
4742C               ******************************************
4743C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
4744C               **  HERSHEY CHARACTER SET CASE          **
4745C               ******************************************
4746C
4747C
4748      IF(IBUGD2.EQ.'OFF')GOTO90
4749      WRITE(ICOUT,999)
4750  999 FORMAT(1X)
4751      CALL DPWRST('XXX','BUG ')
4752      WRITE(ICOUT,51)
4753   51 FORMAT('***** AT THE BEGINNING OF DRCIL2--')
4754      CALL DPWRST('XXX','BUG ')
4755      WRITE(ICOUT,52)ICHARN
4756   52 FORMAT('ICHARN = ',I8)
4757      CALL DPWRST('XXX','BUG ')
4758      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
4759   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
4760      CALL DPWRST('XXX','BUG ')
4761   90 CONTINUE
4762C
4763C               **************************************
4764C               **  STEP 2--                        **
4765C               **  EXTRACT THE COORDINATES         **
4766C               **  FOR THIS PARTICULAR CHARACTER.  **
4767C               **************************************
4768C
4769      ISTART=ISTARD(ICHARN)
4770      NC=NUMCOO(ICHARN)
4771      ISTOP=ISTART+NC-1
4772      J=0
4773      DO1100I=ISTART,ISTOP
4774      J=J+1
4775      IOP(J)=IOPERA(I)
4776      X(J)=IX(I)
4777      Y(J)=IY(I)
4778 1100 CONTINUE
4779      NUMCO=J
4780      IXMINS=IXMIND(ICHARN)
4781      IXMAXS=IXMAXD(ICHARN)
4782      IXDELS=IXDELD(ICHARN)
4783C
4784      GOTO9000
4785C
4786C               *****************
4787C               **  STEP 90--  **
4788C               **  EXIT       **
4789C               *****************
4790C
4791 9000 CONTINUE
4792      IF(IBUGD2.EQ.'OFF')GOTO9090
4793      WRITE(ICOUT,999)
4794      CALL DPWRST('XXX','BUG ')
4795      WRITE(ICOUT,9011)
4796 9011 FORMAT('***** AT THE END       OF DRCIL2--')
4797      CALL DPWRST('XXX','BUG ')
4798      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
4799 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
4800      CALL DPWRST('XXX','BUG ')
4801      WRITE(ICOUT,9013)ICHARN
4802 9013 FORMAT('ICHARN = ',I8)
4803      CALL DPWRST('XXX','BUG ')
4804      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
4805 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
4806      CALL DPWRST('XXX','BUG ')
4807      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
4808      DO9015I=1,NUMCO
4809      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
4810 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
4811      CALL DPWRST('XXX','BUG ')
4812 9015 CONTINUE
4813 9019 CONTINUE
4814      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
4815 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
4816      CALL DPWRST('XXX','BUG ')
4817 9090 CONTINUE
4818C
4819      RETURN
4820      END
4821      SUBROUTINE DRCIL3(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
4822     1IBUGD2,IFOUND,IERROR)
4823C
4824C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
4825C              FOR ROMAN COMPLEX ITALIC LOWER CASE (PART 3).
4826C     WRITTEN BY--JAMES J. FILLIBEN
4827C                 STATISTICAL ENGINEERING DIVISION
4828C                 CENTER FOR APPLIED MATHEMATICS
4829C                 NATIONAL BUREAU OF STANDARDS
4830C                 WASHINGTON, D. C. 20234
4831C                 PHONE--301-921-3651
4832C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
4833C           OF THE NATIONAL BUREAU OF STANDARDS.
4834C     LANGUAGE--ANSI FORTRAN (1977)
4835C     VERSION NUMBER--87/4
4836C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
4837C     UPDATED         --MAY       1982.
4838C     UPDATED         --MARCH     1987.
4839C
4840C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
4841C
4842      CHARACTER*4 IOP
4843      CHARACTER*4 IBUGD2
4844      CHARACTER*4 IFOUND
4845      CHARACTER*4 IERROR
4846C
4847      CHARACTER*4 IOPERA
4848C
4849C---------------------------------------------------------------------
4850C
4851      DIMENSION IOP(*)
4852      DIMENSION X(*)
4853      DIMENSION Y(*)
4854C
4855      DIMENSION IOPERA(300)
4856      DIMENSION IX(300)
4857      DIMENSION IY(300)
4858C
4859      DIMENSION IXMIND(30)
4860      DIMENSION IXMAXD(30)
4861      DIMENSION IXDELD(30)
4862      DIMENSION ISTARD(30)
4863      DIMENSION NUMCOO(30)
4864C
4865C---------------------------------------------------------------------
4866C
4867      INCLUDE 'DPCOP2.INC'
4868C
4869C-----DATA STATEMENTS-------------------------------------------------
4870C
4871C     DEFINE CHARACTER   2171--LOWER CASE U
4872C
4873      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -11,   1/
4874      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -10,   3/
4875      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -8,   5/
4876      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -5,   5/
4877      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -4,   4/
4878      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -4,   1/
4879      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -6,  -5/
4880      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -6,  -7/
4881      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -4,  -9/
4882      DATA IOPERA(  10),IX(  10),IY(  10)/'MOVE',  -6,   5/
4883      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -5,   4/
4884      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -5,   1/
4885      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -7,  -5/
4886      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -7,  -7/
4887      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',  -6,  -8/
4888      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -4,  -9/
4889      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -2,  -9/
4890      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   0,  -8/
4891      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   2,  -6/
4892      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   4,  -2/
4893      DATA IOPERA(  21),IX(  21),IY(  21)/'MOVE',   6,   5/
4894      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   4,  -2/
4895      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   3,  -6/
4896      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   3,  -8/
4897      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   4,  -9/
4898      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   7,  -9/
4899      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   9,  -7/
4900      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  10,  -5/
4901      DATA IOPERA(  29),IX(  29),IY(  29)/'MOVE',   7,   5/
4902      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   5,  -2/
4903      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',   4,  -6/
4904      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   4,  -8/
4905      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   5,  -9/
4906C
4907      DATA IXMIND(  21)/ -12/
4908      DATA IXMAXD(  21)/  11/
4909      DATA IXDELD(  21)/  23/
4910      DATA ISTARD(  21)/   1/
4911      DATA NUMCOO(  21)/  33/
4912C
4913C     DEFINE CHARACTER   2172--LOWER CASE V
4914C
4915      DATA IOPERA(  34),IX(  34),IY(  34)/'MOVE',  -9,   1/
4916      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -8,   3/
4917      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -6,   5/
4918      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -3,   5/
4919      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -2,   4/
4920      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -2,   1/
4921      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -4,  -5/
4922      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -4,  -7/
4923      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -2,  -9/
4924      DATA IOPERA(  43),IX(  43),IY(  43)/'MOVE',  -4,   5/
4925      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -3,   4/
4926      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -3,   1/
4927      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',  -5,  -5/
4928      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -5,  -7/
4929      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -4,  -8/
4930      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -2,  -9/
4931      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  -1,  -9/
4932      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   2,  -8/
4933      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   4,  -6/
4934      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   6,  -3/
4935      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   7,   1/
4936      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   7,   5/
4937      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   6,   5/
4938      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   7,   3/
4939C
4940      DATA IXMIND(  22)/ -10/
4941      DATA IXMAXD(  22)/  10/
4942      DATA IXDELD(  22)/  20/
4943      DATA ISTARD(  22)/  34/
4944      DATA NUMCOO(  22)/  24/
4945C
4946C     DEFINE CHARACTER   2173--LOWER CASE W
4947C
4948      DATA IOPERA(  58),IX(  58),IY(  58)/'MOVE', -14,   1/
4949      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW', -13,   3/
4950      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW', -11,   5/
4951      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -8,   5/
4952      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -7,   4/
4953      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -7,   1/
4954      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -9,  -5/
4955      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -9,  -7/
4956      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -7,  -9/
4957      DATA IOPERA(  67),IX(  67),IY(  67)/'MOVE',  -9,   5/
4958      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',  -8,   4/
4959      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -8,   1/
4960      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW', -10,  -5/
4961      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW', -10,  -7/
4962      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -9,  -8/
4963      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -7,  -9/
4964      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -5,  -9/
4965      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -3,  -8/
4966      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -1,  -6/
4967      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   0,  -4/
4968      DATA IOPERA(  78),IX(  78),IY(  78)/'MOVE',   2,   5/
4969      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   0,  -4/
4970      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   0,  -7/
4971      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   1,  -8/
4972      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   3,  -9/
4973      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   5,  -9/
4974      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   7,  -8/
4975      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   9,  -6/
4976      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  10,  -4/
4977      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  11,   0/
4978      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  11,   5/
4979      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  10,   5/
4980      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  11,   3/
4981      DATA IOPERA(  91),IX(  91),IY(  91)/'MOVE',   3,   5/
4982      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   1,  -4/
4983      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   1,  -7/
4984      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   3,  -9/
4985C
4986      DATA IXMIND(  23)/ -15/
4987      DATA IXMAXD(  23)/  14/
4988      DATA IXDELD(  23)/  29/
4989      DATA ISTARD(  23)/  58/
4990      DATA NUMCOO(  23)/  37/
4991C
4992C     DEFINE CHARACTER   2174--LOWER CASE X
4993C
4994      DATA IOPERA(  95),IX(  95),IY(  95)/'MOVE',  -7,   1/
4995      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -5,   4/
4996      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -3,   5/
4997      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   0,   5/
4998      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   1,   3/
4999      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   1,   0/
5000      DATA IOPERA( 101),IX( 101),IY( 101)/'MOVE',  -1,   5/
5001      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   0,   3/
5002      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   0,   0/
5003      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -1,  -4/
5004      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -2,  -6/
5005      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -4,  -8/
5006      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -6,  -9/
5007      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',  -7,  -9/
5008      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -8,  -8/
5009      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -8,  -7/
5010      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -7,  -6/
5011      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',  -6,  -7/
5012      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -7,  -8/
5013      DATA IOPERA( 114),IX( 114),IY( 114)/'MOVE',  -1,  -4/
5014      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -1,  -7/
5015      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   0,  -9/
5016      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   3,  -9/
5017      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   5,  -8/
5018      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   7,  -5/
5019      DATA IOPERA( 120),IX( 120),IY( 120)/'MOVE',   7,   4/
5020      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   6,   3/
5021      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   7,   2/
5022      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',   8,   3/
5023      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   8,   4/
5024      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   7,   5/
5025      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   6,   5/
5026      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   4,   4/
5027      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   2,   2/
5028      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   1,   0/
5029      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   0,  -4/
5030      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   0,  -7/
5031      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   1,  -9/
5032C
5033      DATA IXMIND(  24)/ -10/
5034      DATA IXMAXD(  24)/  10/
5035      DATA IXDELD(  24)/  20/
5036      DATA ISTARD(  24)/  95/
5037      DATA NUMCOO(  24)/  38/
5038C
5039C     DEFINE CHARACTER   2175--LOWER CASE Y
5040C
5041      DATA IOPERA( 133),IX( 133),IY( 133)/'MOVE', -10,   1/
5042      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -9,   3/
5043      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -7,   5/
5044      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -4,   5/
5045      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  -3,   4/
5046      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  -3,   1/
5047      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',  -5,  -5/
5048      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -5,  -7/
5049      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -3,  -9/
5050      DATA IOPERA( 142),IX( 142),IY( 142)/'MOVE',  -5,   5/
5051      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -4,   4/
5052      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -4,   1/
5053      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -6,  -5/
5054      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',  -6,  -7/
5055      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',  -5,  -8/
5056      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -3,  -9/
5057      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -1,  -9/
5058      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   1,  -8/
5059      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   3,  -6/
5060      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   5,  -2/
5061      DATA IOPERA( 153),IX( 153),IY( 153)/'MOVE',   8,   5/
5062      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   4,  -9/
5063      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   3, -12/
5064      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   1, -15/
5065      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -2, -16/
5066      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -5, -16/
5067      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -7, -15/
5068      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -8, -14/
5069      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -8, -13/
5070      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -7, -12/
5071      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -6, -13/
5072      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -7, -14/
5073      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',   7,   5/
5074      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   3,  -9/
5075      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   2, -12/
5076      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   0, -15/
5077      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',  -2, -16/
5078C
5079      DATA IXMIND(  25)/ -11/
5080      DATA IXMAXD(  25)/  10/
5081      DATA IXDELD(  25)/  21/
5082      DATA ISTARD(  25)/ 133/
5083      DATA NUMCOO(  25)/  37/
5084C
5085C     DEFINE CHARACTER   2176--LOWER CASE Z
5086C
5087      DATA IOPERA( 170),IX( 170),IY( 170)/'MOVE',   7,   5/
5088      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   6,   3/
5089      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   4,   1/
5090      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -4,  -5/
5091      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -6,  -7/
5092      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',  -7,  -9/
5093      DATA IOPERA( 176),IX( 176),IY( 176)/'MOVE',  -6,   1/
5094      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',  -5,   3/
5095      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',  -3,   5/
5096      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   0,   5/
5097      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   4,   3/
5098      DATA IOPERA( 181),IX( 181),IY( 181)/'MOVE',  -5,   3/
5099      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -3,   4/
5100      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   0,   4/
5101      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   4,   3/
5102      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',   6,   3/
5103      DATA IOPERA( 186),IX( 186),IY( 186)/'MOVE',  -6,  -7/
5104      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -4,  -7/
5105      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   0,  -8/
5106      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   3,  -8/
5107      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   5,  -7/
5108      DATA IOPERA( 191),IX( 191),IY( 191)/'MOVE',  -4,  -7/
5109      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   0,  -9/
5110      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   3,  -9/
5111      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   5,  -7/
5112      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   6,  -5/
5113C
5114      DATA IXMIND(  26)/ -10/
5115      DATA IXMAXD(  26)/  10/
5116      DATA IXDELD(  26)/  20/
5117      DATA ISTARD(  26)/ 170/
5118      DATA NUMCOO(  26)/  26/
5119C
5120C-----START POINT-----------------------------------------------------
5121C
5122      IFOUND='YES'
5123      IERROR='NO'
5124C
5125      NUMCO=1
5126      ISTART=1
5127      ISTOP=1
5128      NC=1
5129C
5130C               ******************************************
5131C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
5132C               **  HERSHEY CHARACTER SET CASE          **
5133C               ******************************************
5134C
5135C
5136      IF(IBUGD2.EQ.'OFF')GOTO90
5137      WRITE(ICOUT,999)
5138  999 FORMAT(1X)
5139      CALL DPWRST('XXX','BUG ')
5140      WRITE(ICOUT,51)
5141   51 FORMAT('***** AT THE BEGINNING OF DRCIL3--')
5142      CALL DPWRST('XXX','BUG ')
5143      WRITE(ICOUT,52)ICHARN
5144   52 FORMAT('ICHARN = ',I8)
5145      CALL DPWRST('XXX','BUG ')
5146      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
5147   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5148      CALL DPWRST('XXX','BUG ')
5149   90 CONTINUE
5150C
5151C               **************************************
5152C               **  STEP 2--                        **
5153C               **  EXTRACT THE COORDINATES         **
5154C               **  FOR THIS PARTICULAR CHARACTER.  **
5155C               **************************************
5156C
5157      ISTART=ISTARD(ICHARN)
5158      NC=NUMCOO(ICHARN)
5159      ISTOP=ISTART+NC-1
5160      J=0
5161      DO1100I=ISTART,ISTOP
5162      J=J+1
5163      IOP(J)=IOPERA(I)
5164      X(J)=IX(I)
5165      Y(J)=IY(I)
5166 1100 CONTINUE
5167      NUMCO=J
5168      IXMINS=IXMIND(ICHARN)
5169      IXMAXS=IXMAXD(ICHARN)
5170      IXDELS=IXDELD(ICHARN)
5171C
5172      GOTO9000
5173C
5174C               *****************
5175C               **  STEP 90--  **
5176C               **  EXIT       **
5177C               *****************
5178C
5179 9000 CONTINUE
5180      IF(IBUGD2.EQ.'OFF')GOTO9090
5181      WRITE(ICOUT,999)
5182      CALL DPWRST('XXX','BUG ')
5183      WRITE(ICOUT,9011)
5184 9011 FORMAT('***** AT THE END       OF DRCIL3--')
5185      CALL DPWRST('XXX','BUG ')
5186      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
5187 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5188      CALL DPWRST('XXX','BUG ')
5189      WRITE(ICOUT,9013)ICHARN
5190 9013 FORMAT('ICHARN = ',I8)
5191      CALL DPWRST('XXX','BUG ')
5192      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
5193 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
5194      CALL DPWRST('XXX','BUG ')
5195      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
5196      DO9015I=1,NUMCO
5197      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
5198 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
5199      CALL DPWRST('XXX','BUG ')
5200 9015 CONTINUE
5201 9019 CONTINUE
5202      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
5203 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
5204      CALL DPWRST('XXX','BUG ')
5205 9090 CONTINUE
5206C
5207      RETURN
5208      END
5209      SUBROUTINE DRCIN1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
5210     1IBUGD2,IFOUND,IERROR)
5211C
5212C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
5213C              FOR ROMAN COMPLEX ITALIC NUMERIC (PART 1).
5214C     WRITTEN BY--JAMES J. FILLIBEN
5215C                 STATISTICAL ENGINEERING DIVISION
5216C                 CENTER FOR APPLIED MATHEMATICS
5217C                 NATIONAL BUREAU OF STANDARDS
5218C                 WASHINGTON, D. C. 20234
5219C                 PHONE--301-921-3651
5220C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
5221C           OF THE NATIONAL BUREAU OF STANDARDS.
5222C     LANGUAGE--ANSI FORTRAN (1977)
5223C     VERSION NUMBER--87/4
5224C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
5225C     UPDATED         --MAY       1982.
5226C     UPDATED         --MARCH     1987.
5227C
5228C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
5229C
5230      CHARACTER*4 IOP
5231      CHARACTER*4 IBUGD2
5232      CHARACTER*4 IFOUND
5233      CHARACTER*4 IERROR
5234C
5235      CHARACTER*4 IOPERA
5236C
5237C---------------------------------------------------------------------
5238C
5239      DIMENSION IOP(*)
5240      DIMENSION X(*)
5241      DIMENSION Y(*)
5242C
5243      DIMENSION IOPERA(300)
5244      DIMENSION IX(300)
5245      DIMENSION IY(300)
5246C
5247      DIMENSION IXMIND(30)
5248      DIMENSION IXMAXD(30)
5249      DIMENSION IXDELD(30)
5250      DIMENSION ISTARD(30)
5251      DIMENSION NUMCOO(30)
5252C
5253C---------------------------------------------------------------------
5254C
5255      INCLUDE 'DPCOP2.INC'
5256C
5257C-----DATA STATEMENTS-------------------------------------------------
5258C
5259C     DEFINE CHARACTER      0--0
5260C
5261      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -10,   0/
5262      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -13,  -1/
5263      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW', -15,  -3/
5264      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW', -17,  -6/
5265      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW', -18,  -9/
5266      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW', -19, -13/
5267      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW', -19, -16/
5268      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW', -18, -19/
5269      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW', -17, -20/
5270      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW', -15, -21/
5271      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW', -13, -21/
5272      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW', -10, -20/
5273      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -8, -18/
5274      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -6, -15/
5275      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',  -5, -12/
5276      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -4,  -8/
5277      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -4,  -5/
5278      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',  -5,  -2/
5279      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -6,  -1/
5280      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',  -8,   0/
5281      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW', -10,   0/
5282      DATA IOPERA(  22),IX(  22),IY(  22)/'MOVE', -10,   0/
5283      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW', -12,  -1/
5284      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW', -14,  -3/
5285      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW', -16,  -6/
5286      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW', -17,  -9/
5287      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW', -18, -13/
5288      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW', -18, -16/
5289      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW', -17, -19/
5290      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW', -15, -21/
5291      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE', -13, -21/
5292      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW', -11, -20/
5293      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -9, -18/
5294      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -7, -15/
5295      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -6, -12/
5296      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -5,  -8/
5297      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -5,  -5/
5298      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -6,  -2/
5299      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -8,   0/
5300C
5301      DATA IXMIND(   1)/ -10/
5302      DATA IXMAXD(   1)/  11/
5303      DATA IXDELD(   1)/  21/
5304      DATA ISTARD(   1)/   1/
5305      DATA NUMCOO(   1)/  39/
5306C
5307C     DEFINE CHARACTER      1--1
5308C
5309      DATA IOPERA(  40),IX(  40),IY(  40)/'MOVE', -10,  -4/
5310      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW', -15, -21/
5311      DATA IOPERA(  42),IX(  42),IY(  42)/'MOVE',  -8,   0/
5312      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW', -14, -21/
5313      DATA IOPERA(  44),IX(  44),IY(  44)/'MOVE',  -8,   0/
5314      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW', -11,  -3/
5315      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW', -14,  -5/
5316      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW', -16,  -6/
5317      DATA IOPERA(  48),IX(  48),IY(  48)/'MOVE',  -9,  -3/
5318      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW', -13,  -5/
5319      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW', -16,  -6/
5320C
5321      DATA IXMIND(   2)/ -10/
5322      DATA IXMAXD(   2)/  11/
5323      DATA IXDELD(   2)/  21/
5324      DATA ISTARD(   2)/  40/
5325      DATA NUMCOO(   2)/  11/
5326C
5327C     DEFINE CHARACTER      2--2
5328C
5329      DATA IOPERA(  51),IX(  51),IY(  51)/'MOVE', -15,  -4/
5330      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW', -14,  -5/
5331      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW', -15,  -6/
5332      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW', -16,  -5/
5333      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW', -16,  -4/
5334      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW', -15,  -2/
5335      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW', -14,  -1/
5336      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW', -11,   0/
5337      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -8,   0/
5338      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -5,  -1/
5339      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -4,  -3/
5340      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -4,  -5/
5341      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -5,  -7/
5342      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -7,  -9/
5343      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW', -10, -11/
5344      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW', -14, -13/
5345      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW', -17, -15/
5346      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW', -19, -17/
5347      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW', -21, -21/
5348      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',  -8,   0/
5349      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -6,  -1/
5350      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -5,  -3/
5351      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -5,  -5/
5352      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -6,  -7/
5353      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -8,  -9/
5354      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW', -14, -13/
5355      DATA IOPERA(  77),IX(  77),IY(  77)/'MOVE', -20, -19/
5356      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW', -19, -18/
5357      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW', -17, -18/
5358      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW', -12, -20/
5359      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',  -9, -20/
5360      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',  -7, -19/
5361      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -6, -17/
5362      DATA IOPERA(  84),IX(  84),IY(  84)/'MOVE', -17, -18/
5363      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW', -12, -21/
5364      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -9, -21/
5365      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -7, -20/
5366      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -6, -17/
5367      DATA IOPERA(  89),IX(  89),IY(  89)/'MOVE', -32, -32/
5368C
5369      DATA IXMIND(   3)/ -10/
5370      DATA IXMAXD(   3)/  11/
5371      DATA IXDELD(   3)/  21/
5372      DATA ISTARD(   3)/  51/
5373      DATA NUMCOO(   3)/  39/
5374C
5375C     DEFINE CHARACTER      3--3
5376C
5377      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE', -15,  -4/
5378      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW', -14,  -5/
5379      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW', -15,  -6/
5380      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW', -16,  -5/
5381      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW', -16,  -4/
5382      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW', -15,  -2/
5383      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW', -14,  -1/
5384      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW', -11,   0/
5385      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',  -8,   0/
5386      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',  -5,  -1/
5387      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  -4,  -3/
5388      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -4,  -5/
5389      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',  -5,  -7/
5390      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',  -8,  -9/
5391      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW', -11, -10/
5392      DATA IOPERA( 105),IX( 105),IY( 105)/'MOVE',  -8,   0/
5393      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -6,  -1/
5394      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -5,  -3/
5395      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',  -5,  -5/
5396      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -6,  -7/
5397      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -8,  -9/
5398      DATA IOPERA( 111),IX( 111),IY( 111)/'MOVE', -13, -10/
5399      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW', -11, -10/
5400      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -8, -11/
5401      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',  -7, -12/
5402      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -6, -14/
5403      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -6, -17/
5404      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',  -7, -19/
5405      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -8, -20/
5406      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW', -11, -21/
5407      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW', -15, -21/
5408      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW', -18, -20/
5409      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW', -19, -19/
5410      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW', -20, -17/
5411      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW', -20, -16/
5412      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW', -19, -15/
5413      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW', -18, -16/
5414      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW', -19, -17/
5415      DATA IOPERA( 128),IX( 128),IY( 128)/'MOVE', -11, -10/
5416      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -9, -11/
5417      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -8, -12/
5418      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',  -7, -14/
5419      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -7, -17/
5420      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -8, -19/
5421      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -9, -20/
5422      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW', -11, -21/
5423      DATA IOPERA( 136),IX( 136),IY( 136)/'MOVE', -32, -32/
5424C
5425      DATA IXMIND(   4)/ -10/
5426      DATA IXMAXD(   4)/  11/
5427      DATA IXDELD(   4)/  21/
5428      DATA ISTARD(   4)/  90/
5429      DATA NUMCOO(   4)/  47/
5430C
5431C     DEFINE CHARACTER      4--4
5432C
5433      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',  -6,  -1/
5434      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW', -12, -21/
5435      DATA IOPERA( 139),IX( 139),IY( 139)/'MOVE',  -5,   0/
5436      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW', -11, -21/
5437      DATA IOPERA( 141),IX( 141),IY( 141)/'MOVE',  -5,   0/
5438      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW', -20, -15/
5439      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -4, -15/
5440C
5441      DATA IXMIND(   5)/ -10/
5442      DATA IXMAXD(   5)/  11/
5443      DATA IXDELD(   5)/  21/
5444      DATA ISTARD(   5)/ 137/
5445      DATA NUMCOO(   5)/   7/
5446C
5447C     DEFINE CHARACTER      5--5
5448C
5449      DATA IOPERA( 144),IX( 144),IY( 144)/'MOVE', -13,   0/
5450      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW', -18, -10/
5451      DATA IOPERA( 146),IX( 146),IY( 146)/'MOVE', -13,   0/
5452      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',  -3,   0/
5453      DATA IOPERA( 148),IX( 148),IY( 148)/'MOVE', -13,  -1/
5454      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -8,  -1/
5455      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -3,   0/
5456      DATA IOPERA( 151),IX( 151),IY( 151)/'MOVE', -18, -10/
5457      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW', -17,  -9/
5458      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW', -14,  -8/
5459      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW', -11,  -8/
5460      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -8,  -9/
5461      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -7, -10/
5462      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -6, -12/
5463      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -6, -15/
5464      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -7, -18/
5465      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -9, -20/
5466      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW', -12, -21/
5467      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW', -15, -21/
5468      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW', -18, -20/
5469      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW', -19, -19/
5470      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW', -20, -17/
5471      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW', -20, -16/
5472      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW', -19, -15/
5473      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW', -18, -16/
5474      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW', -19, -17/
5475      DATA IOPERA( 170),IX( 170),IY( 170)/'MOVE', -11,  -8/
5476      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -9,  -9/
5477      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -8, -10/
5478      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -7, -12/
5479      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -7, -15/
5480      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',  -8, -18/
5481      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW', -10, -20/
5482      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW', -12, -21/
5483      DATA IOPERA( 178),IX( 178),IY( 178)/'MOVE', -32, -32/
5484C
5485      DATA IXMIND(   6)/ -10/
5486      DATA IXMAXD(   6)/  11/
5487      DATA IXDELD(   6)/  21/
5488      DATA ISTARD(   6)/ 144/
5489      DATA NUMCOO(   6)/  35/
5490C
5491C     DEFINE CHARACTER      6--6
5492C
5493      DATA IOPERA( 179),IX( 179),IY( 179)/'MOVE',  -5,  -3/
5494      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -6,  -4/
5495      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -5,  -5/
5496      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -4,  -4/
5497      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -4,  -3/
5498      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -5,  -1/
5499      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -7,   0/
5500      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW', -10,   0/
5501      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW', -13,  -1/
5502      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW', -15,  -3/
5503      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW', -17,  -6/
5504      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW', -18,  -9/
5505      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW', -19, -13/
5506      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW', -19, -17/
5507      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW', -18, -19/
5508      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW', -17, -20/
5509      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW', -15, -21/
5510      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW', -12, -21/
5511      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  -9, -20/
5512      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -7, -18/
5513      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -6, -16/
5514      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -6, -13/
5515      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -7, -11/
5516      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -8, -10/
5517      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW', -10,  -9/
5518      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW', -13,  -9/
5519      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW', -15, -10/
5520      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW', -17, -12/
5521      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW', -18, -14/
5522      DATA IOPERA( 208),IX( 208),IY( 208)/'MOVE', -10,   0/
5523      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW', -12,  -1/
5524      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW', -14,  -3/
5525      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW', -16,  -6/
5526      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW', -17,  -9/
5527      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW', -18, -13/
5528      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW', -18, -18/
5529      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW', -17, -20/
5530      DATA IOPERA( 216),IX( 216),IY( 216)/'MOVE', -12, -21/
5531      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW', -10, -20/
5532      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -8, -18/
5533      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -7, -16/
5534      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -7, -12/
5535      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -8, -10/
5536C
5537      DATA IXMIND(   7)/ -10/
5538      DATA IXMAXD(   7)/  11/
5539      DATA IXDELD(   7)/  21/
5540      DATA ISTARD(   7)/ 179/
5541      DATA NUMCOO(   7)/  43/
5542C
5543C     DEFINE CHARACTER      7--7
5544C
5545      DATA IOPERA( 222),IX( 222),IY( 222)/'MOVE', -16,   0/
5546      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW', -18,  -6/
5547      DATA IOPERA( 224),IX( 224),IY( 224)/'MOVE',  -3,   0/
5548      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  -4,  -3/
5549      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  -6,  -6/
5550      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW', -11, -12/
5551      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW', -13, -15/
5552      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW', -14, -17/
5553      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW', -15, -21/
5554      DATA IOPERA( 231),IX( 231),IY( 231)/'MOVE',  -6,  -6/
5555      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW', -12, -12/
5556      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW', -14, -15/
5557      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW', -15, -17/
5558      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW', -16, -21/
5559      DATA IOPERA( 236),IX( 236),IY( 236)/'MOVE', -17,  -3/
5560      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW', -14,   0/
5561      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW', -12,   0/
5562      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',  -7,  -3/
5563      DATA IOPERA( 240),IX( 240),IY( 240)/'MOVE', -16,  -2/
5564      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW', -14,  -1/
5565      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW', -12,  -1/
5566      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -7,  -3/
5567      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',  -5,  -3/
5568      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',  -4,  -2/
5569      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',  -3,   0/
5570C
5571      DATA IXMIND(   8)/ -10/
5572      DATA IXMAXD(   8)/  11/
5573      DATA IXDELD(   8)/  21/
5574      DATA ISTARD(   8)/ 222/
5575      DATA NUMCOO(   8)/  25/
5576C
5577C-----START POINT-----------------------------------------------------
5578C
5579      IFOUND='YES'
5580      IERROR='NO'
5581C
5582      NUMCO=1
5583      ISTART=1
5584      ISTOP=1
5585      NC=1
5586C
5587C               ******************************************
5588C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
5589C               **  HERSHEY CHARACTER SET CASE          **
5590C               ******************************************
5591C
5592C
5593      IF(IBUGD2.EQ.'OFF')GOTO90
5594      WRITE(ICOUT,999)
5595  999 FORMAT(1X)
5596      CALL DPWRST('XXX','BUG ')
5597      WRITE(ICOUT,51)
5598   51 FORMAT('***** AT THE BEGINNING OF DRCIN1--')
5599      CALL DPWRST('XXX','BUG ')
5600      WRITE(ICOUT,52)ICHARN
5601   52 FORMAT('ICHARN = ',I8)
5602      CALL DPWRST('XXX','BUG ')
5603      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
5604   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5605      CALL DPWRST('XXX','BUG ')
5606   90 CONTINUE
5607C
5608C               **************************************
5609C               **  STEP 2--                        **
5610C               **  EXTRACT THE COORDINATES         **
5611C               **  FOR THIS PARTICULAR CHARACTER.  **
5612C               **************************************
5613C
5614      ISTART=ISTARD(ICHARN)
5615      NC=NUMCOO(ICHARN)
5616      ISTOP=ISTART+NC-1
5617      J=0
5618      DO1100I=ISTART,ISTOP
5619      J=J+1
5620      IOP(J)=IOPERA(I)
5621      X(J)=IX(I)
5622      Y(J)=IY(I)
5623 1100 CONTINUE
5624      NUMCO=J
5625      IXMINS=IXMIND(ICHARN)
5626      IXMAXS=IXMAXD(ICHARN)
5627      IXDELS=IXDELD(ICHARN)
5628C
5629      GOTO9000
5630C
5631C               *****************
5632C               **  STEP 90--  **
5633C               **  EXIT       **
5634C               *****************
5635C
5636 9000 CONTINUE
5637      IF(IBUGD2.EQ.'OFF')GOTO9090
5638      WRITE(ICOUT,999)
5639      CALL DPWRST('XXX','BUG ')
5640      WRITE(ICOUT,9011)
5641 9011 FORMAT('***** AT THE END       OF DRCIN1--')
5642      CALL DPWRST('XXX','BUG ')
5643      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
5644 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5645      CALL DPWRST('XXX','BUG ')
5646      WRITE(ICOUT,9013)ICHARN
5647 9013 FORMAT('ICHARN = ',I8)
5648      CALL DPWRST('XXX','BUG ')
5649      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
5650 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
5651      CALL DPWRST('XXX','BUG ')
5652      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
5653      DO9015I=1,NUMCO
5654      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
5655 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
5656      CALL DPWRST('XXX','BUG ')
5657 9015 CONTINUE
5658 9019 CONTINUE
5659      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
5660 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
5661      CALL DPWRST('XXX','BUG ')
5662 9090 CONTINUE
5663C
5664      RETURN
5665      END
5666      SUBROUTINE DRCIN2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
5667     1IBUGD2,IFOUND,IERROR)
5668C
5669C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
5670C              FOR ROMAN COMPLEX ITALIC NUMERIC (PART 2).
5671C     WRITTEN BY--JAMES J. FILLIBEN
5672C                 STATISTICAL ENGINEERING DIVISION
5673C                 CENTER FOR APPLIED MATHEMATICS
5674C                 NATIONAL BUREAU OF STANDARDS
5675C                 WASHINGTON, D. C. 20234
5676C                 PHONE--301-921-3651
5677C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
5678C           OF THE NATIONAL BUREAU OF STANDARDS.
5679C     LANGUAGE--ANSI FORTRAN (1977)
5680C     VERSION NUMBER--87/4
5681C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
5682C     UPDATED         --MAY       1982.
5683C     UPDATED         --MARCH     1987.
5684C
5685C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
5686C
5687      CHARACTER*4 IOP
5688      CHARACTER*4 IBUGD2
5689      CHARACTER*4 IFOUND
5690      CHARACTER*4 IERROR
5691C
5692      CHARACTER*4 IOPERA
5693C
5694C---------------------------------------------------------------------
5695C
5696      DIMENSION IOP(*)
5697      DIMENSION X(*)
5698      DIMENSION Y(*)
5699C
5700      DIMENSION IOPERA(300)
5701      DIMENSION IX(300)
5702      DIMENSION IY(300)
5703C
5704      DIMENSION IXMIND(30)
5705      DIMENSION IXMAXD(30)
5706      DIMENSION IXDELD(30)
5707      DIMENSION ISTARD(30)
5708      DIMENSION NUMCOO(30)
5709C
5710C---------------------------------------------------------------------
5711C
5712      INCLUDE 'DPCOP2.INC'
5713C
5714C-----DATA STATEMENTS-------------------------------------------------
5715C
5716C     DEFINE CHARACTER      8--8
5717C
5718      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -11,   0/
5719      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -14,  -1/
5720      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW', -15,  -2/
5721      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW', -16,  -4/
5722      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW', -16,  -7/
5723      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW', -15,  -9/
5724      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW', -13, -10/
5725      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW', -10, -10/
5726      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -6,  -9/
5727      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -5,  -8/
5728      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -4,  -6/
5729      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -4,  -3/
5730      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -5,  -1/
5731      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -8,   0/
5732      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW', -11,   0/
5733      DATA IOPERA(  16),IX(  16),IY(  16)/'MOVE', -11,   0/
5734      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW', -13,  -1/
5735      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW', -14,  -2/
5736      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW', -15,  -4/
5737      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW', -15,  -7/
5738      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW', -14,  -9/
5739      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW', -13, -10/
5740      DATA IOPERA(  23),IX(  23),IY(  23)/'MOVE', -10, -10/
5741      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -7,  -9/
5742      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -6,  -8/
5743      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -5,  -6/
5744      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -5,  -3/
5745      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -6,  -1/
5746      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -8,   0/
5747      DATA IOPERA(  30),IX(  30),IY(  30)/'MOVE', -13, -10/
5748      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW', -17, -11/
5749      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW', -19, -13/
5750      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW', -20, -15/
5751      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW', -20, -18/
5752      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW', -19, -20/
5753      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW', -16, -21/
5754      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW', -12, -21/
5755      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -8, -20/
5756      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -7, -19/
5757      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -6, -17/
5758      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -6, -14/
5759      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -7, -12/
5760      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -8, -11/
5761      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW', -10, -10/
5762      DATA IOPERA(  45),IX(  45),IY(  45)/'MOVE', -13, -10/
5763      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW', -16, -11/
5764      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW', -18, -13/
5765      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW', -19, -15/
5766      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW', -19, -18/
5767      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW', -18, -20/
5768      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW', -16, -21/
5769      DATA IOPERA(  52),IX(  52),IY(  52)/'MOVE', -12, -21/
5770      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -9, -20/
5771      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -8, -19/
5772      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',  -7, -17/
5773      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -7, -13/
5774      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -8, -11/
5775C
5776      DATA IXMIND(   9)/ -10/
5777      DATA IXMAXD(   9)/  11/
5778      DATA IXDELD(   9)/  21/
5779      DATA ISTARD(   9)/   1/
5780      DATA NUMCOO(   9)/  57/
5781C
5782C     DEFINE CHARACTER      9--9
5783C
5784      DATA IOPERA(  58),IX(  58),IY(  58)/'MOVE',  -5,  -7/
5785      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -6,  -9/
5786      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -8, -11/
5787      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW', -10, -12/
5788      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW', -13, -12/
5789      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW', -15, -11/
5790      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW', -16, -10/
5791      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW', -17,  -8/
5792      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW', -17,  -5/
5793      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW', -16,  -3/
5794      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW', -14,  -1/
5795      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW', -11,   0/
5796      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',  -8,   0/
5797      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -6,  -1/
5798      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -5,  -2/
5799      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -4,  -4/
5800      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -4,  -8/
5801      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -5, -12/
5802      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6, -15/
5803      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -8, -18/
5804      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW', -10, -20/
5805      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW', -13, -21/
5806      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW', -16, -21/
5807      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW', -18, -20/
5808      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW', -19, -18/
5809      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW', -19, -17/
5810      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW', -18, -16/
5811      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW', -17, -17/
5812      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW', -18, -18/
5813      DATA IOPERA(  87),IX(  87),IY(  87)/'MOVE', -15, -11/
5814      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW', -16,  -9/
5815      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW', -16,  -5/
5816      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW', -15,  -3/
5817      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW', -13,  -1/
5818      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW', -11,   0/
5819      DATA IOPERA(  93),IX(  93),IY(  93)/'MOVE',  -6,  -1/
5820      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -5,  -3/
5821      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -5,  -8/
5822      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -6, -12/
5823      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -7, -15/
5824      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',  -9, -18/
5825      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW', -11, -20/
5826      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW', -13, -21/
5827C
5828      DATA IXMIND(  10)/ -10/
5829      DATA IXMAXD(  10)/  11/
5830      DATA IXDELD(  10)/  21/
5831      DATA ISTARD(  10)/  58/
5832      DATA NUMCOO(  10)/  43/
5833C
5834C-----START POINT-----------------------------------------------------
5835C
5836      IFOUND='YES'
5837      IERROR='NO'
5838C
5839      NUMCO=1
5840      ISTART=1
5841      ISTOP=1
5842      NC=1
5843C
5844C               ******************************************
5845C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
5846C               **  HERSHEY CHARACTER SET CASE          **
5847C               ******************************************
5848C
5849C
5850      IF(IBUGD2.EQ.'OFF')GOTO90
5851      WRITE(ICOUT,999)
5852  999 FORMAT(1X)
5853      CALL DPWRST('XXX','BUG ')
5854      WRITE(ICOUT,51)
5855   51 FORMAT('***** AT THE BEGINNING OF DRCIN2--')
5856      CALL DPWRST('XXX','BUG ')
5857      WRITE(ICOUT,52)ICHARN
5858   52 FORMAT('ICHARN = ',I8)
5859      CALL DPWRST('XXX','BUG ')
5860      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
5861   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5862      CALL DPWRST('XXX','BUG ')
5863   90 CONTINUE
5864C
5865C               **************************************
5866C               **  STEP 2--                        **
5867C               **  EXTRACT THE COORDINATES         **
5868C               **  FOR THIS PARTICULAR CHARACTER.  **
5869C               **************************************
5870C
5871      ISTART=ISTARD(ICHARN)
5872      NC=NUMCOO(ICHARN)
5873      ISTOP=ISTART+NC-1
5874      J=0
5875      DO1100I=ISTART,ISTOP
5876      J=J+1
5877      IOP(J)=IOPERA(I)
5878      X(J)=IX(I)
5879      Y(J)=IY(I)
5880 1100 CONTINUE
5881      NUMCO=J
5882      IXMINS=IXMIND(ICHARN)
5883      IXMAXS=IXMAXD(ICHARN)
5884      IXDELS=IXDELD(ICHARN)
5885C
5886      GOTO9000
5887C
5888C               *****************
5889C               **  STEP 90--  **
5890C               **  EXIT       **
5891C               *****************
5892C
5893 9000 CONTINUE
5894      IF(IBUGD2.EQ.'OFF')GOTO9090
5895      WRITE(ICOUT,999)
5896      CALL DPWRST('XXX','BUG ')
5897      WRITE(ICOUT,9011)
5898 9011 FORMAT('***** AT THE END       OF DRCIN2--')
5899      CALL DPWRST('XXX','BUG ')
5900      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
5901 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
5902      CALL DPWRST('XXX','BUG ')
5903      WRITE(ICOUT,9013)ICHARN
5904 9013 FORMAT('ICHARN = ',I8)
5905      CALL DPWRST('XXX','BUG ')
5906      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
5907 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
5908      CALL DPWRST('XXX','BUG ')
5909      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
5910      DO9015I=1,NUMCO
5911      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
5912 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
5913      CALL DPWRST('XXX','BUG ')
5914 9015 CONTINUE
5915 9019 CONTINUE
5916      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
5917 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
5918      CALL DPWRST('XXX','BUG ')
5919 9090 CONTINUE
5920C
5921      RETURN
5922      END
5923      SUBROUTINE DRCIU1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
5924     1IBUGD2,IFOUND,IERROR)
5925C
5926C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
5927C              FOR ROMAN COMPLEX ITALIC UPPER CASE (PART 1).
5928C     WRITTEN BY--JAMES J. FILLIBEN
5929C                 STATISTICAL ENGINEERING DIVISION
5930C                 CENTER FOR APPLIED MATHEMATICS
5931C                 NATIONAL BUREAU OF STANDARDS
5932C                 WASHINGTON, D. C. 20234
5933C                 PHONE--301-921-3651
5934C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
5935C           OF THE NATIONAL BUREAU OF STANDARDS.
5936C     LANGUAGE--ANSI FORTRAN (1977)
5937C     VERSION NUMBER--87/4
5938C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
5939C     UPDATED         --MAY       1982.
5940C     UPDATED         --MARCH     1987.
5941C
5942C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
5943C
5944      CHARACTER*4 IOP
5945      CHARACTER*4 IBUGD2
5946      CHARACTER*4 IFOUND
5947      CHARACTER*4 IERROR
5948C
5949      CHARACTER*4 IOPERA
5950C
5951C---------------------------------------------------------------------
5952C
5953      DIMENSION IOP(*)
5954      DIMENSION X(*)
5955      DIMENSION Y(*)
5956C
5957      DIMENSION IOPERA(300)
5958      DIMENSION IX(300)
5959      DIMENSION IY(300)
5960C
5961      DIMENSION IXMIND(30)
5962      DIMENSION IXMAXD(30)
5963      DIMENSION IXDELD(30)
5964      DIMENSION ISTARD(30)
5965      DIMENSION NUMCOO(30)
5966C
5967C---------------------------------------------------------------------
5968C
5969      INCLUDE 'DPCOP2.INC'
5970C
5971C-----DATA STATEMENTS-------------------------------------------------
5972C
5973C     DEFINE CHARACTER   2051--UPPER CASE A
5974C
5975      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   3,  12/
5976      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -10,  -9/
5977      DATA IOPERA(   3),IX(   3),IY(   3)/'MOVE',   3,  12/
5978      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',   4,  -9/
5979      DATA IOPERA(   5),IX(   5),IY(   5)/'MOVE',   2,  10/
5980      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',   3,  -9/
5981      DATA IOPERA(   7),IX(   7),IY(   7)/'MOVE',  -6,  -3/
5982      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',   3,  -3/
5983      DATA IOPERA(   9),IX(   9),IY(   9)/'MOVE', -12,  -9/
5984      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -6,  -9/
5985      DATA IOPERA(  11),IX(  11),IY(  11)/'MOVE',   0,  -9/
5986      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   6,  -9/
5987C
5988      DATA IXMIND(   1)/ -10/
5989      DATA IXMAXD(   1)/  10/
5990      DATA IXDELD(   1)/  20/
5991      DATA ISTARD(   1)/   1/
5992      DATA NUMCOO(   1)/  12/
5993C
5994C     DEFINE CHARACTER   2052--UPPER CASE B
5995C
5996      DATA IOPERA(  13),IX(  13),IY(  13)/'MOVE',  -3,  12/
5997      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -9,  -9/
5998      DATA IOPERA(  15),IX(  15),IY(  15)/'MOVE',  -2,  12/
5999      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -8,  -9/
6000      DATA IOPERA(  17),IX(  17),IY(  17)/'MOVE',  -6,  12/
6001      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   5,  12/
6002      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   8,  11/
6003      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   9,   9/
6004      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   9,   7/
6005      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   8,   4/
6006      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   7,   3/
6007      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   4,   2/
6008      DATA IOPERA(  25),IX(  25),IY(  25)/'MOVE',   5,  12/
6009      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   7,  11/
6010      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   8,   9/
6011      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   8,   7/
6012      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   7,   4/
6013      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   6,   3/
6014      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',   4,   2/
6015      DATA IOPERA(  32),IX(  32),IY(  32)/'MOVE',  -5,   2/
6016      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   4,   2/
6017      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   6,   1/
6018      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   7,  -1/
6019      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   7,  -3/
6020      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   6,  -6/
6021      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   4,  -8/
6022      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   0,  -9/
6023      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW', -12,  -9/
6024      DATA IOPERA(  41),IX(  41),IY(  41)/'MOVE',   4,   2/
6025      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',   5,   1/
6026      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   6,  -1/
6027      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   6,  -3/
6028      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   5,  -6/
6029      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   3,  -8/
6030      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   0,  -9/
6031C
6032      DATA IXMIND(   2)/ -12/
6033      DATA IXMAXD(   2)/  12/
6034      DATA IXDELD(   2)/  24/
6035      DATA ISTARD(   2)/  13/
6036      DATA NUMCOO(   2)/  35/
6037C
6038C     DEFINE CHARACTER   2053--UPPER CASE C
6039C
6040      DATA IOPERA(  48),IX(  48),IY(  48)/'MOVE',   8,  10/
6041      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   9,  10/
6042      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  10,  12/
6043      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   9,   6/
6044      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   9,   8/
6045      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   8,  10/
6046      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   7,  11/
6047      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   5,  12/
6048      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   2,  12/
6049      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -1,  11/
6050      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -3,   9/
6051      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -5,   6/
6052      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -6,   3/
6053      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -7,  -1/
6054      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -7,  -4/
6055      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -6,  -7/
6056      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -5,  -8/
6057      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -2,  -9/
6058      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   1,  -9/
6059      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   3,  -8/
6060      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   5,  -6/
6061      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   6,  -4/
6062      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',   2,  12/
6063      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   0,  11/
6064      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -2,   9/
6065      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -4,   6/
6066      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -5,   3/
6067      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -6,  -1/
6068      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6,  -4/
6069      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -5,  -7/
6070      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -4,  -8/
6071      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -2,  -9/
6072C
6073      DATA IXMIND(   3)/ -10/
6074      DATA IXMAXD(   3)/  11/
6075      DATA IXDELD(   3)/  21/
6076      DATA ISTARD(   3)/  48/
6077      DATA NUMCOO(   3)/  32/
6078C
6079C     DEFINE CHARACTER   2054--UPPER CASE D
6080C
6081      DATA IOPERA(  80),IX(  80),IY(  80)/'MOVE',  -3,  12/
6082      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',  -9,  -9/
6083      DATA IOPERA(  82),IX(  82),IY(  82)/'MOVE',  -2,  12/
6084      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -8,  -9/
6085      DATA IOPERA(  84),IX(  84),IY(  84)/'MOVE',  -6,  12/
6086      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   3,  12/
6087      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   6,  11/
6088      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   7,  10/
6089      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   8,   7/
6090      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',   8,   3/
6091      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',   7,  -1/
6092      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   5,  -5/
6093      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   3,  -7/
6094      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   1,  -8/
6095      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -3,  -9/
6096      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW', -12,  -9/
6097      DATA IOPERA(  96),IX(  96),IY(  96)/'MOVE',   3,  12/
6098      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   5,  11/
6099      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   6,  10/
6100      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   7,   7/
6101      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   7,   3/
6102      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   6,  -1/
6103      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   4,  -5/
6104      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   2,  -7/
6105      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   0,  -8/
6106      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -3,  -9/
6107C
6108      DATA IXMIND(   4)/ -12/
6109      DATA IXMAXD(   4)/  11/
6110      DATA IXDELD(   4)/  23/
6111      DATA ISTARD(   4)/  80/
6112      DATA NUMCOO(   4)/  26/
6113C
6114C     DEFINE CHARACTER   2055--UPPER CASE E
6115C
6116      DATA IOPERA( 106),IX( 106),IY( 106)/'MOVE',  -3,  12/
6117      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -9,  -9/
6118      DATA IOPERA( 108),IX( 108),IY( 108)/'MOVE',  -2,  12/
6119      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -8,  -9/
6120      DATA IOPERA( 110),IX( 110),IY( 110)/'MOVE',   2,   6/
6121      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   0,  -2/
6122      DATA IOPERA( 112),IX( 112),IY( 112)/'MOVE',  -6,  12/
6123      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   9,  12/
6124      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   8,   6/
6125      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   8,  12/
6126      DATA IOPERA( 116),IX( 116),IY( 116)/'MOVE',  -5,   2/
6127      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   1,   2/
6128      DATA IOPERA( 118),IX( 118),IY( 118)/'MOVE', -12,  -9/
6129      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   3,  -9/
6130      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',   5,  -4/
6131      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   2,  -9/
6132C
6133      DATA IXMIND(   5)/ -12/
6134      DATA IXMAXD(   5)/  11/
6135      DATA IXDELD(   5)/  23/
6136      DATA ISTARD(   5)/ 106/
6137      DATA NUMCOO(   5)/  16/
6138C
6139C     DEFINE CHARACTER   2056--UPPER CASE F
6140C
6141      DATA IOPERA( 122),IX( 122),IY( 122)/'MOVE',  -3,  12/
6142      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -9,  -9/
6143      DATA IOPERA( 124),IX( 124),IY( 124)/'MOVE',  -2,  12/
6144      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -8,  -9/
6145      DATA IOPERA( 126),IX( 126),IY( 126)/'MOVE',   2,   6/
6146      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   0,  -2/
6147      DATA IOPERA( 128),IX( 128),IY( 128)/'MOVE',  -6,  12/
6148      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   9,  12/
6149      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   8,   6/
6150      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   8,  12/
6151      DATA IOPERA( 132),IX( 132),IY( 132)/'MOVE',  -5,   2/
6152      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   1,   2/
6153      DATA IOPERA( 134),IX( 134),IY( 134)/'MOVE', -12,  -9/
6154      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -5,  -9/
6155C
6156      DATA IXMIND(   6)/ -12/
6157      DATA IXMAXD(   6)/  10/
6158      DATA IXDELD(   6)/  22/
6159      DATA ISTARD(   6)/ 122/
6160      DATA NUMCOO(   6)/  14/
6161C
6162C     DEFINE CHARACTER   2057--UPPER CASE G
6163C
6164      DATA IOPERA( 136),IX( 136),IY( 136)/'MOVE',   8,  10/
6165      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',   9,  10/
6166      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  10,  12/
6167      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   9,   6/
6168      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',   9,   8/
6169      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',   8,  10/
6170      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',   7,  11/
6171      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',   5,  12/
6172      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   2,  12/
6173      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -1,  11/
6174      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',  -3,   9/
6175      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',  -5,   6/
6176      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -6,   3/
6177      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -7,  -1/
6178      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -7,  -4/
6179      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',  -6,  -7/
6180      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -5,  -8/
6181      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -2,  -9/
6182      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   0,  -9/
6183      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   3,  -8/
6184      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   5,  -6/
6185      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   7,  -2/
6186      DATA IOPERA( 158),IX( 158),IY( 158)/'MOVE',   2,  12/
6187      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   0,  11/
6188      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -2,   9/
6189      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -4,   6/
6190      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -5,   3/
6191      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -6,  -1/
6192      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -6,  -4/
6193      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',  -5,  -7/
6194      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -4,  -8/
6195      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -2,  -9/
6196      DATA IOPERA( 168),IX( 168),IY( 168)/'MOVE',   0,  -9/
6197      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   2,  -8/
6198      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   4,  -6/
6199      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   6,  -2/
6200      DATA IOPERA( 172),IX( 172),IY( 172)/'MOVE',   3,  -2/
6201      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  10,  -2/
6202C
6203      DATA IXMIND(   7)/ -10/
6204      DATA IXMAXD(   7)/  12/
6205      DATA IXDELD(   7)/  22/
6206      DATA ISTARD(   7)/ 136/
6207      DATA NUMCOO(   7)/  38/
6208C
6209C     DEFINE CHARACTER   2058--UPPER CASE H
6210C
6211      DATA IOPERA( 174),IX( 174),IY( 174)/'MOVE',  -4,  12/
6212      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW', -10,  -9/
6213      DATA IOPERA( 176),IX( 176),IY( 176)/'MOVE',  -3,  12/
6214      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',  -9,  -9/
6215      DATA IOPERA( 178),IX( 178),IY( 178)/'MOVE',   9,  12/
6216      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   3,  -9/
6217      DATA IOPERA( 180),IX( 180),IY( 180)/'MOVE',  10,  12/
6218      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   4,  -9/
6219      DATA IOPERA( 182),IX( 182),IY( 182)/'MOVE',  -7,  12/
6220      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   0,  12/
6221      DATA IOPERA( 184),IX( 184),IY( 184)/'MOVE',   6,  12/
6222      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  13,  12/
6223      DATA IOPERA( 186),IX( 186),IY( 186)/'MOVE',  -6,   2/
6224      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',   6,   2/
6225      DATA IOPERA( 188),IX( 188),IY( 188)/'MOVE', -13,  -9/
6226      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -6,  -9/
6227      DATA IOPERA( 190),IX( 190),IY( 190)/'MOVE',   0,  -9/
6228      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',   7,  -9/
6229C
6230      DATA IXMIND(   8)/ -13/
6231      DATA IXMAXD(   8)/  13/
6232      DATA IXDELD(   8)/  26/
6233      DATA ISTARD(   8)/ 174/
6234      DATA NUMCOO(   8)/  18/
6235C
6236C     DEFINE CHARACTER   2059--UPPER CASE I
6237C
6238      DATA IOPERA( 192),IX( 192),IY( 192)/'MOVE',   3,  12/
6239      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  -3,  -9/
6240      DATA IOPERA( 194),IX( 194),IY( 194)/'MOVE',   4,  12/
6241      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',  -2,  -9/
6242      DATA IOPERA( 196),IX( 196),IY( 196)/'MOVE',   0,  12/
6243      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   7,  12/
6244      DATA IOPERA( 198),IX( 198),IY( 198)/'MOVE',  -6,  -9/
6245      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   1,  -9/
6246C
6247      DATA IXMIND(   9)/  -6/
6248      DATA IXMAXD(   9)/   7/
6249      DATA IXDELD(   9)/  13/
6250      DATA ISTARD(   9)/ 192/
6251      DATA NUMCOO(   9)/   8/
6252C
6253C     DEFINE CHARACTER   2060--UPPER CASE J
6254C
6255      DATA IOPERA( 200),IX( 200),IY( 200)/'MOVE',   6,  12/
6256      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   1,  -5/
6257      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   0,  -7/
6258      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -1,  -8/
6259      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -3,  -9/
6260      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -5,  -9/
6261      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -7,  -8/
6262      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -8,  -6/
6263      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -8,  -4/
6264      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -7,  -3/
6265      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -6,  -4/
6266      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -7,  -5/
6267      DATA IOPERA( 212),IX( 212),IY( 212)/'MOVE',   5,  12/
6268      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   0,  -5/
6269      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',  -1,  -7/
6270      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',  -3,  -9/
6271      DATA IOPERA( 216),IX( 216),IY( 216)/'MOVE',   2,  12/
6272      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',   9,  12/
6273C
6274      DATA IXMIND(  10)/  -9/
6275      DATA IXMAXD(  10)/   9/
6276      DATA IXDELD(  10)/  18/
6277      DATA ISTARD(  10)/ 200/
6278      DATA NUMCOO(  10)/  18/
6279C
6280C     DEFINE CHARACTER   2061--UPPER CASE K
6281C
6282      DATA IOPERA( 218),IX( 218),IY( 218)/'MOVE',  -3,  12/
6283      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -9,  -9/
6284      DATA IOPERA( 220),IX( 220),IY( 220)/'MOVE',  -2,  12/
6285      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -8,  -9/
6286      DATA IOPERA( 222),IX( 222),IY( 222)/'MOVE',  11,  12/
6287      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -6,  -1/
6288      DATA IOPERA( 224),IX( 224),IY( 224)/'MOVE',   1,   3/
6289      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',   5,  -9/
6290      DATA IOPERA( 226),IX( 226),IY( 226)/'MOVE',   0,   3/
6291      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   4,  -9/
6292      DATA IOPERA( 228),IX( 228),IY( 228)/'MOVE',  -6,  12/
6293      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   1,  12/
6294      DATA IOPERA( 230),IX( 230),IY( 230)/'MOVE',   7,  12/
6295      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',  13,  12/
6296      DATA IOPERA( 232),IX( 232),IY( 232)/'MOVE', -12,  -9/
6297      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',  -5,  -9/
6298      DATA IOPERA( 234),IX( 234),IY( 234)/'MOVE',   1,  -9/
6299      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   7,  -9/
6300C
6301      DATA IXMIND(  11)/ -12/
6302      DATA IXMAXD(  11)/  11/
6303      DATA IXDELD(  11)/  23/
6304      DATA ISTARD(  11)/ 218/
6305      DATA NUMCOO(  11)/  18/
6306C
6307C     DEFINE CHARACTER   2062--UPPER CASE L
6308C
6309      DATA IOPERA( 236),IX( 236),IY( 236)/'MOVE',  -1,  12/
6310      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',  -7,  -9/
6311      DATA IOPERA( 238),IX( 238),IY( 238)/'MOVE',   0,  12/
6312      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',  -6,  -9/
6313      DATA IOPERA( 240),IX( 240),IY( 240)/'MOVE',  -4,  12/
6314      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   3,  12/
6315      DATA IOPERA( 242),IX( 242),IY( 242)/'MOVE', -10,  -9/
6316      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   5,  -9/
6317      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',   7,  -3/
6318      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',   4,  -9/
6319C
6320      DATA IXMIND(  12)/ -10/
6321      DATA IXMAXD(  12)/  10/
6322      DATA IXDELD(  12)/  20/
6323      DATA ISTARD(  12)/ 236/
6324      DATA NUMCOO(  12)/  10/
6325C
6326C     DEFINE CHARACTER   2063--UPPER CASE M
6327C
6328      DATA IOPERA( 246),IX( 246),IY( 246)/'MOVE',  -4,  12/
6329      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW', -10,  -9/
6330      DATA IOPERA( 248),IX( 248),IY( 248)/'MOVE',  -4,  12/
6331      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -3,  -9/
6332      DATA IOPERA( 250),IX( 250),IY( 250)/'MOVE',  -3,  12/
6333      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',  -2,  -7/
6334      DATA IOPERA( 252),IX( 252),IY( 252)/'MOVE',  10,  12/
6335      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',  -3,  -9/
6336      DATA IOPERA( 254),IX( 254),IY( 254)/'MOVE',  10,  12/
6337      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',   4,  -9/
6338      DATA IOPERA( 256),IX( 256),IY( 256)/'MOVE',  11,  12/
6339      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   5,  -9/
6340      DATA IOPERA( 258),IX( 258),IY( 258)/'MOVE',  -7,  12/
6341      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',  -3,  12/
6342      DATA IOPERA( 260),IX( 260),IY( 260)/'MOVE',  10,  12/
6343      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  14,  12/
6344      DATA IOPERA( 262),IX( 262),IY( 262)/'MOVE', -13,  -9/
6345      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -7,  -9/
6346      DATA IOPERA( 264),IX( 264),IY( 264)/'MOVE',   1,  -9/
6347      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   8,  -9/
6348C
6349      DATA IXMIND(  13)/ -13/
6350      DATA IXMAXD(  13)/  14/
6351      DATA IXDELD(  13)/  27/
6352      DATA ISTARD(  13)/ 246/
6353      DATA NUMCOO(  13)/  20/
6354C
6355C     DEFINE CHARACTER   2064--UPPER CASE N
6356C
6357      DATA IOPERA( 266),IX( 266),IY( 266)/'MOVE',  -3,  12/
6358      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',  -9,  -9/
6359      DATA IOPERA( 268),IX( 268),IY( 268)/'MOVE',  -3,  12/
6360      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',   4,  -6/
6361      DATA IOPERA( 270),IX( 270),IY( 270)/'MOVE',  -3,   9/
6362      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',   4,  -9/
6363      DATA IOPERA( 272),IX( 272),IY( 272)/'MOVE',  10,  12/
6364      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',   4,  -9/
6365      DATA IOPERA( 274),IX( 274),IY( 274)/'MOVE',  -6,  12/
6366      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -3,  12/
6367      DATA IOPERA( 276),IX( 276),IY( 276)/'MOVE',   7,  12/
6368      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  13,  12/
6369      DATA IOPERA( 278),IX( 278),IY( 278)/'MOVE', -12,  -9/
6370      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -6,  -9/
6371C
6372      DATA IXMIND(  14)/ -12/
6373      DATA IXMAXD(  14)/  13/
6374      DATA IXDELD(  14)/  25/
6375      DATA ISTARD(  14)/ 266/
6376      DATA NUMCOO(  14)/  14/
6377C
6378C-----START POINT-----------------------------------------------------
6379C
6380      IFOUND='YES'
6381      IERROR='NO'
6382C
6383      NUMCO=1
6384      ISTART=1
6385      ISTOP=1
6386      NC=1
6387C
6388C               ******************************************
6389C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
6390C               **  HERSHEY CHARACTER SET CASE          **
6391C               ******************************************
6392C
6393C
6394      IF(IBUGD2.EQ.'OFF')GOTO90
6395      WRITE(ICOUT,999)
6396  999 FORMAT(1X)
6397      CALL DPWRST('XXX','BUG ')
6398      WRITE(ICOUT,51)
6399   51 FORMAT('***** AT THE BEGINNING OF DRCIU1--')
6400      CALL DPWRST('XXX','BUG ')
6401      WRITE(ICOUT,52)ICHARN
6402   52 FORMAT('ICHARN = ',I8)
6403      CALL DPWRST('XXX','BUG ')
6404      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
6405   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
6406      CALL DPWRST('XXX','BUG ')
6407   90 CONTINUE
6408C
6409C               **************************************
6410C               **  STEP 2--                        **
6411C               **  EXTRACT THE COORDINATES         **
6412C               **  FOR THIS PARTICULAR CHARACTER.  **
6413C               **************************************
6414C
6415      ISTART=ISTARD(ICHARN)
6416      NC=NUMCOO(ICHARN)
6417      ISTOP=ISTART+NC-1
6418      J=0
6419      DO1100I=ISTART,ISTOP
6420      J=J+1
6421      IOP(J)=IOPERA(I)
6422      X(J)=IX(I)
6423      Y(J)=IY(I)
6424 1100 CONTINUE
6425      NUMCO=J
6426      IXMINS=IXMIND(ICHARN)
6427      IXMAXS=IXMAXD(ICHARN)
6428      IXDELS=IXDELD(ICHARN)
6429C
6430      GOTO9000
6431C
6432C               *****************
6433C               **  STEP 90--  **
6434C               **  EXIT       **
6435C               *****************
6436C
6437 9000 CONTINUE
6438      IF(IBUGD2.EQ.'OFF')GOTO9090
6439      WRITE(ICOUT,999)
6440      CALL DPWRST('XXX','BUG ')
6441      WRITE(ICOUT,9011)
6442 9011 FORMAT('***** AT THE END       OF DRCIU1--')
6443      CALL DPWRST('XXX','BUG ')
6444      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
6445 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
6446      CALL DPWRST('XXX','BUG ')
6447      WRITE(ICOUT,9013)ICHARN
6448 9013 FORMAT('ICHARN = ',I8)
6449      CALL DPWRST('XXX','BUG ')
6450      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
6451 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
6452      CALL DPWRST('XXX','BUG ')
6453      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
6454      DO9015I=1,NUMCO
6455      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
6456 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
6457      CALL DPWRST('XXX','BUG ')
6458 9015 CONTINUE
6459 9019 CONTINUE
6460      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
6461 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
6462      CALL DPWRST('XXX','BUG ')
6463 9090 CONTINUE
6464C
6465      RETURN
6466      END
6467      SUBROUTINE DRCIU2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
6468     1IBUGD2,IFOUND,IERROR)
6469C
6470C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
6471C              FOR ROMAN COMPLEX ITALIC UPPER CASE (PART 2).
6472C     WRITTEN BY--JAMES J. FILLIBEN
6473C                 STATISTICAL ENGINEERING DIVISION
6474C                 CENTER FOR APPLIED MATHEMATICS
6475C                 NATIONAL BUREAU OF STANDARDS
6476C                 WASHINGTON, D. C. 20234
6477C                 PHONE--301-921-3651
6478C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
6479C           OF THE NATIONAL BUREAU OF STANDARDS.
6480C     LANGUAGE--ANSI FORTRAN (1977)
6481C     VERSION NUMBER--87/4
6482C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
6483C     UPDATED         --MAY       1982.
6484C     UPDATED         --MARCH     1987.
6485C
6486C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
6487C
6488      CHARACTER*4 IOP
6489      CHARACTER*4 IBUGD2
6490      CHARACTER*4 IFOUND
6491      CHARACTER*4 IERROR
6492C
6493      CHARACTER*4 IOPERA
6494C
6495C---------------------------------------------------------------------
6496C
6497      DIMENSION IOP(*)
6498      DIMENSION X(*)
6499      DIMENSION Y(*)
6500C
6501      DIMENSION IOPERA(300)
6502      DIMENSION IX(300)
6503      DIMENSION IY(300)
6504C
6505      DIMENSION IXMIND(30)
6506      DIMENSION IXMAXD(30)
6507      DIMENSION IXDELD(30)
6508      DIMENSION ISTARD(30)
6509      DIMENSION NUMCOO(30)
6510C
6511C---------------------------------------------------------------------
6512C
6513      INCLUDE 'DPCOP2.INC'
6514C
6515C-----DATA STATEMENTS-------------------------------------------------
6516C
6517C     DEFINE CHARACTER   2065--UPPER CASE O
6518C
6519      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   1,  12/
6520      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -2,  11/
6521      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -4,   9/
6522      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -6,   6/
6523      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -7,   3/
6524      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -8,  -1/
6525      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -8,  -4/
6526      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -7,  -7/
6527      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -6,  -8/
6528      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -4,  -9/
6529      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -1,  -9/
6530      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   2,  -8/
6531      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   4,  -6/
6532      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   6,  -3/
6533      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   7,   0/
6534      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   8,   4/
6535      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   8,   7/
6536      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   7,  10/
6537      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   6,  11/
6538      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   4,  12/
6539      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   1,  12/
6540      DATA IOPERA(  22),IX(  22),IY(  22)/'MOVE',   1,  12/
6541      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -1,  11/
6542      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -3,   9/
6543      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -5,   6/
6544      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -6,   3/
6545      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -7,  -1/
6546      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -7,  -4/
6547      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -6,  -7/
6548      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -4,  -9/
6549      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',  -1,  -9/
6550      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   1,  -8/
6551      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   3,  -6/
6552      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   5,  -3/
6553      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   6,   0/
6554      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   7,   4/
6555      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   7,   7/
6556      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   6,  10/
6557      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   4,  12/
6558C
6559      DATA IXMIND(  15)/ -11/
6560      DATA IXMAXD(  15)/  11/
6561      DATA IXDELD(  15)/  22/
6562      DATA ISTARD(  15)/   1/
6563      DATA NUMCOO(  15)/  39/
6564C
6565C     DEFINE CHARACTER   2066--UPPER CASE P
6566C
6567      DATA IOPERA(  40),IX(  40),IY(  40)/'MOVE',  -3,  12/
6568      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -9,  -9/
6569      DATA IOPERA(  42),IX(  42),IY(  42)/'MOVE',  -2,  12/
6570      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -8,  -9/
6571      DATA IOPERA(  44),IX(  44),IY(  44)/'MOVE',  -6,  12/
6572      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   6,  12/
6573      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   9,  11/
6574      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  10,   9/
6575      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  10,   7/
6576      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   9,   4/
6577      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',   7,   2/
6578      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   3,   1/
6579      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -5,   1/
6580      DATA IOPERA(  53),IX(  53),IY(  53)/'MOVE',   6,  12/
6581      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   8,  11/
6582      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   9,   9/
6583      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   9,   7/
6584      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   8,   4/
6585      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   6,   2/
6586      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',   3,   1/
6587      DATA IOPERA(  60),IX(  60),IY(  60)/'MOVE', -12,  -9/
6588      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -5,  -9/
6589C
6590      DATA IXMIND(  16)/ -12/
6591      DATA IXMAXD(  16)/  11/
6592      DATA IXDELD(  16)/  23/
6593      DATA ISTARD(  16)/  40/
6594      DATA NUMCOO(  16)/  22/
6595C
6596C     DEFINE CHARACTER   2067--UPPER CASE Q
6597C
6598      DATA IOPERA(  62),IX(  62),IY(  62)/'MOVE',   1,  12/
6599      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -2,  11/
6600      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -4,   9/
6601      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -6,   6/
6602      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -7,   3/
6603      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',  -8,  -1/
6604      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',  -8,  -4/
6605      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -7,  -7/
6606      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',  -6,  -8/
6607      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -4,  -9/
6608      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -1,  -9/
6609      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',   2,  -8/
6610      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',   4,  -6/
6611      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',   6,  -3/
6612      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',   7,   0/
6613      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   8,   4/
6614      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   8,   7/
6615      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   7,  10/
6616      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   6,  11/
6617      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   4,  12/
6618      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   1,  12/
6619      DATA IOPERA(  83),IX(  83),IY(  83)/'MOVE',   1,  12/
6620      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',  -1,  11/
6621      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',  -3,   9/
6622      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -5,   6/
6623      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -6,   3/
6624      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -7,  -1/
6625      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -7,  -4/
6626      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  -6,  -7/
6627      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',  -4,  -9/
6628      DATA IOPERA(  92),IX(  92),IY(  92)/'MOVE',  -1,  -9/
6629      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   1,  -8/
6630      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   3,  -6/
6631      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   5,  -3/
6632      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   6,   0/
6633      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   7,   4/
6634      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   7,   7/
6635      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   6,  10/
6636      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   4,  12/
6637      DATA IOPERA( 101),IX( 101),IY( 101)/'MOVE',  -6,  -7/
6638      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',  -6,  -6/
6639      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',  -5,  -4/
6640      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -3,  -3/
6641      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -2,  -3/
6642      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   0,  -4/
6643      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   1,  -6/
6644      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   1, -13/
6645      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   2, -14/
6646      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   4, -14/
6647      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   5, -12/
6648      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   5, -11/
6649      DATA IOPERA( 113),IX( 113),IY( 113)/'MOVE',   1,  -6/
6650      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   2, -12/
6651      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   3, -13/
6652      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   4, -13/
6653      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   5, -12/
6654C
6655      DATA IXMIND(  17)/ -11/
6656      DATA IXMAXD(  17)/  11/
6657      DATA IXDELD(  17)/  22/
6658      DATA ISTARD(  17)/  62/
6659      DATA NUMCOO(  17)/  56/
6660C
6661C     DEFINE CHARACTER   2068--UPPER CASE R
6662C
6663      DATA IOPERA( 118),IX( 118),IY( 118)/'MOVE',  -3,  12/
6664      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -9,  -9/
6665      DATA IOPERA( 120),IX( 120),IY( 120)/'MOVE',  -2,  12/
6666      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',  -8,  -9/
6667      DATA IOPERA( 122),IX( 122),IY( 122)/'MOVE',  -6,  12/
6668      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',   5,  12/
6669      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   8,  11/
6670      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   9,   9/
6671      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   9,   7/
6672      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   8,   4/
6673      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   7,   3/
6674      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   4,   2/
6675      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -5,   2/
6676      DATA IOPERA( 131),IX( 131),IY( 131)/'MOVE',   5,  12/
6677      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   7,  11/
6678      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   8,   9/
6679      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   8,   7/
6680      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   7,   4/
6681      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   6,   3/
6682      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',   4,   2/
6683      DATA IOPERA( 138),IX( 138),IY( 138)/'MOVE',   0,   2/
6684      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   2,   1/
6685      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',   3,   0/
6686      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',   4,  -8/
6687      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',   5,  -9/
6688      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',   7,  -9/
6689      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   8,  -7/
6690      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   8,  -6/
6691      DATA IOPERA( 146),IX( 146),IY( 146)/'MOVE',   3,   0/
6692      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   5,  -7/
6693      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   6,  -8/
6694      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   7,  -8/
6695      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   8,  -7/
6696      DATA IOPERA( 151),IX( 151),IY( 151)/'MOVE', -12,  -9/
6697      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -5,  -9/
6698C
6699      DATA IXMIND(  18)/ -12/
6700      DATA IXMAXD(  18)/  12/
6701      DATA IXDELD(  18)/  24/
6702      DATA ISTARD(  18)/ 118/
6703      DATA NUMCOO(  18)/  35/
6704C
6705C     DEFINE CHARACTER   2069--UPPER CASE S
6706C
6707      DATA IOPERA( 153),IX( 153),IY( 153)/'MOVE',   8,  10/
6708      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   9,  10/
6709      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  10,  12/
6710      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   9,   6/
6711      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   9,   8/
6712      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',   8,  10/
6713      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   7,  11/
6714      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',   4,  12/
6715      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',   0,  12/
6716      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -3,  11/
6717      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -5,   9/
6718      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -5,   7/
6719      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',  -4,   5/
6720      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -3,   4/
6721      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   4,   0/
6722      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   6,  -2/
6723      DATA IOPERA( 169),IX( 169),IY( 169)/'MOVE',  -5,   7/
6724      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -3,   5/
6725      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   4,   1/
6726      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   5,   0/
6727      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',   6,  -2/
6728      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',   6,  -5/
6729      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   5,  -7/
6730      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   4,  -8/
6731      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   1,  -9/
6732      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',  -3,  -9/
6733      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',  -6,  -8/
6734      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -7,  -7/
6735      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -8,  -5/
6736      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -8,  -3/
6737      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -9,  -9/
6738      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -8,  -7/
6739      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -7,  -7/
6740C
6741      DATA IXMIND(  19)/ -11/
6742      DATA IXMAXD(  19)/  12/
6743      DATA IXDELD(  19)/  23/
6744      DATA ISTARD(  19)/ 153/
6745      DATA NUMCOO(  19)/  33/
6746C
6747C     DEFINE CHARACTER   2070--UPPER CASE T
6748C
6749      DATA IOPERA( 186),IX( 186),IY( 186)/'MOVE',   3,  12/
6750      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -3,  -9/
6751      DATA IOPERA( 188),IX( 188),IY( 188)/'MOVE',   4,  12/
6752      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -2,  -9/
6753      DATA IOPERA( 190),IX( 190),IY( 190)/'MOVE',  -3,  12/
6754      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -6,   6/
6755      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',  -4,  12/
6756      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  11,  12/
6757      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',  10,   6/
6758      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',  10,  12/
6759      DATA IOPERA( 196),IX( 196),IY( 196)/'MOVE',  -6,  -9/
6760      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   1,  -9/
6761C
6762      DATA IXMIND(  20)/ -10/
6763      DATA IXMAXD(  20)/  11/
6764      DATA IXDELD(  20)/  21/
6765      DATA ISTARD(  20)/ 186/
6766      DATA NUMCOO(  20)/  12/
6767C
6768C     DEFINE CHARACTER   2071--UPPER CASE U
6769C
6770      DATA IOPERA( 198),IX( 198),IY( 198)/'MOVE',  -4,  12/
6771      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -7,   1/
6772      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -8,  -3/
6773      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -8,  -6/
6774      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -7,  -8/
6775      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -4,  -9/
6776      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',   0,  -9/
6777      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   3,  -8/
6778      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   5,  -6/
6779      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   6,  -3/
6780      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  10,  12/
6781      DATA IOPERA( 209),IX( 209),IY( 209)/'MOVE',  -3,  12/
6782      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -6,   1/
6783      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -7,  -3/
6784      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',  -7,  -6/
6785      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',  -6,  -8/
6786      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',  -4,  -9/
6787      DATA IOPERA( 215),IX( 215),IY( 215)/'MOVE',  -7,  12/
6788      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   0,  12/
6789      DATA IOPERA( 217),IX( 217),IY( 217)/'MOVE',   7,  12/
6790      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  13,  12/
6791C
6792      DATA IXMIND(  21)/ -12/
6793      DATA IXMAXD(  21)/  13/
6794      DATA IXDELD(  21)/  25/
6795      DATA ISTARD(  21)/ 198/
6796      DATA NUMCOO(  21)/  21/
6797C
6798C     DEFINE CHARACTER   2072--UPPER CASE V
6799C
6800      DATA IOPERA( 219),IX( 219),IY( 219)/'MOVE',  -4,  12/
6801      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -3,  -9/
6802      DATA IOPERA( 221),IX( 221),IY( 221)/'MOVE',  -3,  12/
6803      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',  -2,  -7/
6804      DATA IOPERA( 223),IX( 223),IY( 223)/'MOVE',  10,  12/
6805      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',  -3,  -9/
6806      DATA IOPERA( 225),IX( 225),IY( 225)/'MOVE',  -6,  12/
6807      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   0,  12/
6808      DATA IOPERA( 227),IX( 227),IY( 227)/'MOVE',   6,  12/
6809      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',  12,  12/
6810C
6811      DATA IXMIND(  22)/ -10/
6812      DATA IXMAXD(  22)/  10/
6813      DATA IXDELD(  22)/  20/
6814      DATA ISTARD(  22)/ 219/
6815      DATA NUMCOO(  22)/  10/
6816C
6817C     DEFINE CHARACTER   2073--UPPER CASE W
6818C
6819      DATA IOPERA( 229),IX( 229),IY( 229)/'MOVE',  -5,  12/
6820      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -7,  -9/
6821      DATA IOPERA( 231),IX( 231),IY( 231)/'MOVE',  -4,  12/
6822      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',  -6,  -7/
6823      DATA IOPERA( 233),IX( 233),IY( 233)/'MOVE',   3,  12/
6824      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',  -7,  -9/
6825      DATA IOPERA( 235),IX( 235),IY( 235)/'MOVE',   3,  12/
6826      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   1,  -9/
6827      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',   4,  12/
6828      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   2,  -7/
6829      DATA IOPERA( 239),IX( 239),IY( 239)/'MOVE',  11,  12/
6830      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   1,  -9/
6831      DATA IOPERA( 241),IX( 241),IY( 241)/'MOVE',  -8,  12/
6832      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -1,  12/
6833      DATA IOPERA( 243),IX( 243),IY( 243)/'MOVE',   8,  12/
6834      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',  14,  12/
6835C
6836      DATA IXMIND(  23)/ -13/
6837      DATA IXMAXD(  23)/  13/
6838      DATA IXDELD(  23)/  26/
6839      DATA ISTARD(  23)/ 229/
6840      DATA NUMCOO(  23)/  16/
6841C
6842C     DEFINE CHARACTER   2074--UPPER CASE X
6843C
6844      DATA IOPERA( 245),IX( 245),IY( 245)/'MOVE',  -4,  12/
6845      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',   3,  -9/
6846      DATA IOPERA( 247),IX( 247),IY( 247)/'MOVE',  -3,  12/
6847      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',   4,  -9/
6848      DATA IOPERA( 249),IX( 249),IY( 249)/'MOVE',  10,  12/
6849      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW', -10,  -9/
6850      DATA IOPERA( 251),IX( 251),IY( 251)/'MOVE',  -6,  12/
6851      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   0,  12/
6852      DATA IOPERA( 253),IX( 253),IY( 253)/'MOVE',   6,  12/
6853      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  12,  12/
6854      DATA IOPERA( 255),IX( 255),IY( 255)/'MOVE', -12,  -9/
6855      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',  -6,  -9/
6856      DATA IOPERA( 257),IX( 257),IY( 257)/'MOVE',   0,  -9/
6857      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   6,  -9/
6858C
6859      DATA IXMIND(  24)/ -11/
6860      DATA IXMAXD(  24)/  11/
6861      DATA IXDELD(  24)/  22/
6862      DATA ISTARD(  24)/ 245/
6863      DATA NUMCOO(  24)/  14/
6864C
6865C     DEFINE CHARACTER   2075--UPPER CASE Y
6866C
6867      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',  -4,  12/
6868      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',   0,   2/
6869      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -3,  -9/
6870      DATA IOPERA( 262),IX( 262),IY( 262)/'MOVE',  -3,  12/
6871      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',   1,   2/
6872      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -2,  -9/
6873      DATA IOPERA( 265),IX( 265),IY( 265)/'MOVE',  11,  12/
6874      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',   1,   2/
6875      DATA IOPERA( 267),IX( 267),IY( 267)/'MOVE',  -6,  12/
6876      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   0,  12/
6877      DATA IOPERA( 269),IX( 269),IY( 269)/'MOVE',   7,  12/
6878      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',  13,  12/
6879      DATA IOPERA( 271),IX( 271),IY( 271)/'MOVE',  -6,  -9/
6880      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   1,  -9/
6881C
6882      DATA IXMIND(  25)/ -10/
6883      DATA IXMAXD(  25)/  11/
6884      DATA IXDELD(  25)/  21/
6885      DATA ISTARD(  25)/ 259/
6886      DATA NUMCOO(  25)/  14/
6887C
6888C     DEFINE CHARACTER   2076--UPPER CASE Z
6889C
6890      DATA IOPERA( 273),IX( 273),IY( 273)/'MOVE',   9,  12/
6891      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW', -10,  -9/
6892      DATA IOPERA( 275),IX( 275),IY( 275)/'MOVE',  10,  12/
6893      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -9,  -9/
6894      DATA IOPERA( 277),IX( 277),IY( 277)/'MOVE',  -3,  12/
6895      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -6,   6/
6896      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -4,  12/
6897      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',  10,  12/
6898      DATA IOPERA( 281),IX( 281),IY( 281)/'MOVE', -10,  -9/
6899      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',   4,  -9/
6900      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',   6,  -3/
6901      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   3,  -9/
6902C
6903      DATA IXMIND(  26)/ -11/
6904      DATA IXMAXD(  26)/  11/
6905      DATA IXDELD(  26)/  22/
6906      DATA ISTARD(  26)/ 273/
6907      DATA NUMCOO(  26)/  12/
6908C
6909C-----START POINT-----------------------------------------------------
6910C
6911      IFOUND='YES'
6912      IERROR='NO'
6913C
6914      NUMCO=1
6915      ISTART=1
6916      ISTOP=1
6917      NC=1
6918C
6919C               ******************************************
6920C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
6921C               **  HERSHEY CHARACTER SET CASE          **
6922C               ******************************************
6923C
6924C
6925      IF(IBUGD2.EQ.'OFF')GOTO90
6926      WRITE(ICOUT,999)
6927  999 FORMAT(1X)
6928      CALL DPWRST('XXX','BUG ')
6929      WRITE(ICOUT,51)
6930   51 FORMAT('***** AT THE BEGINNING OF DRCIU2--')
6931      CALL DPWRST('XXX','BUG ')
6932      WRITE(ICOUT,52)ICHARN
6933   52 FORMAT('ICHARN = ',I8)
6934      CALL DPWRST('XXX','BUG ')
6935      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
6936   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
6937      CALL DPWRST('XXX','BUG ')
6938   90 CONTINUE
6939C
6940C               **************************************
6941C               **  STEP 2--                        **
6942C               **  EXTRACT THE COORDINATES         **
6943C               **  FOR THIS PARTICULAR CHARACTER.  **
6944C               **************************************
6945C
6946      ISTART=ISTARD(ICHARN)
6947      NC=NUMCOO(ICHARN)
6948      ISTOP=ISTART+NC-1
6949      J=0
6950      DO1100I=ISTART,ISTOP
6951      J=J+1
6952      IOP(J)=IOPERA(I)
6953      X(J)=IX(I)
6954      Y(J)=IY(I)
6955 1100 CONTINUE
6956      NUMCO=J
6957      IXMINS=IXMIND(ICHARN)
6958      IXMAXS=IXMAXD(ICHARN)
6959      IXDELS=IXDELD(ICHARN)
6960C
6961      GOTO9000
6962C
6963C               *****************
6964C               **  STEP 90--  **
6965C               **  EXIT       **
6966C               *****************
6967C
6968 9000 CONTINUE
6969      IF(IBUGD2.EQ.'OFF')GOTO9090
6970      WRITE(ICOUT,999)
6971      CALL DPWRST('XXX','BUG ')
6972      WRITE(ICOUT,9011)
6973 9011 FORMAT('***** AT THE END       OF DRCIU2--')
6974      CALL DPWRST('XXX','BUG ')
6975      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
6976 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
6977      CALL DPWRST('XXX','BUG ')
6978      WRITE(ICOUT,9013)ICHARN
6979 9013 FORMAT('ICHARN = ',I8)
6980      CALL DPWRST('XXX','BUG ')
6981      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
6982 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
6983      CALL DPWRST('XXX','BUG ')
6984      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
6985      DO9015I=1,NUMCO
6986      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
6987 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
6988      CALL DPWRST('XXX','BUG ')
6989 9015 CONTINUE
6990 9019 CONTINUE
6991      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
6992 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
6993      CALL DPWRST('XXX','BUG ')
6994 9090 CONTINUE
6995C
6996      RETURN
6997      END
6998      SUBROUTINE DRCL1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
6999     1IBUGD2,IFOUND,IERROR)
7000C
7001C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
7002C              FOR ROMAN COMPLEX LOWER CASE (PART 1).
7003C     WRITTEN BY--JAMES J. FILLIBEN
7004C                 STATISTICAL ENGINEERING DIVISION
7005C                 CENTER FOR APPLIED MATHEMATICS
7006C                 NATIONAL BUREAU OF STANDARDS
7007C                 WASHINGTON, D. C. 20234
7008C                 PHONE--301-921-3651
7009C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
7010C           OF THE NATIONAL BUREAU OF STANDARDS.
7011C     LANGUAGE--ANSI FORTRAN (1977)
7012C     VERSION NUMBER--87/4
7013C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
7014C     UPDATED         --MAY       1982.
7015C     UPDATED         --MARCH     1987.
7016C
7017C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
7018C
7019      CHARACTER*4 IOP
7020      CHARACTER*4 IBUGD2
7021      CHARACTER*4 IFOUND
7022      CHARACTER*4 IERROR
7023C
7024      CHARACTER*4 IOPERA
7025C
7026C---------------------------------------------------------------------
7027C
7028      DIMENSION IOP(*)
7029      DIMENSION X(*)
7030      DIMENSION Y(*)
7031C
7032      DIMENSION IOPERA(300)
7033      DIMENSION IX(300)
7034      DIMENSION IY(300)
7035C
7036      DIMENSION IXMIND(30)
7037      DIMENSION IXMAXD(30)
7038      DIMENSION IXDELD(30)
7039      DIMENSION ISTARD(30)
7040      DIMENSION NUMCOO(30)
7041C
7042C---------------------------------------------------------------------
7043C
7044      INCLUDE 'DPCOP2.INC'
7045C
7046C-----DATA STATEMENTS-------------------------------------------------
7047C
7048C     DEFINE CHARACTER   2101--LOWER CASE A
7049C
7050      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',  -4,   3/
7051      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -4,   2/
7052      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -5,   2/
7053      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -5,   3/
7054      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -4,   4/
7055      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -2,   5/
7056      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',   2,   5/
7057      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',   4,   4/
7058      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',   5,   3/
7059      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   6,   1/
7060      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   6,  -6/
7061      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   7,  -8/
7062      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   8,  -9/
7063      DATA IOPERA(  14),IX(  14),IY(  14)/'MOVE',   5,   3/
7064      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   5,  -6/
7065      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   6,  -8/
7066      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   8,  -9/
7067      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   9,  -9/
7068      DATA IOPERA(  19),IX(  19),IY(  19)/'MOVE',   5,   1/
7069      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   4,   0/
7070      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  -2,  -1/
7071      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  -5,  -2/
7072      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -6,  -4/
7073      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -6,  -6/
7074      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -5,  -8/
7075      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -2,  -9/
7076      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   1,  -9/
7077      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   3,  -8/
7078      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   5,  -6/
7079      DATA IOPERA(  30),IX(  30),IY(  30)/'MOVE',  -2,  -1/
7080      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -4,  -2/
7081      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -5,  -4/
7082      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -5,  -6/
7083      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -4,  -8/
7084      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -2,  -9/
7085C
7086      DATA IXMIND(   1)/  -9/
7087      DATA IXMAXD(   1)/  11/
7088      DATA IXDELD(   1)/  20/
7089      DATA ISTARD(   1)/   1/
7090      DATA NUMCOO(   1)/  35/
7091C
7092C     DEFINE CHARACTER   2102--LOWER CASE B
7093C
7094      DATA IOPERA(  36),IX(  36),IY(  36)/'MOVE',  -6,  12/
7095      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -6,  -9/
7096      DATA IOPERA(  38),IX(  38),IY(  38)/'MOVE',  -5,  12/
7097      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -5,  -9/
7098      DATA IOPERA(  40),IX(  40),IY(  40)/'MOVE',  -5,   2/
7099      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -3,   4/
7100      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -1,   5/
7101      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   1,   5/
7102      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   4,   4/
7103      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   6,   2/
7104      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   7,  -1/
7105      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   7,  -3/
7106      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',   6,  -6/
7107      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   4,  -8/
7108      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',   1,  -9/
7109      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -1,  -9/
7110      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -3,  -8/
7111      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -5,  -6/
7112      DATA IOPERA(  54),IX(  54),IY(  54)/'MOVE',   1,   5/
7113      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   3,   4/
7114      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   5,   2/
7115      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   6,  -1/
7116      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   6,  -3/
7117      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',   5,  -6/
7118      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   3,  -8/
7119      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   1,  -9/
7120      DATA IOPERA(  62),IX(  62),IY(  62)/'MOVE',  -9,  12/
7121      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -5,  12/
7122C
7123      DATA IXMIND(   2)/ -11/
7124      DATA IXMAXD(   2)/  10/
7125      DATA IXDELD(   2)/  21/
7126      DATA ISTARD(   2)/  36/
7127      DATA NUMCOO(   2)/  28/
7128C
7129C     DEFINE CHARACTER   2103--LOWER CASE C
7130C
7131      DATA IOPERA(  64),IX(  64),IY(  64)/'MOVE',   5,   2/
7132      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   4,   1/
7133      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   5,   0/
7134      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   6,   1/
7135      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   6,   2/
7136      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   4,   4/
7137      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   2,   5/
7138      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -1,   5/
7139      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -4,   4/
7140      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -6,   2/
7141      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -7,  -1/
7142      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -7,  -3/
7143      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6,  -6/
7144      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -4,  -8/
7145      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -1,  -9/
7146      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   1,  -9/
7147      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   4,  -8/
7148      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   6,  -6/
7149      DATA IOPERA(  82),IX(  82),IY(  82)/'MOVE',  -1,   5/
7150      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -3,   4/
7151      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',  -5,   2/
7152      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',  -6,  -1/
7153      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -6,  -3/
7154      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -5,  -6/
7155      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -3,  -8/
7156      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -1,  -9/
7157C
7158      DATA IXMIND(   3)/ -10/
7159      DATA IXMAXD(   3)/   9/
7160      DATA IXDELD(   3)/  19/
7161      DATA ISTARD(   3)/  64/
7162      DATA NUMCOO(   3)/  26/
7163C
7164C     DEFINE CHARACTER   2104--LOWER CASE D
7165C
7166      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE',   5,  12/
7167      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   5,  -9/
7168      DATA IOPERA(  92),IX(  92),IY(  92)/'MOVE',   6,  12/
7169      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   6,  -9/
7170      DATA IOPERA(  94),IX(  94),IY(  94)/'MOVE',   5,   2/
7171      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   3,   4/
7172      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   1,   5/
7173      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -1,   5/
7174      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',  -4,   4/
7175      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',  -6,   2/
7176      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  -7,  -1/
7177      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -7,  -3/
7178      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',  -6,  -6/
7179      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',  -4,  -8/
7180      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -1,  -9/
7181      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   1,  -9/
7182      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   3,  -8/
7183      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   5,  -6/
7184      DATA IOPERA( 108),IX( 108),IY( 108)/'MOVE',  -1,   5/
7185      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -3,   4/
7186      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -5,   2/
7187      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -6,  -1/
7188      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',  -6,  -3/
7189      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -5,  -6/
7190      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',  -3,  -8/
7191      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -1,  -9/
7192      DATA IOPERA( 116),IX( 116),IY( 116)/'MOVE',   2,  12/
7193      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   6,  12/
7194      DATA IOPERA( 118),IX( 118),IY( 118)/'MOVE',   5,  -9/
7195      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   9,  -9/
7196C
7197      DATA IXMIND(   4)/ -10/
7198      DATA IXMAXD(   4)/  11/
7199      DATA IXDELD(   4)/  21/
7200      DATA ISTARD(   4)/  90/
7201      DATA NUMCOO(   4)/  30/
7202C
7203C     DEFINE CHARACTER   2105--LOWER CASE E
7204C
7205      DATA IOPERA( 120),IX( 120),IY( 120)/'MOVE',  -6,  -1/
7206      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   6,  -1/
7207      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   6,   1/
7208      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',   5,   3/
7209      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   4,   4/
7210      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   2,   5/
7211      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -1,   5/
7212      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',  -4,   4/
7213      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -6,   2/
7214      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -7,  -1/
7215      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -7,  -3/
7216      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',  -6,  -6/
7217      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -4,  -8/
7218      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -1,  -9/
7219      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   1,  -9/
7220      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   4,  -8/
7221      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   6,  -6/
7222      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',   5,  -1/
7223      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',   5,   2/
7224      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   4,   4/
7225      DATA IOPERA( 140),IX( 140),IY( 140)/'MOVE',  -1,   5/
7226      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -3,   4/
7227      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -5,   2/
7228      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -6,  -1/
7229      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -6,  -3/
7230      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -5,  -6/
7231      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',  -3,  -8/
7232      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',  -1,  -9/
7233C
7234      DATA IXMIND(   5)/ -10/
7235      DATA IXMAXD(   5)/   9/
7236      DATA IXDELD(   5)/  19/
7237      DATA ISTARD(   5)/ 120/
7238      DATA NUMCOO(   5)/  28/
7239C
7240C     DEFINE CHARACTER   2106--LOWER CASE F
7241C
7242      DATA IOPERA( 148),IX( 148),IY( 148)/'MOVE',   3,  11/
7243      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   2,  10/
7244      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   3,   9/
7245      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   4,  10/
7246      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   4,  11/
7247      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   3,  12/
7248      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   1,  12/
7249      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -1,  11/
7250      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -2,   9/
7251      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -2,  -9/
7252      DATA IOPERA( 158),IX( 158),IY( 158)/'MOVE',   1,  12/
7253      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   0,  11/
7254      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -1,   9/
7255      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -1,  -9/
7256      DATA IOPERA( 162),IX( 162),IY( 162)/'MOVE',  -5,   5/
7257      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',   3,   5/
7258      DATA IOPERA( 164),IX( 164),IY( 164)/'MOVE',  -5,  -9/
7259      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',   2,  -9/
7260C
7261      DATA IXMIND(   6)/  -7/
7262      DATA IXMAXD(   6)/   6/
7263      DATA IXDELD(   6)/  13/
7264      DATA ISTARD(   6)/ 148/
7265      DATA NUMCOO(   6)/  18/
7266C
7267C     DEFINE CHARACTER   2107--LOWER CASE G
7268C
7269      DATA IOPERA( 166),IX( 166),IY( 166)/'MOVE',  -1,   5/
7270      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -3,   4/
7271      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',  -4,   3/
7272      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',  -5,   1/
7273      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -5,  -1/
7274      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -4,  -3/
7275      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -3,  -4/
7276      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -1,  -5/
7277      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',   1,  -5/
7278      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   3,  -4/
7279      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   4,  -3/
7280      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   5,  -1/
7281      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   5,   1/
7282      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   4,   3/
7283      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   3,   4/
7284      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   1,   5/
7285      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -1,   5/
7286      DATA IOPERA( 183),IX( 183),IY( 183)/'MOVE',  -3,   4/
7287      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -4,   2/
7288      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -4,  -2/
7289      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -3,  -4/
7290      DATA IOPERA( 187),IX( 187),IY( 187)/'MOVE',   3,  -4/
7291      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   4,  -2/
7292      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   4,   2/
7293      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   3,   4/
7294      DATA IOPERA( 191),IX( 191),IY( 191)/'MOVE',   4,   3/
7295      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   5,   4/
7296      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   7,   5/
7297      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   7,   4/
7298      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   5,   4/
7299      DATA IOPERA( 196),IX( 196),IY( 196)/'MOVE',  -4,  -3/
7300      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  -5,  -4/
7301      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -6,  -6/
7302      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -6,  -7/
7303      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -5,  -9/
7304      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -2, -10/
7305      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   3, -10/
7306      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',   6, -11/
7307      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',   7, -12/
7308      DATA IOPERA( 205),IX( 205),IY( 205)/'MOVE',  -6,  -7/
7309      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -5,  -8/
7310      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -2,  -9/
7311      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',   3,  -9/
7312      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',   6, -10/
7313      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',   7, -12/
7314      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   7, -13/
7315      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   6, -15/
7316      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   3, -16/
7317      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',  -3, -16/
7318      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',  -6, -15/
7319      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',  -7, -13/
7320      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -7, -12/
7321      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -6, -10/
7322      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -3,  -9/
7323C
7324      DATA IXMIND(   7)/  -9/
7325      DATA IXMAXD(   7)/  10/
7326      DATA IXDELD(   7)/  19/
7327      DATA ISTARD(   7)/ 166/
7328      DATA NUMCOO(   7)/  54/
7329C
7330C     DEFINE CHARACTER   2108--LOWER CASE H
7331C
7332      DATA IOPERA( 220),IX( 220),IY( 220)/'MOVE',  -6,  12/
7333      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -6,  -9/
7334      DATA IOPERA( 222),IX( 222),IY( 222)/'MOVE',  -5,  12/
7335      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -5,  -9/
7336      DATA IOPERA( 224),IX( 224),IY( 224)/'MOVE',  -5,   2/
7337      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  -3,   4/
7338      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   0,   5/
7339      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   2,   5/
7340      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   5,   4/
7341      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   6,   2/
7342      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',   6,  -9/
7343      DATA IOPERA( 231),IX( 231),IY( 231)/'MOVE',   2,   5/
7344      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   4,   4/
7345      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',   5,   2/
7346      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   5,  -9/
7347      DATA IOPERA( 235),IX( 235),IY( 235)/'MOVE',  -9,  12/
7348      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -5,  12/
7349      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',  -9,  -9/
7350      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',  -2,  -9/
7351      DATA IOPERA( 239),IX( 239),IY( 239)/'MOVE',   2,  -9/
7352      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   9,  -9/
7353C
7354      DATA IXMIND(   8)/ -11/
7355      DATA IXMAXD(   8)/  11/
7356      DATA IXDELD(   8)/  22/
7357      DATA ISTARD(   8)/ 220/
7358      DATA NUMCOO(   8)/  21/
7359C
7360C     DEFINE CHARACTER   2109--LOWER CASE I
7361C
7362      DATA IOPERA( 241),IX( 241),IY( 241)/'MOVE',   0,  12/
7363      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -1,  11/
7364      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   0,  10/
7365      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',   1,  11/
7366      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',   0,  12/
7367      DATA IOPERA( 246),IX( 246),IY( 246)/'MOVE',   0,   5/
7368      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',   0,  -9/
7369      DATA IOPERA( 248),IX( 248),IY( 248)/'MOVE',   1,   5/
7370      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',   1,  -9/
7371      DATA IOPERA( 250),IX( 250),IY( 250)/'MOVE',  -3,   5/
7372      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   1,   5/
7373      DATA IOPERA( 252),IX( 252),IY( 252)/'MOVE',  -3,  -9/
7374      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   4,  -9/
7375C
7376      DATA IXMIND(   9)/  -5/
7377      DATA IXMAXD(   9)/   6/
7378      DATA IXDELD(   9)/  11/
7379      DATA ISTARD(   9)/ 241/
7380      DATA NUMCOO(   9)/  13/
7381C
7382C     DEFINE CHARACTER   2110--LOWER CASE J
7383C
7384      DATA IOPERA( 254),IX( 254),IY( 254)/'MOVE',   1,  12/
7385      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',   0,  11/
7386      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   1,  10/
7387      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   2,  11/
7388      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   1,  12/
7389      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',   2,   5/
7390      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',   2, -13/
7391      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',   1, -15/
7392      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -1, -16/
7393      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -3, -16/
7394      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -4, -15/
7395      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',  -4, -14/
7396      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',  -3, -13/
7397      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',  -2, -14/
7398      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',  -3, -15/
7399      DATA IOPERA( 269),IX( 269),IY( 269)/'MOVE',   1,   5/
7400      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   1, -13/
7401      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',   0, -15/
7402      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',  -1, -16/
7403      DATA IOPERA( 273),IX( 273),IY( 273)/'MOVE',  -2,   5/
7404      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',   2,   5/
7405C
7406      DATA IXMIND(  10)/  -5/
7407      DATA IXMAXD(  10)/   6/
7408      DATA IXDELD(  10)/  11/
7409      DATA ISTARD(  10)/ 254/
7410      DATA NUMCOO(  10)/  21/
7411C
7412C     DEFINE CHARACTER   2111--LOWER CASE K
7413C
7414      DATA IOPERA( 275),IX( 275),IY( 275)/'MOVE',  -6,  12/
7415      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -6,  -9/
7416      DATA IOPERA( 277),IX( 277),IY( 277)/'MOVE',  -5,  12/
7417      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -5,  -9/
7418      DATA IOPERA( 279),IX( 279),IY( 279)/'MOVE',   5,   5/
7419      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',  -5,  -5/
7420      DATA IOPERA( 281),IX( 281),IY( 281)/'MOVE',   0,  -1/
7421      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',   6,  -9/
7422      DATA IOPERA( 283),IX( 283),IY( 283)/'MOVE',  -1,  -1/
7423      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   5,  -9/
7424      DATA IOPERA( 285),IX( 285),IY( 285)/'MOVE',  -9,  12/
7425      DATA IOPERA( 286),IX( 286),IY( 286)/'DRAW',  -5,  12/
7426      DATA IOPERA( 287),IX( 287),IY( 287)/'MOVE',   2,   5/
7427      DATA IOPERA( 288),IX( 288),IY( 288)/'DRAW',   8,   5/
7428      DATA IOPERA( 289),IX( 289),IY( 289)/'MOVE',  -9,  -9/
7429      DATA IOPERA( 290),IX( 290),IY( 290)/'DRAW',  -2,  -9/
7430      DATA IOPERA( 291),IX( 291),IY( 291)/'MOVE',   2,  -9/
7431      DATA IOPERA( 292),IX( 292),IY( 292)/'DRAW',   8,  -9/
7432C
7433      DATA IXMIND(  11)/ -11/
7434      DATA IXMAXD(  11)/  10/
7435      DATA IXDELD(  11)/  21/
7436      DATA ISTARD(  11)/ 275/
7437      DATA NUMCOO(  11)/  18/
7438C
7439C     DEFINE CHARACTER   2112--LOWER CASE L
7440C
7441      DATA IOPERA( 293),IX( 293),IY( 293)/'MOVE',   0,  12/
7442      DATA IOPERA( 294),IX( 294),IY( 294)/'DRAW',   0,  -9/
7443      DATA IOPERA( 295),IX( 295),IY( 295)/'MOVE',   1,  12/
7444      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',   1,  -9/
7445      DATA IOPERA( 297),IX( 297),IY( 297)/'MOVE',  -3,  12/
7446      DATA IOPERA( 298),IX( 298),IY( 298)/'DRAW',   1,  12/
7447      DATA IOPERA( 299),IX( 299),IY( 299)/'MOVE',  -3,  -9/
7448      DATA IOPERA( 300),IX( 300),IY( 300)/'DRAW',   4,  -9/
7449C
7450      DATA IXMIND(  12)/  -5/
7451      DATA IXMAXD(  12)/   6/
7452      DATA IXDELD(  12)/  11/
7453      DATA ISTARD(  12)/ 293/
7454      DATA NUMCOO(  12)/   8/
7455C
7456C-----START POINT-----------------------------------------------------
7457C
7458      IFOUND='YES'
7459      IERROR='NO'
7460C
7461      NUMCO=1
7462      ISTART=1
7463      ISTOP=1
7464      NC=1
7465C
7466C               ******************************************
7467C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
7468C               **  HERSHEY CHARACTER SET CASE          **
7469C               ******************************************
7470C
7471C
7472      IF(IBUGD2.EQ.'OFF')GOTO90
7473      WRITE(ICOUT,999)
7474  999 FORMAT(1X)
7475      CALL DPWRST('XXX','BUG ')
7476      WRITE(ICOUT,51)
7477   51 FORMAT('***** AT THE BEGINNING OF DRCL1--')
7478      CALL DPWRST('XXX','BUG ')
7479      WRITE(ICOUT,52)ICHARN
7480   52 FORMAT('ICHARN = ',I8)
7481      CALL DPWRST('XXX','BUG ')
7482      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
7483   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
7484      CALL DPWRST('XXX','BUG ')
7485   90 CONTINUE
7486C
7487C               **************************************
7488C               **  STEP 2--                        **
7489C               **  EXTRACT THE COORDINATES         **
7490C               **  FOR THIS PARTICULAR CHARACTER.  **
7491C               **************************************
7492C
7493      ISTART=ISTARD(ICHARN)
7494      NC=NUMCOO(ICHARN)
7495      ISTOP=ISTART+NC-1
7496      J=0
7497      DO1100I=ISTART,ISTOP
7498      J=J+1
7499      IOP(J)=IOPERA(I)
7500      X(J)=IX(I)
7501      Y(J)=IY(I)
7502 1100 CONTINUE
7503      NUMCO=J
7504      IXMINS=IXMIND(ICHARN)
7505      IXMAXS=IXMAXD(ICHARN)
7506      IXDELS=IXDELD(ICHARN)
7507C
7508      GOTO9000
7509C
7510C               *****************
7511C               **  STEP 90--  **
7512C               **  EXIT       **
7513C               *****************
7514C
7515 9000 CONTINUE
7516      IF(IBUGD2.EQ.'OFF')GOTO9090
7517      WRITE(ICOUT,999)
7518      CALL DPWRST('XXX','BUG ')
7519      WRITE(ICOUT,9011)
7520 9011 FORMAT('***** AT THE END       OF DRCL1--')
7521      CALL DPWRST('XXX','BUG ')
7522      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
7523 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
7524      CALL DPWRST('XXX','BUG ')
7525      WRITE(ICOUT,9013)ICHARN
7526 9013 FORMAT('ICHARN = ',I8)
7527      CALL DPWRST('XXX','BUG ')
7528      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
7529 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
7530      CALL DPWRST('XXX','BUG ')
7531      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
7532      DO9015I=1,NUMCO
7533      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
7534 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
7535      CALL DPWRST('XXX','BUG ')
7536 9015 CONTINUE
7537 9019 CONTINUE
7538      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
7539 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
7540      CALL DPWRST('XXX','BUG ')
7541 9090 CONTINUE
7542C
7543      RETURN
7544      END
7545      SUBROUTINE DRCL2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
7546     1IBUGD2,IFOUND,IERROR)
7547C
7548C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
7549C              FOR ROMAN COMPLEX LOWER CASE (PART 2).
7550C     WRITTEN BY--JAMES J. FILLIBEN
7551C                 STATISTICAL ENGINEERING DIVISION
7552C                 CENTER FOR APPLIED MATHEMATICS
7553C                 NATIONAL BUREAU OF STANDARDS
7554C                 WASHINGTON, D. C. 20234
7555C                 PHONE--301-921-3651
7556C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
7557C           OF THE NATIONAL BUREAU OF STANDARDS.
7558C     LANGUAGE--ANSI FORTRAN (1977)
7559C     VERSION NUMBER--87/4
7560C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
7561C     UPDATED         --MAY       1982.
7562C     UPDATED         --MARCH     1987.
7563C
7564C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
7565C
7566      CHARACTER*4 IOP
7567      CHARACTER*4 IBUGD2
7568      CHARACTER*4 IFOUND
7569      CHARACTER*4 IERROR
7570C
7571      CHARACTER*4 IOPERA
7572C
7573C---------------------------------------------------------------------
7574C
7575      DIMENSION IOP(*)
7576      DIMENSION X(*)
7577      DIMENSION Y(*)
7578C
7579      DIMENSION IOPERA(300)
7580      DIMENSION IX(300)
7581      DIMENSION IY(300)
7582C
7583      DIMENSION IXMIND(30)
7584      DIMENSION IXMAXD(30)
7585      DIMENSION IXDELD(30)
7586      DIMENSION ISTARD(30)
7587      DIMENSION NUMCOO(30)
7588C
7589C---------------------------------------------------------------------
7590C
7591      INCLUDE 'DPCOP2.INC'
7592C
7593C-----DATA STATEMENTS-------------------------------------------------
7594C
7595C     DEFINE CHARACTER   2113--LOWER CASE M
7596C
7597      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -11,   5/
7598      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -11,  -9/
7599      DATA IOPERA(   3),IX(   3),IY(   3)/'MOVE', -10,   5/
7600      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW', -10,  -9/
7601      DATA IOPERA(   5),IX(   5),IY(   5)/'MOVE', -10,   2/
7602      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -8,   4/
7603      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -5,   5/
7604      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -3,   5/
7605      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',   0,   4/
7606      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   1,   2/
7607      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   1,  -9/
7608      DATA IOPERA(  12),IX(  12),IY(  12)/'MOVE',  -3,   5/
7609      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -1,   4/
7610      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   0,   2/
7611      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   0,  -9/
7612      DATA IOPERA(  16),IX(  16),IY(  16)/'MOVE',   1,   2/
7613      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   3,   4/
7614      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   6,   5/
7615      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   8,   5/
7616      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',  11,   4/
7617      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  12,   2/
7618      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  12,  -9/
7619      DATA IOPERA(  23),IX(  23),IY(  23)/'MOVE',   8,   5/
7620      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  10,   4/
7621      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  11,   2/
7622      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  11,  -9/
7623      DATA IOPERA(  27),IX(  27),IY(  27)/'MOVE', -14,   5/
7624      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW', -10,   5/
7625      DATA IOPERA(  29),IX(  29),IY(  29)/'MOVE', -14,  -9/
7626      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -7,  -9/
7627      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',  -3,  -9/
7628      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   4,  -9/
7629      DATA IOPERA(  33),IX(  33),IY(  33)/'MOVE',   8,  -9/
7630      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  15,  -9/
7631C
7632      DATA IXMIND(  13)/ -16/
7633      DATA IXMAXD(  13)/  17/
7634      DATA IXDELD(  13)/  33/
7635      DATA ISTARD(  13)/   1/
7636      DATA NUMCOO(  13)/  34/
7637C
7638C     DEFINE CHARACTER   2114--LOWER CASE N
7639C
7640      DATA IOPERA(  35),IX(  35),IY(  35)/'MOVE',  -6,   5/
7641      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -6,  -9/
7642      DATA IOPERA(  37),IX(  37),IY(  37)/'MOVE',  -5,   5/
7643      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -5,  -9/
7644      DATA IOPERA(  39),IX(  39),IY(  39)/'MOVE',  -5,   2/
7645      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -3,   4/
7646      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   0,   5/
7647      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',   2,   5/
7648      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   5,   4/
7649      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   6,   2/
7650      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   6,  -9/
7651      DATA IOPERA(  46),IX(  46),IY(  46)/'MOVE',   2,   5/
7652      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   4,   4/
7653      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',   5,   2/
7654      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   5,  -9/
7655      DATA IOPERA(  50),IX(  50),IY(  50)/'MOVE',  -9,   5/
7656      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -5,   5/
7657      DATA IOPERA(  52),IX(  52),IY(  52)/'MOVE',  -9,  -9/
7658      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -2,  -9/
7659      DATA IOPERA(  54),IX(  54),IY(  54)/'MOVE',   2,  -9/
7660      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   9,  -9/
7661C
7662      DATA IXMIND(  14)/ -11/
7663      DATA IXMAXD(  14)/  11/
7664      DATA IXDELD(  14)/  22/
7665      DATA ISTARD(  14)/  35/
7666      DATA NUMCOO(  14)/  21/
7667C
7668C     DEFINE CHARACTER   2115--LOWER CASE O
7669C
7670      DATA IOPERA(  56),IX(  56),IY(  56)/'MOVE',  -1,   5/
7671      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -4,   4/
7672      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -6,   2/
7673      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -7,  -1/
7674      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -7,  -3/
7675      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -6,  -6/
7676      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -4,  -8/
7677      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -1,  -9/
7678      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   1,  -9/
7679      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   4,  -8/
7680      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   6,  -6/
7681      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   7,  -3/
7682      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   7,  -1/
7683      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   6,   2/
7684      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   4,   4/
7685      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   1,   5/
7686      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -1,   5/
7687      DATA IOPERA(  73),IX(  73),IY(  73)/'MOVE',  -1,   5/
7688      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -3,   4/
7689      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -5,   2/
7690      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6,  -1/
7691      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -6,  -3/
7692      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -5,  -6/
7693      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -3,  -8/
7694      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -1,  -9/
7695      DATA IOPERA(  81),IX(  81),IY(  81)/'MOVE',   1,  -9/
7696      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   3,  -8/
7697      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   5,  -6/
7698      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   6,  -3/
7699      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   6,  -1/
7700      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   5,   2/
7701      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   3,   4/
7702      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   1,   5/
7703C
7704      DATA IXMIND(  15)/ -10/
7705      DATA IXMAXD(  15)/  10/
7706      DATA IXDELD(  15)/  20/
7707      DATA ISTARD(  15)/  56/
7708      DATA NUMCOO(  15)/  33/
7709C
7710C     DEFINE CHARACTER   2116--LOWER CASE P
7711C
7712      DATA IOPERA(  89),IX(  89),IY(  89)/'MOVE',  -6,   5/
7713      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  -6, -16/
7714      DATA IOPERA(  91),IX(  91),IY(  91)/'MOVE',  -5,   5/
7715      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -5, -16/
7716      DATA IOPERA(  93),IX(  93),IY(  93)/'MOVE',  -5,   2/
7717      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -3,   4/
7718      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -1,   5/
7719      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   1,   5/
7720      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   4,   4/
7721      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   6,   2/
7722      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   7,  -1/
7723      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   7,  -3/
7724      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   6,  -6/
7725      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   4,  -8/
7726      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   1,  -9/
7727      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -1,  -9/
7728      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -3,  -8/
7729      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -5,  -6/
7730      DATA IOPERA( 107),IX( 107),IY( 107)/'MOVE',   1,   5/
7731      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   3,   4/
7732      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   5,   2/
7733      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   6,  -1/
7734      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   6,  -3/
7735      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   5,  -6/
7736      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   3,  -8/
7737      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   1,  -9/
7738      DATA IOPERA( 115),IX( 115),IY( 115)/'MOVE',  -9,   5/
7739      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -5,   5/
7740      DATA IOPERA( 117),IX( 117),IY( 117)/'MOVE',  -9, -16/
7741      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -2, -16/
7742C
7743      DATA IXMIND(  16)/ -11/
7744      DATA IXMAXD(  16)/  10/
7745      DATA IXDELD(  16)/  21/
7746      DATA ISTARD(  16)/  89/
7747      DATA NUMCOO(  16)/  30/
7748C
7749C     DEFINE CHARACTER   2117--LOWER CASE Q
7750C
7751      DATA IOPERA( 119),IX( 119),IY( 119)/'MOVE',   5,   5/
7752      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',   5, -16/
7753      DATA IOPERA( 121),IX( 121),IY( 121)/'MOVE',   6,   5/
7754      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   6, -16/
7755      DATA IOPERA( 123),IX( 123),IY( 123)/'MOVE',   5,   2/
7756      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   3,   4/
7757      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   1,   5/
7758      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -1,   5/
7759      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',  -4,   4/
7760      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -6,   2/
7761      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -7,  -1/
7762      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -7,  -3/
7763      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',  -6,  -6/
7764      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -4,  -8/
7765      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -1,  -9/
7766      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   1,  -9/
7767      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   3,  -8/
7768      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   5,  -6/
7769      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',  -1,   5/
7770      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  -3,   4/
7771      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',  -5,   2/
7772      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -6,  -1/
7773      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -6,  -3/
7774      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -5,  -6/
7775      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -3,  -8/
7776      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -1,  -9/
7777      DATA IOPERA( 145),IX( 145),IY( 145)/'MOVE',   2, -16/
7778      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   9, -16/
7779C
7780      DATA IXMIND(  17)/ -10/
7781      DATA IXMAXD(  17)/  10/
7782      DATA IXDELD(  17)/  20/
7783      DATA ISTARD(  17)/ 119/
7784      DATA NUMCOO(  17)/  28/
7785C
7786C     DEFINE CHARACTER   2118--LOWER CASE R
7787C
7788      DATA IOPERA( 147),IX( 147),IY( 147)/'MOVE',  -4,   5/
7789      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -4,  -9/
7790      DATA IOPERA( 149),IX( 149),IY( 149)/'MOVE',  -3,   5/
7791      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -3,  -9/
7792      DATA IOPERA( 151),IX( 151),IY( 151)/'MOVE',  -3,  -1/
7793      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -2,   2/
7794      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   0,   4/
7795      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   2,   5/
7796      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   5,   5/
7797      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   6,   4/
7798      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   6,   3/
7799      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',   5,   2/
7800      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   4,   3/
7801      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',   5,   4/
7802      DATA IOPERA( 161),IX( 161),IY( 161)/'MOVE',  -7,   5/
7803      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -3,   5/
7804      DATA IOPERA( 163),IX( 163),IY( 163)/'MOVE',  -7,  -9/
7805      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',   0,  -9/
7806C
7807      DATA IXMIND(  18)/  -9/
7808      DATA IXMAXD(  18)/   8/
7809      DATA IXDELD(  18)/  17/
7810      DATA ISTARD(  18)/ 147/
7811      DATA NUMCOO(  18)/  18/
7812C
7813C     DEFINE CHARACTER   2119--LOWER CASE S
7814C
7815      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',   5,   3/
7816      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   6,   5/
7817      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   6,   1/
7818      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   5,   3/
7819      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   4,   4/
7820      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   2,   5/
7821      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -2,   5/
7822      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -4,   4/
7823      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -5,   3/
7824      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -5,   1/
7825      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',  -4,   0/
7826      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',  -2,  -1/
7827      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   3,  -3/
7828      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   5,  -4/
7829      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   6,  -5/
7830      DATA IOPERA( 180),IX( 180),IY( 180)/'MOVE',  -5,   2/
7831      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -4,   1/
7832      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -2,   0/
7833      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   3,  -2/
7834      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   5,  -3/
7835      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',   6,  -4/
7836      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',   6,  -7/
7837      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',   5,  -8/
7838      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   3,  -9/
7839      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -1,  -9/
7840      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',  -3,  -8/
7841      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -4,  -7/
7842      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',  -5,  -5/
7843      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  -5,  -9/
7844      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',  -4,  -7/
7845C
7846      DATA IXMIND(  19)/  -8/
7847      DATA IXMAXD(  19)/   9/
7848      DATA IXDELD(  19)/  17/
7849      DATA ISTARD(  19)/ 165/
7850      DATA NUMCOO(  19)/  30/
7851C
7852C     DEFINE CHARACTER   2120--LOWER CASE T
7853C
7854      DATA IOPERA( 195),IX( 195),IY( 195)/'MOVE',  -2,  12/
7855      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',  -2,  -5/
7856      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  -1,  -8/
7857      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',   1,  -9/
7858      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   3,  -9/
7859      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',   5,  -8/
7860      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   6,  -6/
7861      DATA IOPERA( 202),IX( 202),IY( 202)/'MOVE',  -1,  12/
7862      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -1,  -5/
7863      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',   0,  -8/
7864      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   1,  -9/
7865      DATA IOPERA( 206),IX( 206),IY( 206)/'MOVE',  -5,   5/
7866      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   3,   5/
7867C
7868      DATA IXMIND(  20)/  -7/
7869      DATA IXMAXD(  20)/   8/
7870      DATA IXDELD(  20)/  15/
7871      DATA ISTARD(  20)/ 195/
7872      DATA NUMCOO(  20)/  13/
7873C
7874C     DEFINE CHARACTER   2121--LOWER CASE U
7875C
7876      DATA IOPERA( 208),IX( 208),IY( 208)/'MOVE',  -6,   5/
7877      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -6,  -6/
7878      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -5,  -8/
7879      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -2,  -9/
7880      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   0,  -9/
7881      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   3,  -8/
7882      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   5,  -6/
7883      DATA IOPERA( 215),IX( 215),IY( 215)/'MOVE',  -5,   5/
7884      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',  -5,  -6/
7885      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -4,  -8/
7886      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -2,  -9/
7887      DATA IOPERA( 219),IX( 219),IY( 219)/'MOVE',   5,   5/
7888      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',   5,  -9/
7889      DATA IOPERA( 221),IX( 221),IY( 221)/'MOVE',   6,   5/
7890      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   6,  -9/
7891      DATA IOPERA( 223),IX( 223),IY( 223)/'MOVE',  -9,   5/
7892      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',  -5,   5/
7893      DATA IOPERA( 225),IX( 225),IY( 225)/'MOVE',   2,   5/
7894      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   6,   5/
7895      DATA IOPERA( 227),IX( 227),IY( 227)/'MOVE',   5,  -9/
7896      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   9,  -9/
7897C
7898      DATA IXMIND(  21)/ -11/
7899      DATA IXMAXD(  21)/  11/
7900      DATA IXDELD(  21)/  22/
7901      DATA ISTARD(  21)/ 208/
7902      DATA NUMCOO(  21)/  21/
7903C
7904C     DEFINE CHARACTER   2122--LOWER CASE V
7905C
7906      DATA IOPERA( 229),IX( 229),IY( 229)/'MOVE',  -6,   5/
7907      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',   0,  -9/
7908      DATA IOPERA( 231),IX( 231),IY( 231)/'MOVE',  -5,   5/
7909      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   0,  -7/
7910      DATA IOPERA( 233),IX( 233),IY( 233)/'MOVE',   6,   5/
7911      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   0,  -9/
7912      DATA IOPERA( 235),IX( 235),IY( 235)/'MOVE',  -8,   5/
7913      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -2,   5/
7914      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',   2,   5/
7915      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   8,   5/
7916C
7917      DATA IXMIND(  22)/  -9/
7918      DATA IXMAXD(  22)/   9/
7919      DATA IXDELD(  22)/  18/
7920      DATA ISTARD(  22)/ 229/
7921      DATA NUMCOO(  22)/  10/
7922C
7923C     DEFINE CHARACTER   2123--LOWER CASE W
7924C
7925      DATA IOPERA( 239),IX( 239),IY( 239)/'MOVE',  -8,   5/
7926      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',  -4,  -9/
7927      DATA IOPERA( 241),IX( 241),IY( 241)/'MOVE',  -7,   5/
7928      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -4,  -6/
7929      DATA IOPERA( 243),IX( 243),IY( 243)/'MOVE',   0,   5/
7930      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',  -4,  -9/
7931      DATA IOPERA( 245),IX( 245),IY( 245)/'MOVE',   0,   5/
7932      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',   4,  -9/
7933      DATA IOPERA( 247),IX( 247),IY( 247)/'MOVE',   1,   5/
7934      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',   4,  -6/
7935      DATA IOPERA( 249),IX( 249),IY( 249)/'MOVE',   8,   5/
7936      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',   4,  -9/
7937      DATA IOPERA( 251),IX( 251),IY( 251)/'MOVE', -11,   5/
7938      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',  -4,   5/
7939      DATA IOPERA( 253),IX( 253),IY( 253)/'MOVE',   5,   5/
7940      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  11,   5/
7941C
7942      DATA IXMIND(  23)/ -12/
7943      DATA IXMAXD(  23)/  12/
7944      DATA IXDELD(  23)/  24/
7945      DATA ISTARD(  23)/ 239/
7946      DATA NUMCOO(  23)/  16/
7947C
7948C     DEFINE CHARACTER   2124--LOWER CASE X
7949C
7950      DATA IOPERA( 255),IX( 255),IY( 255)/'MOVE',  -6,   5/
7951      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   5,  -9/
7952      DATA IOPERA( 257),IX( 257),IY( 257)/'MOVE',  -5,   5/
7953      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   6,  -9/
7954      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',   6,   5/
7955      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -6,  -9/
7956      DATA IOPERA( 261),IX( 261),IY( 261)/'MOVE',  -8,   5/
7957      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -2,   5/
7958      DATA IOPERA( 263),IX( 263),IY( 263)/'MOVE',   2,   5/
7959      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',   8,   5/
7960      DATA IOPERA( 265),IX( 265),IY( 265)/'MOVE',  -8,  -9/
7961      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',  -2,  -9/
7962      DATA IOPERA( 267),IX( 267),IY( 267)/'MOVE',   2,  -9/
7963      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   8,  -9/
7964C
7965      DATA IXMIND(  24)/ -10/
7966      DATA IXMAXD(  24)/  10/
7967      DATA IXDELD(  24)/  20/
7968      DATA ISTARD(  24)/ 255/
7969      DATA NUMCOO(  24)/  14/
7970C
7971C     DEFINE CHARACTER   2125--LOWER CASE Y
7972C
7973      DATA IOPERA( 269),IX( 269),IY( 269)/'MOVE',  -6,   5/
7974      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   0,  -9/
7975      DATA IOPERA( 271),IX( 271),IY( 271)/'MOVE',  -5,   5/
7976      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   0,  -7/
7977      DATA IOPERA( 273),IX( 273),IY( 273)/'MOVE',   6,   5/
7978      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',   0,  -9/
7979      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -2, -13/
7980      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -4, -15/
7981      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -6, -16/
7982      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -7, -16/
7983      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -8, -15/
7984      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',  -7, -14/
7985      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',  -6, -15/
7986      DATA IOPERA( 282),IX( 282),IY( 282)/'MOVE',  -8,   5/
7987      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',  -2,   5/
7988      DATA IOPERA( 284),IX( 284),IY( 284)/'MOVE',   2,   5/
7989      DATA IOPERA( 285),IX( 285),IY( 285)/'DRAW',   8,   5/
7990C
7991      DATA IXMIND(  25)/ -10/
7992      DATA IXMAXD(  25)/   9/
7993      DATA IXDELD(  25)/  19/
7994      DATA ISTARD(  25)/ 269/
7995      DATA NUMCOO(  25)/  17/
7996C
7997C     DEFINE CHARACTER   2126--LOWER CASE Z
7998C
7999      DATA IOPERA( 286),IX( 286),IY( 286)/'MOVE',   5,   5/
8000      DATA IOPERA( 287),IX( 287),IY( 287)/'DRAW',  -6,  -9/
8001      DATA IOPERA( 288),IX( 288),IY( 288)/'MOVE',   6,   5/
8002      DATA IOPERA( 289),IX( 289),IY( 289)/'DRAW',  -5,  -9/
8003      DATA IOPERA( 290),IX( 290),IY( 290)/'MOVE',  -5,   5/
8004      DATA IOPERA( 291),IX( 291),IY( 291)/'DRAW',  -6,   1/
8005      DATA IOPERA( 292),IX( 292),IY( 292)/'DRAW',  -6,   5/
8006      DATA IOPERA( 293),IX( 293),IY( 293)/'DRAW',   6,   5/
8007      DATA IOPERA( 294),IX( 294),IY( 294)/'MOVE',  -6,  -9/
8008      DATA IOPERA( 295),IX( 295),IY( 295)/'DRAW',   6,  -9/
8009      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',   6,  -5/
8010      DATA IOPERA( 297),IX( 297),IY( 297)/'DRAW',   5,  -9/
8011C
8012      DATA IXMIND(  26)/  -9/
8013      DATA IXMAXD(  26)/   9/
8014      DATA IXDELD(  26)/  18/
8015      DATA ISTARD(  26)/ 286/
8016      DATA NUMCOO(  26)/  12/
8017C
8018C-----START POINT-----------------------------------------------------
8019C
8020      IFOUND='YES'
8021      IERROR='NO'
8022C
8023      NUMCO=1
8024      ISTART=1
8025      ISTOP=1
8026      NC=1
8027C
8028C               ******************************************
8029C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
8030C               **  HERSHEY CHARACTER SET CASE          **
8031C               ******************************************
8032C
8033C
8034      IF(IBUGD2.EQ.'OFF')GOTO90
8035      WRITE(ICOUT,999)
8036  999 FORMAT(1X)
8037      CALL DPWRST('XXX','BUG ')
8038      WRITE(ICOUT,51)
8039   51 FORMAT('***** AT THE BEGINNING OF DRCL2--')
8040      CALL DPWRST('XXX','BUG ')
8041      WRITE(ICOUT,52)ICHARN
8042   52 FORMAT('ICHARN = ',I8)
8043      CALL DPWRST('XXX','BUG ')
8044      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
8045   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8046      CALL DPWRST('XXX','BUG ')
8047   90 CONTINUE
8048C
8049C               **************************************
8050C               **  STEP 2--                        **
8051C               **  EXTRACT THE COORDINATES         **
8052C               **  FOR THIS PARTICULAR CHARACTER.  **
8053C               **************************************
8054C
8055      ISTART=ISTARD(ICHARN)
8056      NC=NUMCOO(ICHARN)
8057      ISTOP=ISTART+NC-1
8058      J=0
8059      DO1100I=ISTART,ISTOP
8060      J=J+1
8061      IOP(J)=IOPERA(I)
8062      X(J)=IX(I)
8063      Y(J)=IY(I)
8064 1100 CONTINUE
8065      NUMCO=J
8066      IXMINS=IXMIND(ICHARN)
8067      IXMAXS=IXMAXD(ICHARN)
8068      IXDELS=IXDELD(ICHARN)
8069C
8070      GOTO9000
8071C
8072C               *****************
8073C               **  STEP 90--  **
8074C               **  EXIT       **
8075C               *****************
8076C
8077 9000 CONTINUE
8078      IF(IBUGD2.EQ.'OFF')GOTO9090
8079      WRITE(ICOUT,999)
8080      CALL DPWRST('XXX','BUG ')
8081      WRITE(ICOUT,9011)
8082 9011 FORMAT('***** AT THE END       OF DRCL2--')
8083      CALL DPWRST('XXX','BUG ')
8084      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
8085 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8086      CALL DPWRST('XXX','BUG ')
8087      WRITE(ICOUT,9013)ICHARN
8088 9013 FORMAT('ICHARN = ',I8)
8089      CALL DPWRST('XXX','BUG ')
8090      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
8091 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
8092      CALL DPWRST('XXX','BUG ')
8093      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
8094      DO9015I=1,NUMCO
8095      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
8096 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
8097      CALL DPWRST('XXX','BUG ')
8098 9015 CONTINUE
8099 9019 CONTINUE
8100      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
8101 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
8102      CALL DPWRST('XXX','BUG ')
8103 9090 CONTINUE
8104C
8105      RETURN
8106      END
8107      SUBROUTINE DRCN1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
8108     1IBUGD2,IFOUND,IERROR)
8109C
8110C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
8111C              FOR ROMAN COMPLEX NUMERIC (PART 1).
8112C     WRITTEN BY--JAMES J. FILLIBEN
8113C                 STATISTICAL ENGINEERING DIVISION
8114C                 CENTER FOR APPLIED MATHEMATICS
8115C                 NATIONAL BUREAU OF STANDARDS
8116C                 WASHINGTON, D. C. 20234
8117C                 PHONE--301-921-3651
8118C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
8119C           OF THE NATIONAL BUREAU OF STANDARDS.
8120C     LANGUAGE--ANSI FORTRAN (1977)
8121C     VERSION NUMBER--87/4
8122C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
8123C     UPDATED         --MAY       1982.
8124C     UPDATED         --MARCH     1987.
8125C
8126C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
8127C
8128      CHARACTER*4 IOP
8129      CHARACTER*4 IBUGD2
8130      CHARACTER*4 IFOUND
8131      CHARACTER*4 IERROR
8132C
8133      CHARACTER*4 IOPERA
8134C
8135C---------------------------------------------------------------------
8136C
8137      DIMENSION IOP(*)
8138      DIMENSION X(*)
8139      DIMENSION Y(*)
8140C
8141      DIMENSION IOPERA(300)
8142      DIMENSION IX(300)
8143      DIMENSION IY(300)
8144C
8145      DIMENSION IXMIND(30)
8146      DIMENSION IXMAXD(30)
8147      DIMENSION IXDELD(30)
8148      DIMENSION ISTARD(30)
8149      DIMENSION NUMCOO(30)
8150C
8151C---------------------------------------------------------------------
8152C
8153      INCLUDE 'DPCOP2.INC'
8154C
8155C-----DATA STATEMENTS-------------------------------------------------
8156C
8157C     DEFINE CHARACTER   2200--0
8158C
8159      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',  -1,  12/
8160      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -4,  11/
8161      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -6,   8/
8162      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -7,   3/
8163      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -7,   0/
8164      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -6,  -5/
8165      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -4,  -8/
8166      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -1,  -9/
8167      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',   1,  -9/
8168      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   4,  -8/
8169      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   6,  -5/
8170      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   7,   0/
8171      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   7,   3/
8172      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   6,   8/
8173      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   4,  11/
8174      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   1,  12/
8175      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -1,  12/
8176      DATA IOPERA(  18),IX(  18),IY(  18)/'MOVE',  -1,  12/
8177      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -3,  11/
8178      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',  -4,  10/
8179      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  -5,   8/
8180      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  -6,   3/
8181      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -6,   0/
8182      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -5,  -5/
8183      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -4,  -7/
8184      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -3,  -8/
8185      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -1,  -9/
8186      DATA IOPERA(  28),IX(  28),IY(  28)/'MOVE',   1,  -9/
8187      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   3,  -8/
8188      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   4,  -7/
8189      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',   5,  -5/
8190      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   6,   0/
8191      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   6,   3/
8192      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   5,   8/
8193      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   4,  10/
8194      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   3,  11/
8195      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   1,  12/
8196C
8197      DATA IXMIND(   1)/ -10/
8198      DATA IXMAXD(   1)/  10/
8199      DATA IXDELD(   1)/  20/
8200      DATA ISTARD(   1)/   1/
8201      DATA NUMCOO(   1)/  37/
8202C
8203C     DEFINE CHARACTER   2201--1
8204C
8205      DATA IOPERA(  38),IX(  38),IY(  38)/'MOVE',  -4,   8/
8206      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -2,   9/
8207      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',   1,  12/
8208      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   1,  -9/
8209      DATA IOPERA(  42),IX(  42),IY(  42)/'MOVE',   0,  11/
8210      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   0,  -9/
8211      DATA IOPERA(  44),IX(  44),IY(  44)/'MOVE',  -4,  -9/
8212      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   5,  -9/
8213C
8214      DATA IXMIND(   2)/ -10/
8215      DATA IXMAXD(   2)/  10/
8216      DATA IXDELD(   2)/  20/
8217      DATA ISTARD(   2)/  38/
8218      DATA NUMCOO(   2)/   8/
8219C
8220C     DEFINE CHARACTER   2202--2
8221C
8222      DATA IOPERA(  46),IX(  46),IY(  46)/'MOVE',  -6,   8/
8223      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -5,   7/
8224      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -6,   6/
8225      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -7,   7/
8226      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  -7,   8/
8227      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -6,  10/
8228      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -5,  11/
8229      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -2,  12/
8230      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   2,  12/
8231      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   5,  11/
8232      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   6,  10/
8233      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   7,   8/
8234      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   7,   6/
8235      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',   6,   4/
8236      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   3,   2/
8237      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -2,   0/
8238      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -4,  -1/
8239      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -6,  -3/
8240      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -7,  -6/
8241      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -7,  -9/
8242      DATA IOPERA(  66),IX(  66),IY(  66)/'MOVE',   2,  12/
8243      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   4,  11/
8244      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   5,  10/
8245      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   6,   8/
8246      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   6,   6/
8247      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   5,   4/
8248      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   2,   2/
8249      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -2,   0/
8250      DATA IOPERA(  74),IX(  74),IY(  74)/'MOVE',  -7,  -7/
8251      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -6,  -6/
8252      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -4,  -6/
8253      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   1,  -8/
8254      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   4,  -8/
8255      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   6,  -7/
8256      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   7,  -6/
8257      DATA IOPERA(  81),IX(  81),IY(  81)/'MOVE',  -4,  -6/
8258      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   1,  -9/
8259      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   5,  -9/
8260      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   6,  -8/
8261      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   7,  -6/
8262      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   7,  -4/
8263C
8264      DATA IXMIND(   3)/ -10/
8265      DATA IXMAXD(   3)/  10/
8266      DATA IXDELD(   3)/  20/
8267      DATA ISTARD(   3)/  46/
8268      DATA NUMCOO(   3)/  41/
8269C
8270C     DEFINE CHARACTER   2203--3
8271C
8272      DATA IOPERA(  87),IX(  87),IY(  87)/'MOVE',  -6,   8/
8273      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -5,   7/
8274      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -6,   6/
8275      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  -7,   7/
8276      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',  -7,   8/
8277      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -6,  10/
8278      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',  -5,  11/
8279      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -2,  12/
8280      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   2,  12/
8281      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   5,  11/
8282      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   6,   9/
8283      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   6,   6/
8284      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   5,   4/
8285      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   2,   3/
8286      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -1,   3/
8287      DATA IOPERA( 102),IX( 102),IY( 102)/'MOVE',   2,  12/
8288      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   4,  11/
8289      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   5,   9/
8290      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   5,   6/
8291      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   4,   4/
8292      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   2,   3/
8293      DATA IOPERA( 108),IX( 108),IY( 108)/'MOVE',   2,   3/
8294      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   4,   2/
8295      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   6,   0/
8296      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   7,  -2/
8297      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   7,  -5/
8298      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   6,  -7/
8299      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   5,  -8/
8300      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   2,  -9/
8301      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -2,  -9/
8302      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',  -5,  -8/
8303      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -6,  -7/
8304      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -7,  -5/
8305      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',  -7,  -4/
8306      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',  -6,  -3/
8307      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',  -5,  -4/
8308      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -6,  -5/
8309      DATA IOPERA( 124),IX( 124),IY( 124)/'MOVE',   5,   1/
8310      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   6,  -2/
8311      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   6,  -5/
8312      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   5,  -7/
8313      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   4,  -8/
8314      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   2,  -9/
8315C
8316      DATA IXMIND(   4)/ -10/
8317      DATA IXMAXD(   4)/  10/
8318      DATA IXDELD(   4)/  20/
8319      DATA ISTARD(   4)/  87/
8320      DATA NUMCOO(   4)/  43/
8321C
8322C     DEFINE CHARACTER   2204--4
8323C
8324      DATA IOPERA( 130),IX( 130),IY( 130)/'MOVE',   2,  10/
8325      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   2,  -9/
8326      DATA IOPERA( 132),IX( 132),IY( 132)/'MOVE',   3,  12/
8327      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   3,  -9/
8328      DATA IOPERA( 134),IX( 134),IY( 134)/'MOVE',   3,  12/
8329      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -8,  -3/
8330      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   8,  -3/
8331      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',  -1,  -9/
8332      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',   6,  -9/
8333C
8334      DATA IXMIND(   5)/ -10/
8335      DATA IXMAXD(   5)/  10/
8336      DATA IXDELD(   5)/  20/
8337      DATA ISTARD(   5)/ 130/
8338      DATA NUMCOO(   5)/   9/
8339C
8340C     DEFINE CHARACTER   2205--5
8341C
8342      DATA IOPERA( 139),IX( 139),IY( 139)/'MOVE',  -5,  12/
8343      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -7,   2/
8344      DATA IOPERA( 141),IX( 141),IY( 141)/'MOVE',  -7,   2/
8345      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -5,   4/
8346      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -2,   5/
8347      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   1,   5/
8348      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   4,   4/
8349      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   6,   2/
8350      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   7,  -1/
8351      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   7,  -3/
8352      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   6,  -6/
8353      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   4,  -8/
8354      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   1,  -9/
8355      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -2,  -9/
8356      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -5,  -8/
8357      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',  -6,  -7/
8358      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -7,  -5/
8359      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -7,  -4/
8360      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -6,  -3/
8361      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -5,  -4/
8362      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -6,  -5/
8363      DATA IOPERA( 160),IX( 160),IY( 160)/'MOVE',   1,   5/
8364      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',   3,   4/
8365      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',   5,   2/
8366      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',   6,  -1/
8367      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',   6,  -3/
8368      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',   5,  -6/
8369      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   3,  -8/
8370      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   1,  -9/
8371      DATA IOPERA( 168),IX( 168),IY( 168)/'MOVE',  -5,  12/
8372      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   5,  12/
8373      DATA IOPERA( 170),IX( 170),IY( 170)/'MOVE',  -5,  11/
8374      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   0,  11/
8375      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   5,  12/
8376C
8377      DATA IXMIND(   6)/ -10/
8378      DATA IXMAXD(   6)/  10/
8379      DATA IXDELD(   6)/  20/
8380      DATA ISTARD(   6)/ 139/
8381      DATA NUMCOO(   6)/  34/
8382C
8383C     DEFINE CHARACTER   2206--6
8384C
8385      DATA IOPERA( 173),IX( 173),IY( 173)/'MOVE',   5,   9/
8386      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',   4,   8/
8387      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   5,   7/
8388      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   6,   8/
8389      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   6,   9/
8390      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   5,  11/
8391      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   3,  12/
8392      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   0,  12/
8393      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -3,  11/
8394      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -5,   9/
8395      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -6,   7/
8396      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -7,   3/
8397      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -7,  -3/
8398      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -6,  -6/
8399      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -4,  -8/
8400      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',  -1,  -9/
8401      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   1,  -9/
8402      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   4,  -8/
8403      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',   6,  -6/
8404      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   7,  -3/
8405      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   7,  -2/
8406      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   6,   1/
8407      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   4,   3/
8408      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   1,   4/
8409      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   0,   4/
8410      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -3,   3/
8411      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -5,   1/
8412      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -6,  -2/
8413      DATA IOPERA( 201),IX( 201),IY( 201)/'MOVE',   0,  12/
8414      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -2,  11/
8415      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -4,   9/
8416      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -5,   7/
8417      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -6,   3/
8418      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -6,  -3/
8419      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -5,  -6/
8420      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -3,  -8/
8421      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -1,  -9/
8422      DATA IOPERA( 210),IX( 210),IY( 210)/'MOVE',   1,  -9/
8423      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   3,  -8/
8424      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   5,  -6/
8425      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   6,  -3/
8426      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   6,  -2/
8427      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   5,   1/
8428      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   3,   3/
8429      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',   1,   4/
8430C
8431      DATA IXMIND(   7)/ -10/
8432      DATA IXMAXD(   7)/  10/
8433      DATA IXDELD(   7)/  20/
8434      DATA ISTARD(   7)/ 173/
8435      DATA NUMCOO(   7)/  45/
8436C
8437C     DEFINE CHARACTER   2207--7
8438C
8439      DATA IOPERA( 218),IX( 218),IY( 218)/'MOVE',  -7,  12/
8440      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -7,   6/
8441      DATA IOPERA( 220),IX( 220),IY( 220)/'MOVE',  -7,   8/
8442      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -6,  10/
8443      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',  -4,  12/
8444      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -2,  12/
8445      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   3,   9/
8446      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',   5,   9/
8447      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   6,  10/
8448      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   7,  12/
8449      DATA IOPERA( 228),IX( 228),IY( 228)/'MOVE',  -6,  10/
8450      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',  -4,  11/
8451      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -2,  11/
8452      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   3,   9/
8453      DATA IOPERA( 232),IX( 232),IY( 232)/'MOVE',   7,  12/
8454      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',   7,   9/
8455      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   6,   6/
8456      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   2,   1/
8457      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   1,  -1/
8458      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',   0,  -4/
8459      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   0,  -9/
8460      DATA IOPERA( 239),IX( 239),IY( 239)/'MOVE',   6,   6/
8461      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   1,   1/
8462      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   0,  -1/
8463      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -1,  -4/
8464      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -1,  -9/
8465C
8466      DATA IXMIND(   8)/ -10/
8467      DATA IXMAXD(   8)/  10/
8468      DATA IXDELD(   8)/  20/
8469      DATA ISTARD(   8)/ 218/
8470      DATA NUMCOO(   8)/  26/
8471C
8472C     DEFINE CHARACTER   2208--8
8473C
8474      DATA IOPERA( 244),IX( 244),IY( 244)/'MOVE',  -2,  12/
8475      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',  -5,  11/
8476      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',  -6,   9/
8477      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -6,   6/
8478      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -5,   4/
8479      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -2,   3/
8480      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',   2,   3/
8481      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   5,   4/
8482      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   6,   6/
8483      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   6,   9/
8484      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',   5,  11/
8485      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',   2,  12/
8486      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',  -2,  12/
8487      DATA IOPERA( 257),IX( 257),IY( 257)/'MOVE',  -2,  12/
8488      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',  -4,  11/
8489      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',  -5,   9/
8490      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -5,   6/
8491      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -4,   4/
8492      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -2,   3/
8493      DATA IOPERA( 263),IX( 263),IY( 263)/'MOVE',   2,   3/
8494      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',   4,   4/
8495      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   5,   6/
8496      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',   5,   9/
8497      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',   4,  11/
8498      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   2,  12/
8499      DATA IOPERA( 269),IX( 269),IY( 269)/'MOVE',  -2,   3/
8500      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',  -5,   2/
8501      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',  -6,   1/
8502      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',  -7,  -1/
8503      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',  -7,  -5/
8504      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',  -6,  -7/
8505      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -5,  -8/
8506      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -2,  -9/
8507      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',   2,  -9/
8508      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',   5,  -8/
8509      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',   6,  -7/
8510      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',   7,  -5/
8511      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',   7,  -1/
8512      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',   6,   1/
8513      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',   5,   2/
8514      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   2,   3/
8515      DATA IOPERA( 285),IX( 285),IY( 285)/'MOVE',  -2,   3/
8516      DATA IOPERA( 286),IX( 286),IY( 286)/'DRAW',  -4,   2/
8517      DATA IOPERA( 287),IX( 287),IY( 287)/'DRAW',  -5,   1/
8518      DATA IOPERA( 288),IX( 288),IY( 288)/'DRAW',  -6,  -1/
8519      DATA IOPERA( 289),IX( 289),IY( 289)/'DRAW',  -6,  -5/
8520      DATA IOPERA( 290),IX( 290),IY( 290)/'DRAW',  -5,  -7/
8521      DATA IOPERA( 291),IX( 291),IY( 291)/'DRAW',  -4,  -8/
8522      DATA IOPERA( 292),IX( 292),IY( 292)/'DRAW',  -2,  -9/
8523      DATA IOPERA( 293),IX( 293),IY( 293)/'MOVE',   2,  -9/
8524      DATA IOPERA( 294),IX( 294),IY( 294)/'DRAW',   4,  -8/
8525      DATA IOPERA( 295),IX( 295),IY( 295)/'DRAW',   5,  -7/
8526      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',   6,  -5/
8527      DATA IOPERA( 297),IX( 297),IY( 297)/'DRAW',   6,  -1/
8528      DATA IOPERA( 298),IX( 298),IY( 298)/'DRAW',   5,   1/
8529      DATA IOPERA( 299),IX( 299),IY( 299)/'DRAW',   4,   2/
8530      DATA IOPERA( 300),IX( 300),IY( 300)/'DRAW',   2,   3/
8531C
8532      DATA IXMIND(   9)/ -10/
8533      DATA IXMAXD(   9)/  10/
8534      DATA IXDELD(   9)/  20/
8535      DATA ISTARD(   9)/ 244/
8536      DATA NUMCOO(   9)/  57/
8537C
8538C-----START POINT-----------------------------------------------------
8539C
8540      IFOUND='YES'
8541      IERROR='NO'
8542C
8543      NUMCO=1
8544      ISTART=1
8545      ISTOP=1
8546      NC=1
8547C
8548C               ******************************************
8549C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
8550C               **  HERSHEY CHARACTER SET CASE          **
8551C               ******************************************
8552C
8553C
8554      IF(IBUGD2.EQ.'OFF')GOTO90
8555      WRITE(ICOUT,999)
8556  999 FORMAT(1X)
8557      CALL DPWRST('XXX','BUG ')
8558      WRITE(ICOUT,51)
8559   51 FORMAT('***** AT THE BEGINNING OF DRCN1--')
8560      CALL DPWRST('XXX','BUG ')
8561      WRITE(ICOUT,52)ICHARN
8562   52 FORMAT('ICHARN = ',I8)
8563      CALL DPWRST('XXX','BUG ')
8564      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
8565   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8566      CALL DPWRST('XXX','BUG ')
8567   90 CONTINUE
8568C
8569C               **************************************
8570C               **  STEP 2--                        **
8571C               **  EXTRACT THE COORDINATES         **
8572C               **  FOR THIS PARTICULAR CHARACTER.  **
8573C               **************************************
8574C
8575      ISTART=ISTARD(ICHARN)
8576      NC=NUMCOO(ICHARN)
8577      ISTOP=ISTART+NC-1
8578      J=0
8579      DO1100I=ISTART,ISTOP
8580      J=J+1
8581      IOP(J)=IOPERA(I)
8582      X(J)=IX(I)
8583      Y(J)=IY(I)
8584 1100 CONTINUE
8585      NUMCO=J
8586      IXMINS=IXMIND(ICHARN)
8587      IXMAXS=IXMAXD(ICHARN)
8588      IXDELS=IXDELD(ICHARN)
8589C
8590      GOTO9000
8591C
8592C               *****************
8593C               **  STEP 90--  **
8594C               **  EXIT       **
8595C               *****************
8596C
8597 9000 CONTINUE
8598      IF(IBUGD2.EQ.'OFF')GOTO9090
8599      WRITE(ICOUT,999)
8600      CALL DPWRST('XXX','BUG ')
8601      WRITE(ICOUT,9011)
8602 9011 FORMAT('***** AT THE END       OF DRCN1--')
8603      CALL DPWRST('XXX','BUG ')
8604      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
8605 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8606      CALL DPWRST('XXX','BUG ')
8607      WRITE(ICOUT,9013)ICHARN
8608 9013 FORMAT('ICHARN = ',I8)
8609      CALL DPWRST('XXX','BUG ')
8610      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
8611 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
8612      CALL DPWRST('XXX','BUG ')
8613      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
8614      DO9015I=1,NUMCO
8615      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
8616 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
8617      CALL DPWRST('XXX','BUG ')
8618 9015 CONTINUE
8619 9019 CONTINUE
8620      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
8621 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
8622      CALL DPWRST('XXX','BUG ')
8623 9090 CONTINUE
8624C
8625      RETURN
8626      END
8627      SUBROUTINE DRCN2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
8628     1IBUGD2,IFOUND,IERROR)
8629C
8630C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
8631C              FOR ROMAN COMPLEX NUMERIC (PART 2).
8632C     WRITTEN BY--JAMES J. FILLIBEN
8633C                 STATISTICAL ENGINEERING DIVISION
8634C                 CENTER FOR APPLIED MATHEMATICS
8635C                 NATIONAL BUREAU OF STANDARDS
8636C                 WASHINGTON, D. C. 20234
8637C                 PHONE--301-921-3651
8638C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
8639C           OF THE NATIONAL BUREAU OF STANDARDS.
8640C     LANGUAGE--ANSI FORTRAN (1977)
8641C     VERSION NUMBER--87/4
8642C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
8643C     UPDATED         --MAY       1982.
8644C     UPDATED         --MARCH     1987.
8645C
8646C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
8647C
8648      CHARACTER*4 IOP
8649      CHARACTER*4 IBUGD2
8650      CHARACTER*4 IFOUND
8651      CHARACTER*4 IERROR
8652C
8653      CHARACTER*4 IOPERA
8654C
8655C---------------------------------------------------------------------
8656C
8657      DIMENSION IOP(*)
8658      DIMENSION X(*)
8659      DIMENSION Y(*)
8660C
8661      DIMENSION IOPERA(300)
8662      DIMENSION IX(300)
8663      DIMENSION IY(300)
8664C
8665      DIMENSION IXMIND(30)
8666      DIMENSION IXMAXD(30)
8667      DIMENSION IXDELD(30)
8668      DIMENSION ISTARD(30)
8669      DIMENSION NUMCOO(30)
8670C
8671C-----COMMON----------------------------------------------------------
8672C
8673      INCLUDE 'DPCOP2.INC'
8674C
8675C-----DATA STATEMENTS-------------------------------------------------
8676C
8677C     DEFINE CHARACTER   2209--9
8678C
8679      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   6,   5/
8680      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',   5,   2/
8681      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',   3,   0/
8682      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',   0,  -1/
8683      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -1,  -1/
8684      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -4,   0/
8685      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -6,   2/
8686      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -7,   5/
8687      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -7,   6/
8688      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -6,   9/
8689      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -4,  11/
8690      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -1,  12/
8691      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   1,  12/
8692      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   4,  11/
8693      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   6,   9/
8694      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   7,   6/
8695      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   7,   0/
8696      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   6,  -4/
8697      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   5,  -6/
8698      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   3,  -8/
8699      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   0,  -9/
8700      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  -3,  -9/
8701      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -5,  -8/
8702      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -6,  -6/
8703      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -6,  -5/
8704      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -5,  -4/
8705      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -4,  -5/
8706      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -5,  -6/
8707      DATA IOPERA(  29),IX(  29),IY(  29)/'MOVE',  -1,  -1/
8708      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -3,   0/
8709      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -5,   2/
8710      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -6,   5/
8711      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -6,   6/
8712      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -5,   9/
8713      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -3,  11/
8714      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -1,  12/
8715      DATA IOPERA(  37),IX(  37),IY(  37)/'MOVE',   1,  12/
8716      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   3,  11/
8717      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   5,   9/
8718      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',   6,   6/
8719      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   6,   0/
8720      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',   5,  -4/
8721      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   4,  -6/
8722      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   2,  -8/
8723      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   0,  -9/
8724C
8725      DATA IXMIND(  10)/ -10/
8726      DATA IXMAXD(  10)/  10/
8727      DATA IXDELD(  10)/  20/
8728      DATA ISTARD(  10)/   1/
8729      DATA NUMCOO(  10)/  45/
8730C
8731C-----START POINT-----------------------------------------------------
8732C
8733      IFOUND='YES'
8734      IERROR='NO'
8735C
8736      NUMCO=1
8737      ISTART=1
8738      ISTOP=1
8739      NC=1
8740C
8741C               ******************************************
8742C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
8743C               **  HERSHEY CHARACTER SET CASE          **
8744C               ******************************************
8745C
8746C
8747      IF(IBUGD2.EQ.'OFF')GOTO90
8748      WRITE(ICOUT,999)
8749  999 FORMAT(1X)
8750      CALL DPWRST('XXX','BUG ')
8751      WRITE(ICOUT,51)
8752   51 FORMAT('***** AT THE BEGINNING OF DRCN2--')
8753      CALL DPWRST('XXX','BUG ')
8754      WRITE(ICOUT,52)ICHARN
8755   52 FORMAT('ICHARN = ',I8)
8756      CALL DPWRST('XXX','BUG ')
8757      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
8758   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8759      CALL DPWRST('XXX','BUG ')
8760   90 CONTINUE
8761C
8762C               **************************************
8763C               **  STEP 2--                        **
8764C               **  EXTRACT THE COORDINATES         **
8765C               **  FOR THIS PARTICULAR CHARACTER.  **
8766C               **************************************
8767C
8768      ISTART=ISTARD(ICHARN)
8769      NC=NUMCOO(ICHARN)
8770      ISTOP=ISTART+NC-1
8771      J=0
8772      DO1100I=ISTART,ISTOP
8773      J=J+1
8774      IOP(J)=IOPERA(I)
8775      X(J)=IX(I)
8776      Y(J)=IY(I)
8777 1100 CONTINUE
8778      NUMCO=J
8779      IXMINS=IXMIND(ICHARN)
8780      IXMAXS=IXMAXD(ICHARN)
8781      IXDELS=IXDELD(ICHARN)
8782C
8783      GOTO9000
8784C
8785C               *****************
8786C               **  STEP 90--  **
8787C               **  EXIT       **
8788C               *****************
8789C
8790 9000 CONTINUE
8791      IF(IBUGD2.EQ.'OFF')GOTO9090
8792      WRITE(ICOUT,999)
8793      CALL DPWRST('XXX','BUG ')
8794      WRITE(ICOUT,9011)
8795 9011 FORMAT('***** AT THE END       OF DRCN2--')
8796      CALL DPWRST('XXX','BUG ')
8797      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
8798 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
8799      CALL DPWRST('XXX','BUG ')
8800      WRITE(ICOUT,9013)ICHARN
8801 9013 FORMAT('ICHARN = ',I8)
8802      CALL DPWRST('XXX','BUG ')
8803      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
8804 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
8805      CALL DPWRST('XXX','BUG ')
8806      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
8807      DO9015I=1,NUMCO
8808      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
8809 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
8810      CALL DPWRST('XXX','BUG ')
8811 9015 CONTINUE
8812 9019 CONTINUE
8813      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
8814 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
8815      CALL DPWRST('XXX','BUG ')
8816 9090 CONTINUE
8817C
8818      RETURN
8819      END
8820      SUBROUTINE DRCSL1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
8821     1IBUGD2,IFOUND,IERROR)
8822C
8823C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
8824C              FOR ROMAN COMPLEX SCRIPT LOWER CASE (PART 1).
8825C     WRITTEN BY--JAMES J. FILLIBEN
8826C                 STATISTICAL ENGINEERING DIVISION
8827C                 CENTER FOR APPLIED MATHEMATICS
8828C                 NATIONAL BUREAU OF STANDARDS
8829C                 WASHINGTON, D. C. 20234
8830C                 PHONE--301-921-3651
8831C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
8832C           OF THE NATIONAL BUREAU OF STANDARDS.
8833C     LANGUAGE--ANSI FORTRAN (1977)
8834C     VERSION NUMBER--87/4
8835C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
8836C     UPDATED         --MAY       1982.
8837C     UPDATED         --MARCH     1987.
8838C
8839C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
8840C
8841      CHARACTER*4 IOP
8842      CHARACTER*4 IBUGD2
8843      CHARACTER*4 IFOUND
8844      CHARACTER*4 IERROR
8845C
8846      CHARACTER*4 IOPERA
8847C
8848C---------------------------------------------------------------------
8849C
8850      DIMENSION IOP(*)
8851      DIMENSION X(*)
8852      DIMENSION Y(*)
8853C
8854      DIMENSION IOPERA(300)
8855      DIMENSION IX(300)
8856      DIMENSION IY(300)
8857C
8858      DIMENSION IXMIND(30)
8859      DIMENSION IXMAXD(30)
8860      DIMENSION IXDELD(30)
8861      DIMENSION ISTARD(30)
8862      DIMENSION NUMCOO(30)
8863C
8864C-----COMMON----------------------------------------------------------
8865C
8866      INCLUDE 'DPCOP2.INC'
8867C
8868C-----DATA STATEMENTS-------------------------------------------------
8869C
8870C     DEFINE CHARACTER   2651--LOWER CASE A
8871C
8872      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   3,  -3/
8873      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',   2,  -1/
8874      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',   0,   0/
8875      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -2,   0/
8876      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -4,  -1/
8877      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -5,  -2/
8878      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -6,  -4/
8879      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -6,  -6/
8880      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -5,  -8/
8881      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -3,  -9/
8882      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -1,  -9/
8883      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   1,  -8/
8884      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   2,  -6/
8885      DATA IOPERA(  14),IX(  14),IY(  14)/'MOVE',  -2,   0/
8886      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',  -4,  -2/
8887      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -5,  -4/
8888      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -5,  -7/
8889      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',  -3,  -9/
8890      DATA IOPERA(  19),IX(  19),IY(  19)/'MOVE',   4,   0/
8891      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   2,  -6/
8892      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   2,  -8/
8893      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   4,  -9/
8894      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   6,  -8/
8895      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   7,  -7/
8896      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   9,  -4/
8897      DATA IOPERA(  26),IX(  26),IY(  26)/'MOVE',   5,   0/
8898      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   3,  -6/
8899      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   3,  -8/
8900      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   4,  -9/
8901C
8902      DATA IXMIND(   1)/  -7/
8903      DATA IXMAXD(   1)/   9/
8904      DATA IXDELD(   1)/  16/
8905      DATA ISTARD(   1)/   1/
8906      DATA NUMCOO(   1)/  29/
8907C
8908C     DEFINE CHARACTER   2652--LOWER CASE B
8909C
8910      DATA IOPERA(  30),IX(  30),IY(  30)/'MOVE',  -6,  -4/
8911      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -4,  -1/
8912      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -2,   3/
8913      DATA IOPERA(  33),IX(  33),IY(  33)/'MOVE',   1,  12/
8914      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -5,  -6/
8915      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',  -5,  -8/
8916      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -3,  -9/
8917      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -2,  -9/
8918      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   0,  -8/
8919      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   2,  -6/
8920      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',   3,  -3/
8921      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   3,   0/
8922      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',   4,  -4/
8923      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   5,  -5/
8924      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   6,  -5/
8925      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   8,  -4/
8926      DATA IOPERA(  46),IX(  46),IY(  46)/'MOVE',   2,  12/
8927      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -4,  -6/
8928      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -4,  -8/
8929      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -3,  -9/
8930C
8931      DATA IXMIND(   2)/  -6/
8932      DATA IXMAXD(   2)/   8/
8933      DATA IXDELD(   2)/  14/
8934      DATA ISTARD(   2)/  30/
8935      DATA NUMCOO(   2)/  20/
8936C
8937C     DEFINE CHARACTER   2653--LOWER CASE C
8938C
8939      DATA IOPERA(  50),IX(  50),IY(  50)/'MOVE',   2,  -1/
8940      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   1,  -2/
8941      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   2,  -2/
8942      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   2,  -1/
8943      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   1,   0/
8944      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',  -1,   0/
8945      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -3,  -1/
8946      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -4,  -2/
8947      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -5,  -4/
8948      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -5,  -6/
8949      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -4,  -8/
8950      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -2,  -9/
8951      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   1,  -9/
8952      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   4,  -7/
8953      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   6,  -4/
8954      DATA IOPERA(  65),IX(  65),IY(  65)/'MOVE',  -1,   0/
8955      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -3,  -2/
8956      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',  -4,  -4/
8957      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',  -4,  -7/
8958      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -2,  -9/
8959C
8960      DATA IXMIND(   3)/  -6/
8961      DATA IXMAXD(   3)/   6/
8962      DATA IXDELD(   3)/  12/
8963      DATA ISTARD(   3)/  50/
8964      DATA NUMCOO(   3)/  20/
8965C
8966C     DEFINE CHARACTER   2654--LOWER CASE D
8967C
8968      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',   3,  -3/
8969      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   2,  -1/
8970      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   0,   0/
8971      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -2,   0/
8972      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -4,  -1/
8973      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -5,  -2/
8974      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -6,  -4/
8975      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -6,  -6/
8976      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -5,  -8/
8977      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -3,  -9/
8978      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -1,  -9/
8979      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   1,  -8/
8980      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   2,  -6/
8981      DATA IOPERA(  83),IX(  83),IY(  83)/'MOVE',  -2,   0/
8982      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',  -4,  -2/
8983      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',  -5,  -4/
8984      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -5,  -7/
8985      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -3,  -9/
8986      DATA IOPERA(  88),IX(  88),IY(  88)/'MOVE',   8,  12/
8987      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',   2,  -6/
8988      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',   2,  -8/
8989      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   4,  -9/
8990      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   6,  -8/
8991      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   7,  -7/
8992      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   9,  -4/
8993      DATA IOPERA(  95),IX(  95),IY(  95)/'MOVE',   9,  12/
8994      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   3,  -6/
8995      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   3,  -8/
8996      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   4,  -9/
8997C
8998      DATA IXMIND(   4)/  -7/
8999      DATA IXMAXD(   4)/   9/
9000      DATA IXDELD(   4)/  16/
9001      DATA ISTARD(   4)/  70/
9002      DATA NUMCOO(   4)/  29/
9003C
9004C     DEFINE CHARACTER   2655--LOWER CASE E
9005C
9006      DATA IOPERA(  99),IX(  99),IY(  99)/'MOVE',  -3,  -7/
9007      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  -1,  -6/
9008      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   0,  -5/
9009      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   1,  -3/
9010      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   1,  -1/
9011      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   0,   0/
9012      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -1,   0/
9013      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -3,  -1/
9014      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -4,  -2/
9015      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',  -5,  -4/
9016      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -5,  -6/
9017      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -4,  -8/
9018      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -2,  -9/
9019      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   1,  -9/
9020      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   4,  -7/
9021      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   6,  -4/
9022      DATA IOPERA( 115),IX( 115),IY( 115)/'MOVE',  -1,   0/
9023      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -3,  -2/
9024      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',  -4,  -4/
9025      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -4,  -7/
9026      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -2,  -9/
9027C
9028      DATA IXMIND(   5)/  -6/
9029      DATA IXMAXD(   5)/   6/
9030      DATA IXDELD(   5)/  12/
9031      DATA ISTARD(   5)/  99/
9032      DATA NUMCOO(   5)/  21/
9033C
9034C     DEFINE CHARACTER   2656--LOWER CASE F
9035C
9036      DATA IOPERA( 120),IX( 120),IY( 120)/'MOVE',   0,   0/
9037      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   3,   3/
9038      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   5,   6/
9039      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',   6,   9/
9040      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   6,  11/
9041      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   5,  12/
9042      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   3,  11/
9043      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   2,   9/
9044      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -7, -18/
9045      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -7, -20/
9046      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -6, -21/
9047      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',  -4, -20/
9048      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -3, -17/
9049      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -2,  -8/
9050      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -1,  -9/
9051      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   1,  -9/
9052      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   3,  -8/
9053      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',   4,  -7/
9054      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',   6,  -4/
9055      DATA IOPERA( 139),IX( 139),IY( 139)/'MOVE',   2,   9/
9056      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',   1,   4/
9057      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',   0,   0/
9058      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -3,  -9/
9059      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -5, -14/
9060      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -7, -18/
9061C
9062      DATA IXMIND(   6)/  -3/
9063      DATA IXMAXD(   6)/   6/
9064      DATA IXDELD(   6)/   9/
9065      DATA ISTARD(   6)/ 120/
9066      DATA NUMCOO(   6)/  25/
9067C
9068C     DEFINE CHARACTER   2657--LOWER CASE G
9069C
9070      DATA IOPERA( 145),IX( 145),IY( 145)/'MOVE',   3,  -3/
9071      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   2,  -1/
9072      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   0,   0/
9073      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -2,   0/
9074      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -4,  -1/
9075      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -5,  -2/
9076      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',  -6,  -4/
9077      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -6,  -6/
9078      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -5,  -8/
9079      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',  -3,  -9/
9080      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -1,  -9/
9081      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   1,  -8/
9082      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   2,  -6/
9083      DATA IOPERA( 158),IX( 158),IY( 158)/'MOVE',  -2,   0/
9084      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -4,  -2/
9085      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -5,  -4/
9086      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -5,  -7/
9087      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -3,  -9/
9088      DATA IOPERA( 163),IX( 163),IY( 163)/'MOVE',   4,   0/
9089      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -2, -18/
9090      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',   5,   0/
9091      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   2,  -9/
9092      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   0, -14/
9093      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',  -2, -18/
9094      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',  -3, -20/
9095      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -5, -21/
9096      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -6, -20/
9097      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -6, -18/
9098      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -5, -15/
9099      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -3, -13/
9100      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   0, -11/
9101      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   4,  -9/
9102      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   7,  -7/
9103      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   9,  -4/
9104C
9105      DATA IXMIND(   7)/  -7/
9106      DATA IXMAXD(   7)/   9/
9107      DATA IXDELD(   7)/  16/
9108      DATA ISTARD(   7)/ 145/
9109      DATA NUMCOO(   7)/  34/
9110C
9111C     DEFINE CHARACTER   2658--LOWER CASE H
9112C
9113      DATA IOPERA( 179),IX( 179),IY( 179)/'MOVE',  -6,  -4/
9114      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -4,  -1/
9115      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -2,   3/
9116      DATA IOPERA( 182),IX( 182),IY( 182)/'MOVE',   1,  12/
9117      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -6,  -9/
9118      DATA IOPERA( 184),IX( 184),IY( 184)/'MOVE',   2,  12/
9119      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -5,  -9/
9120      DATA IOPERA( 186),IX( 186),IY( 186)/'MOVE',  -3,  -3/
9121      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -1,  -1/
9122      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   1,   0/
9123      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   2,   0/
9124      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   4,  -1/
9125      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',   4,  -3/
9126      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   3,  -6/
9127      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   3,  -8/
9128      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   4,  -9/
9129      DATA IOPERA( 195),IX( 195),IY( 195)/'MOVE',   2,   0/
9130      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   3,  -1/
9131      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   3,  -3/
9132      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',   2,  -6/
9133      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   2,  -8/
9134      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',   4,  -9/
9135      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   6,  -8/
9136      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   7,  -7/
9137      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',   9,  -4/
9138C
9139      DATA IXMIND(   8)/  -6/
9140      DATA IXMAXD(   8)/   9/
9141      DATA IXDELD(   8)/  15/
9142      DATA ISTARD(   8)/ 179/
9143      DATA NUMCOO(   8)/  25/
9144C
9145C     DEFINE CHARACTER   2659--LOWER CASE I
9146C
9147      DATA IOPERA( 204),IX( 204),IY( 204)/'MOVE',   1,   6/
9148      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   0,   5/
9149      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   1,   4/
9150      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   2,   5/
9151      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',   1,   6/
9152      DATA IOPERA( 209),IX( 209),IY( 209)/'MOVE',  -1,   0/
9153      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -3,  -6/
9154      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -3,  -8/
9155      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',  -1,  -9/
9156      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   1,  -8/
9157      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   2,  -7/
9158      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   4,  -4/
9159      DATA IOPERA( 216),IX( 216),IY( 216)/'MOVE',   0,   0/
9160      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -2,  -6/
9161      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -2,  -8/
9162      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -1,  -9/
9163C
9164      DATA IXMIND(   9)/  -4/
9165      DATA IXMAXD(   9)/   4/
9166      DATA IXDELD(   9)/   8/
9167      DATA ISTARD(   9)/ 204/
9168      DATA NUMCOO(   9)/  16/
9169C
9170C     DEFINE CHARACTER   2660--LOWER CASE J
9171C
9172      DATA IOPERA( 220),IX( 220),IY( 220)/'MOVE',   1,   6/
9173      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',   0,   5/
9174      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   1,   4/
9175      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',   2,   5/
9176      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   1,   6/
9177      DATA IOPERA( 225),IX( 225),IY( 225)/'MOVE',  -1,   0/
9178      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  -7, -18/
9179      DATA IOPERA( 227),IX( 227),IY( 227)/'MOVE',   0,   0/
9180      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',  -3,  -9/
9181      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',  -5, -14/
9182      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -7, -18/
9183      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',  -8, -20/
9184      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW', -10, -21/
9185      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW', -11, -20/
9186      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW', -11, -18/
9187      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW', -10, -15/
9188      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -8, -13/
9189      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',  -5, -11/
9190      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',  -1,  -9/
9191      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   2,  -7/
9192      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   4,  -4/
9193C
9194      DATA IXMIND(  10)/  -4/
9195      DATA IXMAXD(  10)/   4/
9196      DATA IXDELD(  10)/   8/
9197      DATA ISTARD(  10)/ 220/
9198      DATA NUMCOO(  10)/  21/
9199C
9200C     DEFINE CHARACTER   2661--LOWER CASE K
9201C
9202      DATA IOPERA( 241),IX( 241),IY( 241)/'MOVE',  -6,  -4/
9203      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -4,  -1/
9204      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -2,   3/
9205      DATA IOPERA( 244),IX( 244),IY( 244)/'MOVE',   1,  12/
9206      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',  -6,  -9/
9207      DATA IOPERA( 246),IX( 246),IY( 246)/'MOVE',   2,  12/
9208      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -5,  -9/
9209      DATA IOPERA( 248),IX( 248),IY( 248)/'MOVE',   3,   0/
9210      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',   3,  -1/
9211      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',   4,  -1/
9212      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   3,   0/
9213      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   2,   0/
9214      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   0,  -2/
9215      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  -3,  -3/
9216      DATA IOPERA( 255),IX( 255),IY( 255)/'MOVE',  -3,  -3/
9217      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   0,  -4/
9218      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   1,  -8/
9219      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   2,  -9/
9220      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',  -3,  -3/
9221      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -1,  -4/
9222      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',   0,  -8/
9223      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',   2,  -9/
9224      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',   3,  -9/
9225      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',   6,  -7/
9226      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   8,  -4/
9227C
9228      DATA IXMIND(  11)/  -6/
9229      DATA IXMAXD(  11)/   8/
9230      DATA IXDELD(  11)/  14/
9231      DATA ISTARD(  11)/ 241/
9232      DATA NUMCOO(  11)/  25/
9233C
9234C     DEFINE CHARACTER   2662--LOWER CASE L
9235C
9236      DATA IOPERA( 266),IX( 266),IY( 266)/'MOVE',  -4,  -4/
9237      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',  -2,  -1/
9238      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   0,   3/
9239      DATA IOPERA( 269),IX( 269),IY( 269)/'MOVE',   3,  12/
9240      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',  -3,  -6/
9241      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',  -3,  -8/
9242      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',  -1,  -9/
9243      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',   1,  -8/
9244      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',   2,  -7/
9245      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',   4,  -4/
9246      DATA IOPERA( 276),IX( 276),IY( 276)/'MOVE',   4,  12/
9247      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -2,  -6/
9248      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -2,  -8/
9249      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -1,  -9/
9250C
9251      DATA IXMIND(  12)/  -4/
9252      DATA IXMAXD(  12)/   4/
9253      DATA IXDELD(  12)/   8/
9254      DATA ISTARD(  12)/ 266/
9255      DATA NUMCOO(  12)/  14/
9256C
9257C-----START POINT-----------------------------------------------------
9258C
9259      IFOUND='YES'
9260      IERROR='NO'
9261C
9262      NUMCO=1
9263      ISTART=1
9264      ISTOP=1
9265      NC=1
9266C
9267C               ******************************************
9268C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
9269C               **  HERSHEY CHARACTER SET CASE          **
9270C               ******************************************
9271C
9272C
9273      IF(IBUGD2.EQ.'OFF')GOTO90
9274      WRITE(ICOUT,999)
9275  999 FORMAT(1X)
9276      CALL DPWRST('XXX','BUG ')
9277      WRITE(ICOUT,51)
9278   51 FORMAT('***** AT THE BEGINNING OF DRCSL1--')
9279      CALL DPWRST('XXX','BUG ')
9280      WRITE(ICOUT,52)ICHARN
9281   52 FORMAT('ICHARN = ',I8)
9282      CALL DPWRST('XXX','BUG ')
9283      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
9284   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
9285      CALL DPWRST('XXX','BUG ')
9286   90 CONTINUE
9287C
9288C               **************************************
9289C               **  STEP 2--                        **
9290C               **  EXTRACT THE COORDINATES         **
9291C               **  FOR THIS PARTICULAR CHARACTER.  **
9292C               **************************************
9293C
9294      ISTART=ISTARD(ICHARN)
9295      NC=NUMCOO(ICHARN)
9296      ISTOP=ISTART+NC-1
9297      J=0
9298      DO1100I=ISTART,ISTOP
9299      J=J+1
9300      IOP(J)=IOPERA(I)
9301      X(J)=IX(I)
9302      Y(J)=IY(I)
9303 1100 CONTINUE
9304      NUMCO=J
9305      IXMINS=IXMIND(ICHARN)
9306      IXMAXS=IXMAXD(ICHARN)
9307      IXDELS=IXDELD(ICHARN)
9308C
9309      GOTO9000
9310C
9311C               *****************
9312C               **  STEP 90--  **
9313C               **  EXIT       **
9314C               *****************
9315C
9316 9000 CONTINUE
9317      IF(IBUGD2.EQ.'OFF')GOTO9090
9318      WRITE(ICOUT,999)
9319      CALL DPWRST('XXX','BUG ')
9320      WRITE(ICOUT,9011)
9321 9011 FORMAT('***** AT THE END       OF DRCSL1--')
9322      CALL DPWRST('XXX','BUG ')
9323      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
9324 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
9325      CALL DPWRST('XXX','BUG ')
9326      WRITE(ICOUT,9013)ICHARN
9327 9013 FORMAT('ICHARN = ',I8)
9328      CALL DPWRST('XXX','BUG ')
9329      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
9330 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
9331      CALL DPWRST('XXX','BUG ')
9332      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
9333      DO9015I=1,NUMCO
9334      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
9335 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
9336      CALL DPWRST('XXX','BUG ')
9337 9015 CONTINUE
9338 9019 CONTINUE
9339      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
9340 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
9341      CALL DPWRST('XXX','BUG ')
9342 9090 CONTINUE
9343C
9344      RETURN
9345      END
9346      SUBROUTINE DRCSL2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
9347     1IBUGD2,IFOUND,IERROR)
9348C
9349C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
9350C              FOR ROMAN COMPLEX SCRIPT LOWER CASE (PART 2).
9351C     WRITTEN BY--JAMES J. FILLIBEN
9352C                 STATISTICAL ENGINEERING DIVISION
9353C                 CENTER FOR APPLIED MATHEMATICS
9354C                 NATIONAL BUREAU OF STANDARDS
9355C                 WASHINGTON, D. C. 20234
9356C                 PHONE--301-921-3651
9357C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
9358C           OF THE NATIONAL BUREAU OF STANDARDS.
9359C     LANGUAGE--ANSI FORTRAN (1977)
9360C     VERSION NUMBER--87/4
9361C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
9362C     UPDATED         --MAY       1982.
9363C     UPDATED         --MARCH     1987.
9364C
9365C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
9366C
9367      CHARACTER*4 IOP
9368      CHARACTER*4 IBUGD2
9369      CHARACTER*4 IFOUND
9370      CHARACTER*4 IERROR
9371C
9372      CHARACTER*4 IOPERA
9373C
9374C---------------------------------------------------------------------
9375C
9376      DIMENSION IOP(*)
9377      DIMENSION X(*)
9378      DIMENSION Y(*)
9379C
9380      DIMENSION IOPERA(300)
9381      DIMENSION IX(300)
9382      DIMENSION IY(300)
9383C
9384      DIMENSION IXMIND(30)
9385      DIMENSION IXMAXD(30)
9386      DIMENSION IXDELD(30)
9387      DIMENSION ISTARD(30)
9388      DIMENSION NUMCOO(30)
9389C
9390C-----COMMON----------------------------------------------------------
9391C
9392      INCLUDE 'DPCOP2.INC'
9393C
9394C-----DATA STATEMENTS-------------------------------------------------
9395C
9396C     DEFINE CHARACTER   2663--LOWER CASE M
9397C
9398      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -13,  -4/
9399      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW', -11,  -1/
9400      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -9,   0/
9401      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -7,  -1/
9402      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -7,  -3/
9403      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -9,  -9/
9404      DATA IOPERA(   7),IX(   7),IY(   7)/'MOVE',  -9,   0/
9405      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -8,  -1/
9406      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -8,  -3/
9407      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW', -10,  -9/
9408      DATA IOPERA(  11),IX(  11),IY(  11)/'MOVE',  -7,  -3/
9409      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -5,  -1/
9410      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -3,   0/
9411      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -2,   0/
9412      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   0,  -1/
9413      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   0,  -3/
9414      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -2,  -9/
9415      DATA IOPERA(  18),IX(  18),IY(  18)/'MOVE',  -2,   0/
9416      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -1,  -1/
9417      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',  -1,  -3/
9418      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',  -3,  -9/
9419      DATA IOPERA(  22),IX(  22),IY(  22)/'MOVE',   0,  -3/
9420      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   2,  -1/
9421      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   4,   0/
9422      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   5,   0/
9423      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   7,  -1/
9424      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   7,  -3/
9425      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   6,  -6/
9426      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   6,  -8/
9427      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   7,  -9/
9428      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',   5,   0/
9429      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   6,  -1/
9430      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   6,  -3/
9431      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   5,  -6/
9432      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   5,  -8/
9433      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   7,  -9/
9434      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   9,  -8/
9435      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  10,  -7/
9436      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  12,  -4/
9437C
9438      DATA IXMIND(  13)/ -13/
9439      DATA IXMAXD(  13)/  12/
9440      DATA IXDELD(  13)/  25/
9441      DATA ISTARD(  13)/   1/
9442      DATA NUMCOO(  13)/  39/
9443C
9444C     DEFINE CHARACTER   2664--LOWER CASE N
9445C
9446      DATA IOPERA(  40),IX(  40),IY(  40)/'MOVE',  -9,  -4/
9447      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -7,  -1/
9448      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -5,   0/
9449      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -3,  -1/
9450      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -3,  -3/
9451      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -5,  -9/
9452      DATA IOPERA(  46),IX(  46),IY(  46)/'MOVE',  -5,   0/
9453      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -4,  -1/
9454      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -4,  -3/
9455      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -6,  -9/
9456      DATA IOPERA(  50),IX(  50),IY(  50)/'MOVE',  -3,  -3/
9457      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -1,  -1/
9458      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   1,   0/
9459      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   2,   0/
9460      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   4,  -1/
9461      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   4,  -3/
9462      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   3,  -6/
9463      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   3,  -8/
9464      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   4,  -9/
9465      DATA IOPERA(  59),IX(  59),IY(  59)/'MOVE',   2,   0/
9466      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   3,  -1/
9467      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   3,  -3/
9468      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   2,  -6/
9469      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   2,  -8/
9470      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   4,  -9/
9471      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   6,  -8/
9472      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   7,  -7/
9473      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   9,  -4/
9474C
9475      DATA IXMIND(  14)/  -9/
9476      DATA IXMAXD(  14)/   9/
9477      DATA IXDELD(  14)/  18/
9478      DATA ISTARD(  14)/  40/
9479      DATA NUMCOO(  14)/  28/
9480C
9481C     DEFINE CHARACTER   2665--LOWER CASE O
9482C
9483      DATA IOPERA(  68),IX(  68),IY(  68)/'MOVE',   0,   0/
9484      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -2,   0/
9485      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',  -4,  -1/
9486      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -5,  -2/
9487      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -6,  -4/
9488      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -6,  -6/
9489      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -5,  -8/
9490      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -3,  -9/
9491      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -1,  -9/
9492      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   1,  -8/
9493      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   2,  -7/
9494      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   3,  -5/
9495      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   3,  -3/
9496      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   2,  -1/
9497      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   0,   0/
9498      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -1,  -1/
9499      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',  -1,  -3/
9500      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   0,  -5/
9501      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   2,  -6/
9502      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   4,  -6/
9503      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   6,  -5/
9504      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',   7,  -4/
9505      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE',  -2,   0/
9506      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',  -4,  -2/
9507      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -5,  -4/
9508      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',  -5,  -7/
9509      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -3,  -9/
9510C
9511      DATA IXMIND(  15)/  -7/
9512      DATA IXMAXD(  15)/   7/
9513      DATA IXDELD(  15)/  14/
9514      DATA ISTARD(  15)/  68/
9515      DATA NUMCOO(  15)/  27/
9516C
9517C     DEFINE CHARACTER   2666--LOWER CASE P
9518C
9519      DATA IOPERA(  95),IX(  95),IY(  95)/'MOVE',  -6,  -4/
9520      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -4,  -1/
9521      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -2,   3/
9522      DATA IOPERA(  98),IX(  98),IY(  98)/'MOVE',  -1,   6/
9523      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW', -10, -21/
9524      DATA IOPERA( 100),IX( 100),IY( 100)/'MOVE',   0,   6/
9525      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -9, -21/
9526      DATA IOPERA( 102),IX( 102),IY( 102)/'MOVE',  -3,  -3/
9527      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',  -1,  -1/
9528      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   1,   0/
9529      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   2,   0/
9530      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   4,  -1/
9531      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   4,  -3/
9532      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   3,  -6/
9533      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   3,  -8/
9534      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   4,  -9/
9535      DATA IOPERA( 111),IX( 111),IY( 111)/'MOVE',   2,   0/
9536      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   3,  -1/
9537      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   3,  -3/
9538      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   2,  -6/
9539      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   2,  -8/
9540      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   4,  -9/
9541      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   6,  -8/
9542      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   7,  -7/
9543      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   9,  -4/
9544C
9545      DATA IXMIND(  16)/  -6/
9546      DATA IXMAXD(  16)/   9/
9547      DATA IXDELD(  16)/  15/
9548      DATA ISTARD(  16)/  95/
9549      DATA NUMCOO(  16)/  25/
9550C
9551C     DEFINE CHARACTER   2667--LOWER CASE Q
9552C
9553      DATA IOPERA( 120),IX( 120),IY( 120)/'MOVE',   3,  -3/
9554      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   2,  -1/
9555      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   0,   0/
9556      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -2,   0/
9557      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -4,  -1/
9558      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -5,  -2/
9559      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -6,  -4/
9560      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',  -6,  -6/
9561      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -5,  -8/
9562      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -3,  -9/
9563      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -1,  -9/
9564      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   1,  -8/
9565      DATA IOPERA( 132),IX( 132),IY( 132)/'MOVE',  -2,   0/
9566      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -4,  -2/
9567      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -5,  -4/
9568      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -5,  -7/
9569      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -3,  -9/
9570      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',   4,   0/
9571      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  -2, -18/
9572      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',  -2, -20/
9573      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -1, -21/
9574      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',   1, -20/
9575      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',   2, -17/
9576      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',   2,  -9/
9577      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   4,  -9/
9578      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   7,  -7/
9579      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   9,  -4/
9580      DATA IOPERA( 147),IX( 147),IY( 147)/'MOVE',   5,   0/
9581      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   2,  -9/
9582      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   0, -14/
9583      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -2, -18/
9584C
9585      DATA IXMIND(  17)/  -7/
9586      DATA IXMAXD(  17)/   9/
9587      DATA IXDELD(  17)/  16/
9588      DATA ISTARD(  17)/ 120/
9589      DATA NUMCOO(  17)/  31/
9590C
9591C     DEFINE CHARACTER   2668--LOWER CASE R
9592C
9593      DATA IOPERA( 151),IX( 151),IY( 151)/'MOVE',  -6,  -4/
9594      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -4,  -1/
9595      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -2,   0/
9596      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   0,  -1/
9597      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   0,  -3/
9598      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -2,  -9/
9599      DATA IOPERA( 157),IX( 157),IY( 157)/'MOVE',  -2,   0/
9600      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -1,  -1/
9601      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -1,  -3/
9602      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -3,  -9/
9603      DATA IOPERA( 161),IX( 161),IY( 161)/'MOVE',   0,  -3/
9604      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',   2,  -1/
9605      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',   4,   0/
9606      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',   5,   0/
9607      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',   4,  -3/
9608      DATA IOPERA( 166),IX( 166),IY( 166)/'MOVE',   4,   0/
9609      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   4,  -3/
9610      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   5,  -5/
9611      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   6,  -5/
9612      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   8,  -4/
9613C
9614      DATA IXMIND(  18)/  -6/
9615      DATA IXMAXD(  18)/   8/
9616      DATA IXDELD(  18)/  14/
9617      DATA ISTARD(  18)/ 151/
9618      DATA NUMCOO(  18)/  20/
9619C
9620C     DEFINE CHARACTER   2669--LOWER CASE S
9621C
9622      DATA IOPERA( 171),IX( 171),IY( 171)/'MOVE',  -4,  -4/
9623      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -2,  -1/
9624      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -1,   1/
9625      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -1,  -1/
9626      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   2,  -3/
9627      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   3,  -5/
9628      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   3,  -7/
9629      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   2,  -8/
9630      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   0,  -9/
9631      DATA IOPERA( 180),IX( 180),IY( 180)/'MOVE',  -1,  -1/
9632      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   1,  -3/
9633      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   2,  -5/
9634      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   2,  -7/
9635      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   0,  -9/
9636      DATA IOPERA( 185),IX( 185),IY( 185)/'MOVE',  -4,  -8/
9637      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -2,  -9/
9638      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',   3,  -9/
9639      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   6,  -7/
9640      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   8,  -4/
9641C
9642      DATA IXMIND(  19)/  -4/
9643      DATA IXMAXD(  19)/   8/
9644      DATA IXDELD(  19)/  12/
9645      DATA ISTARD(  19)/ 171/
9646      DATA NUMCOO(  19)/  19/
9647C
9648C     DEFINE CHARACTER   2670--LOWER CASE T
9649C
9650      DATA IOPERA( 190),IX( 190),IY( 190)/'MOVE',  -4,  -4/
9651      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -2,  -1/
9652      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   0,   3/
9653      DATA IOPERA( 193),IX( 193),IY( 193)/'MOVE',   3,  12/
9654      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',  -3,  -6/
9655      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',  -3,  -8/
9656      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',  -1,  -9/
9657      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   1,  -8/
9658      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',   2,  -7/
9659      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   4,  -4/
9660      DATA IOPERA( 200),IX( 200),IY( 200)/'MOVE',   4,  12/
9661      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -2,  -6/
9662      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -2,  -8/
9663      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -1,  -9/
9664      DATA IOPERA( 204),IX( 204),IY( 204)/'MOVE',  -2,   4/
9665      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   4,   4/
9666C
9667      DATA IXMIND(  20)/  -4/
9668      DATA IXMAXD(  20)/   4/
9669      DATA IXDELD(  20)/   8/
9670      DATA ISTARD(  20)/ 190/
9671      DATA NUMCOO(  20)/  16/
9672C
9673C     DEFINE CHARACTER   2671--LOWER CASE U
9674C
9675      DATA IOPERA( 206),IX( 206),IY( 206)/'MOVE',  -4,   0/
9676      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -6,  -6/
9677      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -6,  -8/
9678      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -4,  -9/
9679      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -3,  -9/
9680      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -1,  -8/
9681      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   1,  -6/
9682      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   3,  -3/
9683      DATA IOPERA( 214),IX( 214),IY( 214)/'MOVE',  -3,   0/
9684      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',  -5,  -6/
9685      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',  -5,  -8/
9686      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -4,  -9/
9687      DATA IOPERA( 218),IX( 218),IY( 218)/'MOVE',   4,   0/
9688      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',   2,  -6/
9689      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',   2,  -8/
9690      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',   4,  -9/
9691      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   6,  -8/
9692      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',   7,  -7/
9693      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   9,  -4/
9694      DATA IOPERA( 225),IX( 225),IY( 225)/'MOVE',   5,   0/
9695      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   3,  -6/
9696      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   3,  -8/
9697      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   4,  -9/
9698C
9699      DATA IXMIND(  21)/  -7/
9700      DATA IXMAXD(  21)/   9/
9701      DATA IXDELD(  21)/  16/
9702      DATA ISTARD(  21)/ 206/
9703      DATA NUMCOO(  21)/  23/
9704C
9705C     DEFINE CHARACTER   2672--LOWER CASE V
9706C
9707      DATA IOPERA( 229),IX( 229),IY( 229)/'MOVE',  -4,   0/
9708      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -5,  -2/
9709      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',  -6,  -5/
9710      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',  -6,  -8/
9711      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',  -4,  -9/
9712      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',  -3,  -9/
9713      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   0,  -8/
9714      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   2,  -6/
9715      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',   3,  -3/
9716      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   3,   0/
9717      DATA IOPERA( 239),IX( 239),IY( 239)/'MOVE',  -3,   0/
9718      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',  -4,  -2/
9719      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',  -5,  -5/
9720      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -5,  -8/
9721      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -4,  -9/
9722      DATA IOPERA( 244),IX( 244),IY( 244)/'MOVE',   3,   0/
9723      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',   4,  -4/
9724      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',   5,  -5/
9725      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',   6,  -5/
9726      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',   8,  -4/
9727C
9728      DATA IXMIND(  22)/  -7/
9729      DATA IXMAXD(  22)/   8/
9730      DATA IXDELD(  22)/  15/
9731      DATA ISTARD(  22)/ 229/
9732      DATA NUMCOO(  22)/  20/
9733C
9734C     DEFINE CHARACTER   2673--LOWER CASE W
9735C
9736      DATA IOPERA( 249),IX( 249),IY( 249)/'MOVE',  -6,   0/
9737      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',  -8,  -2/
9738      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',  -9,  -5/
9739      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',  -9,  -8/
9740      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',  -7,  -9/
9741      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  -6,  -9/
9742      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',  -4,  -8/
9743      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',  -2,  -6/
9744      DATA IOPERA( 257),IX( 257),IY( 257)/'MOVE',  -5,   0/
9745      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',  -7,  -2/
9746      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',  -8,  -5/
9747      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -8,  -8/
9748      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -7,  -9/
9749      DATA IOPERA( 262),IX( 262),IY( 262)/'MOVE',   0,   0/
9750      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -2,  -6/
9751      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -2,  -8/
9752      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   0,  -9/
9753      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',   1,  -9/
9754      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',   3,  -8/
9755      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   5,  -6/
9756      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',   6,  -3/
9757      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   6,   0/
9758      DATA IOPERA( 271),IX( 271),IY( 271)/'MOVE',   1,   0/
9759      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',  -1,  -6/
9760      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',  -1,  -8/
9761      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',   0,  -9/
9762      DATA IOPERA( 275),IX( 275),IY( 275)/'MOVE',   6,   0/
9763      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',   7,  -4/
9764      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',   8,  -5/
9765      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',   9,  -5/
9766      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  11,  -4/
9767C
9768      DATA IXMIND(  23)/ -10/
9769      DATA IXMAXD(  23)/  11/
9770      DATA IXDELD(  23)/  21/
9771      DATA ISTARD(  23)/ 249/
9772      DATA NUMCOO(  23)/  31/
9773C
9774C-----START POINT-----------------------------------------------------
9775C
9776      IFOUND='YES'
9777      IERROR='NO'
9778C
9779      NUMCO=1
9780      ISTART=1
9781      ISTOP=1
9782      NC=1
9783C
9784C               ******************************************
9785C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
9786C               **  HERSHEY CHARACTER SET CASE          **
9787C               ******************************************
9788C
9789C
9790      IF(IBUGD2.EQ.'OFF')GOTO90
9791      WRITE(ICOUT,999)
9792  999 FORMAT(1X)
9793      CALL DPWRST('XXX','BUG ')
9794      WRITE(ICOUT,51)
9795   51 FORMAT('***** AT THE BEGINNING OF DRCSL2--')
9796      CALL DPWRST('XXX','BUG ')
9797      WRITE(ICOUT,52)ICHARN
9798   52 FORMAT('ICHARN = ',I8)
9799      CALL DPWRST('XXX','BUG ')
9800      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
9801   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
9802      CALL DPWRST('XXX','BUG ')
9803   90 CONTINUE
9804C
9805C               **************************************
9806C               **  STEP 2--                        **
9807C               **  EXTRACT THE COORDINATES         **
9808C               **  FOR THIS PARTICULAR CHARACTER.  **
9809C               **************************************
9810C
9811      ISTART=ISTARD(ICHARN)
9812      NC=NUMCOO(ICHARN)
9813      ISTOP=ISTART+NC-1
9814      J=0
9815      DO1100I=ISTART,ISTOP
9816      J=J+1
9817      IOP(J)=IOPERA(I)
9818      X(J)=IX(I)
9819      Y(J)=IY(I)
9820 1100 CONTINUE
9821      NUMCO=J
9822      IXMINS=IXMIND(ICHARN)
9823      IXMAXS=IXMAXD(ICHARN)
9824      IXDELS=IXDELD(ICHARN)
9825C
9826      GOTO9000
9827C
9828C               *****************
9829C               **  STEP 90--  **
9830C               **  EXIT       **
9831C               *****************
9832C
9833 9000 CONTINUE
9834      IF(IBUGD2.EQ.'OFF')GOTO9090
9835      WRITE(ICOUT,999)
9836      CALL DPWRST('XXX','BUG ')
9837      WRITE(ICOUT,9011)
9838 9011 FORMAT('***** AT THE END       OF DRCSL2--')
9839      CALL DPWRST('XXX','BUG ')
9840      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
9841 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
9842      CALL DPWRST('XXX','BUG ')
9843      WRITE(ICOUT,9013)ICHARN
9844 9013 FORMAT('ICHARN = ',I8)
9845      CALL DPWRST('XXX','BUG ')
9846      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
9847 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
9848      CALL DPWRST('XXX','BUG ')
9849      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
9850      DO9015I=1,NUMCO
9851      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
9852 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
9853      CALL DPWRST('XXX','BUG ')
9854 9015 CONTINUE
9855 9019 CONTINUE
9856      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
9857 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
9858      CALL DPWRST('XXX','BUG ')
9859 9090 CONTINUE
9860C
9861      RETURN
9862      END
9863      SUBROUTINE DRCSL3(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
9864     1IBUGD2,IFOUND,IERROR)
9865C
9866C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
9867C              FOR ROMAN COMPLEX SCRIPT LOWER CASE (PART 3).
9868C     WRITTEN BY--JAMES J. FILLIBEN
9869C                 STATISTICAL ENGINEERING DIVISION
9870C                 CENTER FOR APPLIED MATHEMATICS
9871C                 NATIONAL BUREAU OF STANDARDS
9872C                 WASHINGTON, D. C. 20234
9873C                 PHONE--301-921-3651
9874C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
9875C           OF THE NATIONAL BUREAU OF STANDARDS.
9876C     LANGUAGE--ANSI FORTRAN (1977)
9877C     VERSION NUMBER--87/4
9878C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
9879C     UPDATED         --MAY       1982.
9880C     UPDATED         --MARCH     1987.
9881C
9882C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
9883C
9884      CHARACTER*4 IOP
9885      CHARACTER*4 IBUGD2
9886      CHARACTER*4 IFOUND
9887      CHARACTER*4 IERROR
9888C
9889      CHARACTER*4 IOPERA
9890C
9891C---------------------------------------------------------------------
9892C
9893      DIMENSION IOP(*)
9894      DIMENSION X(*)
9895      DIMENSION Y(*)
9896C
9897      DIMENSION IOPERA(300)
9898      DIMENSION IX(300)
9899      DIMENSION IY(300)
9900C
9901      DIMENSION IXMIND(30)
9902      DIMENSION IXMAXD(30)
9903      DIMENSION IXDELD(30)
9904      DIMENSION ISTARD(30)
9905      DIMENSION NUMCOO(30)
9906C
9907C-----COMMON----------------------------------------------------------
9908C
9909      INCLUDE 'DPCOP2.INC'
9910C
9911C-----DATA STATEMENTS-------------------------------------------------
9912C
9913C     DEFINE CHARACTER   2674--LOWER CASE X
9914C
9915      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',  -8,  -4/
9916      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -6,  -1/
9917      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -4,   0/
9918      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -2,   0/
9919      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -1,  -1/
9920      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -1,  -3/
9921      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -2,  -6/
9922      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -3,  -8/
9923      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -5,  -9/
9924      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -6,  -9/
9925      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -7,  -8/
9926      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -7,  -7/
9927      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -6,  -7/
9928      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -7,  -8/
9929      DATA IOPERA(  15),IX(  15),IY(  15)/'MOVE',   5,  -1/
9930      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   4,  -2/
9931      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   5,  -2/
9932      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   5,  -1/
9933      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   4,   0/
9934      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   3,   0/
9935      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   1,  -1/
9936      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   0,  -3/
9937      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -1,  -6/
9938      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -1,  -8/
9939      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   0,  -9/
9940      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   3,  -9/
9941      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   6,  -7/
9942      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   8,  -4/
9943      DATA IOPERA(  29),IX(  29),IY(  29)/'MOVE',  -1,  -1/
9944      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   0,  -3/
9945      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',   1,  -1/
9946      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -1,  -3/
9947      DATA IOPERA(  33),IX(  33),IY(  33)/'MOVE',  -2,  -6/
9948      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -1,  -8/
9949      DATA IOPERA(  35),IX(  35),IY(  35)/'MOVE',  -1,  -6/
9950      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -3,  -8/
9951C
9952      DATA IXMIND(  24)/  -8/
9953      DATA IXMAXD(  24)/   8/
9954      DATA IXDELD(  24)/  16/
9955      DATA ISTARD(  24)/   1/
9956      DATA NUMCOO(  24)/  36/
9957C
9958C     DEFINE CHARACTER   2675--LOWER CASE Y
9959C
9960      DATA IOPERA(  37),IX(  37),IY(  37)/'MOVE',  -4,   0/
9961      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -6,  -6/
9962      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -6,  -8/
9963      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -4,  -9/
9964      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -3,  -9/
9965      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -1,  -8/
9966      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',   1,  -6/
9967      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   3,  -3/
9968      DATA IOPERA(  45),IX(  45),IY(  45)/'MOVE',  -3,   0/
9969      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',  -5,  -6/
9970      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -5,  -8/
9971      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -4,  -9/
9972      DATA IOPERA(  49),IX(  49),IY(  49)/'MOVE',   4,   0/
9973      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  -2, -18/
9974      DATA IOPERA(  51),IX(  51),IY(  51)/'MOVE',   5,   0/
9975      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   2,  -9/
9976      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   0, -14/
9977      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -2, -18/
9978      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',  -3, -20/
9979      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -5, -21/
9980      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -6, -20/
9981      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -6, -18/
9982      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -5, -15/
9983      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -3, -13/
9984      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   0, -11/
9985      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   4,  -9/
9986      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   7,  -7/
9987      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   9,  -4/
9988C
9989      DATA IXMIND(  25)/  -7/
9990      DATA IXMAXD(  25)/   9/
9991      DATA IXDELD(  25)/  16/
9992      DATA ISTARD(  25)/  37/
9993      DATA NUMCOO(  25)/  28/
9994C
9995C     DEFINE CHARACTER   2676--LOWER CASE Z
9996C
9997      DATA IOPERA(  65),IX(  65),IY(  65)/'MOVE',  -6,  -4/
9998      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -4,  -1/
9999      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',  -2,   0/
10000      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   0,   0/
10001      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   2,  -1/
10002      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   2,  -4/
10003      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   1,  -6/
10004      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -2,  -8/
10005      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -4,  -9/
10006      DATA IOPERA(  74),IX(  74),IY(  74)/'MOVE',   0,   0/
10007      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',   1,  -1/
10008      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',   1,  -4/
10009      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   0,  -6/
10010      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -2,  -8/
10011      DATA IOPERA(  79),IX(  79),IY(  79)/'MOVE',  -4,  -9/
10012      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -2, -10/
10013      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',  -1, -12/
10014      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',  -1, -15/
10015      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -2, -18/
10016      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',  -4, -20/
10017      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',  -6, -21/
10018      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -7, -20/
10019      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -7, -18/
10020      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -6, -15/
10021      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -3, -12/
10022      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',   0, -10/
10023      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   4,  -7/
10024      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   7,  -4/
10025      DATA IOPERA(  93),IX(  93),IY(  93)/'MOVE',  -4,  -9/
10026      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -3, -10/
10027      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -2, -12/
10028      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -2, -15/
10029      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',  -3, -18/
10030      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',  -4, -20/
10031C
10032      DATA IXMIND(  26)/  -6/
10033      DATA IXMAXD(  26)/   7/
10034      DATA IXDELD(  26)/  13/
10035      DATA ISTARD(  26)/  65/
10036      DATA NUMCOO(  26)/  34/
10037C
10038C-----START POINT-----------------------------------------------------
10039C
10040      IFOUND='YES'
10041      IERROR='NO'
10042C
10043      NUMCO=1
10044      ISTART=1
10045      ISTOP=1
10046      NC=1
10047C
10048C               ******************************************
10049C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
10050C               **  HERSHEY CHARACTER SET CASE          **
10051C               ******************************************
10052C
10053C
10054      IF(IBUGD2.EQ.'OFF')GOTO90
10055      WRITE(ICOUT,999)
10056  999 FORMAT(1X)
10057      CALL DPWRST('XXX','BUG ')
10058      WRITE(ICOUT,51)
10059   51 FORMAT('***** AT THE BEGINNING OF DRCSL3--')
10060      CALL DPWRST('XXX','BUG ')
10061      WRITE(ICOUT,52)ICHARN
10062   52 FORMAT('ICHARN = ',I8)
10063      CALL DPWRST('XXX','BUG ')
10064      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
10065   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10066      CALL DPWRST('XXX','BUG ')
10067   90 CONTINUE
10068C
10069C               **************************************
10070C               **  STEP 2--                        **
10071C               **  EXTRACT THE COORDINATES         **
10072C               **  FOR THIS PARTICULAR CHARACTER.  **
10073C               **************************************
10074C
10075      ISTART=ISTARD(ICHARN)
10076      NC=NUMCOO(ICHARN)
10077      ISTOP=ISTART+NC-1
10078      J=0
10079      DO1100I=ISTART,ISTOP
10080      J=J+1
10081      IOP(J)=IOPERA(I)
10082      X(J)=IX(I)
10083      Y(J)=IY(I)
10084 1100 CONTINUE
10085      NUMCO=J
10086      IXMINS=IXMIND(ICHARN)
10087      IXMAXS=IXMAXD(ICHARN)
10088      IXDELS=IXDELD(ICHARN)
10089C
10090      GOTO9000
10091C
10092C               *****************
10093C               **  STEP 90--  **
10094C               **  EXIT       **
10095C               *****************
10096C
10097 9000 CONTINUE
10098      IF(IBUGD2.EQ.'OFF')GOTO9090
10099      WRITE(ICOUT,999)
10100      CALL DPWRST('XXX','BUG ')
10101      WRITE(ICOUT,9011)
10102 9011 FORMAT('***** AT THE END       OF DRCSL3--')
10103      CALL DPWRST('XXX','BUG ')
10104      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
10105 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10106      CALL DPWRST('XXX','BUG ')
10107      WRITE(ICOUT,9013)ICHARN
10108 9013 FORMAT('ICHARN = ',I8)
10109      CALL DPWRST('XXX','BUG ')
10110      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
10111 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
10112      CALL DPWRST('XXX','BUG ')
10113      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
10114      DO9015I=1,NUMCO
10115      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
10116 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
10117      CALL DPWRST('XXX','BUG ')
10118 9015 CONTINUE
10119 9019 CONTINUE
10120      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
10121 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
10122      CALL DPWRST('XXX','BUG ')
10123 9090 CONTINUE
10124C
10125      RETURN
10126      END
10127      SUBROUTINE DRCSN1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
10128     1IBUGD2,IFOUND,IERROR)
10129C
10130C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
10131C              FOR ROMAN COMPLEX SCRIPT NUMERIC (PART 1).
10132C     WRITTEN BY--JAMES J. FILLIBEN
10133C                 STATISTICAL ENGINEERING DIVISION
10134C                 CENTER FOR APPLIED MATHEMATICS
10135C                 NATIONAL BUREAU OF STANDARDS
10136C                 WASHINGTON, D. C. 20234
10137C                 PHONE--301-921-3651
10138C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
10139C           OF THE NATIONAL BUREAU OF STANDARDS.
10140C     LANGUAGE--ANSI FORTRAN (1977)
10141C     VERSION NUMBER--87/4
10142C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
10143C     UPDATED         --MAY       1982.
10144C     UPDATED         --MARCH     1987.
10145C
10146C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
10147C
10148      CHARACTER*4 IOP
10149      CHARACTER*4 IBUGD2
10150      CHARACTER*4 IFOUND
10151      CHARACTER*4 IERROR
10152C
10153      CHARACTER*4 IOPERA
10154C
10155C---------------------------------------------------------------------
10156C
10157      DIMENSION IOP(*)
10158      DIMENSION X(*)
10159      DIMENSION Y(*)
10160C
10161      DIMENSION IOPERA(300)
10162      DIMENSION IX(300)
10163      DIMENSION IY(300)
10164C
10165      DIMENSION IXMIND(30)
10166      DIMENSION IXMAXD(30)
10167      DIMENSION IXDELD(30)
10168      DIMENSION ISTARD(30)
10169      DIMENSION NUMCOO(30)
10170C
10171C-----COMMON----------------------------------------------------------
10172C
10173      INCLUDE 'DPCOP2.INC'
10174C
10175C-----DATA STATEMENTS-------------------------------------------------
10176C
10177C     DEFINE CHARACTER   2750--0
10178C
10179      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   2,  12/
10180      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -1,  11/
10181      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -3,   9/
10182      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -5,   6/
10183      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -6,   3/
10184      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -7,  -1/
10185      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -7,  -4/
10186      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -6,  -7/
10187      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -5,  -8/
10188      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -3,  -9/
10189      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -1,  -9/
10190      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   2,  -8/
10191      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   4,  -6/
10192      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   6,  -3/
10193      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   7,   0/
10194      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   8,   4/
10195      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   8,   7/
10196      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   7,  10/
10197      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   6,  11/
10198      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   4,  12/
10199      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   2,  12/
10200      DATA IOPERA(  22),IX(  22),IY(  22)/'MOVE',   2,  12/
10201      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   0,  11/
10202      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -2,   9/
10203      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -4,   6/
10204      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -5,   3/
10205      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -6,  -1/
10206      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -6,  -4/
10207      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -5,  -7/
10208      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -3,  -9/
10209      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',  -1,  -9/
10210      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   1,  -8/
10211      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   3,  -6/
10212      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   5,  -3/
10213      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   6,   0/
10214      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   7,   4/
10215      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   7,   7/
10216      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   6,  10/
10217      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   4,  12/
10218C
10219      DATA IXMIND(   1)/ -10/
10220      DATA IXMAXD(   1)/  11/
10221      DATA IXDELD(   1)/  21/
10222      DATA ISTARD(   1)/   1/
10223      DATA NUMCOO(   1)/  39/
10224C
10225C     DEFINE CHARACTER   2751--1
10226C
10227      DATA IOPERA(  40),IX(  40),IY(  40)/'MOVE',   2,   8/
10228      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -3,  -9/
10229      DATA IOPERA(  42),IX(  42),IY(  42)/'MOVE',   4,  12/
10230      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -2,  -9/
10231      DATA IOPERA(  44),IX(  44),IY(  44)/'MOVE',   4,  12/
10232      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',   1,   9/
10233      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',  -2,   7/
10234      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -4,   6/
10235      DATA IOPERA(  48),IX(  48),IY(  48)/'MOVE',   3,   9/
10236      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -1,   7/
10237      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  -4,   6/
10238C
10239      DATA IXMIND(   2)/ -10/
10240      DATA IXMAXD(   2)/  11/
10241      DATA IXDELD(   2)/  21/
10242      DATA ISTARD(   2)/  40/
10243      DATA NUMCOO(   2)/  11/
10244C
10245C     DEFINE CHARACTER   2752--2
10246C
10247      DATA IOPERA(  51),IX(  51),IY(  51)/'MOVE',  -3,   8/
10248      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -2,   7/
10249      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -3,   6/
10250      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -4,   7/
10251      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',  -4,   8/
10252      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -3,  10/
10253      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -2,  11/
10254      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   1,  12/
10255      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',   4,  12/
10256      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   7,  11/
10257      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   8,   9/
10258      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   8,   7/
10259      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   7,   5/
10260      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   5,   3/
10261      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   2,   1/
10262      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -2,  -1/
10263      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',  -5,  -3/
10264      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',  -7,  -5/
10265      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -9,  -9/
10266      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',   4,  12/
10267      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   6,  11/
10268      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   7,   9/
10269      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',   7,   7/
10270      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',   6,   5/
10271      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',   4,   3/
10272      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -2,  -1/
10273      DATA IOPERA(  77),IX(  77),IY(  77)/'MOVE',  -8,  -7/
10274      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -7,  -6/
10275      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -5,  -6/
10276      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',   0,  -8/
10277      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   3,  -8/
10278      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   5,  -7/
10279      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   6,  -5/
10280      DATA IOPERA(  84),IX(  84),IY(  84)/'MOVE',  -5,  -6/
10281      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   0,  -9/
10282      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   3,  -9/
10283      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   5,  -8/
10284      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   6,  -5/
10285C
10286      DATA IXMIND(   3)/ -10/
10287      DATA IXMAXD(   3)/  11/
10288      DATA IXDELD(   3)/  21/
10289      DATA ISTARD(   3)/  51/
10290      DATA NUMCOO(   3)/  38/
10291C
10292C     DEFINE CHARACTER   2753--3
10293C
10294      DATA IOPERA(  89),IX(  89),IY(  89)/'MOVE',  -3,   8/
10295      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  -2,   7/
10296      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',  -3,   6/
10297      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -4,   7/
10298      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',  -4,   8/
10299      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -3,  10/
10300      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -2,  11/
10301      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   1,  12/
10302      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   4,  12/
10303      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   7,  11/
10304      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   8,   9/
10305      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   8,   7/
10306      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   7,   5/
10307      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   4,   3/
10308      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   1,   2/
10309      DATA IOPERA( 104),IX( 104),IY( 104)/'MOVE',   4,  12/
10310      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   6,  11/
10311      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   7,   9/
10312      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   7,   7/
10313      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   6,   5/
10314      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   4,   3/
10315      DATA IOPERA( 110),IX( 110),IY( 110)/'MOVE',  -1,   2/
10316      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   1,   2/
10317      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   4,   1/
10318      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   5,   0/
10319      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   6,  -2/
10320      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   6,  -5/
10321      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   5,  -7/
10322      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   4,  -8/
10323      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   1,  -9/
10324      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -3,  -9/
10325      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',  -6,  -8/
10326      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',  -7,  -7/
10327      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',  -8,  -5/
10328      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -8,  -4/
10329      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -7,  -3/
10330      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -6,  -4/
10331      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -7,  -5/
10332      DATA IOPERA( 127),IX( 127),IY( 127)/'MOVE',   1,   2/
10333      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   3,   1/
10334      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   4,   0/
10335      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   5,  -2/
10336      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   5,  -5/
10337      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   4,  -7/
10338      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   3,  -8/
10339      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   1,  -9/
10340C
10341      DATA IXMIND(   4)/ -10/
10342      DATA IXMAXD(   4)/  11/
10343      DATA IXDELD(   4)/  21/
10344      DATA ISTARD(   4)/  89/
10345      DATA NUMCOO(   4)/  46/
10346C
10347C     DEFINE CHARACTER   2754--4
10348C
10349      DATA IOPERA( 135),IX( 135),IY( 135)/'MOVE',   6,  11/
10350      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',   0,  -9/
10351      DATA IOPERA( 137),IX( 137),IY( 137)/'MOVE',   7,  12/
10352      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',   1,  -9/
10353      DATA IOPERA( 139),IX( 139),IY( 139)/'MOVE',   7,  12/
10354      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -8,  -3/
10355      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',   8,  -3/
10356C
10357      DATA IXMIND(   5)/ -10/
10358      DATA IXMAXD(   5)/  11/
10359      DATA IXDELD(   5)/  21/
10360      DATA ISTARD(   5)/ 135/
10361      DATA NUMCOO(   5)/   7/
10362C
10363C     DEFINE CHARACTER   2755--5
10364C
10365      DATA IOPERA( 142),IX( 142),IY( 142)/'MOVE',  -1,  12/
10366      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -6,   2/
10367      DATA IOPERA( 144),IX( 144),IY( 144)/'MOVE',  -1,  12/
10368      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   9,  12/
10369      DATA IOPERA( 146),IX( 146),IY( 146)/'MOVE',  -1,  11/
10370      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   4,  11/
10371      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   9,  12/
10372      DATA IOPERA( 149),IX( 149),IY( 149)/'MOVE',  -6,   2/
10373      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -5,   3/
10374      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',  -2,   4/
10375      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   1,   4/
10376      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   4,   3/
10377      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   5,   2/
10378      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',   6,   0/
10379      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',   6,  -3/
10380      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',   5,  -6/
10381      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',   3,  -8/
10382      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   0,  -9/
10383      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -3,  -9/
10384      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -6,  -8/
10385      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -7,  -7/
10386      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -8,  -5/
10387      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -8,  -4/
10388      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',  -7,  -3/
10389      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -6,  -4/
10390      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -7,  -5/
10391      DATA IOPERA( 168),IX( 168),IY( 168)/'MOVE',   1,   4/
10392      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   3,   3/
10393      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   4,   2/
10394      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   5,   0/
10395      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   5,  -3/
10396      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',   4,  -6/
10397      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',   2,  -8/
10398      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   0,  -9/
10399C
10400      DATA IXMIND(   6)/ -10/
10401      DATA IXMAXD(   6)/  11/
10402      DATA IXDELD(   6)/  21/
10403      DATA ISTARD(   6)/ 142/
10404      DATA NUMCOO(   6)/  34/
10405C
10406C     DEFINE CHARACTER   2756--6
10407C
10408      DATA IOPERA( 176),IX( 176),IY( 176)/'MOVE',   7,   9/
10409      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   6,   8/
10410      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',   7,   7/
10411      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   8,   8/
10412      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   8,   9/
10413      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   7,  11/
10414      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   5,  12/
10415      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   2,  12/
10416      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -1,  11/
10417      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -3,   9/
10418      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -5,   6/
10419      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -6,   3/
10420      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',  -7,  -1/
10421      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -7,  -5/
10422      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',  -6,  -7/
10423      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -5,  -8/
10424      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',  -3,  -9/
10425      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   0,  -9/
10426      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   3,  -8/
10427      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   5,  -6/
10428      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   6,  -4/
10429      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   6,  -1/
10430      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',   5,   1/
10431      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   4,   2/
10432      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',   2,   3/
10433      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -1,   3/
10434      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -3,   2/
10435      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -5,   0/
10436      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -6,  -2/
10437      DATA IOPERA( 205),IX( 205),IY( 205)/'MOVE',   2,  12/
10438      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   0,  11/
10439      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -2,   9/
10440      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -4,   6/
10441      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',  -5,   3/
10442      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  -6,  -1/
10443      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',  -6,  -6/
10444      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',  -5,  -8/
10445      DATA IOPERA( 213),IX( 213),IY( 213)/'MOVE',   0,  -9/
10446      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   2,  -8/
10447      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   4,  -6/
10448      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   5,  -4/
10449      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',   5,   0/
10450      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',   4,   2/
10451C
10452      DATA IXMIND(   7)/ -10/
10453      DATA IXMAXD(   7)/  11/
10454      DATA IXDELD(   7)/  21/
10455      DATA ISTARD(   7)/ 176/
10456      DATA NUMCOO(   7)/  43/
10457C
10458C     DEFINE CHARACTER   2757--7
10459C
10460      DATA IOPERA( 219),IX( 219),IY( 219)/'MOVE',  -4,  12/
10461      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -6,   6/
10462      DATA IOPERA( 221),IX( 221),IY( 221)/'MOVE',   9,  12/
10463      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   8,   9/
10464      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',   6,   6/
10465      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   1,   0/
10466      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  -1,  -3/
10467      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  -2,  -5/
10468      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',  -3,  -9/
10469      DATA IOPERA( 228),IX( 228),IY( 228)/'MOVE',   6,   6/
10470      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   0,   0/
10471      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -2,  -3/
10472      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',  -3,  -5/
10473      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',  -4,  -9/
10474      DATA IOPERA( 233),IX( 233),IY( 233)/'MOVE',  -5,   9/
10475      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',  -2,  12/
10476      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',   0,  12/
10477      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',   5,   9/
10478      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',  -4,  10/
10479      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',  -2,  11/
10480      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   0,  11/
10481      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   5,   9/
10482      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   7,   9/
10483      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',   8,  10/
10484      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   9,  12/
10485C
10486      DATA IXMIND(   8)/ -10/
10487      DATA IXMAXD(   8)/  11/
10488      DATA IXDELD(   8)/  21/
10489      DATA ISTARD(   8)/ 219/
10490      DATA NUMCOO(   8)/  25/
10491C
10492C     DEFINE CHARACTER   2758--8
10493C
10494      DATA IOPERA( 244),IX( 244),IY( 244)/'MOVE',   1,  12/
10495      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',  -2,  11/
10496      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',  -3,  10/
10497      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -4,   8/
10498      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -4,   5/
10499      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -3,   3/
10500      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',  -1,   2/
10501      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   2,   2/
10502      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   6,   3/
10503      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   7,   4/
10504      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',   8,   6/
10505      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',   8,   9/
10506      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',   7,  11/
10507      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   4,  12/
10508      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   1,  12/
10509      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',   1,  12/
10510      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -1,  11/
10511      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -2,  10/
10512      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -3,   8/
10513      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -3,   5/
10514      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -2,   3/
10515      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',  -1,   2/
10516      DATA IOPERA( 266),IX( 266),IY( 266)/'MOVE',   2,   2/
10517      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',   5,   3/
10518      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   6,   4/
10519      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',   7,   6/
10520      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   7,   9/
10521      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',   6,  11/
10522      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   4,  12/
10523      DATA IOPERA( 273),IX( 273),IY( 273)/'MOVE',  -1,   2/
10524      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',  -5,   1/
10525      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -7,  -1/
10526      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -8,  -3/
10527      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -8,  -6/
10528      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -7,  -8/
10529      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -4,  -9/
10530      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',   0,  -9/
10531      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',   4,  -8/
10532      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',   5,  -7/
10533      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',   6,  -5/
10534      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   6,  -2/
10535      DATA IOPERA( 285),IX( 285),IY( 285)/'DRAW',   5,   0/
10536      DATA IOPERA( 286),IX( 286),IY( 286)/'DRAW',   4,   1/
10537      DATA IOPERA( 287),IX( 287),IY( 287)/'DRAW',   2,   2/
10538      DATA IOPERA( 288),IX( 288),IY( 288)/'MOVE',  -1,   2/
10539      DATA IOPERA( 289),IX( 289),IY( 289)/'DRAW',  -4,   1/
10540      DATA IOPERA( 290),IX( 290),IY( 290)/'DRAW',  -6,  -1/
10541      DATA IOPERA( 291),IX( 291),IY( 291)/'DRAW',  -7,  -3/
10542      DATA IOPERA( 292),IX( 292),IY( 292)/'DRAW',  -7,  -6/
10543      DATA IOPERA( 293),IX( 293),IY( 293)/'DRAW',  -6,  -8/
10544      DATA IOPERA( 294),IX( 294),IY( 294)/'DRAW',  -4,  -9/
10545      DATA IOPERA( 295),IX( 295),IY( 295)/'MOVE',   0,  -9/
10546      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',   3,  -8/
10547      DATA IOPERA( 297),IX( 297),IY( 297)/'DRAW',   4,  -7/
10548      DATA IOPERA( 298),IX( 298),IY( 298)/'DRAW',   5,  -5/
10549      DATA IOPERA( 299),IX( 299),IY( 299)/'DRAW',   5,  -1/
10550      DATA IOPERA( 300),IX( 300),IY( 300)/'DRAW',   4,   1/
10551C
10552      DATA IXMIND(   9)/ -10/
10553      DATA IXMAXD(   9)/  11/
10554      DATA IXDELD(   9)/  21/
10555      DATA ISTARD(   9)/ 244/
10556      DATA NUMCOO(   9)/  57/
10557C
10558C-----START POINT-----------------------------------------------------
10559C
10560      IFOUND='YES'
10561      IERROR='NO'
10562C
10563      NUMCO=1
10564      ISTART=1
10565      ISTOP=1
10566      NC=1
10567C
10568C               ******************************************
10569C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
10570C               **  HERSHEY CHARACTER SET CASE          **
10571C               ******************************************
10572C
10573C
10574      IF(IBUGD2.EQ.'OFF')GOTO90
10575      WRITE(ICOUT,999)
10576  999 FORMAT(1X)
10577      CALL DPWRST('XXX','BUG ')
10578      WRITE(ICOUT,51)
10579   51 FORMAT('***** AT THE BEGINNING OF DRCSN1--')
10580      CALL DPWRST('XXX','BUG ')
10581      WRITE(ICOUT,52)ICHARN
10582   52 FORMAT('ICHARN = ',I8)
10583      CALL DPWRST('XXX','BUG ')
10584      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
10585   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10586      CALL DPWRST('XXX','BUG ')
10587   90 CONTINUE
10588C
10589C               **************************************
10590C               **  STEP 2--                        **
10591C               **  EXTRACT THE COORDINATES         **
10592C               **  FOR THIS PARTICULAR CHARACTER.  **
10593C               **************************************
10594C
10595      ISTART=ISTARD(ICHARN)
10596      NC=NUMCOO(ICHARN)
10597      ISTOP=ISTART+NC-1
10598      J=0
10599      DO1100I=ISTART,ISTOP
10600      J=J+1
10601      IOP(J)=IOPERA(I)
10602      X(J)=IX(I)
10603      Y(J)=IY(I)
10604 1100 CONTINUE
10605      NUMCO=J
10606      IXMINS=IXMIND(ICHARN)
10607      IXMAXS=IXMAXD(ICHARN)
10608      IXDELS=IXDELD(ICHARN)
10609C
10610      GOTO9000
10611C
10612C               *****************
10613C               **  STEP 90--  **
10614C               **  EXIT       **
10615C               *****************
10616C
10617 9000 CONTINUE
10618      IF(IBUGD2.EQ.'OFF')GOTO9090
10619      WRITE(ICOUT,999)
10620      CALL DPWRST('XXX','BUG ')
10621      WRITE(ICOUT,9011)
10622 9011 FORMAT('***** AT THE END       OF DRCSN1--')
10623      CALL DPWRST('XXX','BUG ')
10624      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
10625 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10626      CALL DPWRST('XXX','BUG ')
10627      WRITE(ICOUT,9013)ICHARN
10628 9013 FORMAT('ICHARN = ',I8)
10629      CALL DPWRST('XXX','BUG ')
10630      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
10631 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
10632      CALL DPWRST('XXX','BUG ')
10633      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
10634      DO9015I=1,NUMCO
10635      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
10636 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
10637      CALL DPWRST('XXX','BUG ')
10638 9015 CONTINUE
10639 9019 CONTINUE
10640      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
10641 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
10642      CALL DPWRST('XXX','BUG ')
10643 9090 CONTINUE
10644C
10645      RETURN
10646      END
10647      SUBROUTINE DRCSN2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
10648     1IBUGD2,IFOUND,IERROR)
10649C
10650C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
10651C              FOR ROMAN COMPLEX SCRIPT NUMERIC (PART 2).
10652C     WRITTEN BY--JAMES J. FILLIBEN
10653C                 STATISTICAL ENGINEERING DIVISION
10654C                 CENTER FOR APPLIED MATHEMATICS
10655C                 NATIONAL BUREAU OF STANDARDS
10656C                 WASHINGTON, D. C. 20234
10657C                 PHONE--301-921-3651
10658C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
10659C           OF THE NATIONAL BUREAU OF STANDARDS.
10660C     LANGUAGE--ANSI FORTRAN (1977)
10661C     VERSION NUMBER--87/4
10662C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
10663C     UPDATED         --MAY       1982.
10664C     UPDATED         --MARCH     1987.
10665C
10666C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
10667C
10668      CHARACTER*4 IOP
10669      CHARACTER*4 IBUGD2
10670      CHARACTER*4 IFOUND
10671      CHARACTER*4 IERROR
10672C
10673      CHARACTER*4 IOPERA
10674C
10675C---------------------------------------------------------------------
10676C
10677      DIMENSION IOP(*)
10678      DIMENSION X(*)
10679      DIMENSION Y(*)
10680C
10681      DIMENSION IOPERA(300)
10682      DIMENSION IX(300)
10683      DIMENSION IY(300)
10684C
10685      DIMENSION IXMIND(30)
10686      DIMENSION IXMAXD(30)
10687      DIMENSION IXDELD(30)
10688      DIMENSION ISTARD(30)
10689      DIMENSION NUMCOO(30)
10690C
10691C-----COMMON----------------------------------------------------------
10692C
10693      INCLUDE 'DPCOP2.INC'
10694C
10695C-----DATA STATEMENTS-------------------------------------------------
10696C
10697C     DEFINE CHARACTER   2759--9
10698C
10699      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   7,   5/
10700      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',   6,   3/
10701      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',   4,   1/
10702      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',   2,   0/
10703      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -1,   0/
10704      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -3,   1/
10705      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -4,   2/
10706      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -5,   4/
10707      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -5,   7/
10708      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -4,   9/
10709      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',  -2,  11/
10710      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   1,  12/
10711      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   4,  12/
10712      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   6,  11/
10713      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   7,  10/
10714      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   8,   8/
10715      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   8,   4/
10716      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   7,   0/
10717      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   6,  -3/
10718      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   4,  -6/
10719      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   2,  -8/
10720      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',  -1,  -9/
10721      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  -4,  -9/
10722      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  -6,  -8/
10723      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -7,  -6/
10724      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -7,  -5/
10725      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -6,  -4/
10726      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -5,  -5/
10727      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -6,  -6/
10728      DATA IOPERA(  30),IX(  30),IY(  30)/'MOVE',  -3,   1/
10729      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -4,   3/
10730      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',  -4,   7/
10731      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',  -3,   9/
10732      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',  -1,  11/
10733      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   1,  12/
10734      DATA IOPERA(  36),IX(  36),IY(  36)/'MOVE',   6,  11/
10735      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   7,   9/
10736      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',   7,   4/
10737      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',   6,   0/
10738      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',   5,  -3/
10739      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',   3,  -6/
10740      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',   1,  -8/
10741      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -1,  -9/
10742C
10743      DATA IXMIND(  10)/ -10/
10744      DATA IXMAXD(  10)/  11/
10745      DATA IXDELD(  10)/  21/
10746      DATA ISTARD(  10)/   1/
10747      DATA NUMCOO(  10)/  43/
10748C
10749C-----START POINT-----------------------------------------------------
10750C
10751      IFOUND='YES'
10752      IERROR='NO'
10753C
10754      NUMCO=1
10755      ISTART=1
10756      ISTOP=1
10757      NC=1
10758C
10759C               ******************************************
10760C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
10761C               **  HERSHEY CHARACTER SET CASE          **
10762C               ******************************************
10763C
10764C
10765      IF(IBUGD2.EQ.'OFF')GOTO90
10766      WRITE(ICOUT,999)
10767  999 FORMAT(1X)
10768      CALL DPWRST('XXX','BUG ')
10769      WRITE(ICOUT,51)
10770   51 FORMAT('***** AT THE BEGINNING OF DRCSN2--')
10771      CALL DPWRST('XXX','BUG ')
10772      WRITE(ICOUT,52)ICHARN
10773   52 FORMAT('ICHARN = ',I8)
10774      CALL DPWRST('XXX','BUG ')
10775      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
10776   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10777      CALL DPWRST('XXX','BUG ')
10778   90 CONTINUE
10779C
10780C               **************************************
10781C               **  STEP 2--                        **
10782C               **  EXTRACT THE COORDINATES         **
10783C               **  FOR THIS PARTICULAR CHARACTER.  **
10784C               **************************************
10785C
10786      ISTART=ISTARD(ICHARN)
10787      NC=NUMCOO(ICHARN)
10788      ISTOP=ISTART+NC-1
10789      J=0
10790      DO1100I=ISTART,ISTOP
10791      J=J+1
10792      IOP(J)=IOPERA(I)
10793      X(J)=IX(I)
10794      Y(J)=IY(I)
10795 1100 CONTINUE
10796      NUMCO=J
10797      IXMINS=IXMIND(ICHARN)
10798      IXMAXS=IXMAXD(ICHARN)
10799      IXDELS=IXDELD(ICHARN)
10800C
10801      GOTO9000
10802C
10803C               *****************
10804C               **  STEP 90--  **
10805C               **  EXIT       **
10806C               *****************
10807C
10808 9000 CONTINUE
10809      IF(IBUGD2.EQ.'OFF')GOTO9090
10810      WRITE(ICOUT,999)
10811      CALL DPWRST('XXX','BUG ')
10812      WRITE(ICOUT,9011)
10813 9011 FORMAT('***** AT THE END       OF DRCSN2--')
10814      CALL DPWRST('XXX','BUG ')
10815      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
10816 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
10817      CALL DPWRST('XXX','BUG ')
10818      WRITE(ICOUT,9013)ICHARN
10819 9013 FORMAT('ICHARN = ',I8)
10820      CALL DPWRST('XXX','BUG ')
10821      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
10822 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
10823      CALL DPWRST('XXX','BUG ')
10824      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
10825      DO9015I=1,NUMCO
10826      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
10827 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
10828      CALL DPWRST('XXX','BUG ')
10829 9015 CONTINUE
10830 9019 CONTINUE
10831      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
10832 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
10833      CALL DPWRST('XXX','BUG ')
10834 9090 CONTINUE
10835C
10836      RETURN
10837      END
10838      SUBROUTINE DRCSU1(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
10839     1IBUGD2,IFOUND,IERROR)
10840C
10841C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
10842C              FOR ROMAN COMPLEX SCRIPT UPPER CASE (PART 1).
10843C     WRITTEN BY--JAMES J. FILLIBEN
10844C                 STATISTICAL ENGINEERING DIVISION
10845C                 CENTER FOR APPLIED MATHEMATICS
10846C                 NATIONAL BUREAU OF STANDARDS
10847C                 WASHINGTON, D. C. 20234
10848C                 PHONE--301-921-3651
10849C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
10850C           OF THE NATIONAL BUREAU OF STANDARDS.
10851C     LANGUAGE--ANSI FORTRAN (1977)
10852C     VERSION NUMBER--87/4
10853C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
10854C     UPDATED         --MAY       1982.
10855C     UPDATED         --MARCH     1987.
10856C
10857C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
10858C
10859      CHARACTER*4 IOP
10860      CHARACTER*4 IBUGD2
10861      CHARACTER*4 IFOUND
10862      CHARACTER*4 IERROR
10863C
10864      CHARACTER*4 IOPERA
10865C
10866C---------------------------------------------------------------------
10867C
10868      DIMENSION IOP(*)
10869      DIMENSION X(*)
10870      DIMENSION Y(*)
10871C
10872      DIMENSION IOPERA(300)
10873      DIMENSION IX(300)
10874      DIMENSION IY(300)
10875C
10876      DIMENSION IXMIND(30)
10877      DIMENSION IXMAXD(30)
10878      DIMENSION IXDELD(30)
10879      DIMENSION ISTARD(30)
10880      DIMENSION NUMCOO(30)
10881C
10882C-----COMMON----------------------------------------------------------
10883C
10884      INCLUDE 'DPCOP2.INC'
10885C
10886C-----DATA STATEMENTS-------------------------------------------------
10887C
10888C     DEFINE CHARACTER   2551--UPPER CASE A
10889C
10890      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   6,  12/
10891      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',   4,  10/
10892      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',   2,   7/
10893      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -1,   2/
10894      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -3,  -1/
10895      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -6,  -5/
10896      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -9,  -8/
10897      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW', -11,  -9/
10898      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW', -13,  -9/
10899      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW', -14,  -8/
10900      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW', -14,  -6/
10901      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW', -13,  -5/
10902      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW', -12,  -6/
10903      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW', -13,  -7/
10904      DATA IOPERA(  15),IX(  15),IY(  15)/'MOVE',   6,  12/
10905      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   5,   8/
10906      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   3,  -2/
10907      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',   2,  -9/
10908      DATA IOPERA(  19),IX(  19),IY(  19)/'MOVE',   6,  12/
10909      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   3,  -9/
10910      DATA IOPERA(  21),IX(  21),IY(  21)/'MOVE',   2,  -9/
10911      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   2,  -7/
10912      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   1,  -4/
10913      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   0,  -2/
10914      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  -2,   0/
10915      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  -4,   1/
10916      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  -6,   1/
10917      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  -7,   0/
10918      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -7,  -2/
10919      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -6,  -5/
10920      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',  -3,  -8/
10921      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   0,  -9/
10922      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   4,  -9/
10923      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   6,  -8/
10924C
10925      DATA IXMIND(   1)/ -13/
10926      DATA IXMAXD(   1)/  10/
10927      DATA IXDELD(   1)/  23/
10928      DATA ISTARD(   1)/   1/
10929      DATA NUMCOO(   1)/  34/
10930C
10931C     DEFINE CHARACTER   2552--UPPER CASE B
10932C
10933      DATA IOPERA(  35),IX(  35),IY(  35)/'MOVE',   3,  11/
10934      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   2,  10/
10935      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',   1,   8/
10936      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -1,   3/
10937      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -3,  -3/
10938      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -4,  -5/
10939      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -6,  -8/
10940      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -8,  -9/
10941      DATA IOPERA(  43),IX(  43),IY(  43)/'MOVE',   2,  10/
10942      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',   1,   7/
10943      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -1,  -1/
10944      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',  -2,  -4/
10945      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -3,  -6/
10946      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -5,  -8/
10947      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -8,  -9/
10948      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW', -10,  -9/
10949      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW', -11,  -8/
10950      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW', -11,  -6/
10951      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW', -10,  -5/
10952      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -9,  -6/
10953      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW', -10,  -7/
10954      DATA IOPERA(  56),IX(  56),IY(  56)/'MOVE',  -3,   6/
10955      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -4,   4/
10956      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -5,   3/
10957      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -7,   3/
10958      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -8,   4/
10959      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -8,   6/
10960      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -7,   8/
10961      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -5,  10/
10962      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -3,  11/
10963      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   0,  12/
10964      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   6,  12/
10965      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   8,  11/
10966      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   9,   9/
10967      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   9,   7/
10968      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',   8,   5/
10969      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',   6,   4/
10970      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',   2,   3/
10971      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',   0,   3/
10972      DATA IOPERA(  74),IX(  74),IY(  74)/'MOVE',   6,  12/
10973      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',   7,  11/
10974      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',   8,   9/
10975      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   8,   7/
10976      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   7,   5/
10977      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',   6,   4/
10978      DATA IOPERA(  80),IX(  80),IY(  80)/'MOVE',   2,   3/
10979      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',   5,   2/
10980      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',   6,   1/
10981      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',   7,  -1/
10982      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   7,  -4/
10983      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   6,  -7/
10984      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   5,  -8/
10985      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   3,  -9/
10986      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   1,  -9/
10987      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',   0,  -8/
10988      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',   0,  -6/
10989      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   1,  -3/
10990      DATA IOPERA(  92),IX(  92),IY(  92)/'MOVE',   2,   3/
10991      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   4,   2/
10992      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   5,   1/
10993      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   6,  -1/
10994      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   6,  -4/
10995      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   5,  -7/
10996      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   3,  -9/
10997C
10998      DATA IXMIND(   2)/ -12/
10999      DATA IXMAXD(   2)/  12/
11000      DATA IXDELD(   2)/  24/
11001      DATA ISTARD(   2)/  35/
11002      DATA NUMCOO(   2)/  64/
11003C
11004C     DEFINE CHARACTER   2553--UPPER CASE C
11005C
11006      DATA IOPERA(  99),IX(  99),IY(  99)/'MOVE',  -7,  10/
11007      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  -8,   8/
11008      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',  -8,   6/
11009      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',  -7,   4/
11010      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',  -4,   3/
11011      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -1,   3/
11012      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   3,   4/
11013      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   5,   5/
11014      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   7,   7/
11015      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',   8,   9/
11016      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   8,  11/
11017      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   7,  12/
11018      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   5,  12/
11019      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   2,  11/
11020      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -1,   8/
11021      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',  -3,   5/
11022      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -5,   1/
11023      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -6,  -3/
11024      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',  -6,  -6/
11025      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -5,  -8/
11026      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -2,  -9/
11027      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',   0,  -9/
11028      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   3,  -8/
11029      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   5,  -6/
11030      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',   6,  -4/
11031      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',   6,  -2/
11032      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',   5,   0/
11033      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   3,   0/
11034      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   1,  -1/
11035      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   0,  -3/
11036      DATA IOPERA( 129),IX( 129),IY( 129)/'MOVE',   5,  12/
11037      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   3,  11/
11038      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   0,   8/
11039      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -2,   5/
11040      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -4,   1/
11041      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -5,  -3/
11042      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -5,  -6/
11043      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -4,  -8/
11044      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  -2,  -9/
11045C
11046      DATA IXMIND(   3)/ -10/
11047      DATA IXMAXD(   3)/  11/
11048      DATA IXDELD(   3)/  21/
11049      DATA ISTARD(   3)/  99/
11050      DATA NUMCOO(   3)/  39/
11051C
11052C     DEFINE CHARACTER   2554--UPPER CASE D
11053C
11054      DATA IOPERA( 138),IX( 138),IY( 138)/'MOVE',   3,  11/
11055      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   2,  10/
11056      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',   1,   8/
11057      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -1,   3/
11058      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -3,  -3/
11059      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -4,  -5/
11060      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -6,  -8/
11061      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -8,  -9/
11062      DATA IOPERA( 146),IX( 146),IY( 146)/'MOVE',   2,  10/
11063      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   1,   7/
11064      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',  -1,  -1/
11065      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',  -2,  -4/
11066      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',  -3,  -6/
11067      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',  -5,  -8/
11068      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -8,  -9/
11069      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW', -10,  -9/
11070      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW', -11,  -8/
11071      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW', -11,  -6/
11072      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW', -10,  -5/
11073      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -8,  -5/
11074      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -6,  -6/
11075      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -4,  -8/
11076      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -2,  -9/
11077      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',   1,  -9/
11078      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',   3,  -8/
11079      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',   5,  -6/
11080      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',   7,  -2/
11081      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',   8,   3/
11082      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   8,   6/
11083      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',   7,   9/
11084      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',   5,  11/
11085      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   3,  12/
11086      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -2,  12/
11087      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -5,  11/
11088      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -7,   9/
11089      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -8,   7/
11090      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -8,   5/
11091      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',  -7,   4/
11092      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',  -5,   4/
11093      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',  -4,   5/
11094      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW',  -3,   7/
11095C
11096      DATA IXMIND(   4)/ -12/
11097      DATA IXMAXD(   4)/  11/
11098      DATA IXDELD(   4)/  23/
11099      DATA ISTARD(   4)/ 138/
11100      DATA NUMCOO(   4)/  41/
11101C
11102C     DEFINE CHARACTER   2555--UPPER CASE E
11103C
11104      DATA IOPERA( 179),IX( 179),IY( 179)/'MOVE',   5,   9/
11105      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   4,   8/
11106      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   4,   6/
11107      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   5,   5/
11108      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   7,   5/
11109      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',   8,   7/
11110      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',   8,   9/
11111      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',   7,  11/
11112      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',   5,  12/
11113      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   2,  12/
11114      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   0,  11/
11115      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',  -1,  10/
11116      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -2,   8/
11117      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',  -2,   6/
11118      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  -1,   4/
11119      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   1,   3/
11120      DATA IOPERA( 195),IX( 195),IY( 195)/'MOVE',   2,  12/
11121      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   0,  10/
11122      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  -1,   8/
11123      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -1,   5/
11124      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   1,   3/
11125      DATA IOPERA( 200),IX( 200),IY( 200)/'MOVE',   1,   3/
11126      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',  -1,   3/
11127      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',  -4,   2/
11128      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -6,   0/
11129      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -7,  -2/
11130      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -7,  -5/
11131      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -6,  -7/
11132      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -5,  -8/
11133      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -3,  -9/
11134      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',   0,  -9/
11135      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',   3,  -8/
11136      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   5,  -6/
11137      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   6,  -4/
11138      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   6,  -2/
11139      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   5,   0/
11140      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   3,   0/
11141      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   1,  -1/
11142      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',   0,  -3/
11143      DATA IOPERA( 218),IX( 218),IY( 218)/'MOVE',  -1,   3/
11144      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -3,   2/
11145      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -5,   0/
11146      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -6,  -2/
11147      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',  -6,  -6/
11148      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -5,  -8/
11149C
11150      DATA IXMIND(   5)/  -9/
11151      DATA IXMAXD(   5)/  10/
11152      DATA IXDELD(   5)/  19/
11153      DATA ISTARD(   5)/ 179/
11154      DATA NUMCOO(   5)/  45/
11155C
11156C     DEFINE CHARACTER   2556--UPPER CASE F
11157C
11158      DATA IOPERA( 224),IX( 224),IY( 224)/'MOVE',   5,  10/
11159      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',   4,   8/
11160      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   2,   3/
11161      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   0,  -3/
11162      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',  -1,  -5/
11163      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',  -3,  -8/
11164      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',  -5,  -9/
11165      DATA IOPERA( 231),IX( 231),IY( 231)/'MOVE',  -1,   6/
11166      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',  -2,   4/
11167      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',  -4,   3/
11168      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',  -6,   3/
11169      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',  -7,   5/
11170      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -7,   7/
11171      DATA IOPERA( 237),IX( 237),IY( 237)/'DRAW',  -6,   9/
11172      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',  -4,  11/
11173      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',  -1,  12/
11174      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   9,  12/
11175      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',   6,  11/
11176      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',   5,  10/
11177      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',   4,   7/
11178      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',   2,  -1/
11179      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW',   1,  -4/
11180      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW',   0,  -6/
11181      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -2,  -8/
11182      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -5,  -9/
11183      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -7,  -9/
11184      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',  -9,  -8/
11185      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW', -10,  -7/
11186      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW', -10,  -6/
11187      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',  -9,  -5/
11188      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',  -8,  -6/
11189      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',  -9,  -7/
11190      DATA IOPERA( 256),IX( 256),IY( 256)/'MOVE',   1,  12/
11191      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',   5,  11/
11192      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   6,  11/
11193      DATA IOPERA( 259),IX( 259),IY( 259)/'MOVE',  -3,  -1/
11194      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -2,   0/
11195      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',   0,   1/
11196      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',   4,   1/
11197      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',   6,   2/
11198      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',   8,   5/
11199      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   6,  -2/
11200C
11201      DATA IXMIND(   6)/ -11/
11202      DATA IXMAXD(   6)/  10/
11203      DATA IXDELD(   6)/  21/
11204      DATA ISTARD(   6)/ 224/
11205      DATA NUMCOO(   6)/  42/
11206C
11207C-----START POINT-----------------------------------------------------
11208C
11209      IFOUND='YES'
11210      IERROR='NO'
11211C
11212      NUMCO=1
11213      ISTART=1
11214      ISTOP=1
11215      NC=1
11216C
11217C               ******************************************
11218C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
11219C               **  HERSHEY CHARACTER SET CASE          **
11220C               ******************************************
11221C
11222C
11223      IF(IBUGD2.EQ.'OFF')GOTO90
11224      WRITE(ICOUT,999)
11225  999 FORMAT(1X)
11226      CALL DPWRST('XXX','BUG ')
11227      WRITE(ICOUT,51)
11228   51 FORMAT('***** AT THE BEGINNING OF DRCSU1--')
11229      CALL DPWRST('XXX','BUG ')
11230      WRITE(ICOUT,52)ICHARN
11231   52 FORMAT('ICHARN = ',I8)
11232      CALL DPWRST('XXX','BUG ')
11233      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
11234   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
11235      CALL DPWRST('XXX','BUG ')
11236   90 CONTINUE
11237C
11238C               **************************************
11239C               **  STEP 2--                        **
11240C               **  EXTRACT THE COORDINATES         **
11241C               **  FOR THIS PARTICULAR CHARACTER.  **
11242C               **************************************
11243C
11244      ISTART=ISTARD(ICHARN)
11245      NC=NUMCOO(ICHARN)
11246      ISTOP=ISTART+NC-1
11247      J=0
11248      DO1100I=ISTART,ISTOP
11249      J=J+1
11250      IOP(J)=IOPERA(I)
11251      X(J)=IX(I)
11252      Y(J)=IY(I)
11253 1100 CONTINUE
11254      NUMCO=J
11255      IXMINS=IXMIND(ICHARN)
11256      IXMAXS=IXMAXD(ICHARN)
11257      IXDELS=IXDELD(ICHARN)
11258C
11259      GOTO9000
11260C
11261C               *****************
11262C               **  STEP 90--  **
11263C               **  EXIT       **
11264C               *****************
11265C
11266 9000 CONTINUE
11267      IF(IBUGD2.EQ.'OFF')GOTO9090
11268      WRITE(ICOUT,999)
11269      CALL DPWRST('XXX','BUG ')
11270      WRITE(ICOUT,9011)
11271 9011 FORMAT('***** AT THE END       OF DRCSU1--')
11272      CALL DPWRST('XXX','BUG ')
11273      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
11274 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
11275      CALL DPWRST('XXX','BUG ')
11276      WRITE(ICOUT,9013)ICHARN
11277 9013 FORMAT('ICHARN = ',I8)
11278      CALL DPWRST('XXX','BUG ')
11279      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
11280 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
11281      CALL DPWRST('XXX','BUG ')
11282      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
11283      DO9015I=1,NUMCO
11284      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
11285 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
11286      CALL DPWRST('XXX','BUG ')
11287 9015 CONTINUE
11288 9019 CONTINUE
11289      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
11290 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
11291      CALL DPWRST('XXX','BUG ')
11292 9090 CONTINUE
11293C
11294      RETURN
11295      END
11296      SUBROUTINE DRCSU2(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
11297     1IBUGD2,IFOUND,IERROR)
11298C
11299C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
11300C              FOR ROMAN COMPLEX SCRIPT UPPER CASE (PART 2).
11301C     WRITTEN BY--JAMES J. FILLIBEN
11302C                 STATISTICAL ENGINEERING DIVISION
11303C                 CENTER FOR APPLIED MATHEMATICS
11304C                 NATIONAL BUREAU OF STANDARDS
11305C                 WASHINGTON, D. C. 20234
11306C                 PHONE--301-921-3651
11307C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
11308C           OF THE NATIONAL BUREAU OF STANDARDS.
11309C     LANGUAGE--ANSI FORTRAN (1977)
11310C     VERSION NUMBER--87/4
11311C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
11312C     UPDATED         --MAY       1982.
11313C     UPDATED         --MARCH     1987.
11314C
11315C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
11316C
11317      CHARACTER*4 IOP
11318      CHARACTER*4 IBUGD2
11319      CHARACTER*4 IFOUND
11320      CHARACTER*4 IERROR
11321C
11322      CHARACTER*4 IOPERA
11323C
11324C---------------------------------------------------------------------
11325C
11326      DIMENSION IOP(*)
11327      DIMENSION X(*)
11328      DIMENSION Y(*)
11329C
11330      DIMENSION IOPERA(300)
11331      DIMENSION IX(300)
11332      DIMENSION IY(300)
11333C
11334      DIMENSION IXMIND(30)
11335      DIMENSION IXMAXD(30)
11336      DIMENSION IXDELD(30)
11337      DIMENSION ISTARD(30)
11338      DIMENSION NUMCOO(30)
11339C
11340C-----COMMON----------------------------------------------------------
11341C
11342      INCLUDE 'DPCOP2.INC'
11343C
11344C-----DATA STATEMENTS-------------------------------------------------
11345C
11346C     DEFINE CHARACTER   2557--UPPER CASE G
11347C
11348      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',  -8,   9/
11349      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -9,   7/
11350      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -9,   5/
11351      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -8,   3/
11352      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -6,   2/
11353      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -3,   2/
11354      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',   0,   3/
11355      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',   2,   4/
11356      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',   5,   7/
11357      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',   6,  10/
11358      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW',   6,  11/
11359      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',   5,  12/
11360      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',   4,  12/
11361      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',   2,  11/
11362      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   0,   9/
11363      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -1,   7/
11364      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -2,   4/
11365      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',  -2,   1/
11366      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -1,  -1/
11367      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   1,  -2/
11368      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   3,  -2/
11369      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   5,  -1/
11370      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',   7,   1/
11371      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   8,   3/
11372      DATA IOPERA(  25),IX(  25),IY(  25)/'MOVE',   5,  12/
11373      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   3,  11/
11374      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   1,   9/
11375      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   0,   7/
11376      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  -1,   4/
11377      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  -1,   0/
11378      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',   1,  -2/
11379      DATA IOPERA(  32),IX(  32),IY(  32)/'MOVE',   8,   3/
11380      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   7,  -1/
11381      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   5,  -5/
11382      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   3,  -7/
11383      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',   1,  -8/
11384      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -3,  -9/
11385      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -6,  -9/
11386      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -8,  -8/
11387      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -9,  -6/
11388      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -9,  -5/
11389      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -8,  -4/
11390      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -7,  -5/
11391      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -8,  -6/
11392      DATA IOPERA(  45),IX(  45),IY(  45)/'MOVE',   7,  -1/
11393      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   5,  -4/
11394      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   3,  -6/
11395      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',   0,  -8/
11396      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -3,  -9/
11397C
11398      DATA IXMIND(   7)/ -11/
11399      DATA IXMAXD(   7)/  11/
11400      DATA IXDELD(   7)/  22/
11401      DATA ISTARD(   7)/   1/
11402      DATA NUMCOO(   7)/  49/
11403C
11404C     DEFINE CHARACTER   2558--UPPER CASE H
11405C
11406      DATA IOPERA(  50),IX(  50),IY(  50)/'MOVE',  -6,   6/
11407      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -7,   7/
11408      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -7,   9/
11409      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -6,  11/
11410      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -3,  12/
11411      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   0,  12/
11412      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',  -3,   1/
11413      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -5,  -5/
11414      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -6,  -7/
11415      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -7,  -8/
11416      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',  -9,  -9/
11417      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW', -11,  -9/
11418      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW', -12,  -8/
11419      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW', -12,  -6/
11420      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW', -11,  -5/
11421      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW', -10,  -6/
11422      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW', -11,  -7/
11423      DATA IOPERA(  67),IX(  67),IY(  67)/'MOVE',   0,  12/
11424      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',  -3,   3/
11425      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  -4,   0/
11426      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',  -6,  -5/
11427      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -7,  -7/
11428      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -9,  -9/
11429      DATA IOPERA(  73),IX(  73),IY(  73)/'MOVE',  -8,  -2/
11430      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -7,  -1/
11431      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -5,   0/
11432      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',   4,   3/
11433      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',   6,   4/
11434      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',   9,   6/
11435      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  11,   8/
11436      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  12,  10/
11437      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',  12,  11/
11438      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',  11,  12/
11439      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  10,  12/
11440      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW',   8,  11/
11441      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   6,   8/
11442      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   5,   6/
11443      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',   3,   0/
11444      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',   2,  -4/
11445      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',   2,  -7/
11446      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',   4,  -9/
11447      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   5,  -9/
11448      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   7,  -8/
11449      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   9,  -6/
11450      DATA IOPERA(  94),IX(  94),IY(  94)/'MOVE',  10,  12/
11451      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',   8,  10/
11452      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   6,   6/
11453      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   4,   0/
11454      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   3,  -4/
11455      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   3,  -7/
11456      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   4,  -9/
11457C
11458      DATA IXMIND(   8)/ -12/
11459      DATA IXMAXD(   8)/  12/
11460      DATA IXDELD(   8)/  24/
11461      DATA ISTARD(   8)/  50/
11462      DATA NUMCOO(   8)/  51/
11463C
11464C     DEFINE CHARACTER   2559--UPPER CASE I
11465C
11466      DATA IOPERA( 101),IX( 101),IY( 101)/'MOVE',   5,  10/
11467      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   3,   7/
11468      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   1,   2/
11469      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',  -1,  -3/
11470      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',  -2,  -5/
11471      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -4,  -8/
11472      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -6,  -9/
11473      DATA IOPERA( 108),IX( 108),IY( 108)/'MOVE',   7,   6/
11474      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   5,   4/
11475      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   2,   3/
11476      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -1,   3/
11477      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',  -3,   4/
11478      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',  -4,   6/
11479      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',  -4,   8/
11480      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',  -3,  10/
11481      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',  -1,  11/
11482      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   3,  12/
11483      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   7,  12/
11484      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   5,  10/
11485      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',   4,   8/
11486      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',   2,   2/
11487      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',   0,  -4/
11488      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -1,  -6/
11489      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -3,  -8/
11490      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -6,  -9/
11491      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',  -8,  -9/
11492      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',  -9,  -8/
11493      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',  -9,  -6/
11494      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',  -8,  -5/
11495      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',  -7,  -6/
11496      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',  -8,  -7/
11497C
11498      DATA IXMIND(   9)/  -9/
11499      DATA IXMAXD(   9)/   7/
11500      DATA IXDELD(   9)/  16/
11501      DATA ISTARD(   9)/ 101/
11502      DATA NUMCOO(   9)/  31/
11503C
11504C     DEFINE CHARACTER   2560--UPPER CASE J
11505C
11506      DATA IOPERA( 132),IX( 132),IY( 132)/'MOVE',   7,  12/
11507      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   5,  10/
11508      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',   3,   7/
11509      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',   1,   2/
11510      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -2,  -7/
11511      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  -4, -11/
11512      DATA IOPERA( 138),IX( 138),IY( 138)/'MOVE',   7,   5/
11513      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',   5,   3/
11514      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',   2,   2/
11515      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -1,   2/
11516      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -3,   3/
11517      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -4,   5/
11518      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',  -4,   7/
11519      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',  -3,   9/
11520      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',  -1,  11/
11521      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   3,  12/
11522      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   7,  12/
11523      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   5,   9/
11524      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   4,   7/
11525      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   1,  -2/
11526      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',  -1,  -6/
11527      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',  -2,  -8/
11528      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',  -4, -11/
11529      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -5, -12/
11530      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -7, -13/
11531      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -8, -12/
11532      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -8, -10/
11533      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -7,  -8/
11534      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -5,  -6/
11535      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -3,  -5/
11536      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',   0,  -4/
11537      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',   4,  -3/
11538C
11539      DATA IXMIND(  10)/  -9/
11540      DATA IXMAXD(  10)/   8/
11541      DATA IXDELD(  10)/  17/
11542      DATA ISTARD(  10)/ 132/
11543      DATA NUMCOO(  10)/  32/
11544C
11545C     DEFINE CHARACTER   2561--UPPER CASE K
11546C
11547      DATA IOPERA( 164),IX( 164),IY( 164)/'MOVE',  -6,   6/
11548      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',  -7,   7/
11549      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -7,   9/
11550      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -5,  11/
11551      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',  -2,  12/
11552      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   0,  12/
11553      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -3,   1/
11554      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -5,  -5/
11555      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',  -6,  -7/
11556      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',  -7,  -8/
11557      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW',  -9,  -9/
11558      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW', -11,  -9/
11559      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW', -12,  -8/
11560      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW', -12,  -6/
11561      DATA IOPERA( 178),IX( 178),IY( 178)/'DRAW', -11,  -5/
11562      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW', -10,  -6/
11563      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW', -11,  -7/
11564      DATA IOPERA( 181),IX( 181),IY( 181)/'MOVE',   0,  12/
11565      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -3,   3/
11566      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -4,   0/
11567      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -6,  -5/
11568      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -7,  -7/
11569      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -9,  -9/
11570      DATA IOPERA( 187),IX( 187),IY( 187)/'MOVE',   8,  11/
11571      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   5,   7/
11572      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   3,   5/
11573      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   1,   4/
11574      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -2,   3/
11575      DATA IOPERA( 192),IX( 192),IY( 192)/'MOVE',  11,  11/
11576      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',  10,  10/
11577      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',  11,   9/
11578      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',  12,  10/
11579      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',  12,  11/
11580      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',  11,  12/
11581      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  10,  12/
11582      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   8,  11/
11583      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',   5,   6/
11584      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   4,   5/
11585      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   2,   4/
11586      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -2,   3/
11587      DATA IOPERA( 204),IX( 204),IY( 204)/'MOVE',  -2,   3/
11588      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   1,   2/
11589      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   2,   0/
11590      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   3,  -7/
11591      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',   4,  -9/
11592      DATA IOPERA( 209),IX( 209),IY( 209)/'MOVE',  -2,   3/
11593      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',   0,   2/
11594      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   1,   0/
11595      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   2,  -7/
11596      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   4,  -9/
11597      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   5,  -9/
11598      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   7,  -8/
11599      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   9,  -6/
11600C
11601      DATA IXMIND(  11)/ -12/
11602      DATA IXMAXD(  11)/  12/
11603      DATA IXDELD(  11)/  24/
11604      DATA ISTARD(  11)/ 164/
11605      DATA NUMCOO(  11)/  53/
11606C
11607C     DEFINE CHARACTER   2562--UPPER CASE L
11608C
11609      DATA IOPERA( 217),IX( 217),IY( 217)/'MOVE',  -5,   9/
11610      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -6,   7/
11611      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -6,   5/
11612      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -5,   3/
11613      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',  -3,   2/
11614      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   0,   2/
11615      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',   3,   3/
11616      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   5,   4/
11617      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',   8,   7/
11618      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',   9,  10/
11619      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   9,  11/
11620      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   8,  12/
11621      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   7,  12/
11622      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',   5,  11/
11623      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   4,  10/
11624      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   2,   7/
11625      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',  -2,  -3/
11626      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',  -3,  -5/
11627      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',  -5,  -8/
11628      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -7,  -9/
11629      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',   4,  10/
11630      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   2,   6/
11631      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   0,  -1/
11632      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',  -1,  -4/
11633      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',  -2,  -6/
11634      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -4,  -8/
11635      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -7,  -9/
11636      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',  -9,  -9/
11637      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW', -10,  -8/
11638      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW', -10,  -6/
11639      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -9,  -5/
11640      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -7,  -5/
11641      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -5,  -6/
11642      DATA IOPERA( 250),IX( 250),IY( 250)/'DRAW',  -2,  -8/
11643      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   0,  -9/
11644      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   3,  -9/
11645      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   5,  -8/
11646      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',   7,  -6/
11647C
11648      DATA IXMIND(  12)/  -9/
11649      DATA IXMAXD(  12)/   9/
11650      DATA IXDELD(  12)/  18/
11651      DATA ISTARD(  12)/ 217/
11652      DATA NUMCOO(  12)/  38/
11653C
11654C     DEFINE CHARACTER   2563--UPPER CASE M
11655C
11656      DATA IOPERA( 255),IX( 255),IY( 255)/'MOVE',   0,  12/
11657      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',  -4,   3/
11658      DATA IOPERA( 257),IX( 257),IY( 257)/'DRAW',  -7,  -3/
11659      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',  -9,  -6/
11660      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW', -11,  -8/
11661      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW', -13,  -9/
11662      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW', -15,  -9/
11663      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW', -16,  -8/
11664      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW', -16,  -6/
11665      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW', -15,  -5/
11666      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW', -14,  -6/
11667      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW', -15,  -7/
11668      DATA IOPERA( 267),IX( 267),IY( 267)/'MOVE',   0,  12/
11669      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',  -2,   5/
11670      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',  -3,   1/
11671      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',  -4,  -4/
11672      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',  -4,  -8/
11673      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',  -2,  -9/
11674      DATA IOPERA( 273),IX( 273),IY( 273)/'MOVE',   0,  12/
11675      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',  -1,   8/
11676      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -2,   3/
11677      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -3,  -4/
11678      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -3,  -8/
11679      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -2,  -9/
11680      DATA IOPERA( 279),IX( 279),IY( 279)/'MOVE',   9,  12/
11681      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',   5,   3/
11682      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',   0,  -6/
11683      DATA IOPERA( 282),IX( 282),IY( 282)/'DRAW',  -2,  -9/
11684      DATA IOPERA( 283),IX( 283),IY( 283)/'MOVE',   9,  12/
11685      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   7,   5/
11686      DATA IOPERA( 285),IX( 285),IY( 285)/'DRAW',   6,   1/
11687      DATA IOPERA( 286),IX( 286),IY( 286)/'DRAW',   5,  -4/
11688      DATA IOPERA( 287),IX( 287),IY( 287)/'DRAW',   5,  -8/
11689      DATA IOPERA( 288),IX( 288),IY( 288)/'DRAW',   7,  -9/
11690      DATA IOPERA( 289),IX( 289),IY( 289)/'DRAW',   8,  -9/
11691      DATA IOPERA( 290),IX( 290),IY( 290)/'DRAW',  10,  -8/
11692      DATA IOPERA( 291),IX( 291),IY( 291)/'DRAW',  12,  -6/
11693      DATA IOPERA( 292),IX( 292),IY( 292)/'MOVE',   9,  12/
11694      DATA IOPERA( 293),IX( 293),IY( 293)/'DRAW',   8,   8/
11695      DATA IOPERA( 294),IX( 294),IY( 294)/'DRAW',   7,   3/
11696      DATA IOPERA( 295),IX( 295),IY( 295)/'DRAW',   6,  -4/
11697      DATA IOPERA( 296),IX( 296),IY( 296)/'DRAW',   6,  -8/
11698      DATA IOPERA( 297),IX( 297),IY( 297)/'DRAW',   7,  -9/
11699C
11700      DATA IXMIND(  13)/ -14/
11701      DATA IXMAXD(  13)/  14/
11702      DATA IXDELD(  13)/  28/
11703      DATA ISTARD(  13)/ 255/
11704      DATA NUMCOO(  13)/  43/
11705C
11706C-----START POINT-----------------------------------------------------
11707C
11708      IFOUND='YES'
11709      IERROR='NO'
11710C
11711      NUMCO=1
11712      ISTART=1
11713      ISTOP=1
11714      NC=1
11715C
11716C               ******************************************
11717C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
11718C               **  HERSHEY CHARACTER SET CASE          **
11719C               ******************************************
11720C
11721C
11722      IF(IBUGD2.EQ.'OFF')GOTO90
11723      WRITE(ICOUT,999)
11724  999 FORMAT(1X)
11725      CALL DPWRST('XXX','BUG ')
11726      WRITE(ICOUT,51)
11727   51 FORMAT('***** AT THE BEGINNING OF DRCSU2--')
11728      CALL DPWRST('XXX','BUG ')
11729      WRITE(ICOUT,52)ICHARN
11730   52 FORMAT('ICHARN = ',I8)
11731      CALL DPWRST('XXX','BUG ')
11732      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
11733   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
11734      CALL DPWRST('XXX','BUG ')
11735   90 CONTINUE
11736C
11737C               **************************************
11738C               **  STEP 2--                        **
11739C               **  EXTRACT THE COORDINATES         **
11740C               **  FOR THIS PARTICULAR CHARACTER.  **
11741C               **************************************
11742C
11743      ISTART=ISTARD(ICHARN)
11744      NC=NUMCOO(ICHARN)
11745      ISTOP=ISTART+NC-1
11746      J=0
11747      DO1100I=ISTART,ISTOP
11748      J=J+1
11749      IOP(J)=IOPERA(I)
11750      X(J)=IX(I)
11751      Y(J)=IY(I)
11752 1100 CONTINUE
11753      NUMCO=J
11754      IXMINS=IXMIND(ICHARN)
11755      IXMAXS=IXMAXD(ICHARN)
11756      IXDELS=IXDELD(ICHARN)
11757C
11758      GOTO9000
11759C
11760C               *****************
11761C               **  STEP 90--  **
11762C               **  EXIT       **
11763C               *****************
11764C
11765 9000 CONTINUE
11766      IF(IBUGD2.EQ.'OFF')GOTO9090
11767      WRITE(ICOUT,999)
11768      CALL DPWRST('XXX','BUG ')
11769      WRITE(ICOUT,9011)
11770 9011 FORMAT('***** AT THE END       OF DRCSU2--')
11771      CALL DPWRST('XXX','BUG ')
11772      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
11773 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
11774      CALL DPWRST('XXX','BUG ')
11775      WRITE(ICOUT,9013)ICHARN
11776 9013 FORMAT('ICHARN = ',I8)
11777      CALL DPWRST('XXX','BUG ')
11778      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
11779 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
11780      CALL DPWRST('XXX','BUG ')
11781      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
11782      DO9015I=1,NUMCO
11783      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
11784 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
11785      CALL DPWRST('XXX','BUG ')
11786 9015 CONTINUE
11787 9019 CONTINUE
11788      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
11789 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
11790      CALL DPWRST('XXX','BUG ')
11791 9090 CONTINUE
11792C
11793      RETURN
11794      END
11795      SUBROUTINE DRCSU3(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
11796     1IBUGD2,IFOUND,IERROR)
11797C
11798C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
11799C              FOR ROMAN COMPLEX SCRIPT UPPER CASE (PART 3).
11800C     WRITTEN BY--JAMES J. FILLIBEN
11801C                 STATISTICAL ENGINEERING DIVISION
11802C                 CENTER FOR APPLIED MATHEMATICS
11803C                 NATIONAL BUREAU OF STANDARDS
11804C                 WASHINGTON, D. C. 20234
11805C                 PHONE--301-921-3651
11806C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
11807C           OF THE NATIONAL BUREAU OF STANDARDS.
11808C     LANGUAGE--ANSI FORTRAN (1977)
11809C     VERSION NUMBER--87/4
11810C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
11811C     UPDATED         --MAY       1982.
11812C     UPDATED         --MARCH     1987.
11813C
11814C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
11815C
11816      CHARACTER*4 IOP
11817      CHARACTER*4 IBUGD2
11818      CHARACTER*4 IFOUND
11819      CHARACTER*4 IERROR
11820C
11821      CHARACTER*4 IOPERA
11822C
11823C---------------------------------------------------------------------
11824C
11825      DIMENSION IOP(*)
11826      DIMENSION X(*)
11827      DIMENSION Y(*)
11828C
11829      DIMENSION IOPERA(300)
11830      DIMENSION IX(300)
11831      DIMENSION IY(300)
11832C
11833      DIMENSION IXMIND(30)
11834      DIMENSION IXMAXD(30)
11835      DIMENSION IXDELD(30)
11836      DIMENSION ISTARD(30)
11837      DIMENSION NUMCOO(30)
11838C
11839C-----COMMON----------------------------------------------------------
11840C
11841      INCLUDE 'DPCOP2.INC'
11842C
11843C-----DATA STATEMENTS-------------------------------------------------
11844C
11845C     DEFINE CHARACTER   2564--UPPER CASE N
11846C
11847      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE',   0,  12/
11848      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -1,   8/
11849      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -3,   2/
11850      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -5,  -3/
11851      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -6,  -5/
11852      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -8,  -8/
11853      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW', -10,  -9/
11854      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW', -12,  -9/
11855      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW', -13,  -8/
11856      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW', -13,  -6/
11857      DATA IOPERA(  11),IX(  11),IY(  11)/'DRAW', -12,  -5/
11858      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW', -11,  -6/
11859      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW', -12,  -7/
11860      DATA IOPERA(  14),IX(  14),IY(  14)/'MOVE',   0,  12/
11861      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',   0,   7/
11862      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',   1,  -4/
11863      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',   2,  -9/
11864      DATA IOPERA(  18),IX(  18),IY(  18)/'MOVE',   0,  12/
11865      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',   1,   7/
11866      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   2,  -4/
11867      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   2,  -9/
11868      DATA IOPERA(  22),IX(  22),IY(  22)/'MOVE',  14,  11/
11869      DATA IOPERA(  23),IX(  23),IY(  23)/'DRAW',  13,  10/
11870      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',  14,   9/
11871      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',  15,  10/
11872      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',  15,  11/
11873      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',  14,  12/
11874      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',  12,  12/
11875      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',  10,  11/
11876      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',   8,   8/
11877      DATA IOPERA(  31),IX(  31),IY(  31)/'DRAW',   7,   6/
11878      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   5,   1/
11879      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   3,  -5/
11880      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   2,  -9/
11881C
11882      DATA IXMIND(  14)/ -11/
11883      DATA IXMAXD(  14)/  12/
11884      DATA IXDELD(  14)/  23/
11885      DATA ISTARD(  14)/   1/
11886      DATA NUMCOO(  14)/  34/
11887C
11888C     DEFINE CHARACTER   2565--UPPER CASE O
11889C
11890      DATA IOPERA(  35),IX(  35),IY(  35)/'MOVE',   1,  12/
11891      DATA IOPERA(  36),IX(  36),IY(  36)/'DRAW',  -1,  11/
11892      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -3,   9/
11893      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -5,   6/
11894      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -6,   4/
11895      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -7,   0/
11896      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -7,  -4/
11897      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -6,  -7/
11898      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -5,  -8/
11899      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -3,  -9/
11900      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -1,  -9/
11901      DATA IOPERA(  46),IX(  46),IY(  46)/'DRAW',   2,  -8/
11902      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',   4,  -6/
11903      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',   6,  -3/
11904      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',   7,  -1/
11905      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',   8,   3/
11906      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',   8,   7/
11907      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',   7,  10/
11908      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',   6,  11/
11909      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',   5,  11/
11910      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   3,  10/
11911      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   1,   8/
11912      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',  -1,   4/
11913      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',  -2,  -1/
11914      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',  -2,  -4/
11915      DATA IOPERA(  60),IX(  60),IY(  60)/'MOVE',  -1,  11/
11916      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',  -3,   8/
11917      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',  -5,   4/
11918      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',  -6,   0/
11919      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',  -6,  -4/
11920      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',  -5,  -7/
11921      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',  -3,  -9/
11922C
11923      DATA IXMIND(  15)/ -10/
11924      DATA IXMAXD(  15)/  11/
11925      DATA IXDELD(  15)/  21/
11926      DATA ISTARD(  15)/  35/
11927      DATA NUMCOO(  15)/  32/
11928C
11929C     DEFINE CHARACTER   2566--UPPER CASE P
11930C
11931      DATA IOPERA(  67),IX(  67),IY(  67)/'MOVE',   3,  11/
11932      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   2,  10/
11933      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',   1,   8/
11934      DATA IOPERA(  70),IX(  70),IY(  70)/'DRAW',  -1,   3/
11935      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW',  -3,  -3/
11936      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW',  -4,  -5/
11937      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW',  -6,  -8/
11938      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW',  -8,  -9/
11939      DATA IOPERA(  75),IX(  75),IY(  75)/'MOVE',   2,  10/
11940      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',   1,   7/
11941      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -1,  -1/
11942      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -2,  -4/
11943      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -3,  -6/
11944      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -5,  -8/
11945      DATA IOPERA(  81),IX(  81),IY(  81)/'DRAW',  -8,  -9/
11946      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW', -10,  -9/
11947      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW', -11,  -8/
11948      DATA IOPERA(  84),IX(  84),IY(  84)/'DRAW', -11,  -6/
11949      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW', -10,  -5/
11950      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',  -9,  -6/
11951      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW', -10,  -7/
11952      DATA IOPERA(  88),IX(  88),IY(  88)/'MOVE',  -3,   6/
11953      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -4,   4/
11954      DATA IOPERA(  90),IX(  90),IY(  90)/'DRAW',  -5,   3/
11955      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',  -7,   3/
11956      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',  -8,   4/
11957      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',  -8,   6/
11958      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',  -7,   8/
11959      DATA IOPERA(  95),IX(  95),IY(  95)/'DRAW',  -5,  10/
11960      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',  -3,  11/
11961      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   0,  12/
11962      DATA IOPERA(  98),IX(  98),IY(  98)/'DRAW',   4,  12/
11963      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',   7,  11/
11964      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',   8,  10/
11965      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   9,   8/
11966      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   9,   5/
11967      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   8,   3/
11968      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   7,   2/
11969      DATA IOPERA( 105),IX( 105),IY( 105)/'DRAW',   4,   1/
11970      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',   2,   1/
11971      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',   0,   2/
11972      DATA IOPERA( 108),IX( 108),IY( 108)/'MOVE',   4,  12/
11973      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',   6,  11/
11974      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',   7,  10/
11975      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',   8,   8/
11976      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',   8,   5/
11977      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   7,   3/
11978      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   6,   2/
11979      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   4,   1/
11980C
11981      DATA IXMIND(  16)/ -12/
11982      DATA IXMAXD(  16)/  11/
11983      DATA IXDELD(  16)/  23/
11984      DATA ISTARD(  16)/  67/
11985      DATA NUMCOO(  16)/  49/
11986C
11987C     DEFINE CHARACTER   2567--UPPER CASE Q
11988C
11989      DATA IOPERA( 116),IX( 116),IY( 116)/'MOVE',   3,   8/
11990      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',   3,   6/
11991      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',   2,   4/
11992      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',   1,   3/
11993      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',  -1,   2/
11994      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW',  -3,   2/
11995      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW',  -4,   4/
11996      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW',  -4,   6/
11997      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW',  -3,   9/
11998      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -1,  11/
11999      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW',   2,  12/
12000      DATA IOPERA( 127),IX( 127),IY( 127)/'DRAW',   5,  12/
12001      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   7,  11/
12002      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   8,   9/
12003      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   8,   5/
12004      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   7,   2/
12005      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',   5,  -1/
12006      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',   1,  -5/
12007      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -2,  -7/
12008      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -4,  -8/
12009      DATA IOPERA( 136),IX( 136),IY( 136)/'DRAW',  -7,  -9/
12010      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  -9,  -9/
12011      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW', -10,  -8/
12012      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW', -10,  -6/
12013      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  -9,  -5/
12014      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  -7,  -5/
12015      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',  -5,  -6/
12016      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',  -2,  -8/
12017      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   1,  -9/
12018      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   4,  -9/
12019      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   6,  -8/
12020      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   8,  -6/
12021      DATA IOPERA( 148),IX( 148),IY( 148)/'MOVE',   5,  12/
12022      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   6,  11/
12023      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   7,   9/
12024      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   7,   5/
12025      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   6,   2/
12026      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   4,  -1/
12027      DATA IOPERA( 154),IX( 154),IY( 154)/'DRAW',   1,  -4/
12028      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -3,  -7/
12029      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -7,  -9/
12030C
12031      DATA IXMIND(  17)/ -10/
12032      DATA IXMAXD(  17)/  11/
12033      DATA IXDELD(  17)/  21/
12034      DATA ISTARD(  17)/ 116/
12035      DATA NUMCOO(  17)/  41/
12036C
12037C     DEFINE CHARACTER   2568--UPPER CASE R
12038C
12039      DATA IOPERA( 157),IX( 157),IY( 157)/'MOVE',   3,  11/
12040      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',   2,  10/
12041      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',   1,   8/
12042      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -1,   3/
12043      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -3,  -3/
12044      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -4,  -5/
12045      DATA IOPERA( 163),IX( 163),IY( 163)/'DRAW',  -6,  -8/
12046      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -8,  -9/
12047      DATA IOPERA( 165),IX( 165),IY( 165)/'MOVE',   2,  10/
12048      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',   1,   7/
12049      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -1,  -1/
12050      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',  -2,  -4/
12051      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',  -3,  -6/
12052      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',  -5,  -8/
12053      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',  -8,  -9/
12054      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW', -10,  -9/
12055      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW', -11,  -8/
12056      DATA IOPERA( 174),IX( 174),IY( 174)/'DRAW', -11,  -6/
12057      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW', -10,  -5/
12058      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',  -9,  -6/
12059      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW', -10,  -7/
12060      DATA IOPERA( 178),IX( 178),IY( 178)/'MOVE',  -3,   6/
12061      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',  -4,   4/
12062      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',  -5,   3/
12063      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',  -7,   3/
12064      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',  -8,   4/
12065      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',  -8,   6/
12066      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -7,   8/
12067      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -5,  10/
12068      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -3,  11/
12069      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',   0,  12/
12070      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',   5,  12/
12071      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',   8,  11/
12072      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',   9,   9/
12073      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',   9,   7/
12074      DATA IOPERA( 192),IX( 192),IY( 192)/'DRAW',   8,   5/
12075      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   7,   4/
12076      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   4,   3/
12077      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   0,   3/
12078      DATA IOPERA( 196),IX( 196),IY( 196)/'MOVE',   5,  12/
12079      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   7,  11/
12080      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',   8,   9/
12081      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',   8,   7/
12082      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',   7,   5/
12083      DATA IOPERA( 201),IX( 201),IY( 201)/'DRAW',   6,   4/
12084      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   4,   3/
12085      DATA IOPERA( 203),IX( 203),IY( 203)/'MOVE',   0,   3/
12086      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',   3,   2/
12087      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',   4,   0/
12088      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',   5,  -7/
12089      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',   6,  -9/
12090      DATA IOPERA( 208),IX( 208),IY( 208)/'MOVE',   0,   3/
12091      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',   2,   2/
12092      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',   3,   0/
12093      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   4,  -7/
12094      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   6,  -9/
12095      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   7,  -9/
12096      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   9,  -8/
12097      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',  11,  -6/
12098C
12099      DATA IXMIND(  18)/ -12/
12100      DATA IXMAXD(  18)/  12/
12101      DATA IXDELD(  18)/  24/
12102      DATA ISTARD(  18)/ 157/
12103      DATA NUMCOO(  18)/  59/
12104C
12105C     DEFINE CHARACTER   2569--UPPER CASE S
12106C
12107      DATA IOPERA( 216),IX( 216),IY( 216)/'MOVE',  -4,   9/
12108      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -5,   7/
12109      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -5,   5/
12110      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW',  -4,   3/
12111      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW',  -2,   2/
12112      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW',   1,   2/
12113      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW',   4,   3/
12114      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',   6,   4/
12115      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',   9,   7/
12116      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  10,  10/
12117      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  10,  11/
12118      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   9,  12/
12119      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   8,  12/
12120      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   6,  11/
12121      DATA IOPERA( 230),IX( 230),IY( 230)/'DRAW',   5,  10/
12122      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   4,   8/
12123      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   3,   5/
12124      DATA IOPERA( 233),IX( 233),IY( 233)/'DRAW',   1,  -2/
12125      DATA IOPERA( 234),IX( 234),IY( 234)/'DRAW',   0,  -5/
12126      DATA IOPERA( 235),IX( 235),IY( 235)/'DRAW',  -2,  -8/
12127      DATA IOPERA( 236),IX( 236),IY( 236)/'DRAW',  -4,  -9/
12128      DATA IOPERA( 237),IX( 237),IY( 237)/'MOVE',   4,   8/
12129      DATA IOPERA( 238),IX( 238),IY( 238)/'DRAW',   3,   4/
12130      DATA IOPERA( 239),IX( 239),IY( 239)/'DRAW',   2,  -3/
12131      DATA IOPERA( 240),IX( 240),IY( 240)/'DRAW',   1,  -6/
12132      DATA IOPERA( 241),IX( 241),IY( 241)/'DRAW',  -1,  -8/
12133      DATA IOPERA( 242),IX( 242),IY( 242)/'DRAW',  -4,  -9/
12134      DATA IOPERA( 243),IX( 243),IY( 243)/'DRAW',  -7,  -9/
12135      DATA IOPERA( 244),IX( 244),IY( 244)/'DRAW',  -9,  -8/
12136      DATA IOPERA( 245),IX( 245),IY( 245)/'DRAW', -10,  -6/
12137      DATA IOPERA( 246),IX( 246),IY( 246)/'DRAW', -10,  -5/
12138      DATA IOPERA( 247),IX( 247),IY( 247)/'DRAW',  -9,  -4/
12139      DATA IOPERA( 248),IX( 248),IY( 248)/'DRAW',  -8,  -5/
12140      DATA IOPERA( 249),IX( 249),IY( 249)/'DRAW',  -9,  -6/
12141C
12142      DATA IXMIND(  19)/ -10/
12143      DATA IXMAXD(  19)/  10/
12144      DATA IXDELD(  19)/  20/
12145      DATA ISTARD(  19)/ 216/
12146      DATA NUMCOO(  19)/  34/
12147C
12148C     DEFINE CHARACTER   2570--UPPER CASE T
12149C
12150      DATA IOPERA( 250),IX( 250),IY( 250)/'MOVE',   7,  10/
12151      DATA IOPERA( 251),IX( 251),IY( 251)/'DRAW',   6,   8/
12152      DATA IOPERA( 252),IX( 252),IY( 252)/'DRAW',   4,   3/
12153      DATA IOPERA( 253),IX( 253),IY( 253)/'DRAW',   2,  -3/
12154      DATA IOPERA( 254),IX( 254),IY( 254)/'DRAW',   1,  -5/
12155      DATA IOPERA( 255),IX( 255),IY( 255)/'DRAW',  -1,  -8/
12156      DATA IOPERA( 256),IX( 256),IY( 256)/'DRAW',  -3,  -9/
12157      DATA IOPERA( 257),IX( 257),IY( 257)/'MOVE',   1,   6/
12158      DATA IOPERA( 258),IX( 258),IY( 258)/'DRAW',   0,   4/
12159      DATA IOPERA( 259),IX( 259),IY( 259)/'DRAW',  -2,   3/
12160      DATA IOPERA( 260),IX( 260),IY( 260)/'DRAW',  -4,   3/
12161      DATA IOPERA( 261),IX( 261),IY( 261)/'DRAW',  -5,   5/
12162      DATA IOPERA( 262),IX( 262),IY( 262)/'DRAW',  -5,   7/
12163      DATA IOPERA( 263),IX( 263),IY( 263)/'DRAW',  -4,   9/
12164      DATA IOPERA( 264),IX( 264),IY( 264)/'DRAW',  -2,  11/
12165      DATA IOPERA( 265),IX( 265),IY( 265)/'DRAW',   1,  12/
12166      DATA IOPERA( 266),IX( 266),IY( 266)/'DRAW',  10,  12/
12167      DATA IOPERA( 267),IX( 267),IY( 267)/'DRAW',   8,  11/
12168      DATA IOPERA( 268),IX( 268),IY( 268)/'DRAW',   7,  10/
12169      DATA IOPERA( 269),IX( 269),IY( 269)/'DRAW',   6,   7/
12170      DATA IOPERA( 270),IX( 270),IY( 270)/'DRAW',   4,  -1/
12171      DATA IOPERA( 271),IX( 271),IY( 271)/'DRAW',   3,  -4/
12172      DATA IOPERA( 272),IX( 272),IY( 272)/'DRAW',   2,  -6/
12173      DATA IOPERA( 273),IX( 273),IY( 273)/'DRAW',   0,  -8/
12174      DATA IOPERA( 274),IX( 274),IY( 274)/'DRAW',  -3,  -9/
12175      DATA IOPERA( 275),IX( 275),IY( 275)/'DRAW',  -5,  -9/
12176      DATA IOPERA( 276),IX( 276),IY( 276)/'DRAW',  -7,  -8/
12177      DATA IOPERA( 277),IX( 277),IY( 277)/'DRAW',  -8,  -7/
12178      DATA IOPERA( 278),IX( 278),IY( 278)/'DRAW',  -8,  -6/
12179      DATA IOPERA( 279),IX( 279),IY( 279)/'DRAW',  -7,  -5/
12180      DATA IOPERA( 280),IX( 280),IY( 280)/'DRAW',  -6,  -6/
12181      DATA IOPERA( 281),IX( 281),IY( 281)/'DRAW',  -7,  -7/
12182      DATA IOPERA( 282),IX( 282),IY( 282)/'MOVE',   3,  12/
12183      DATA IOPERA( 283),IX( 283),IY( 283)/'DRAW',   7,  11/
12184      DATA IOPERA( 284),IX( 284),IY( 284)/'DRAW',   8,  11/
12185C
12186      DATA IXMIND(  20)/  -9/
12187      DATA IXMAXD(  20)/   9/
12188      DATA IXDELD(  20)/  18/
12189      DATA ISTARD(  20)/ 250/
12190      DATA NUMCOO(  20)/  35/
12191C
12192C-----START POINT-----------------------------------------------------
12193C
12194      IFOUND='YES'
12195      IERROR='NO'
12196C
12197      NUMCO=1
12198      ISTART=1
12199      ISTOP=1
12200      NC=1
12201C
12202C               ******************************************
12203C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
12204C               **  HERSHEY CHARACTER SET CASE          **
12205C               ******************************************
12206C
12207C
12208      IF(IBUGD2.EQ.'OFF')GOTO90
12209      WRITE(ICOUT,999)
12210  999 FORMAT(1X)
12211      CALL DPWRST('XXX','BUG ')
12212      WRITE(ICOUT,51)
12213   51 FORMAT('***** AT THE BEGINNING OF DRCSU3--')
12214      CALL DPWRST('XXX','BUG ')
12215      WRITE(ICOUT,52)ICHARN
12216   52 FORMAT('ICHARN = ',I8)
12217      CALL DPWRST('XXX','BUG ')
12218      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
12219   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
12220      CALL DPWRST('XXX','BUG ')
12221   90 CONTINUE
12222C
12223C               **************************************
12224C               **  STEP 2--                        **
12225C               **  EXTRACT THE COORDINATES         **
12226C               **  FOR THIS PARTICULAR CHARACTER.  **
12227C               **************************************
12228C
12229      ISTART=ISTARD(ICHARN)
12230      NC=NUMCOO(ICHARN)
12231      ISTOP=ISTART+NC-1
12232      J=0
12233      DO1100I=ISTART,ISTOP
12234      J=J+1
12235      IOP(J)=IOPERA(I)
12236      X(J)=IX(I)
12237      Y(J)=IY(I)
12238 1100 CONTINUE
12239      NUMCO=J
12240      IXMINS=IXMIND(ICHARN)
12241      IXMAXS=IXMAXD(ICHARN)
12242      IXDELS=IXDELD(ICHARN)
12243C
12244      GOTO9000
12245C
12246C               *****************
12247C               **  STEP 90--  **
12248C               **  EXIT       **
12249C               *****************
12250C
12251 9000 CONTINUE
12252      IF(IBUGD2.EQ.'OFF')GOTO9090
12253      WRITE(ICOUT,999)
12254      CALL DPWRST('XXX','BUG ')
12255      WRITE(ICOUT,9011)
12256 9011 FORMAT('***** AT THE END       OF DRCSU3--')
12257      CALL DPWRST('XXX','BUG ')
12258      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
12259 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
12260      CALL DPWRST('XXX','BUG ')
12261      WRITE(ICOUT,9013)ICHARN
12262 9013 FORMAT('ICHARN = ',I8)
12263      CALL DPWRST('XXX','BUG ')
12264      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
12265 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
12266      CALL DPWRST('XXX','BUG ')
12267      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
12268      DO9015I=1,NUMCO
12269      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
12270 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
12271      CALL DPWRST('XXX','BUG ')
12272 9015 CONTINUE
12273 9019 CONTINUE
12274      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
12275 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
12276      CALL DPWRST('XXX','BUG ')
12277 9090 CONTINUE
12278C
12279      RETURN
12280      END
12281      SUBROUTINE DRCSU4(ICHARN,IOP,X,Y,NUMCO,IXMINS,IXMAXS,IXDELS,
12282     1IBUGD2,IFOUND,IERROR)
12283C
12284C     PURPOSE--DEFINE AND SET THE HERSHEY CHARACTER SET COORDINATES
12285C              FOR ROMAN COMPLEX SCRIPT UPPER CASE (PART 4).
12286C     WRITTEN BY--JAMES J. FILLIBEN
12287C                 STATISTICAL ENGINEERING DIVISION
12288C                 CENTER FOR APPLIED MATHEMATICS
12289C                 NATIONAL BUREAU OF STANDARDS
12290C                 WASHINGTON, D. C. 20234
12291C                 PHONE--301-921-3651
12292C     NOTE--DATAPLOT IS A REGISTERED TRADEMARK
12293C           OF THE NATIONAL BUREAU OF STANDARDS.
12294C     LANGUAGE--ANSI FORTRAN (1977)
12295C     VERSION NUMBER--87/4
12296C     ORIGINAL VERSION (AS A SEPARATE SUBROUTINE)--MARCH     1981.
12297C     UPDATED         --MAY       1982.
12298C     UPDATED         --MARCH     1987.
12299C
12300C-----CHARACTER STATEMENTS FOR NON-COMMON VARIABLES-------------------
12301C
12302      CHARACTER*4 IOP
12303      CHARACTER*4 IBUGD2
12304      CHARACTER*4 IFOUND
12305      CHARACTER*4 IERROR
12306C
12307      CHARACTER*4 IOPERA
12308C
12309C---------------------------------------------------------------------
12310C
12311      DIMENSION IOP(*)
12312      DIMENSION X(*)
12313      DIMENSION Y(*)
12314C
12315      DIMENSION IOPERA(300)
12316      DIMENSION IX(300)
12317      DIMENSION IY(300)
12318C
12319      DIMENSION IXMIND(30)
12320      DIMENSION IXMAXD(30)
12321      DIMENSION IXDELD(30)
12322      DIMENSION ISTARD(30)
12323      DIMENSION NUMCOO(30)
12324C
12325C-----COMMON----------------------------------------------------------
12326C
12327      INCLUDE 'DPCOP2.INC'
12328C
12329C-----DATA STATEMENTS-------------------------------------------------
12330C
12331C     DEFINE CHARACTER   2571--UPPER CASE U
12332C
12333      DATA IOPERA(   1),IX(   1),IY(   1)/'MOVE', -10,   8/
12334      DATA IOPERA(   2),IX(   2),IY(   2)/'DRAW',  -8,  11/
12335      DATA IOPERA(   3),IX(   3),IY(   3)/'DRAW',  -6,  12/
12336      DATA IOPERA(   4),IX(   4),IY(   4)/'DRAW',  -5,  12/
12337      DATA IOPERA(   5),IX(   5),IY(   5)/'DRAW',  -3,  10/
12338      DATA IOPERA(   6),IX(   6),IY(   6)/'DRAW',  -3,   7/
12339      DATA IOPERA(   7),IX(   7),IY(   7)/'DRAW',  -4,   4/
12340      DATA IOPERA(   8),IX(   8),IY(   8)/'DRAW',  -7,  -4/
12341      DATA IOPERA(   9),IX(   9),IY(   9)/'DRAW',  -7,  -7/
12342      DATA IOPERA(  10),IX(  10),IY(  10)/'DRAW',  -6,  -9/
12343      DATA IOPERA(  11),IX(  11),IY(  11)/'MOVE',  -5,  12/
12344      DATA IOPERA(  12),IX(  12),IY(  12)/'DRAW',  -4,  10/
12345      DATA IOPERA(  13),IX(  13),IY(  13)/'DRAW',  -4,   7/
12346      DATA IOPERA(  14),IX(  14),IY(  14)/'DRAW',  -7,  -1/
12347      DATA IOPERA(  15),IX(  15),IY(  15)/'DRAW',  -8,  -4/
12348      DATA IOPERA(  16),IX(  16),IY(  16)/'DRAW',  -8,  -7/
12349      DATA IOPERA(  17),IX(  17),IY(  17)/'DRAW',  -6,  -9/
12350      DATA IOPERA(  18),IX(  18),IY(  18)/'DRAW',  -4,  -9/
12351      DATA IOPERA(  19),IX(  19),IY(  19)/'DRAW',  -2,  -8/
12352      DATA IOPERA(  20),IX(  20),IY(  20)/'DRAW',   1,  -5/
12353      DATA IOPERA(  21),IX(  21),IY(  21)/'DRAW',   3,  -2/
12354      DATA IOPERA(  22),IX(  22),IY(  22)/'DRAW',   4,   0/
12355      DATA IOPERA(  23),IX(  23),IY(  23)/'MOVE',   8,  12/
12356      DATA IOPERA(  24),IX(  24),IY(  24)/'DRAW',   4,   0/
12357      DATA IOPERA(  25),IX(  25),IY(  25)/'DRAW',   3,  -4/
12358      DATA IOPERA(  26),IX(  26),IY(  26)/'DRAW',   3,  -7/
12359      DATA IOPERA(  27),IX(  27),IY(  27)/'DRAW',   5,  -9/
12360      DATA IOPERA(  28),IX(  28),IY(  28)/'DRAW',   6,  -9/
12361      DATA IOPERA(  29),IX(  29),IY(  29)/'DRAW',   8,  -8/
12362      DATA IOPERA(  30),IX(  30),IY(  30)/'DRAW',  10,  -6/
12363      DATA IOPERA(  31),IX(  31),IY(  31)/'MOVE',   9,  12/
12364      DATA IOPERA(  32),IX(  32),IY(  32)/'DRAW',   5,   0/
12365      DATA IOPERA(  33),IX(  33),IY(  33)/'DRAW',   4,  -4/
12366      DATA IOPERA(  34),IX(  34),IY(  34)/'DRAW',   4,  -7/
12367      DATA IOPERA(  35),IX(  35),IY(  35)/'DRAW',   5,  -9/
12368C
12369      DATA IXMIND(  21)/ -11/
12370      DATA IXMAXD(  21)/  11/
12371      DATA IXDELD(  21)/  22/
12372      DATA ISTARD(  21)/   1/
12373      DATA NUMCOO(  21)/  35/
12374C
12375C     DEFINE CHARACTER   2572--UPPER CASE V
12376C
12377      DATA IOPERA(  36),IX(  36),IY(  36)/'MOVE', -10,   8/
12378      DATA IOPERA(  37),IX(  37),IY(  37)/'DRAW',  -8,  11/
12379      DATA IOPERA(  38),IX(  38),IY(  38)/'DRAW',  -6,  12/
12380      DATA IOPERA(  39),IX(  39),IY(  39)/'DRAW',  -5,  12/
12381      DATA IOPERA(  40),IX(  40),IY(  40)/'DRAW',  -3,  10/
12382      DATA IOPERA(  41),IX(  41),IY(  41)/'DRAW',  -3,   7/
12383      DATA IOPERA(  42),IX(  42),IY(  42)/'DRAW',  -4,   3/
12384      DATA IOPERA(  43),IX(  43),IY(  43)/'DRAW',  -6,  -4/
12385      DATA IOPERA(  44),IX(  44),IY(  44)/'DRAW',  -6,  -7/
12386      DATA IOPERA(  45),IX(  45),IY(  45)/'DRAW',  -5,  -9/
12387      DATA IOPERA(  46),IX(  46),IY(  46)/'MOVE',  -5,  12/
12388      DATA IOPERA(  47),IX(  47),IY(  47)/'DRAW',  -4,  10/
12389      DATA IOPERA(  48),IX(  48),IY(  48)/'DRAW',  -4,   7/
12390      DATA IOPERA(  49),IX(  49),IY(  49)/'DRAW',  -6,   0/
12391      DATA IOPERA(  50),IX(  50),IY(  50)/'DRAW',  -7,  -4/
12392      DATA IOPERA(  51),IX(  51),IY(  51)/'DRAW',  -7,  -7/
12393      DATA IOPERA(  52),IX(  52),IY(  52)/'DRAW',  -5,  -9/
12394      DATA IOPERA(  53),IX(  53),IY(  53)/'DRAW',  -4,  -9/
12395      DATA IOPERA(  54),IX(  54),IY(  54)/'DRAW',  -1,  -8/
12396      DATA IOPERA(  55),IX(  55),IY(  55)/'DRAW',   2,  -5/
12397      DATA IOPERA(  56),IX(  56),IY(  56)/'DRAW',   4,  -2/
12398      DATA IOPERA(  57),IX(  57),IY(  57)/'DRAW',   6,   2/
12399      DATA IOPERA(  58),IX(  58),IY(  58)/'DRAW',   7,   5/
12400      DATA IOPERA(  59),IX(  59),IY(  59)/'DRAW',   8,   9/
12401      DATA IOPERA(  60),IX(  60),IY(  60)/'DRAW',   8,  11/
12402      DATA IOPERA(  61),IX(  61),IY(  61)/'DRAW',   7,  12/
12403      DATA IOPERA(  62),IX(  62),IY(  62)/'DRAW',   6,  12/
12404      DATA IOPERA(  63),IX(  63),IY(  63)/'DRAW',   5,  11/
12405      DATA IOPERA(  64),IX(  64),IY(  64)/'DRAW',   4,   9/
12406      DATA IOPERA(  65),IX(  65),IY(  65)/'DRAW',   4,   6/
12407      DATA IOPERA(  66),IX(  66),IY(  66)/'DRAW',   5,   4/
12408      DATA IOPERA(  67),IX(  67),IY(  67)/'DRAW',   7,   2/
12409      DATA IOPERA(  68),IX(  68),IY(  68)/'DRAW',   9,   1/
12410      DATA IOPERA(  69),IX(  69),IY(  69)/'DRAW',  11,   1/
12411C
12412      DATA IXMIND(  22)/ -11/
12413      DATA IXMAXD(  22)/  10/
12414      DATA IXDELD(  22)/  21/
12415      DATA ISTARD(  22)/  36/
12416      DATA NUMCOO(  22)/  34/
12417C
12418C     DEFINE CHARACTER   2573--UPPER CASE W
12419C
12420      DATA IOPERA(  70),IX(  70),IY(  70)/'MOVE',  -9,   6/
12421      DATA IOPERA(  71),IX(  71),IY(  71)/'DRAW', -10,   6/
12422      DATA IOPERA(  72),IX(  72),IY(  72)/'DRAW', -11,   7/
12423      DATA IOPERA(  73),IX(  73),IY(  73)/'DRAW', -11,   9/
12424      DATA IOPERA(  74),IX(  74),IY(  74)/'DRAW', -10,  11/
12425      DATA IOPERA(  75),IX(  75),IY(  75)/'DRAW',  -8,  12/
12426      DATA IOPERA(  76),IX(  76),IY(  76)/'DRAW',  -4,  12/
12427      DATA IOPERA(  77),IX(  77),IY(  77)/'DRAW',  -5,  10/
12428      DATA IOPERA(  78),IX(  78),IY(  78)/'DRAW',  -6,   6/
12429      DATA IOPERA(  79),IX(  79),IY(  79)/'DRAW',  -7,  -3/
12430      DATA IOPERA(  80),IX(  80),IY(  80)/'DRAW',  -8,  -9/
12431      DATA IOPERA(  81),IX(  81),IY(  81)/'MOVE',  -6,   6/
12432      DATA IOPERA(  82),IX(  82),IY(  82)/'DRAW',  -6,  -3/
12433      DATA IOPERA(  83),IX(  83),IY(  83)/'DRAW',  -7,  -9/
12434      DATA IOPERA(  84),IX(  84),IY(  84)/'MOVE',   4,  12/
12435      DATA IOPERA(  85),IX(  85),IY(  85)/'DRAW',   2,  10/
12436      DATA IOPERA(  86),IX(  86),IY(  86)/'DRAW',   0,   6/
12437      DATA IOPERA(  87),IX(  87),IY(  87)/'DRAW',  -3,  -3/
12438      DATA IOPERA(  88),IX(  88),IY(  88)/'DRAW',  -5,  -7/
12439      DATA IOPERA(  89),IX(  89),IY(  89)/'DRAW',  -7,  -9/
12440      DATA IOPERA(  90),IX(  90),IY(  90)/'MOVE',   4,  12/
12441      DATA IOPERA(  91),IX(  91),IY(  91)/'DRAW',   3,  10/
12442      DATA IOPERA(  92),IX(  92),IY(  92)/'DRAW',   2,   6/
12443      DATA IOPERA(  93),IX(  93),IY(  93)/'DRAW',   1,  -3/
12444      DATA IOPERA(  94),IX(  94),IY(  94)/'DRAW',   0,  -9/
12445      DATA IOPERA(  95),IX(  95),IY(  95)/'MOVE',   2,   6/
12446      DATA IOPERA(  96),IX(  96),IY(  96)/'DRAW',   2,  -3/
12447      DATA IOPERA(  97),IX(  97),IY(  97)/'DRAW',   1,  -9/
12448      DATA IOPERA(  98),IX(  98),IY(  98)/'MOVE',  14,  12/
12449      DATA IOPERA(  99),IX(  99),IY(  99)/'DRAW',  12,  11/
12450      DATA IOPERA( 100),IX( 100),IY( 100)/'DRAW',  10,   9/
12451      DATA IOPERA( 101),IX( 101),IY( 101)/'DRAW',   8,   6/
12452      DATA IOPERA( 102),IX( 102),IY( 102)/'DRAW',   5,  -3/
12453      DATA IOPERA( 103),IX( 103),IY( 103)/'DRAW',   3,  -7/
12454      DATA IOPERA( 104),IX( 104),IY( 104)/'DRAW',   1,  -9/
12455C
12456      DATA IXMIND(  23)/ -12/
12457      DATA IXMAXD(  23)/  11/
12458      DATA IXDELD(  23)/  23/
12459      DATA ISTARD(  23)/  70/
12460      DATA NUMCOO(  23)/  35/
12461C
12462C     DEFINE CHARACTER   2574--UPPER CASE X
12463C
12464      DATA IOPERA( 105),IX( 105),IY( 105)/'MOVE',  -2,   7/
12465      DATA IOPERA( 106),IX( 106),IY( 106)/'DRAW',  -3,   6/
12466      DATA IOPERA( 107),IX( 107),IY( 107)/'DRAW',  -5,   6/
12467      DATA IOPERA( 108),IX( 108),IY( 108)/'DRAW',  -6,   7/
12468      DATA IOPERA( 109),IX( 109),IY( 109)/'DRAW',  -6,   9/
12469      DATA IOPERA( 110),IX( 110),IY( 110)/'DRAW',  -5,  11/
12470      DATA IOPERA( 111),IX( 111),IY( 111)/'DRAW',  -3,  12/
12471      DATA IOPERA( 112),IX( 112),IY( 112)/'DRAW',  -1,  12/
12472      DATA IOPERA( 113),IX( 113),IY( 113)/'DRAW',   1,  11/
12473      DATA IOPERA( 114),IX( 114),IY( 114)/'DRAW',   2,   9/
12474      DATA IOPERA( 115),IX( 115),IY( 115)/'DRAW',   2,   6/
12475      DATA IOPERA( 116),IX( 116),IY( 116)/'DRAW',   1,   2/
12476      DATA IOPERA( 117),IX( 117),IY( 117)/'DRAW',  -1,  -3/
12477      DATA IOPERA( 118),IX( 118),IY( 118)/'DRAW',  -3,  -6/
12478      DATA IOPERA( 119),IX( 119),IY( 119)/'DRAW',  -5,  -8/
12479      DATA IOPERA( 120),IX( 120),IY( 120)/'DRAW',  -8,  -9/
12480      DATA IOPERA( 121),IX( 121),IY( 121)/'DRAW', -10,  -9/
12481      DATA IOPERA( 122),IX( 122),IY( 122)/'DRAW', -11,  -8/
12482      DATA IOPERA( 123),IX( 123),IY( 123)/'DRAW', -11,  -6/
12483      DATA IOPERA( 124),IX( 124),IY( 124)/'DRAW', -10,  -5/
12484      DATA IOPERA( 125),IX( 125),IY( 125)/'DRAW',  -9,  -6/
12485      DATA IOPERA( 126),IX( 126),IY( 126)/'DRAW', -10,  -7/
12486      DATA IOPERA( 127),IX( 127),IY( 127)/'MOVE',  -1,  12/
12487      DATA IOPERA( 128),IX( 128),IY( 128)/'DRAW',   0,  11/
12488      DATA IOPERA( 129),IX( 129),IY( 129)/'DRAW',   1,   9/
12489      DATA IOPERA( 130),IX( 130),IY( 130)/'DRAW',   1,   6/
12490      DATA IOPERA( 131),IX( 131),IY( 131)/'DRAW',   0,   2/
12491      DATA IOPERA( 132),IX( 132),IY( 132)/'DRAW',  -2,  -3/
12492      DATA IOPERA( 133),IX( 133),IY( 133)/'DRAW',  -4,  -6/
12493      DATA IOPERA( 134),IX( 134),IY( 134)/'DRAW',  -6,  -8/
12494      DATA IOPERA( 135),IX( 135),IY( 135)/'DRAW',  -8,  -9/
12495      DATA IOPERA( 136),IX( 136),IY( 136)/'MOVE',  11,  11/
12496      DATA IOPERA( 137),IX( 137),IY( 137)/'DRAW',  10,  10/
12497      DATA IOPERA( 138),IX( 138),IY( 138)/'DRAW',  11,   9/
12498      DATA IOPERA( 139),IX( 139),IY( 139)/'DRAW',  12,  10/
12499      DATA IOPERA( 140),IX( 140),IY( 140)/'DRAW',  12,  11/
12500      DATA IOPERA( 141),IX( 141),IY( 141)/'DRAW',  11,  12/
12501      DATA IOPERA( 142),IX( 142),IY( 142)/'DRAW',   9,  12/
12502      DATA IOPERA( 143),IX( 143),IY( 143)/'DRAW',   7,  11/
12503      DATA IOPERA( 144),IX( 144),IY( 144)/'DRAW',   5,   9/
12504      DATA IOPERA( 145),IX( 145),IY( 145)/'DRAW',   3,   6/
12505      DATA IOPERA( 146),IX( 146),IY( 146)/'DRAW',   1,   2/
12506      DATA IOPERA( 147),IX( 147),IY( 147)/'DRAW',   0,  -3/
12507      DATA IOPERA( 148),IX( 148),IY( 148)/'DRAW',   0,  -6/
12508      DATA IOPERA( 149),IX( 149),IY( 149)/'DRAW',   1,  -8/
12509      DATA IOPERA( 150),IX( 150),IY( 150)/'DRAW',   2,  -9/
12510      DATA IOPERA( 151),IX( 151),IY( 151)/'DRAW',   3,  -9/
12511      DATA IOPERA( 152),IX( 152),IY( 152)/'DRAW',   5,  -8/
12512      DATA IOPERA( 153),IX( 153),IY( 153)/'DRAW',   7,  -6/
12513C
12514      DATA IXMIND(  24)/ -10/
12515      DATA IXMAXD(  24)/  10/
12516      DATA IXDELD(  24)/  20/
12517      DATA ISTARD(  24)/ 105/
12518      DATA NUMCOO(  24)/  49/
12519C
12520C     DEFINE CHARACTER   2575--UPPER CASE Y
12521C
12522      DATA IOPERA( 154),IX( 154),IY( 154)/'MOVE',  -8,   8/
12523      DATA IOPERA( 155),IX( 155),IY( 155)/'DRAW',  -6,  11/
12524      DATA IOPERA( 156),IX( 156),IY( 156)/'DRAW',  -4,  12/
12525      DATA IOPERA( 157),IX( 157),IY( 157)/'DRAW',  -3,  12/
12526      DATA IOPERA( 158),IX( 158),IY( 158)/'DRAW',  -1,  11/
12527      DATA IOPERA( 159),IX( 159),IY( 159)/'DRAW',  -1,   9/
12528      DATA IOPERA( 160),IX( 160),IY( 160)/'DRAW',  -3,   3/
12529      DATA IOPERA( 161),IX( 161),IY( 161)/'DRAW',  -3,   0/
12530      DATA IOPERA( 162),IX( 162),IY( 162)/'DRAW',  -2,  -2/
12531      DATA IOPERA( 163),IX( 163),IY( 163)/'MOVE',  -3,  12/
12532      DATA IOPERA( 164),IX( 164),IY( 164)/'DRAW',  -2,  11/
12533      DATA IOPERA( 165),IX( 165),IY( 165)/'DRAW',  -2,   9/
12534      DATA IOPERA( 166),IX( 166),IY( 166)/'DRAW',  -4,   3/
12535      DATA IOPERA( 167),IX( 167),IY( 167)/'DRAW',  -4,   0/
12536      DATA IOPERA( 168),IX( 168),IY( 168)/'DRAW',  -2,  -2/
12537      DATA IOPERA( 169),IX( 169),IY( 169)/'DRAW',   0,  -2/
12538      DATA IOPERA( 170),IX( 170),IY( 170)/'DRAW',   3,  -1/
12539      DATA IOPERA( 171),IX( 171),IY( 171)/'DRAW',   5,   1/
12540      DATA IOPERA( 172),IX( 172),IY( 172)/'DRAW',   7,   4/
12541      DATA IOPERA( 173),IX( 173),IY( 173)/'DRAW',   8,   6/
12542      DATA IOPERA( 174),IX( 174),IY( 174)/'MOVE',  10,  12/
12543      DATA IOPERA( 175),IX( 175),IY( 175)/'DRAW',   8,   6/
12544      DATA IOPERA( 176),IX( 176),IY( 176)/'DRAW',   5,  -2/
12545      DATA IOPERA( 177),IX( 177),IY( 177)/'DRAW',   3,  -6/
12546      DATA IOPERA( 178),IX( 178),IY( 178)/'MOVE',  11,  12/
12547      DATA IOPERA( 179),IX( 179),IY( 179)/'DRAW',   9,   6/
12548      DATA IOPERA( 180),IX( 180),IY( 180)/'DRAW',   7,   1/
12549      DATA IOPERA( 181),IX( 181),IY( 181)/'DRAW',   5,  -3/
12550      DATA IOPERA( 182),IX( 182),IY( 182)/'DRAW',   3,  -6/
12551      DATA IOPERA( 183),IX( 183),IY( 183)/'DRAW',   1,  -8/
12552      DATA IOPERA( 184),IX( 184),IY( 184)/'DRAW',  -2,  -9/
12553      DATA IOPERA( 185),IX( 185),IY( 185)/'DRAW',  -6,  -9/
12554      DATA IOPERA( 186),IX( 186),IY( 186)/'DRAW',  -8,  -8/
12555      DATA IOPERA( 187),IX( 187),IY( 187)/'DRAW',  -9,  -6/
12556      DATA IOPERA( 188),IX( 188),IY( 188)/'DRAW',  -9,  -5/
12557      DATA IOPERA( 189),IX( 189),IY( 189)/'DRAW',  -8,  -4/
12558      DATA IOPERA( 190),IX( 190),IY( 190)/'DRAW',  -7,  -5/
12559      DATA IOPERA( 191),IX( 191),IY( 191)/'DRAW',  -8,  -6/
12560C
12561      DATA IXMIND(  25)/ -11/
12562      DATA IXMAXD(  25)/  11/
12563      DATA IXDELD(  25)/  22/
12564      DATA ISTARD(  25)/ 154/
12565      DATA NUMCOO(  25)/  38/
12566C
12567C     DEFINE CHARACTER   2576--UPPER CASE Z
12568C
12569      DATA IOPERA( 192),IX( 192),IY( 192)/'MOVE',   8,  10/
12570      DATA IOPERA( 193),IX( 193),IY( 193)/'DRAW',   7,   8/
12571      DATA IOPERA( 194),IX( 194),IY( 194)/'DRAW',   5,   3/
12572      DATA IOPERA( 195),IX( 195),IY( 195)/'DRAW',   4,   0/
12573      DATA IOPERA( 196),IX( 196),IY( 196)/'DRAW',   3,  -2/
12574      DATA IOPERA( 197),IX( 197),IY( 197)/'DRAW',   1,  -5/
12575      DATA IOPERA( 198),IX( 198),IY( 198)/'DRAW',  -1,  -7/
12576      DATA IOPERA( 199),IX( 199),IY( 199)/'DRAW',  -3,  -8/
12577      DATA IOPERA( 200),IX( 200),IY( 200)/'DRAW',  -6,  -9/
12578      DATA IOPERA( 201),IX( 201),IY( 201)/'MOVE',   1,   6/
12579      DATA IOPERA( 202),IX( 202),IY( 202)/'DRAW',   0,   4/
12580      DATA IOPERA( 203),IX( 203),IY( 203)/'DRAW',  -2,   3/
12581      DATA IOPERA( 204),IX( 204),IY( 204)/'DRAW',  -4,   3/
12582      DATA IOPERA( 205),IX( 205),IY( 205)/'DRAW',  -5,   5/
12583      DATA IOPERA( 206),IX( 206),IY( 206)/'DRAW',  -5,   7/
12584      DATA IOPERA( 207),IX( 207),IY( 207)/'DRAW',  -4,   9/
12585      DATA IOPERA( 208),IX( 208),IY( 208)/'DRAW',  -2,  11/
12586      DATA IOPERA( 209),IX( 209),IY( 209)/'DRAW',   1,  12/
12587      DATA IOPERA( 210),IX( 210),IY( 210)/'DRAW',  11,  12/
12588      DATA IOPERA( 211),IX( 211),IY( 211)/'DRAW',   9,  11/
12589      DATA IOPERA( 212),IX( 212),IY( 212)/'DRAW',   8,  10/
12590      DATA IOPERA( 213),IX( 213),IY( 213)/'DRAW',   7,   7/
12591      DATA IOPERA( 214),IX( 214),IY( 214)/'DRAW',   6,   3/
12592      DATA IOPERA( 215),IX( 215),IY( 215)/'DRAW',   4,  -3/
12593      DATA IOPERA( 216),IX( 216),IY( 216)/'DRAW',   2,  -6/
12594      DATA IOPERA( 217),IX( 217),IY( 217)/'DRAW',  -1,  -8/
12595      DATA IOPERA( 218),IX( 218),IY( 218)/'DRAW',  -6,  -9/
12596      DATA IOPERA( 219),IX( 219),IY( 219)/'DRAW', -10,  -9/
12597      DATA IOPERA( 220),IX( 220),IY( 220)/'DRAW', -11,  -8/
12598      DATA IOPERA( 221),IX( 221),IY( 221)/'DRAW', -11,  -6/
12599      DATA IOPERA( 222),IX( 222),IY( 222)/'DRAW', -10,  -5/
12600      DATA IOPERA( 223),IX( 223),IY( 223)/'DRAW',  -8,  -5/
12601      DATA IOPERA( 224),IX( 224),IY( 224)/'DRAW',  -6,  -6/
12602      DATA IOPERA( 225),IX( 225),IY( 225)/'DRAW',  -3,  -8/
12603      DATA IOPERA( 226),IX( 226),IY( 226)/'DRAW',  -1,  -9/
12604      DATA IOPERA( 227),IX( 227),IY( 227)/'DRAW',   2,  -9/
12605      DATA IOPERA( 228),IX( 228),IY( 228)/'DRAW',   5,  -8/
12606      DATA IOPERA( 229),IX( 229),IY( 229)/'DRAW',   7,  -6/
12607      DATA IOPERA( 230),IX( 230),IY( 230)/'MOVE',   4,  12/
12608      DATA IOPERA( 231),IX( 231),IY( 231)/'DRAW',   8,  11/
12609      DATA IOPERA( 232),IX( 232),IY( 232)/'DRAW',   9,  11/
12610C
12611      DATA IXMIND(  26)/ -11/
12612      DATA IXMAXD(  26)/  10/
12613      DATA IXDELD(  26)/  21/
12614      DATA ISTARD(  26)/ 192/
12615      DATA NUMCOO(  26)/  41/
12616C
12617C-----START POINT-----------------------------------------------------
12618C
12619      IFOUND='YES'
12620      IERROR='NO'
12621C
12622      NUMCO=1
12623      ISTART=1
12624      ISTOP=1
12625      NC=1
12626C
12627C               ******************************************
12628C               **  TREAT THE ROMAN SIMPLEX UPPER CASE  **
12629C               **  HERSHEY CHARACTER SET CASE          **
12630C               ******************************************
12631C
12632C
12633      IF(IBUGD2.EQ.'OFF')GOTO90
12634      WRITE(ICOUT,999)
12635  999 FORMAT(1X)
12636      CALL DPWRST('XXX','BUG ')
12637      WRITE(ICOUT,51)
12638   51 FORMAT('***** AT THE BEGINNING OF DRCSU4--')
12639      CALL DPWRST('XXX','BUG ')
12640      WRITE(ICOUT,52)ICHARN
12641   52 FORMAT('ICHARN = ',I8)
12642      CALL DPWRST('XXX','BUG ')
12643      WRITE(ICOUT,59)IBUGD2,IFOUND,IERROR
12644   59 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
12645      CALL DPWRST('XXX','BUG ')
12646   90 CONTINUE
12647C
12648C               **************************************
12649C               **  STEP 2--                        **
12650C               **  EXTRACT THE COORDINATES         **
12651C               **  FOR THIS PARTICULAR CHARACTER.  **
12652C               **************************************
12653C
12654      ISTART=ISTARD(ICHARN)
12655      NC=NUMCOO(ICHARN)
12656      ISTOP=ISTART+NC-1
12657      J=0
12658      DO1100I=ISTART,ISTOP
12659      J=J+1
12660      IOP(J)=IOPERA(I)
12661      X(J)=IX(I)
12662      Y(J)=IY(I)
12663 1100 CONTINUE
12664      NUMCO=J
12665      IXMINS=IXMIND(ICHARN)
12666      IXMAXS=IXMAXD(ICHARN)
12667      IXDELS=IXDELD(ICHARN)
12668C
12669      GOTO9000
12670C
12671C               *****************
12672C               **  STEP 90--  **
12673C               **  EXIT       **
12674C               *****************
12675C
12676 9000 CONTINUE
12677      IF(IBUGD2.EQ.'OFF')GOTO9090
12678      WRITE(ICOUT,999)
12679      CALL DPWRST('XXX','BUG ')
12680      WRITE(ICOUT,9011)
12681 9011 FORMAT('***** AT THE END       OF DRCSU4--')
12682      CALL DPWRST('XXX','BUG ')
12683      WRITE(ICOUT,9012)IBUGD2,IFOUND,IERROR
12684 9012 FORMAT('IBUGD2,IFOUND,IERROR = ',A4,2X,A4,2X,A4)
12685      CALL DPWRST('XXX','BUG ')
12686      WRITE(ICOUT,9013)ICHARN
12687 9013 FORMAT('ICHARN = ',I8)
12688      CALL DPWRST('XXX','BUG ')
12689      WRITE(ICOUT,9014)ISTART,ISTOP,NC,NUMCO
12690 9014 FORMAT('ISTART,ISTOP,NC,NUMCO = ',4I8)
12691      CALL DPWRST('XXX','BUG ')
12692      IF(NUMCO.GE.1.AND.NUMCO.LE.1000)GOTO9019
12693      DO9015I=1,NUMCO
12694      WRITE(ICOUT,9016)I,IOP(I),X(I),Y(I)
12695 9016 FORMAT('I,IOP(I),X(I),Y(I) = ',I8,2X,A4,2F10.2)
12696      CALL DPWRST('XXX','BUG ')
12697 9015 CONTINUE
12698 9019 CONTINUE
12699      WRITE(ICOUT,9021)IXMINS,IXMAXS,IXDELS
12700 9021 FORMAT('IXMINS,IXMAXS,IXDELS = ',3I8)
12701      CALL DPWRST('XXX','BUG ')
12702 9090 CONTINUE
12703C
12704      RETURN
12705      END
12706