Skip to content

AFNI/NIfTI Server

Sections
Personal tools
You are here: Home » AFNI » Documentation

Doxygen Source Code Documentation


Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals   Search  

pwritf.c

Go to the documentation of this file.
00001 /* pwritf.f -- translated by f2c (version 19961017).
00002    You must link the resulting object file with the libraries:
00003         -lf2c -lm   (in that order)
00004 */
00005 
00006 #include "f2c.h"
00007 
00008 /* Common Block Declarations */
00009 
00010 extern struct {
00011     real xpgmin, ypgmin, xpgmax, ypgmax, xclbot, yclbot, xcltop, ycltop, xbot,
00012              ybot, xtop, ytop, xmin, ymin, xmax, ymax;
00013     integer ixcoor, iycoor;
00014     real alphxx, betaxx, alphyy, betayy, tmajx, tminx, tmajy, tminy;
00015     integer majrx, minrx, majry, minry, isizx, isizy;
00016     real xphold, yphold;
00017 } zzzplt_;
00018 
00019 #define zzzplt_1 zzzplt_
00020 
00021 extern struct {
00022     real xphmax, yphmax;
00023     integer ixpmax, iypmax;
00024     real xpscal, ypscal;
00025     integer iflip, nplotr;
00026     char cfile[64];
00027 } zzpltr_;
00028 
00029 #define zzpltr_1 zzpltr_
00030 
00031 
00032 
00033 
00034 /* Subroutine */ int pwritf_(real *x, real *y, char *ch, integer *nch, 
00035         integer *isiz, integer *ior, integer *icent, ftnlen ch_len)
00036 {
00037     /* System generated locals */
00038     integer i__1, i__2;
00039     real r__1, r__2;
00040 
00041     /* Local variables */
00042     static real xold, yold, size, xorg, yorg;
00043     static integer lstr[69999], nstr;
00044     static real xstr[69999], ystr[69999];
00045     static integer i__;
00046     static char chloc[6666];
00047     static integer nchar;
00048     extern /* Subroutine */ int color_(integer *);
00049     static integer isize;
00050     static real ct;
00051     static integer nchloc;
00052     static real st, xr, yr, xx, yy;
00053     extern integer lastnb_(char *, ftnlen);
00054     extern /* Subroutine */ int zzline_(real *, real *, real *, real *), 
00055             zzconv_(char *, integer *, char *, integer *, ftnlen, ftnlen), 
00056             zzphys_(real *, real *), zzstro_(char *, integer *, integer *, 
00057             real *, real *, integer *, ftnlen);
00058     static real orr;
00059 
00060 
00061 
00062 
00063 /* .......................................................................
00064  */
00065 
00066 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00067  */
00068 /*  Calculate character width in terms of 1/1000 of the x-width. */
00069 
00070 
00071 /*  Internal Data for PLOTPAK */
00072 
00073     isize = *isiz;
00074     if (isize <= 0) {
00075         isize = 8;
00076     } else if (isize == 1) {
00077         isize = 12;
00078     } else if (isize == 2) {
00079         isize = 16;
00080     } else if (isize == 3) {
00081         isize = 24;
00082     }
00083 
00084     size = isize * .001f * (zzzplt_1.xpgmax - zzzplt_1.xpgmin);
00085 
00086 /*  Rotation/scaling factors for digitization */
00087 
00088     orr = *ior * .017453292f;
00089     ct = size * cos(orr);
00090     st = size * sin(orr);
00091 
00092 /*  Base location, in internal coordinates */
00093 
00094     xx = *x;
00095     yy = *y;
00096     if (*nch >= 0) {
00097         zzphys_(&xx, &yy);
00098     }
00099 
00100 /*  Get no. of characters in string.  Special option 999 must be checked. 
00101 */
00102 
00103     nchar = abs(*nch);
00104     if (nchar == 999) {
00105         i__1 = nchar;
00106         for (i__ = 1; i__ <= i__1; ++i__) {
00107             if (*(unsigned char *)&ch[i__ - 1] == '\0') {
00108                 goto L20;
00109             }
00110 /* L10: */
00111         }
00112 L20:
00113         nchar = i__ - 1;
00114     } else if (nchar == 0) {
00115         nchar = lastnb_(ch, ch_len);
00116     }
00117 
00118 /*  Digitize string into line segments */
00119 
00120     zzconv_(ch, &nchar, chloc, &nchloc, ch_len, 6666L);
00121     zzstro_(chloc, &nchloc, &nstr, xstr, ystr, lstr, 6666L);
00122     if (nstr <= 0) {
00123         return 0;
00124     }
00125 
00126 /*  Find min, max of x and y */
00127 
00128     zzzplt_1.xbot = xstr[0];
00129     zzzplt_1.ybot = ystr[0];
00130     zzzplt_1.xtop = zzzplt_1.xbot;
00131     zzzplt_1.ytop = zzzplt_1.ybot;
00132     i__1 = nstr;
00133     for (i__ = 2; i__ <= i__1; ++i__) {
00134 /* Computing MIN */
00135         r__1 = zzzplt_1.xbot, r__2 = xstr[i__ - 1];
00136         zzzplt_1.xbot = dmin(r__1,r__2);
00137 /* Computing MAX */
00138         r__1 = zzzplt_1.xtop, r__2 = xstr[i__ - 1];
00139         zzzplt_1.xtop = dmax(r__1,r__2);
00140 /* Computing MIN */
00141         r__1 = zzzplt_1.ybot, r__2 = ystr[i__ - 1];
00142         zzzplt_1.ybot = dmin(r__1,r__2);
00143 /* Computing MAX */
00144         r__1 = zzzplt_1.ytop, r__2 = ystr[i__ - 1];
00145         zzzplt_1.ytop = dmax(r__1,r__2);
00146 /* L100: */
00147     }
00148 
00149 /*  Now compute origin of string, based on centering option; */
00150 /*  the origin of the string goes at (XX,YY) */
00151 
00152     if (*icent == -1) {
00153         xorg = zzzplt_1.xbot;
00154         yorg = (zzzplt_1.ybot + zzzplt_1.ytop) * .5f;
00155     } else if (*icent == 0) {
00156         xorg = (zzzplt_1.xbot + zzzplt_1.xtop) * .5f;
00157         yorg = (zzzplt_1.ybot + zzzplt_1.ytop) * .5f;
00158     } else if (*icent == 1) {
00159         xorg = zzzplt_1.xtop;
00160         yorg = (zzzplt_1.ybot + zzzplt_1.ytop) * .5f;
00161     } else {
00162         xorg = zzzplt_1.xbot;
00163         yorg = zzzplt_1.ybot;
00164     }
00165 
00166 /*  Now draw the strokes */
00167 
00168     i__1 = nstr;
00169     for (i__ = 1; i__ <= i__1; ++i__) {
00170         if (lstr[i__ - 1] <= 1) {
00171             xr = xx + ct * (xstr[i__ - 1] - xorg) - st * (ystr[i__ - 1] - 
00172                     yorg);
00173             yr = yy + st * (xstr[i__ - 1] - xorg) + ct * (ystr[i__ - 1] - 
00174                     yorg);
00175             if (lstr[i__ - 1] == 1) {
00176                 zzline_(&xold, &yold, &xr, &yr);
00177             }
00178             xold = xr;
00179             yold = yr;
00180         } else if (lstr[i__ - 1] > 100 && lstr[i__ - 1] <= 107) {
00181             i__2 = lstr[i__ - 1] - 100;
00182             color_(&i__2);
00183         }
00184 /* L200: */
00185     }
00186 
00187     zzzplt_1.xphold = xold;
00188     zzzplt_1.yphold = yold;
00189     return 0;
00190 } /* pwritf_ */
00191 
00192 
00193 
00194 
00195 integer lastnb_(char *cline, ftnlen cline_len)
00196 {
00197     /* System generated locals */
00198     integer ret_val;
00199 
00200     /* Builtin functions */
00201     integer i_len(char *, ftnlen);
00202 
00203     /* Local variables */
00204     static integer npos;
00205 
00206 
00207 /*  Return the position of the last nonblank character in the input */
00208 /*  character string.  CLINE is CHARACTER*(*).  Even if CLINE is all */
00209 /*  blanks, LASTNB will be returned as 1 so that operations of the */
00210 /*  form CLINE(1:LASTNB) won't be garbage. */
00211 
00212 
00213 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00214  */
00215 
00216 /*  Start at the end and work backwards until a nonblank is found. */
00217 /*  Loop back to 100 to check position # NPOS each time. */
00218 
00219     npos = i_len(cline, cline_len);
00220 L100:
00221 /*  quit if at the beginning */
00222     if (npos <= 1) {
00223         goto L200;
00224     }
00225 /*  quit if not a blank or a null */
00226     if (*(unsigned char *)&cline[npos - 1] != ' ' && *(unsigned char *)&cline[
00227             npos - 1] != '\0') {
00228         goto L200;
00229     }
00230 /*  move back one position and try again */
00231     --npos;
00232     goto L100;
00233 /* .......................................................................
00234  */
00235 L200:
00236     ret_val = npos;
00237     return ret_val;
00238 } /* lastnb_ */
00239 
00240 
00241 
00242 
00243 /* Subroutine */ int zzstro_(char *ch, integer *nch, integer *nstr, real *
00244         xstr, real *ystr, integer *lstr, ftnlen ch_len)
00245 {
00246     /* Initialized data */
00247 
00248     static integer noff[256] = { 3452,3452,3452,3452,3452,3452,3452,3452,3452,
00249             3452,3452,3452,3452,3452,3452,3452,3452,3452,3452,3452,3452,3452,
00250             3452,3452,3452,3452,3452,3452,3452,3452,3452,3452,3448,2598,2646,
00251             3307,3268,3138,3168,2641,2672,2691,3439,2790,2566,2787,2560,2669,
00252             2205,2243,2252,2294,2338,2348,2383,2429,2456,2514,2574,2585,2832,
00253             2820,2836,2611,3215,1,14,54,85,112,129,144,180,199,208,226,245,
00254             256,277,292,334,359,419,458,491,504,524,535,552,567,582,2710,3818,
00255             2719,3564,3597,2953,595,631,660,687,718,747,766,821,843,857,879,
00256             898,907,942,964,998,1029,1058,1077,1108,1122,1144,1155,1172,1187,
00257             1205,2728,2784,2752,3593,3452,2856,3033,2802,2807,3600,2980,2916,
00258             3615,2776,2780,3384,2795,2840,3316,3759,3783,0,0,0,0,0,0,0,0,0,0,
00259             0,0,0,0,0,0,2890,2655,3022,2971,2962,2944,3651,3064,2929,3666,
00260             3805,3812,3815,3430,2848,3683,3463,3468,3473,3479,3485,3498,3511,
00261             3524,3537,3554,2877,3715,3737,3359,2825,2903,3689,1,14,1218,1229,
00262             112,582,180,1240,199,226,1290,256,277,1301,292,1326,334,1341,491,
00263             1357,1386,552,1428,1463,3702,3449,3455,3450,3454,3451,3453,3456,
00264             1502,1539,1591,1616,1658,1681,1711,1740,1780,1794,1819,1839,1863,
00265             1883,1924,1954,1971,2000,2032,2045,2074,2112,2133,2164,3457,3458,
00266             3459,3460,3461,3462,3112 };
00267     static integer numstr[256] = { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
00268             1,1,1,1,1,1,1,1,1,1,1,1,13,9,9,39,30,47,5,19,19,9,5,8,3,6,3,38,9,
00269             42,44,10,35,46,27,58,46,11,13,4,5,4,30,53,13,40,31,27,17,15,36,19,
00270             9,18,19,11,21,15,42,25,60,39,33,13,20,11,17,15,15,13,9,3,9,29,3,9,
00271             36,29,27,31,29,19,55,22,14,22,19,9,35,22,34,31,29,19,31,14,22,11,
00272             17,15,18,13,24,3,24,4,1,21,31,5,13,15,42,13,36,4,4,46,7,8,43,24,
00273             22,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,13,14,11,9,9,9,15,48,15,
00274             17,7,3,3,9,8,6,5,5,6,6,13,13,13,13,17,10,13,22,22,25,7,13,13,13,
00275             40,11,11,17,13,19,50,9,19,11,21,15,25,42,15,25,16,13,29,42,15,35,
00276             39,13,1,1,1,1,1,1,1,37,52,25,42,23,30,29,40,14,25,20,24,20,41,30,
00277             17,29,32,13,29,38,21,31,41,1,1,1,1,1,1,26 };
00278     static struct {
00279         integer e_1[3820];
00280         } equiv_38 = { 8011, 23723, 9173, 25515, 7378, 25390, 6854, 25792, 
00281                 6586, 25408, 9024, 25408, 6858, 7371, 24619, 8405, 24619, 
00282                 7765, 26176, 25023, 24767, 24766, 24638, 24510, 24511, 24255, 
00283                 8266, 24895, 24767, 24766, 24638, 24510, 24511, 24383, 7232, 
00284                 25664, 25023, 24767, 24766, 24637, 24510, 24511, 24255, 23104,
00285                  9803, 24895, 24767, 24766, 24637, 24510, 24511, 24383, 7754, 
00286                 8904, 24765, 24646, 24509, 24386, 24257, 24384, 24255, 24382, 
00287                 24510, 24509, 24635, 24765, 24766, 24894, 25023, 24896, 25025,
00288                  24898, 24770, 7248, 24383, 24382, 24510, 24509, 24635, 24765,
00289                  24766, 24894, 24895, 8138, 7371, 24619, 8405, 24619, 7765, 
00290                 25920, 25023, 24894, 24766, 24765, 24635, 24509, 24510, 24382,
00291                  24255, 23360, 9557, 24895, 24894, 24766, 24765, 24635, 24509,
00292                  24510, 24382, 24383, 8010, 7371, 24619, 8405, 24619, 9039, 
00293                 24632, 6990, 26688, 24634, 24518, 6838, 25408, 6965, 26688, 
00294                 24646, 24506, 7242, 7371, 24619, 8405, 24619, 9039, 24632, 
00295                 6990, 26688, 24634, 24518, 6838, 25408, 6965, 25536, 8138, 
00296                 8904, 24765, 24646, 24509, 24386, 24257, 24384, 24255, 24382, 
00297                 24510, 24509, 24635, 24765, 24766, 24894, 25023, 24896, 25025,
00298                  24898, 7378, 24383, 24382, 24510, 24509, 24635, 24765, 24766,
00299                  24894, 24895, 9160, 24632, 8392, 24632, 7752, 25536, 6978, 
00300                 7371, 24619, 8405, 24619, 9813, 24619, 8405, 24619, 6101, 
00301                 25536, 9024, 25536, 6198, 26176, 6197, 25536, 9024, 25536, 
00302                 6986, 7371, 24619, 8405, 24619, 7765, 25536, 7339, 25536, 
00303                 6986, 8011, 24623, 24509, 24383, 24384, 24385, 24514, 24642, 
00304                 24769, 24767, 24511, 9041, 24623, 24509, 24511, 8149, 25536, 
00305                 6965, 7371, 24619, 8405, 24619, 9941, 22963, 8900, 25652, 
00306                 7116, 25652, 6229, 25536, 9024, 25408, 5803, 25536, 9024, 
00307                 25408, 6858, 7371, 24619, 8405, 24619, 7765, 25536, 7339, 
00308                 26560, 24646, 24506, 6986, 7371, 24619, 8405, 25390, 7378, 
00309                 25515, 9173, 23723, 9173, 24619, 8405, 24619, 5973, 25152, 
00310                 9920, 25152, 5547, 25408, 9280, 25536, 6986, 7371, 24619, 
00311                 8405, 26157, 6737, 26157, 8277, 24619, 6229, 25152, 9408, 
00312                 25408, 5803, 25408, 8650, 8011, 24255, 24382, 24510, 24508, 
00313                 24637, 24764, 24766, 24894, 25023, 24896, 25025, 24898, 24770,
00314                  24772, 24643, 24516, 24514, 24386, 24257, 24384, 8256, 24383,
00315                  24382, 24510, 24508, 24637, 24764, 24766, 24894, 24895, 8512,
00316                  24897, 24898, 24770, 24772, 24643, 24516, 24514, 24386, 
00317                 24385, 7989, 7371, 24619, 8405, 24619, 7765, 26176, 25023, 
00318                 24767, 24766, 24637, 24510, 24511, 24255, 23616, 9291, 24895, 
00319                 24767, 24766, 24637, 24510, 24511, 24383, 6710, 25536, 8394, 
00320                 8011, 24255, 24382, 24510, 24508, 24637, 24764, 24766, 24894, 
00321                 25023, 24896, 25025, 24898, 24770, 24772, 24643, 24516, 24514,
00322                  24386, 24257, 24384, 8256, 24383, 24382, 24510, 24508, 24637,
00323                  24764, 24766, 24894, 24895, 8512, 24897, 24898, 24770, 24772,
00324                  24643, 24516, 24514, 24386, 24385, 7597, 24641, 24770, 24897,
00325                  24768, 24895, 24766, 24761, 24767, 24896, 24770, 24641, 7621,
00326                  24764, 24766, 24767, 24768, 24769, 7117, 7371, 24619, 8405, 
00327                 24619, 7765, 26176, 25023, 24767, 24766, 24638, 24510, 24511, 
00328                 24255, 23616, 9290, 24895, 24767, 24766, 24638, 24510, 24511, 
00329                 24383, 6709, 25536, 8523, 24895, 24767, 25017, 24767, 24768, 
00330                 24769, 7368, 24766, 24889, 24767, 24896, 24770, 24641, 6983, 
00331                 8776, 24771, 24634, 24515, 24386, 24257, 24256, 24255, 24382, 
00332                 24638, 24766, 24767, 24895, 25406, 24895, 24894, 6473, 24894, 
00333                 24895, 25406, 24895, 24767, 24766, 24636, 24382, 24255, 24256,
00334                  24257, 24386, 24515, 24634, 24771, 8775, 7883, 24619, 8405, 
00335                 24619, 7381, 24506, 24646, 26560, 24634, 24518, 6955, 25536, 
00336                 7498, 7371, 24625, 24765, 24894, 25023, 24896, 25025, 24898, 
00337                 24771, 24655, 6592, 24625, 24765, 24894, 24895, 7125, 25536, 
00338                 9152, 25408, 6965, 7115, 25515, 7509, 25390, 9170, 23723, 
00339                 7125, 25408, 9024, 25408, 6837, 7243, 25131, 7893, 25008, 
00340                 8784, 24107, 8789, 25131, 7893, 25008, 8784, 24107, 6357, 
00341                 25536, 9408, 25408, 6837, 7115, 26283, 6741, 26283, 8277, 
00342                 22827, 8021, 25408, 9024, 25408, 5931, 25408, 9024, 25408, 
00343                 6858, 7115, 25525, 24630, 7509, 25525, 24630, 9173, 23733, 
00344                 6987, 25408, 9152, 25408, 6571, 25536, 7626, 8779, 22955, 
00345                 10069, 22955, 8277, 24506, 24646, 26432, 6443, 26432, 24646, 
00346                 24506, 7242, 7362, 24639, 24512, 24641, 24769, 24897, 25152, 
00347                 24895, 24767, 24766, 24633, 24766, 24767, 7884, 24631, 24766, 
00348                 24895, 24768, 7754, 24511, 23871, 24255, 24510, 24638, 24766, 
00349                 25023, 25024, 24897, 24898, 7365, 24383, 24510, 24638, 24766, 
00350                 24895, 8394, 7371, 24619, 8405, 24619, 8267, 24898, 24897, 
00351                 24896, 25023, 24894, 24765, 24638, 24509, 24382, 24255, 24384,
00352                  24385, 24386, 9035, 24895, 24894, 24765, 24638, 24509, 24382,
00353                  24383, 6997, 25152, 8629, 8641, 24511, 24767, 24769, 24641, 
00354                 24386, 24385, 24256, 24255, 24382, 24509, 24638, 24765, 24894,
00355                  25023, 24896, 25025, 24898, 7371, 24383, 24382, 24509, 24638,
00356                  24765, 24894, 24895, 8010, 8651, 24619, 8405, 24619, 8139, 
00357                 24386, 24385, 24384, 24255, 24382, 24509, 24638, 24765, 24894,
00358                  25023, 24896, 24897, 24898, 7499, 24383, 24382, 24509, 24638,
00359                  24765, 24894, 24895, 8661, 25152, 8107, 25152, 6986, 7230, 
00360                 26176, 24642, 24514, 24513, 24385, 24256, 24255, 24382, 24509,
00361                  24638, 24765, 24894, 25023, 24896, 25025, 24898, 8133, 24643,
00362                  24514, 7617, 24383, 24382, 24509, 24638, 24765, 24894, 24895,
00363                  8010, 8010, 24511, 24767, 24769, 24641, 24513, 24384, 24383, 
00364                 24510, 24622, 8661, 24511, 24510, 24622, 7758, 25664, 7218, 
00365                 25536, 7242, 7748, 24383, 24511, 24510, 24638, 24766, 24767, 
00366                 24895, 24896, 24897, 24769, 24770, 24642, 24514, 24513, 24385,
00367                  24384, 7999, 24510, 24636, 24766, 9024, 24770, 24644, 24514, 
00368                 8383, 24769, 24897, 24639, 24384, 7097, 24511, 24510, 24639, 
00369                 24766, 25023, 25280, 25023, 24767, 6597, 24767, 25023, 25280, 
00370                 25023, 24766, 24639, 24510, 24255, 23872, 24257, 24514, 24641,
00371                  24770, 25025, 8394, 7371, 24619, 8405, 24619, 8267, 24898, 
00372                 25025, 24896, 25023, 24766, 24629, 7758, 24895, 24766, 24629, 
00373                 6485, 25152, 7723, 25536, 8768, 25536, 6986, 7371, 24511, 
00374                 24767, 24769, 24513, 8249, 24626, 8398, 24626, 7758, 25152, 
00375                 7730, 25536, 6986, 7499, 24511, 24767, 24769, 24513, 8377, 
00376                 24622, 24510, 24383, 24384, 24513, 24641, 24769, 24767, 24511,
00377                  8788, 24622, 24510, 24511, 8149, 25152, 7228, 7371, 24619, 
00378                 8405, 24619, 9550, 23350, 8900, 25400, 7368, 25400, 6485, 
00379                 25152, 9145, 25408, 6066, 25536, 8768, 25408, 6986, 7371, 
00380                 24619, 8405, 24619, 7765, 25152, 7723, 25536, 6986, 7364, 
00381                 24626, 8398, 24626, 8267, 24898, 25025, 24896, 25023, 24766, 
00382                 24629, 7758, 24895, 24766, 24629, 8395, 24898, 25025, 24896, 
00383                 25023, 24766, 24629, 7758, 24895, 24766, 24629, 5070, 25152, 
00384                 7730, 25536, 8768, 25536, 8768, 25536, 6986, 7364, 24626, 
00385                 8398, 24626, 8267, 24898, 25025, 24896, 25023, 24766, 24629, 
00386                 7758, 24895, 24766, 24629, 6478, 25152, 7730, 25536, 8768, 
00387                 25536, 6986, 7876, 24255, 24382, 24509, 24638, 24765, 24894, 
00388                 25023, 24896, 25025, 24898, 24771, 24642, 24515, 24386, 24257,
00389                  24384, 8256, 24383, 24382, 24509, 24638, 24765, 24894, 24895,
00390                  8512, 24897, 24898, 24771, 24642, 24515, 24386, 24385, 7868, 
00391                 7364, 24619, 8405, 24619, 8274, 24898, 24897, 24896, 25023, 
00392                 24894, 24765, 24638, 24509, 24382, 24255, 24384, 24385, 24386,
00393                  9035, 24895, 24894, 24765, 24638, 24509, 24382, 24383, 6990, 
00394                 25152, 7723, 25536, 8273, 8644, 24619, 8405, 24619, 8146, 
00395                 24386, 24385, 24384, 24255, 24382, 24509, 24638, 24765, 24894,
00396                  25023, 24896, 24897, 24898, 7499, 24383, 24382, 24509, 24638,
00397                  24765, 24894, 24895, 8633, 25536, 6865, 7364, 24626, 8398, 
00398                 24626, 8264, 24771, 24898, 24897, 25024, 24767, 24639, 24511, 
00399                 24513, 24769, 6721, 25152, 7730, 25536, 7754, 8386, 24770, 
00400                 24636, 24514, 24513, 24385, 24128, 24383, 24511, 24638, 24767,
00401                  24895, 25278, 24895, 24767, 6855, 24767, 24895, 25278, 24895,
00402                  24767, 24637, 24511, 24383, 24128, 24385, 24513, 24514, 
00403                 24636, 24770, 8392, 7371, 24623, 24765, 24895, 24896, 24897, 
00404                 24770, 7378, 24623, 24765, 24767, 7502, 25664, 7356, 7364, 
00405                 24629, 24766, 25023, 24896, 25025, 24898, 6987, 24629, 24766, 
00406                 24895, 9166, 24626, 8398, 24626, 6350, 25152, 9152, 25152, 
00407                 8114, 25152, 6986, 7108, 25394, 7630, 25268, 9036, 23858, 
00408                 7246, 25408, 8768, 25408, 6844, 7236, 25138, 7886, 25013, 
00409                 8779, 24114, 8782, 25138, 7886, 25013, 8779, 24114, 6350, 
00410                 25536, 9408, 25408, 6844, 7236, 26034, 6990, 26034, 8270, 
00411                 23090, 8014, 25408, 8768, 25408, 6194, 25408, 8768, 25408, 
00412                 6986, 7236, 25394, 7630, 25268, 9036, 23858, 24380, 24382, 
00413                 24383, 24512, 24513, 24769, 24767, 8020, 25408, 8768, 25408, 
00414                 6844, 8516, 23218, 9806, 23218, 8270, 24508, 24644, 26176, 
00415                 6706, 26176, 24644, 24508, 7242, 7371, 24619, 8405, 24619, 
00416                 7765, 26560, 24634, 24518, 6443, 25536, 7882, 8011, 23595, 
00417                 9301, 25643, 7250, 25518, 6465, 26432, 6335, 26688, 6986, 
00418                 8011, 24255, 24382, 24510, 24508, 24637, 24764, 24766, 24894, 
00419                 25023, 24896, 25025, 24898, 24770, 24772, 24643, 24516, 24514,
00420                  24386, 24257, 24384, 8256, 24383, 24382, 24510, 24508, 24637,
00421                  24764, 24766, 24894, 24895, 8512, 24897, 24898, 24770, 24772,
00422                  24643, 24516, 24514, 24386, 24385, 7737, 24633, 9031, 24633, 
00423                 7492, 25408, 7487, 25408, 7744, 8011, 23723, 9173, 25515, 
00424                 7378, 25390, 6336, 25408, 9024, 25408, 6858, 7244, 24507, 
00425                 10309, 24507, 6972, 24507, 9285, 24507, 6972, 24507, 10309, 
00426                 24507, 6485, 26432, 6463, 26432, 6968, 25408, 7487, 25408, 
00427                 6968, 26432, 6463, 26432, 7241, 7371, 24619, 8405, 24619, 
00428                 9813, 24619, 8405, 24619, 6101, 27200, 5675, 25536, 9024, 
00429                 25536, 6986, 7115, 25526, 23605, 8277, 25526, 7370, 26560, 
00430                 24762, 24390, 6572, 26304, 6463, 26560, 24774, 24378, 7370, 
00431                 6982, 24642, 24770, 24769, 24896, 24767, 24766, 24764, 24626, 
00432                 7378, 24898, 24896, 24894, 9406, 24642, 24514, 24513, 24384, 
00433                 24511, 24510, 24508, 24626, 9170, 24386, 24384, 24382, 7598, 
00434                 25536, 7498, 8011, 24619, 8405, 24619, 7888, 24255, 24511, 
00435                 24510, 24637, 24766, 24767, 25023, 25280, 25025, 24769, 24770,
00436                  24643, 24514, 24513, 24257, 24000, 8256, 24383, 24511, 24510,
00437                  24637, 24766, 24767, 24895, 8896, 24897, 24769, 24770, 24643,
00438                  24514, 24513, 24385, 7493, 25536, 7339, 25536, 7626, 8139, 
00439                 24619, 8405, 24619, 6990, 24769, 24895, 24764, 24766, 24767, 
00440                 24895, 7369, 24767, 24764, 24766, 24767, 25023, 25024, 25025, 
00441                 24769, 24770, 24772, 24769, 7351, 24897, 24769, 24770, 24772, 
00442                 24897, 24767, 6599, 25536, 7339, 25536, 7754, 7097, 24765, 
00443                 25152, 24388, 24388, 24515, 24644, 24771, 24898, 25025, 25152,
00444                  25023, 24894, 24765, 24636, 24509, 24380, 24380, 25152, 
00445                 24771, 6593, 24515, 24516, 24644, 24771, 24898, 24897, 8768, 
00446                 24895, 24894, 24765, 24636, 24508, 24509, 6717, 25024, 9280, 
00447                 25024, 7241, 8004, 24255, 24382, 24510, 24509, 24637, 24766, 
00448                 25023, 24896, 24897, 25027, 24899, 24900, 24771, 7104, 24383, 
00449                 24382, 24510, 24509, 24637, 24766, 24895, 8654, 24896, 24895, 
00450                 24766, 24888, 24766, 24767, 7374, 24767, 24766, 24888, 24766, 
00451                 24895, 24768, 7114, 8395, 24255, 24382, 24380, 24509, 24508, 
00452                 24506, 24504, 9692, 24383, 24382, 24380, 24509, 24508, 24506, 
00453                 24504, 9564, 24896, 24895, 24767, 24637, 24510, 24511, 24255, 
00454                 24128, 9033, 24894, 24637, 24510, 24511, 24383, 7744, 25151, 
00455                 24894, 24766, 24637, 24510, 24511, 24255, 24384, 24385, 24513,
00456                  24515, 8775, 25023, 24894, 24766, 24637, 24510, 24511, 24383,
00457                  8010, 6849, 24898, 24897, 24896, 24895, 24767, 24765, 24636, 
00458                 24508, 24248, 7635, 24897, 25152, 24895, 9282, 24509, 24510, 
00459                 23993, 24251, 24380, 9685, 24509, 24510, 24121, 7880, 8387, 
00460                 24385, 24384, 24255, 24381, 24509, 24637, 24766, 24767, 24895,
00461                  24896, 25025, 24899, 24771, 24643, 24514, 24133, 24514, 
00462                 24642, 24769, 24896, 24895, 24894, 7355, 24383, 24381, 24509, 
00463                 24636, 24766, 8767, 24897, 24899, 24771, 24644, 24514, 24387, 
00464                 24514, 24642, 24769, 24896, 25022, 7095, 8515, 24385, 24256, 
00465                 24255, 24382, 24509, 24637, 24765, 24767, 25023, 25024, 24897,
00466                  7757, 24383, 24382, 24509, 24637, 24765, 24767, 24895, 7751, 
00467                 25664, 7363, 8139, 24383, 24511, 24639, 24767, 25023, 25280, 
00468                 24641, 24255, 24126, 24254, 24253, 24509, 24638, 24766, 25022,
00469                  25022, 24766, 24638, 24511, 24384, 24513, 8917, 24125, 24253,
00470                  24509, 24638, 24766, 24894, 8138, 6848, 24770, 24898, 25024, 
00471                 24767, 24638, 24508, 24377, 8398, 24767, 24638, 24508, 24377, 
00472                 8647, 24900, 24898, 24897, 24896, 24895, 24767, 24637, 24507, 
00473                 24245, 8405, 24894, 24637, 24507, 24245, 7889, 8139, 24255, 
00474                 24381, 24510, 24509, 24507, 24636, 24766, 24895, 24896, 25025,
00475                  24899, 24770, 24771, 24773, 24644, 24514, 24385, 24384, 8256,
00476                  24383, 24381, 24510, 24509, 24507, 24636, 24766, 24767, 8512,
00477                  24897, 24899, 24770, 24771, 24773, 24644, 24514, 24513, 7222,
00478                  25792, 7359, 7492, 24377, 24508, 24638, 24767, 25024, 24898, 
00479                 24770, 7882, 24377, 24508, 24638, 24767, 7626, 7492, 24114, 
00480                 8910, 24114, 9934, 24767, 24768, 24513, 24384, 24383, 24124, 
00481                 24383, 24384, 8512, 24895, 24890, 24767, 7624, 24767, 24890, 
00482                 24767, 24896, 24897, 24899, 7110, 7115, 24896, 24895, 24767, 
00483                 24766, 25394, 24766, 24767, 6741, 24894, 24766, 25394, 24766, 
00484                 24895, 24768, 7246, 23602, 9294, 23730, 8906, 7620, 23851, 
00485                 9173, 23851, 8914, 24506, 24637, 24894, 24896, 24897, 24898, 
00486                 24899, 8520, 24245, 24638, 24767, 25024, 24898, 24770, 7882, 
00487                 24245, 24638, 24767, 7498, 7492, 24370, 8654, 24506, 24507, 
00488                 24509, 9934, 24508, 24380, 8776, 24509, 24510, 24381, 24382, 
00489                 24254, 24383, 24255, 8142, 25152, 8380, 8139, 24383, 24511, 
00490                 24639, 24767, 25023, 25024, 7872, 24127, 24383, 24510, 24638, 
00491                 24894, 25023, 25024, 8137, 24255, 24383, 24510, 24638, 24894, 
00492                 24895, 8256, 24127, 24383, 24510, 24638, 24894, 25278, 24767, 
00493                 24638, 24383, 24384, 8654, 24255, 24383, 24510, 24638, 24894, 
00494                 25150, 7629, 7876, 24255, 24381, 24509, 24637, 24766, 24767, 
00495                 24895, 24896, 25025, 24899, 24771, 24643, 24514, 24513, 24385,
00496                  24384, 8256, 24383, 24381, 24509, 24636, 24766, 8767, 24897, 
00497                 24899, 24771, 24644, 24514, 7357, 7875, 24115, 8781, 24243, 
00498                 9421, 24627, 8269, 24755, 6475, 24898, 25025, 26304, 5949, 
00499                 24897, 25025, 26304, 6973, 7227, 24765, 24767, 24895, 24896, 
00500                 25025, 24899, 24771, 24643, 24514, 24513, 24385, 24384, 24255,
00501                  24381, 24509, 24114, 9543, 24897, 24899, 24771, 24644, 24514,
00502                  7745, 24383, 24381, 24509, 24114, 9041, 9156, 23360, 24255, 
00503                 24381, 24509, 24637, 24766, 24767, 24895, 24896, 25025, 24899,
00504                  24771, 24643, 24514, 24513, 24385, 8000, 24383, 24381, 24509,
00505                  24636, 24766, 8767, 24897, 24899, 24771, 24644, 24514, 8256, 
00506                 25408, 6973, 8131, 24243, 8653, 24371, 7371, 24898, 25025, 
00507                 26048, 6205, 24897, 25025, 26048, 6973, 6848, 24770, 24898, 
00508                 25024, 24767, 24638, 24378, 24637, 24894, 8014, 24767, 24638, 
00509                 24378, 24637, 24767, 24895, 24768, 25025, 24898, 24899, 24771,
00510                  24643, 24514, 24511, 24767, 24765, 8125, 24774, 7102, 8523, 
00511                 23844, 9180, 23588, 8661, 24127, 24382, 24509, 24637, 24766, 
00512                 24894, 25023, 25024, 25153, 24898, 24771, 24643, 24514, 24386,
00513                  24257, 24256, 8256, 24255, 24382, 24509, 24637, 24766, 24894,
00514                  24895, 8640, 25025, 24898, 24771, 24643, 24514, 24386, 24385,
00515                  7868, 6980, 24896, 24895, 24766, 25265, 24766, 24767, 6997, 
00516                 24767, 24766, 25265, 24766, 24895, 24896, 8405, 24510, 24381, 
00517                 23349, 24381, 24510, 8913, 8651, 23844, 9180, 23588, 7377, 
00518                 24770, 24898, 25024, 24767, 24638, 24507, 24637, 24894, 25024,
00519                  24897, 25027, 24899, 6598, 24767, 24638, 24507, 24637, 24766,
00520                  24895, 25024, 24897, 24898, 24899, 24770, 24902, 6972, 7232, 
00521                 24898, 25025, 24513, 24383, 24381, 24509, 24637, 24765, 24767,
00522                  24896, 24897, 24899, 24771, 7101, 24766, 24767, 24896, 24897,
00523                  24898, 8259, 24637, 24765, 24767, 24896, 24897, 24899, 24771,
00524                  24643, 24515, 24513, 24511, 24895, 24766, 7098, 24766, 24767,
00525                  24896, 24897, 24898, 7238, 7883, 24255, 24381, 24507, 24637, 
00526                 24763, 24893, 25023, 24896, 25025, 24899, 24773, 24643, 24517,
00527                  24387, 24257, 24384, 8256, 24383, 24511, 24510, 24507, 24637,
00528                  24763, 24766, 24767, 24895, 8512, 24897, 24769, 24770, 24773,
00529                  24643, 24517, 24514, 24513, 24385, 7861, 7495, 24897, 25027, 
00530                 24619, 8148, 24620, 7744, 25792, 7370, 7239, 24767, 24511, 
00531                 24513, 24641, 24770, 24769, 25025, 25152, 25023, 24767, 24766,
00532                  24638, 24510, 24254, 23998, 24383, 24382, 24509, 24637, 9429,
00533                  24895, 24767, 24766, 24638, 24510, 24254, 24126, 7609, 24769,
00534                  24896, 25278, 25024, 24897, 24769, 6848, 25277, 25152, 24769,
00535                  24770, 24642, 7109, 7239, 24767, 24511, 24513, 24641, 24770, 
00536                 24769, 25025, 25152, 25023, 24766, 24637, 24510, 24255, 24256,
00537                  8649, 24895, 24766, 24637, 24510, 24383, 8256, 24895, 24894, 
00538                 24766, 24637, 24510, 24511, 24255, 24128, 24257, 24513, 24514,
00539                  24641, 24769, 24767, 24511, 9670, 24765, 24637, 24510, 24511,
00540                  24383, 7754, 8265, 24621, 8405, 24619, 8277, 23217, 26688, 
00541                 7098, 25536, 7242, 7371, 24374, 8256, 24898, 25025, 25024, 
00542                 25023, 24894, 24765, 24638, 24509, 24382, 24255, 24256, 24257,
00543                  24513, 24514, 24641, 24769, 24767, 24511, 9162, 24895, 24894,
00544                  24765, 24638, 24509, 24382, 24383, 7509, 25920, 6975, 25280, 
00545                 25281, 7349, 8648, 24511, 24767, 24769, 24641, 24514, 24385, 
00546                 24256, 24255, 24382, 24510, 24508, 24634, 24765, 24894, 25023,
00547                  24896, 25025, 24898, 24771, 24641, 24515, 24386, 24257, 
00548                 24512, 24255, 24382, 24509, 9038, 24383, 24382, 24510, 24508, 
00549                 24634, 24765, 24894, 24895, 8512, 24897, 24898, 24771, 24641, 
00550                 24515, 24386, 24385, 7869, 7115, 24634, 8258, 24770, 24898, 
00551                 24896, 25277, 24896, 24769, 24770, 6590, 24897, 24896, 25278, 
00552                 8771, 24637, 24509, 24123, 24510, 24509, 24635, 9039, 23995, 
00553                 24510, 24509, 24635, 8138, 7755, 24255, 24510, 24637, 24766, 
00554                 25023, 25152, 25025, 24770, 24643, 24514, 24257, 24128, 8256, 
00555                 24383, 24510, 24637, 24766, 24895, 8768, 24897, 24770, 24643, 
00556                 24514, 24385, 7735, 24255, 24511, 24510, 24636, 24766, 24767, 
00557                 25023, 25152, 25025, 24769, 24770, 24644, 24514, 24513, 24257,
00558                  7744, 24383, 24511, 24510, 24636, 24766, 24767, 24895, 8768, 
00559                 24897, 24769, 24770, 24644, 24514, 24513, 24385, 7742, 8772, 
00560                 24509, 24382, 24255, 24512, 24257, 24386, 24515, 24641, 24771,
00561                  24898, 25025, 24896, 25023, 24894, 24765, 24634, 24508, 
00562                 24510, 24382, 24255, 24256, 24385, 24514, 24641, 24769, 24767,
00563                  24511, 8773, 24385, 24386, 24515, 24641, 24771, 24898, 24897,
00564                  8512, 24895, 24894, 24765, 24634, 24508, 24510, 24382, 24383,
00565                  8010, 7352, 24511, 24767, 24769, 24513, 7368, 7350, 24513, 
00566                 24769, 24767, 24638, 24510, 24511, 7502, 7364, 24511, 24767, 
00567                 24769, 24513, 8244, 24511, 24767, 24769, 24513, 7368, 7364, 
00568                 24511, 24767, 24769, 24513, 8242, 24513, 24769, 24767, 24638, 
00569                 24510, 24511, 7502, 7371, 24510, 24756, 24780, 24514, 8254, 
00570                 24634, 8245, 24511, 24767, 24769, 24513, 7368, 7239, 24767, 
00571                 24511, 24513, 24641, 24770, 24769, 24897, 25024, 25023, 24767,
00572                  24766, 24638, 24510, 24511, 24126, 24637, 8398, 24895, 24767,
00573                  24766, 24638, 24510, 24382, 7991, 24511, 24767, 24769, 24513,
00574                  7880, 7243, 24505, 8519, 24377, 7356, 7243, 24505, 8519, 
00575                 24377, 9415, 24505, 8519, 24377, 7356, 7499, 24383, 24510, 
00576                 24638, 24766, 24895, 24896, 24897, 24770, 24642, 24514, 24385,
00577                  24384, 7733, 9295, 22304, 9297, 8143, 24382, 24381, 24380, 
00578                 24507, 24636, 24763, 24892, 24893, 24894, 8030, 24380, 24509, 
00579                 24507, 24636, 24763, 24765, 24892, 7375, 7119, 24894, 24893, 
00580                 24892, 24763, 24636, 24507, 24380, 24381, 24382, 8542, 24892, 
00581                 24765, 24763, 24636, 24507, 24509, 24380, 7887, 7247, 24608, 
00582                 8416, 24608, 8160, 25536, 7328, 25536, 7121, 7887, 24608, 
00583                 8416, 24608, 7392, 25536, 7328, 25536, 7249, 7887, 24253, 
00584                 24509, 24638, 24765, 25021, 8012, 24509, 24636, 24765, 8510, 
00585                 24254, 25022, 8256, 24253, 24509, 24638, 24765, 25021, 8012, 
00586                 24509, 24636, 24765, 7631, 7375, 25021, 24765, 24638, 24509, 
00587                 24253, 8524, 24765, 24636, 24509, 7998, 25022, 24254, 8256, 
00588                 25021, 24765, 24638, 24509, 24253, 8524, 24765, 24636, 24509, 
00589                 7631, 8015, 23728, 25520, 7249, 7247, 25520, 23728, 8017, 
00590                 7247, 24608, 7249, 7231, 26944, 7233, 8392, 24622, 7113, 
00591                 26944, 7233, 8263, 24623, 7241, 26688, 6199, 26688, 7242, 
00592                 7238, 26418, 8270, 22834, 9032, 8392, 24511, 24767, 24769, 
00593                 24513, 7095, 26944, 7097, 24511, 24767, 24769, 24513, 8392, 
00594                 7234, 26944, 5946, 26944, 7236, 9288, 22830, 8012, 26944, 
00595                 5946, 26944, 7236, 9288, 22583, 26679, 7242, 7240, 26679, 
00596                 22583, 9290, 9291, 22585, 26681, 6206, 26688, 6203, 26688, 
00597                 7242, 7243, 26681, 22585, 8254, 26688, 6203, 26688, 7242, 
00598                 9402, 24384, 24385, 24386, 24260, 24513, 24385, 24384, 24383, 
00599                 24510, 24638, 24766, 24895, 24896, 24897, 24769, 25028, 24898,
00600                  24897, 24896, 7228, 9287, 23744, 24127, 24383, 24382, 24509, 
00601                 24638, 24765, 24894, 24895, 25151, 25536, 7241, 7239, 24633, 
00602                 24764, 24766, 24894, 25023, 24896, 25025, 24898, 24770, 24772,
00603                  24647, 7225, 7239, 25536, 25151, 24895, 24894, 24765, 24638, 
00604                 24509, 24382, 24383, 24127, 23744, 9289, 7223, 24647, 24772, 
00605                 24770, 24898, 25025, 24896, 25023, 24894, 24766, 24764, 24633,
00606                  7241, 9287, 23744, 24127, 24383, 24382, 24509, 24638, 24765, 
00607                 24894, 24895, 25151, 25536, 6216, 26176, 7745, 9153, 25022, 
00608                 24254, 7879, 25275, 23995, 6725, 26816, 7361, 7493, 24899, 
00609                 24893, 7357, 25285, 25275, 7621, 24623, 7754, 7617, 24254, 
00610                 25022, 8647, 23995, 25275, 7621, 26816, 7233, 7481, 24893, 
00611                 24899, 7363, 25275, 25285, 7628, 24623, 7753, 8639, 24515, 
00612                 24513, 24385, 24384, 24255, 24381, 24509, 24637, 24766, 24767,
00613                  24895, 24896, 25025, 24898, 24771, 24773, 24645, 24515, 
00614                 24513, 24385, 24256, 24383, 24511, 24639, 24768, 24641, 8507, 
00615                 24383, 24381, 24509, 24636, 24766, 8767, 24897, 24898, 24771, 
00616                 24773, 24645, 24515, 24386, 7605, 6987, 25643, 7381, 25517, 
00617                 9299, 23595, 7253, 26688, 6335, 26432, 7094, 9422, 24511, 
00618                 24767, 24769, 24641, 24513, 24384, 24383, 24382, 24510, 24509,
00619                  24508, 24372, 24508, 24510, 9308, 24510, 24508, 24372, 24508,
00620                  24509, 24510, 24382, 24383, 24384, 24513, 24641, 24769, 
00621                 24767, 24511, 9424, 9422, 24511, 24767, 24769, 24641, 24513, 
00622                 24384, 24383, 24382, 24510, 24509, 24508, 24372, 24508, 24510,
00623                  9308, 24510, 24508, 24372, 24508, 24509, 24510, 24382, 24383,
00624                  24384, 24513, 24641, 24769, 24767, 24511, 9302, 24255, 24382,
00625                  24509, 24638, 24765, 24894, 25023, 24896, 25025, 24898, 
00626                 24771, 24642, 24515, 24386, 24257, 24384, 8378, 9534, 24510, 
00627                 24383, 24384, 24385, 24513, 24260, 24513, 24385, 24384, 24383,
00628                  24510, 24638, 24766, 24895, 24896, 24897, 24769, 25028, 
00629                 24769, 24897, 24896, 24895, 24766, 24638, 7106, 9419, 22315, 
00630                 8917, 24894, 24638, 24510, 24383, 24384, 24386, 24642, 24770, 
00631                 24897, 24896, 24895, 25023, 25024, 25025, 24897, 7730, 24383, 
00632                 24510, 24638, 24894, 24896, 24897, 24770, 24642, 24386, 24384,
00633                  7619, 9411, 24511, 24767, 24769, 24641, 24513, 24512, 24511, 
00634                 24510, 24379, 24381, 24382, 24383, 24256, 24257, 24514, 24643,
00635                  24770, 25412, 24898, 24770, 24642, 24514, 24385, 24383, 
00636                 24510, 24638, 24765, 24893, 25273, 24894, 25023, 24768, 24769,
00637                  24641, 6334, 24385, 24514, 24643, 24770, 24898, 8262, 24766, 
00638                 25653, 24894, 24895, 7370, 9027, 24514, 24385, 24256, 24383, 
00639                 24511, 24509, 24637, 24766, 24895, 25024, 24897, 24770, 7624, 
00640                 24382, 24509, 24637, 24766, 24767, 9163, 24504, 24638, 24895, 
00641                 24896, 24898, 24771, 24642, 24515, 24514, 24386, 24385, 24257,
00642                  24256, 24255, 24383, 24382, 24510, 24509, 24637, 24765, 
00643                 24766, 24894, 24895, 25023, 25024, 25025, 24897, 24769, 8013, 
00644                 24504, 24638, 24767, 7749, 7759, 24611, 8797, 24611, 8790, 
00645                 24511, 24767, 24769, 24641, 24386, 24257, 24128, 24255, 24382,
00646                  24638, 24766, 24767, 24895, 25406, 24895, 24894, 6473, 24894,
00647                  24895, 25406, 24895, 24767, 24766, 24636, 24382, 24255, 
00648                 24128, 24257, 24386, 24641, 24769, 24767, 24511, 8775, 8139, 
00649                 23716, 9948, 23716, 7505, 26432, 6330, 26432, 7238, 8136, 
00650                 24511, 24767, 24769, 24641, 24514, 24385, 24384, 24383, 24510,
00651                  24638, 24766, 24894, 25277, 7365, 25277, 24894, 24766, 24638,
00652                  24510, 24382, 7756, 24382, 24510, 24638, 24766, 24894, 25277,
00653                  7365, 25277, 24894, 24766, 24638, 24510, 24383, 24384, 24385,
00654                  24514, 24641, 24769, 24767, 24511, 8142, 7755, 24510, 24766, 
00655                 24770, 24514, 8256, 24612, 8273, 24509, 24754, 24782, 24515, 
00656                 7492, 24895, 24897, 24385, 24383, 8256, 26176, 7744, 24895, 
00657                 24897, 24385, 24383, 7484, 7755, 24510, 24766, 24770, 24514, 
00658                 8256, 24626, 8260, 24510, 24892, 24510, 24514, 24900, 24514, 
00659                 8252, 24626, 8260, 24510, 24766, 24770, 24514, 7505, 24895, 
00660                 24897, 24385, 24383, 8256, 26176, 7744, 24895, 24897, 24385, 
00661                 24383, 7218, 24895, 24897, 24385, 24383, 8256, 26176, 7744, 
00662                 24895, 24897, 24385, 24383, 7498, 8651, 24619, 6613, 26304, 
00663                 7222, 25664, 6581, 26304, 7242, 7622, 25394, 8270, 23858, 
00664                 7754, 26426, 8262, 22842, 8900, 7232, 6720, 6208, 5696, 5184, 
00665                 4672, 4160, 3648, 3136, 5196, 5172, 5192, 5176, 5188, 5180, 
00666                 7232, 26688, 7240, 24624, 8264, 7224, 26704, 6208, 26672, 
00667                 7240, 8248, 25672, 23624, 23608, 25656, 8264, 7224, 26688, 
00668                 24656, 22592, 24624, 9288, 7232, 25152, 25156, 8260, 24636, 
00669                 25148, 8768, 24128, 24124, 8252, 24644, 24132, 8768, 7224, 
00670                 25156, 24648, 7748, 25148, 25664, 8772, 24124, 24632, 8764, 
00671                 24132, 23616, 8772, 7232, 26688, 7240, 24624, 8768, 23616, 
00672                 7748, 24648, 8772, 25664, 8764, 24632, 7236, 7224, 26704, 
00673                 6208, 26672, 8260, 24124, 7232, 24132, 8264, 25156, 9280, 
00674                 25148, 7228, 7744, 24128, 8264, 25148, 8768, 24644, 9280, 
00675                 24124, 8252, 25152, 8248, 24132, 7744, 24636, 7232, 25156, 
00676                 8772, 7228, 24648, 25156, 25664, 25148, 24632, 24124, 23616, 
00677                 24132, 9284, 8644, 24511, 24767, 24769, 24641, 24386, 24385, 
00678                 24256, 24255, 24382, 24509, 24638, 24765, 24894, 25023, 24896,
00679                  25025, 24898, 7371, 24383, 24382, 24509, 24638, 24765, 24894,
00680                  24895, 8401, 24620, 7882, 7234, 26944, 24636, 7234, 6964, 
00681                 26944, 6988, 7235, 24770, 24897, 24896, 25023, 24895, 25023, 
00682                 24896, 24897, 24770, 5945, 26944, 5948, 26944, 7237, 7237, 
00683                 24767, 24511, 24513, 24641, 24770, 24769, 24897, 25024, 25023,
00684                  24767, 24766, 24638, 24510, 24511, 24126, 8395, 24895, 24767,
00685                  24766, 24638, 24510, 24382, 8013, 24510, 24753, 24783, 24514,
00686                  8254, 24632, 8246, 24511, 24767, 24769, 24513, 7880, 7745, 
00687                 24254, 25022, 8647, 23995, 25275, 7621, 26944, 7621, 25275, 
00688                 23995, 8647, 25022, 24254, 7747, 9287, 23744, 24127, 24383, 
00689                 24382, 24509, 24638, 24765, 24894, 24895, 25151, 25536, 6216, 
00690                 26176, 8138, 23980, 8523, 6987, 25515, 25557, 6714, 25920, 
00691                 7227, 9287, 23232, 24383, 24382, 24510, 24638, 24766, 24894, 
00692                 24895, 26048, 6204, 26688, 7241, 7239, 26048, 24895, 24894, 
00693                 24766, 24638, 24510, 24382, 24383, 23232, 8252, 26688, 7241, 
00694                 7879, 24255, 24382, 24509, 24638, 24765, 24894, 25023, 24896, 
00695                 25025, 24898, 24771, 24642, 24515, 24386, 24257, 24384, 8382, 
00696                 24630, 7621, 25920, 7360, 7879, 24255, 24382, 24509, 24638, 
00697                 24765, 24894, 25023, 24896, 25025, 24898, 24771, 24642, 24515,
00698                  24386, 24257, 24384, 8893, 23608, 8264, 25656, 7492, 7499, 
00699                 24619, 8405, 24619, 8267, 24898, 25025, 24896, 25023, 24766, 
00700                 24629, 7758, 24895, 24766, 24629, 6485, 25152, 7723, 25536, 
00701                 8768, 25536, 7636, 22840, 9406, 7115, 24896, 24895, 24767, 
00702                 24766, 25394, 24766, 24767, 6741, 24894, 24766, 25394, 24766, 
00703                 24895, 24768, 7246, 23602, 9294, 23730, 9556, 23351, 8895, 
00704                 7108, 25152, 25396, 7372, 25522, 25819, 6703, 6704, 27456, 
00705                 6736, 6737, 27456, 6703, 6991, 26912, 6993 };
00706 
00707 
00708     /* System generated locals */
00709     integer i__1, i__2;
00710 
00711     /* Local variables */
00712     static integer ioff, istr;
00713     static real xcur, ycur, scale;
00714     static integer is;
00715 #define nstrok ((integer *)&equiv_38)
00716     static integer ich, inc;
00717 #define ns01 ((integer *)&equiv_38)
00718 #define ns02 ((integer *)&equiv_38 + 100)
00719 #define ns03 ((integer *)&equiv_38 + 200)
00720 #define ns04 ((integer *)&equiv_38 + 300)
00721 #define ns05 ((integer *)&equiv_38 + 400)
00722 #define ns06 ((integer *)&equiv_38 + 500)
00723 #define ns07 ((integer *)&equiv_38 + 600)
00724 #define ns08 ((integer *)&equiv_38 + 700)
00725 #define ns09 ((integer *)&equiv_38 + 800)
00726 #define ns10 ((integer *)&equiv_38 + 900)
00727 #define ns11 ((integer *)&equiv_38 + 1000)
00728 #define ns12 ((integer *)&equiv_38 + 1100)
00729 #define ns13 ((integer *)&equiv_38 + 1200)
00730 #define ns14 ((integer *)&equiv_38 + 1300)
00731 #define ns15 ((integer *)&equiv_38 + 1400)
00732 #define ns16 ((integer *)&equiv_38 + 1500)
00733     static integer kst;
00734 #define ns17 ((integer *)&equiv_38 + 1600)
00735 #define ns18 ((integer *)&equiv_38 + 1700)
00736 #define ns19 ((integer *)&equiv_38 + 1800)
00737 #define ns20 ((integer *)&equiv_38 + 1900)
00738 #define ns21 ((integer *)&equiv_38 + 2000)
00739 #define ns22 ((integer *)&equiv_38 + 2100)
00740 #define ns23 ((integer *)&equiv_38 + 2200)
00741 #define ns24 ((integer *)&equiv_38 + 2300)
00742 #define ns25 ((integer *)&equiv_38 + 2400)
00743 #define ns26 ((integer *)&equiv_38 + 2500)
00744 #define ns27 ((integer *)&equiv_38 + 2600)
00745 #define ns28 ((integer *)&equiv_38 + 2700)
00746 #define ns29 ((integer *)&equiv_38 + 2800)
00747 #define ns30 ((integer *)&equiv_38 + 2900)
00748 #define ns31 ((integer *)&equiv_38 + 3000)
00749 #define ns32 ((integer *)&equiv_38 + 3100)
00750 #define ns33 ((integer *)&equiv_38 + 3200)
00751 #define ns34 ((integer *)&equiv_38 + 3300)
00752 #define ns35 ((integer *)&equiv_38 + 3400)
00753 #define ns36 ((integer *)&equiv_38 + 3500)
00754 #define ns37 ((integer *)&equiv_38 + 3600)
00755 #define ns38 ((integer *)&equiv_38 + 3700)
00756 #define ns39 ((integer *)&equiv_38 + 3800)
00757 
00758 
00759 /*  Convert a string of generalized characters into a set of strokes, */
00760 /*  normalized to character size = 1.  The stroke tables are taken */
00761 /*  from the C source code to the program "axis". */
00762 
00763 
00764 /* ..................................................................... 
00765 */
00766 /*  A list of the offsets of the start of the stroke data for each */
00767 /*  character.   0 means a control character */
00768 
00769 
00770 
00771     /* Parameter adjustments */
00772     --lstr;
00773     --ystr;
00774     --xstr;
00775 
00776     /* Function Body */
00777 /* ..................................................................... 
00778 */
00779 /*  List of the number of strokes in each character. */
00780 /*  For control characters, the entry is the switch index. */
00781 
00782 /* ..................................................................... 
00783 */
00784 /*  List of the strokes, stored in the format */
00785 /*   16384*blanking + 128*(DX+64) + (DY+64) */
00786 
00787 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00788  */
00789     *nstr = 0;
00790     xcur = 0.f;
00791     ycur = 0.f;
00792     scale = .051f;
00793 
00794     i__1 = *nch;
00795     for (inc = 1; inc <= i__1; ++inc) {
00796 
00797 /*  Load the offset into the stroke table and the number of strokes */
00798 
00799         ich = *(unsigned char *)&ch[inc - 1];
00800         if (ich <= 0) {
00801             ich += 256;
00802         }
00803 
00804         ioff = noff[ich];
00805         istr = numstr[ich];
00806 /* ...................................................................
00807 .. */
00808 /*  If the offset is 0, this is a control character, so treat it */
00809 /*  specially -- ISTR is the control code in this case: */
00810 /*     1 = start superscript */
00811 /*     2 = end superscript */
00812 /*     3 = start subscript */
00813 /*     4 = end subscript */
00814 /*     5,6,7,8,9,10,11 = change color */
00815 
00816         if (ioff <= 0) {
00817             if (istr == 1) {
00818                 xcur -= scale * 2.666667f;
00819                 ycur += scale * 12.f;
00820                 scale *= .6666667f;
00821             } else if (istr == 2) {
00822                 scale *= 1.5f;
00823                 xcur += scale * 4.f;
00824                 ycur -= scale * 12.f;
00825             } else if (istr == 3) {
00826                 xcur -= scale * 2.666667f;
00827                 ycur -= scale * 12.f;
00828                 scale *= .6666667f;
00829             } else if (istr == 4) {
00830                 scale *= 1.5f;
00831                 xcur += scale * 4.f;
00832                 ycur += scale * 12.f;
00833             } else if (istr >= 5 && istr <= 11) {
00834                 ++(*nstr);
00835                 lstr[*nstr] = istr + 96;
00836                 xstr[*nstr] = xcur;
00837                 ystr[*nstr] = ycur;
00838             }
00839 /* ...............................................................
00840 ...... */
00841 /*  Check if this is a newline character */
00842 
00843         } else if (ich == 10) {
00844             xcur = 0.f;
00845             ycur += -1.1f;
00846 /* ...............................................................
00847 ...... */
00848 /*  Otherwise, this is a real character with real strokes */
00849 
00850         } else {
00851             i__2 = istr - 1;
00852             for (is = 0; is <= i__2; ++is) {
00853                 ++(*nstr);
00854                 kst = nstrok[ioff + is - 1];
00855 
00856                 lstr[*nstr] = 0;
00857                 if (kst >= 16384) {
00858                     lstr[*nstr] = 1;
00859                     kst += -16384;
00860                 }
00861 
00862                 xcur += scale * (real) (kst / 128 - 64);
00863                 ycur += scale * (real) (kst % 128 - 64);
00864                 if (is == istr - 1) {
00865                     xcur += scale * 24.f;
00866                 }
00867 
00868                 xstr[*nstr] = xcur;
00869                 ystr[*nstr] = ycur;
00870 /* L500: */
00871             }
00872         }
00873 
00874 /* L900: */
00875     }
00876     return 0;
00877 } /* zzstro_ */
00878 
00879 #undef ns39
00880 #undef ns38
00881 #undef ns37
00882 #undef ns36
00883 #undef ns35
00884 #undef ns34
00885 #undef ns33
00886 #undef ns32
00887 #undef ns31
00888 #undef ns30
00889 #undef ns29
00890 #undef ns28
00891 #undef ns27
00892 #undef ns26
00893 #undef ns25
00894 #undef ns24
00895 #undef ns23
00896 #undef ns22
00897 #undef ns21
00898 #undef ns20
00899 #undef ns19
00900 #undef ns18
00901 #undef ns17
00902 #undef ns16
00903 #undef ns15
00904 #undef ns14
00905 #undef ns13
00906 #undef ns12
00907 #undef ns11
00908 #undef ns10
00909 #undef ns09
00910 #undef ns08
00911 #undef ns07
00912 #undef ns06
00913 #undef ns05
00914 #undef ns04
00915 #undef ns03
00916 #undef ns02
00917 #undef ns01
00918 #undef nstrok
00919 
00920 
00921 
00922 
00923 
00924 /* Subroutine */ int zzconv_(char *chin, integer *nchin, char *chout, integer 
00925         *nchout, ftnlen chin_len, ftnlen chout_len)
00926 {
00927     /* Initialized data */
00928 
00929     static char chesc[15] = "\\esc           ";
00930     static char chnesc[15] = "\\noesc         ";
00931     static char chtex[15*113] = "\\Plus          " "\\Cross         " "\\Dia"
00932             "mond       " "\\Box           " "\\FDiamond      " "\\FBox      "
00933             "    " "\\FPlus         " "\\FCross        " "\\Burst         " 
00934             "\\Octagon       " "\\alpha         " "\\beta          " "\\gamm"
00935             "a         " "\\delta         " "\\epsilon       " "\\zeta       "
00936             "   " "\\eta           " "\\theta         " "\\iota          " 
00937             "\\kappa         " "\\lambda        " "\\mu            " "\\nu  "
00938             "          " "\\xi            " "\\omicron       " "\\pi         "
00939             "   " "\\rho           " "\\sigma         " "\\tau           " 
00940             "\\upsilon       " "\\phi           " "\\chi           " "\\psi "
00941             "          " "\\omega         " "\\Alpha         " "\\Beta       "
00942             "   " "\\Gamma         " "\\Delta         " "\\Epsilon       " 
00943             "\\Zeta          " "\\Eta           " "\\Theta         " "\\Iota"
00944             "          " "\\Kappa         " "\\Lambda        " "\\Mu         "
00945             "   " "\\Nu            " "\\Xi            " "\\Omicron       " 
00946             "\\Pi            " "\\Rho           " "\\Sigma         " "\\Tau "
00947             "          " "\\Upsilon       " "\\Phi           " "\\Chi        "
00948             "   " "\\Psi           " "\\Omega         " "\\propto        " 
00949             "\\int           " "\\times         " "\\div           " "\\appr"
00950             "ox        " "\\partial       " "\\cap           " "\\?          "
00951             "   " "\\langle        " "\\rangle        " "\\ddagger       " 
00952             "\\pm            " "\\leq           " "\\S             " "\\hbar"
00953             "          " "\\lambar        " "\\cup           " "\\degree     "
00954             "   " "\\nabla         " "\\downarrow     " "\\leftarrow     " 
00955             "\\rightarrow    " "\\leftrightarrow" "\\oint          " "\\in  "
00956             "          " "\\notin         " "\\surd          " "\\_          "
00957             "   " "\\bar           " "\\exists        " "\\geq           " 
00958             "\\forall        " "\\subset        " "\\oplus         " "\\otim"
00959             "es        " "\\dagger        " "\\neq           " "\\supset     "
00960             "   " "\\infty         " "\\uparrow       " "\\#             " 
00961             "\\$             " "\\%             " "\\&             " "\\{   "
00962             "          " "\\}             " "\\\\             " "\\cents     "
00963             "    " "\\black         " "\\red           " "\\blue          " 
00964             "\\green         " "\\yellow        " "\\magenta       " "\\cyan"
00965             "          ";
00966     static integer ichext[113] = { 176,177,178,179,180,181,182,183,184,185,
00967             225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,
00968             241,242,243,244,245,246,247,248,193,194,195,196,197,198,199,200,
00969             201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,
00970             128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,
00971             160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,
00972             186,187,188,189,190,191,255,96,35,36,37,38,123,125,92,94,148,149,
00973             150,151,152,153,154 };
00974 
00975     /* System generated locals */
00976     integer i__1;
00977 
00978     /* Builtin functions */
00979     integer s_cmp(char *, char *, ftnlen, ftnlen);
00980     /* Subroutine */ int s_copy(char *, char *, ftnlen, ftnlen);
00981 
00982     /* Local variables */
00983     static logical lesc;
00984     static integer itop;
00985     static logical lout;
00986     static integer i__, nused, nsupb;
00987     static char chcont[15];
00988     static integer ntsupb[10], inc;
00989 
00990 
00991 /*  Convert input string (using TeX-like escapes) to extended character */
00992 /*  set, for plotting with ZZSTRO. */
00993 
00994 /* .......................................................................
00995  */
00996 
00997 /*  super/subscript control characters */
00998 
00999 /* .......................................................................
01000  */
01001 /*  INC    = input character being scanned */
01002 /*  NUSED  = no. of input characters consumed by this operation */
01003 /*  NSUPB  = super/subscript level */
01004 /*  NTSUPB = super/subscript type at each level: */
01005 /*                1 = single character superscript -- like a^b */
01006 /*                2 = multi-character superscript -- like a^{b+c} */
01007 /*            -1,-2 = similar for subscripts */
01008 /*  LOUT   = .TRUE. if we just output something to CHOUT, */
01009 /*           otherwise .FALSE. */
01010 
01011 
01012 /*  Table of Tex-like escapes */
01013 
01014 
01015 /*  Corresponding extended character set bytes */
01016 
01017 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
01018  */
01019 /*  Test if a character is alphabetic */
01020 
01021 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
01022  */
01023     *nchout = 0;
01024     nsupb = 0;
01025     inc = 1;
01026 /* -----------------------------------------------------------------------
01027  */
01028 /*  Process input character no. INC */
01029 
01030     lesc = TRUE_;
01031 L100:
01032 
01033 /* CC      WRITE(*,666) 'ZZCONV at: ' // CHIN(INC:INC) */
01034 /* CC666   FORMAT(A) */
01035 
01036     lout = FALSE_;
01037 
01038 /*  Superscript:  ^{ starts a multi-character superscript, otherwise */
01039 /*                ^ starts a single-character superscript */
01040 
01041     if (lesc && *(unsigned char *)&chin[inc - 1] == '^' && inc < *nchin) {
01042         ++nsupb;
01043         i__1 = inc;
01044         if (s_cmp(chin + i__1, "{", inc + 1 - i__1, 1L) == 0) {
01045             ntsupb[nsupb - 1] = 2;
01046             nused = 2;
01047         } else {
01048             ntsupb[nsupb - 1] = 1;
01049             nused = 1;
01050         }
01051         ++(*nchout);
01052         *(unsigned char *)&chout[*nchout - 1] = 144;
01053 /* CC            WRITE(*,666) ' start superscript' */
01054 /* ...................................................................
01055 .... */
01056 /*  Subscript:  similar to above code */
01057 
01058     } else if (lesc && *(unsigned char *)&chin[inc - 1] == '_' && inc < *
01059             nchin) {
01060         ++nsupb;
01061         i__1 = inc;
01062         if (s_cmp(chin + i__1, "{", inc + 1 - i__1, 1L) == 0) {
01063             ntsupb[nsupb - 1] = -2;
01064             nused = 2;
01065         } else {
01066             ntsupb[nsupb - 1] = -1;
01067             nused = 1;
01068         }
01069         ++(*nchout);
01070         *(unsigned char *)&chout[*nchout - 1] = 146;
01071 /* CC            WRITE(*,666) ' start subscript' */
01072 /* ...................................................................
01073 .... */
01074 /*  If in super/subscript mode and we have a '}', then this terminates
01075  */
01076 /*  the current level of super/subscripts */
01077 
01078     } else if (lesc && *(unsigned char *)&chin[inc - 1] == '}' && nsupb > 0) {
01079         nused = 1;
01080         ++(*nchout);
01081         if (ntsupb[nsupb - 1] > 0) {
01082             *(unsigned char *)&chout[*nchout - 1] = 145;
01083         } else {
01084             *(unsigned char *)&chout[*nchout - 1] = 147;
01085         }
01086         --nsupb;
01087 /* CC            WRITE(*,666) ' end compound super/subscript' */
01088 /* ...................................................................
01089 .... */
01090 /*  Anything else that doesn't start with a \ is passed straight throu
01091 gh */
01092 
01093     } else if (! lesc || *(unsigned char *)&chin[inc - 1] != '\\') {
01094         lout = TRUE_;
01095         nused = 1;
01096         ++(*nchout);
01097         *(unsigned char *)&chout[*nchout - 1] = *(unsigned char *)&chin[inc - 
01098                 1];
01099 /* CC            WRITE(*,666) ' passthru' */
01100 /* ...................................................................
01101 .... */
01102 /*  If it started with a \ but we are at the last character, quit */
01103 
01104     } else if (inc == *nchin) {
01105 /* CC            WRITE(*,666) ' end of input' */
01106         goto L8000;
01107 /* ...................................................................
01108 .... */
01109 /*  TeX-like escapes -- there are 2 possibilities: */
01110 /*   1)  \asciistring */
01111 /*   2)  \specialcharacter */
01112 
01113     } else {
01114         itop = inc + 1;
01115 
01116 /*  If the next character is alphabetic, then scan until end-of-input 
01117 */
01118 /*  or a non-alphabetic character is found.  This will be the end */
01119 /*  of the escape sequence. */
01120 
01121         i__1 = *(unsigned char *)&chin[itop - 1];
01122         if (i__1 >= 'A' && i__1 <= 'Z' || i__1 >= 'a' && i__1 <= 'z') {
01123 L200:
01124             ++itop;
01125             if (itop > *nchin) {
01126                 goto L300;
01127             }
01128             i__1 = *(unsigned char *)&chin[itop - 1];
01129             if (i__1 >= 'A' && i__1 <= 'Z' || i__1 >= 'a' && i__1 <= 'z') {
01130                 goto L200;
01131             }
01132 L300:
01133             --itop;
01134 
01135 /*  If the character following the \asciistring is a blank, skip i
01136 t also */
01137 
01138             if (itop < *nchin) {
01139                 i__1 = itop;
01140                 if (s_cmp(chin + i__1, " ", itop + 1 - i__1, 1L) == 0) {
01141                     ++itop;
01142                 }
01143             }
01144         }
01145 
01146 /*  At this point, characters INC thru ITOP are the escape sequence. 
01147 */
01148 /*  Check for a match with the table. */
01149 
01150         nused = itop - inc + 1;
01151         s_copy(chcont, chin + (inc - 1), 15L, itop - (inc - 1));
01152 
01153         for (i__ = 1; i__ <= 113; ++i__) {
01154             if (s_cmp(chcont, chtex + (i__ - 1) * 15, 15L, 15L) == 0) {
01155                 goto L410;
01156             }
01157 /* L400: */
01158         }
01159         i__ = 0;
01160 L410:
01161 
01162 /*  If a match, enter the control character into the output; */
01163 /*  if no match, just ignore it */
01164 
01165         if (i__ > 0) {
01166             lout = TRUE_;
01167             ++(*nchout);
01168             *(unsigned char *)&chout[*nchout - 1] = (char) ichext[i__ - 1];
01169 /* CC               WRITE(*,666) ' TeX escape: ' // CHCONT */
01170 /* CC            ELSE */
01171 /* CC               WRITE(*,666) ' unknown TeX escape: ' // CHCONT
01172  */
01173         } else if (s_cmp(chcont, chnesc, 15L, 15L) == 0) {
01174             lesc = FALSE_;
01175         } else if (s_cmp(chcont, chesc, 15L, 15L) == 0) {
01176             lesc = TRUE_;
01177         }
01178     }
01179 /* .......................................................................
01180  */
01181 /*  If we are in single-character super/subscript mode, we must drop */
01182 /*  out of it after outputting something */
01183 
01184     if (lout && nsupb > 0) {
01185         if (ntsupb[nsupb - 1] == 1) {
01186             --nsupb;
01187             ++(*nchout);
01188             *(unsigned char *)&chout[*nchout - 1] = 145;
01189 /* CC           WRITE(*,666) ' end single-character superscript' 
01190 */
01191         } else if (ntsupb[nsupb - 1] == -1) {
01192             --nsupb;
01193             ++(*nchout);
01194             *(unsigned char *)&chout[*nchout - 1] = 147;
01195 /* CC           WRITE(*,666) ' end single-character subscript' */
01196         }
01197     }
01198 
01199 /*  "Use up" the appropriate number of characters, and go on to */
01200 /*  the next bunch */
01201 
01202     inc += nused;
01203     if (inc <= *nchin) {
01204         goto L100;
01205     }
01206 /* -----------------------------------------------------------------------
01207  */
01208 L8000:
01209     return 0;
01210 } /* zzconv_ */
01211 
 

Powered by Plone

This site conforms to the following standards: