

void init_globals (void);
void free_buffers (void);
void local_echo (int *sym);
void read_sym (void);
int fail_with (char *mess, char culprit);
void percent (char Command_sym);
void unchain(void);
void stack(void);
void execute_command(void);
void Scan_sign(void);
void Scan_scope(void);
void Scan_text(void);
void Scan_repeat (void);
int analyse (void);
void load_file (void);
int execute_unit (void);
void execute_all (void);
char case_op (char sym);
int right (void);
int left (void);
void right_star(void);
void left_star(void);
void move (void);
void move_back(void);
void move_star (void);
void move_back_star (void);
void insert (void);
void insert_back (void);
int verify(void);
int verify_back (void);
int find (void);
int find_back (void);
static long buffer_size;
static char *note_file;
static int ok;
static int printed;
static long stopper;
static int max_unit;
static char pending_sym;
static char *fbeg;
static char *lbeg;
static char *pp;
static char *fp;
static char *lend;
static char *fend;
static int type;
static char command;
static long repeat_count;
static long limit;
static int pointer;
static int last_unit;
static int this_unit;
static int pos;
static int endpos;
static int sym;
static long number;
static char *pp_before;
static char *fp_before;
static char *ms;
static char *ms_back;
static char *ml;
static char *ml_back;
static int to_upper_case;
static int to_lower_case;
static int caseflip;
static int blank_line;
static char *eprompt;
static char *noted;
static int changes;
static int in_second;
static char *com_prompt;
static int sym_type[] = {
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   64 +15,
   128,
   64 +32 +7,
   16,
   128,
   128,
   64 +1,
   128,
   16,
   64 +2,
   64 +4,
   64 +32 +8,
   64 +5,
   64 +3,
   64 +6,
   16,
   16,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   64 +32 +0,
   16,
   64 +15,
   64 +2,
   16,
   64 +4,
   0,
   128,
   4,
   8 +1,
   8 +1,
   8 +4 +2 +1,
   8 +1,
   8 +4 +2 +1,
   8 +1,
   4,
   8 +2 +1,
   8 +1,
   8 +1,
   8 +1,
   8 +1,
   0,
   128,
   8 +1,
   128,
   8 +1,
   8 +2,
   8 +4 +2 +1,
   8 +4 +2 +1,
   8 +2,
   128,
   128,
   128,
   128,
   64 +2,
   0,
   64 +4,
   64 +6,
   16,
   128,
   128,
   8 +1,
   8 +1,
   8 +4 +2 +1,
   8 +1,
   8 +4 +2 +1,
   8 +1,
   128,
   8 +2 +1,
   8 +1,
   8 +1,
   8 +1,
   8 +1,
   128,
   128,
   8 +1,
   128,
   8 +1,
   8 +2,
   8 +4 +2 +1,
   8 +4 +2 +1,
   8 +2,
   128,
   128,
   128,
   128,
   64 +2,
   0,
   64 +4,
   64 +6,
   16
 , 128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128,
   128, 128, 128, 128, 128, 128, 128, 128
};
static char *a;
static FILE *main_in;
static FILE *main_out;
static FILE *tty_in;
static FILE *tty_out;
static FILE *log_out;
static char *com;
static int *link;
static char *text;
static long *num;
static long *lim;
static int argcmp(char *si, char *sm)
{ register int n = strlen(si);
   if (n > strlen(sm)) return ((0!=0));
   while (n-- > 0) if ((('a'<=(si[n])&&(si[n])<='z')?(si[n])-'a'+'A':(si[n])) != (('a'<=(sm[n])&&(sm[n])<='z')?(sm[n])-'a'+'A':(sm[n]))) return ((0!=0));
   return ((0==0));
}
char *rdargs(char *key, char *Cargv[], char *Bargv[], int Cargc, int Bargc)
{ char *keynames[50];
   int keyflags[50];
   char keycopy[256];
   register int nkeys;
   register char *keyp = keycopy;
   register int nfree;
   for (nkeys = 0; nkeys <= Bargc; nkeys++) Bargv[nkeys] = (char *) 0;
   Bargv[0] = Cargv[0];
   nkeys = 0;
   while (*key) {
      while (*key == ' ') key++;
      if (*key == '\0') break;
      keynames[nkeys] = keyp;
      keyflags[nkeys] = 0;
      while (*key != '\0' && *key != ' ' && *key != '/') {
         *keyp++ = *key++;
         if (keyp + 1 >= keycopy + sizeof(keycopy))
            return("Keystring too long");
      }
      *keyp++ = 0;
      if (*key == '/') {
 while (*(++key) != ' ' && *key != '\0') {
            switch (*key) {
               case 'A':
               case 'a':
                    keyflags[nkeys] |= 1;
                    break;
               case 'S':
               case 's':
                    keyflags[nkeys] |= 2;
                    break;
               case 'K':
               case 'k':
                    keyflags[nkeys] |= 4;
                    break;
               default:
                    return ("Bad switch in key string");
            }
         }
      }
      nkeys++;
      if (nkeys == 50) return ("Too many keys");
   }
   Cargv++;
   Cargc--;
   if (Bargc < nkeys) return ("Argument vector is too small");
   nfree = 0;
   while (Cargc-- > 0) {
      if (**Cargv == '-') {
         register int itmp;
         register int found = (0!=0);
         keyp = (*Cargv++) + 1;
         for (itmp = 0; itmp < nkeys; itmp++)
            if (argcmp(keyp, keynames[itmp])) {
               if ((keyflags[itmp] & 2) != 0) Bargv[itmp+1] = keyp;
               else {
                  if (Cargc < 1 || **Cargv == '-')
                     return("Missing parameter");
                  if (Bargv[itmp+1] != (char *)0)
                     return("Duplicate parameter");
                  Bargv[itmp+1] = *Cargv++;
                  Cargc--;
               }
               found = (0==0);
               break;
            }
         if (!found) return("Unrecognised argument");
      } else {
         while ((nfree < nkeys) &&
           ((Bargv[nfree+1] != (char *) 0) ||
             (keyflags[nfree] & (4|2)) != 0))
                nfree++;
         if (nfree < Bargc) Bargv[1+nfree++] = *Cargv++;
         else return ("Excess parameters");
      }
   }
   return ( (char *) 0);
}
extern void exit(int rc);
extern char *malloc(int bytes);
static int IntSeen;
static char *ARGV[4 +1];
int main(int argc, char **argv) {
char *errstr;
   errstr = rdargs("FROM/A TO LOG/K SIZE/K", argv, argc, ARGV, 4);
   if (ARGV[1] == 0) {
      fprintf (stderr,
         "%s: {-from} infile {{-to} outfile}? {-log file}? {-size bytes}?\n",
          ARGV[0]);
      exit (30);
   }
   if (errstr != 0) {
      fprintf (stderr, "%s: %s\n", ARGV[0], errstr);
      exit (20);
   }
   IntSeen = (0!=0);
   tty_in = stdin;
   tty_out = stderr;
   main_in = fopen (ARGV[1], "rb");
   if (main_in == 0) {
      fprintf (stderr, "File \"%s\" not found\n",ARGV[1]);
      exit (30);
   }
   if (ARGV[3] == 0) {
      log_out = 0;
   } else {
      log_out = fopen (ARGV[3], "wb");
      if (log_out == 0) {
         fprintf (stderr, "%s: Warning - can't create \"%s\"\n",
          ARGV[0], ARGV[3]);
      }
   }
   if (ARGV[4] == 0) {
      buffer_size = (2*1024*1024);
   } else {
      long n = 0;
      char *c = ARGV[4];
      while (('0'<= *c) && (*c <= '9')) n = n*10 + *c++ - '0';
      buffer_size = n;
   }
   if (buffer_size == 0) buffer_size = 20*1024;
   init_globals ();
   a[0] = '\n';
   a[buffer_size] = '\n';
   fprintf (tty_out, "Ecce\n");
   if (main_in != 0) load_file ();
   percent ('E');
   for (;;) {
      if (analyse ()) {
         printed = (0!=0);
         execute_all ();
         command = 'P';
         repeat_count = 1;
         if (!printed) execute_command ();
      }
   }
}
void init_globals (void) {
   a = malloc(buffer_size+1);
   note_file = malloc (127 +1);
   com = malloc (127 +1);
   link = (int *) malloc ((127 +1)*4);
   text = malloc (127 +1);
   num = (long *) malloc ((127 +1)*4);
   lim = (long *) malloc ((127 +1)*4);
   com_prompt = malloc (127 +1);
   if (a == 0 || note_file == 0 || com == 0 ||
    link == 0 || text == 0 || num == 0 || lim == 0 ||
    com_prompt == 0) {
      fprintf (stderr, "Unable to claim buffer space\n");
      free_buffers();
      exit (40);
   }
   fprintf (stderr, "Buffer space = %d KBytes\n", buffer_size>>10);
   fbeg = a+1;
   lbeg = fbeg;
   pp = lbeg;
   fp = a+buffer_size;
   lend = fp;
   fend = lend;
   ms = 0;
   ms_back = 0;
   stopper = -buffer_size;
   max_unit = -1;
   pending_sym = '\n';
   blank_line = (0==0);
   (void) (strcpy(note_file, "/tmp/Note0"));
   noted = 0;
   changes = 0;
   in_second = (0!=0);
   (void) (strcpy(com_prompt, ">"));
}
void free_buffers (void) {
}
void local_echo (int *sym) {
  int lsym;
   if (blank_line) fprintf(tty_out, eprompt);
   lsym = fgetc (tty_in);
   if (lsym == EOF) {
      percent ('c');
      exit (50);
   }
   if (log_out != 0) {
      fputc (lsym, log_out);
   }
   blank_line = (lsym == '\n');
   *sym = lsym;
}
void read_sym (void) {
   if (pending_sym == 0) {
      do { local_echo (&sym); } while (sym == ' ');
   } else {
      sym = pending_sym;
      pending_sym = 0;
   }
}
int fail_with (char *mess, char culprit) {
 int dirn_sign;
   if (('a' <= culprit) && (culprit <= 'z')) {
      dirn_sign = '-';
   } else {
     if ((culprit & 128) != 0) {
        dirn_sign = '+';
     } else {
        dirn_sign = ' ';
     }
   }
   culprit = culprit & (~128);
   if (('A' <= culprit) && (culprit <= 'Z'))
      culprit = culprit | ('a'-'A');
   fprintf (stderr, "* %s %c%c\n", mess, culprit, dirn_sign);
   do { read_sym (); } while (sym_type[sym] != sym_type[';']);
   return (ok = (0!=0));
}
void read_item(void) {
   int saved_digit;
   read_sym ();
   if (('a' <= sym) && (sym <= 'z'))
      sym = sym - ('a'-'A');
   type = sym_type[sym];
   if ((type & 64) == 0) return;
   switch (type & 15) {
      case 8:
         number = 0;
         return;
      case 7:
         number = stopper-1;
         return;
      case 0:
         saved_digit = sym;
         number = 0;
         do {
            number = (number * 10) + (sym - '0');
            read_sym();
         } while (('0' <= sym) && (sym <= '9'));
         pending_sym = sym;
         sym = saved_digit;
         return;
      default:
         return;
   }
}
void percent (char Command_sym) {
   static char note_sec = '0';
   char Emergency[256];
   char *P;
   int p;
   int sec_no;
   int file_wanted;
   char sec_file[256];
   char *sec_filep;
   ok = (0==0);
   if (!(('a' <= Command_sym | ('a'-'A')) && (Command_sym | ('a'-'A') <= 'z'))) {
      (void) fail_with ("letter for", '%');
      return;
   }
   switch (Command_sym) {
      case 'L':
         to_upper_case = ~0;
         to_lower_case = ('a'-'A');
         caseflip = 0;
         break;
      case 'U':
         to_upper_case = ~('a'-'A');
         to_lower_case = 0;
         caseflip = 0;
         break;
      case 'N':
         to_upper_case = ~0;
         to_lower_case = 0;
         caseflip = ('a'-'A');
         break;
      case 'E':
         to_upper_case = ~('a'-'A');
         to_lower_case = 0;
         caseflip = ('a'-'A');
         break;
      case 'V':
         fprintf (tty_out, "Ecce V2.5 in C Wed Jan 25 11:17:12 GMT 1989\n");
         break;
      case 'W':
      case 'C':
         do { read_sym (); } while (sym_type[sym] != sym_type[';']);
         if (ARGV[2] == 0) {
            p = 1;
         } else {
            p = 2;
         }
      case 'c':
         if (in_second) {
            FILE *sec_out = fopen (note_file, "wb");
            (void) (strcpy(com_prompt, ">"));
            if (sec_out == 0) {
               (void) fail_with ("Cannot save context", ' ');
               break;
            }
            P = fbeg;
            for (;;) {
               if (P == pp) P = fp;
               if (P == fend) break;
               fputc (*P++, sec_out);
            }
            fclose (sec_out);
            pp = fbeg - 1;
            fp = fend + 1;
            fbeg = a+1;
            fend = a+buffer_size;
            lbeg = pp;
            do { --lbeg; } while (*lbeg != '\n');
            lbeg++;
            lend = fp;
            while (*lend != '\n') lend++;
            in_second = (0!=0);
         }
         if (Command_sym == 'c') {
            ARGV[p] = "/tmp/EcceSaved";
            main_out = fopen (ARGV[p], "wb");
            if (main_out == 0) {
               ARGV[p] = "/tmp/EcceSav";
               main_out = fopen (ARGV[p], "wb");
            }
            if (main_out == 0) {
               fprintf(stderr,
                       "Sorry - I can't save your edit (I tried hard...)\n");
               exit(90);
            }
            fprintf (tty_out, "Ecce abandoned: saving to %s\n", ARGV[1]);
         } else {
            main_out = fopen (ARGV[p], "wb");
            if (main_out == 0) {
               fprintf (stderr,
                        "Can't create \"%s\" - supply alternative filename\n",
                        ARGV[p]);
                  eprompt = "File: ";
                  (void) (strcpy(Emergency, "/tmp/EcceTmp"));
                  main_out = fopen (Emergency, "wb");
               fprintf (stderr,
                  "Writing to file %s instead of %s\n", Emergency, ARGV[p] );
            } else {
               if (p == 2) {
                  fprintf (tty_out,
                           "Ecce %s to %s completing.\n", ARGV[1], ARGV[2]);
               } else {
                  fprintf (tty_out, "Ecce %s completing.\n", ARGV[1]);
               }
            }
         }
         P = fbeg;
         for (;;) {
            if (P == pp) P = fp;
            if (P == fend) break;
            fputc (*P++, main_out);
         }
         fclose (main_out);
         if (Command_sym == 'W') {
            pending_sym = '\n';
            break;
         }
         if (log_out != 0) {
            fclose (log_out);
         }
         free_buffers ();
         exit (0);
      case 'A':
         if (log_out != 0) {
            fclose (log_out);
         }
         fprintf (stderr, "\nAborted!\n");
         free_buffers ();
         exit (60);
      case 'S':
         local_echo (&sec_no);
         file_wanted = (0!=0);
         if (sym_type[sec_no] == sym_type[';']) {sec_no = 0;}
         else if (sec_no == '=') {sec_no = '0'; file_wanted = (0==0);}
         else {
            if (sec_no == '!') {sec_no = '?';}
            else if (sec_no == '=') {sec_no = '0'; file_wanted = (0==0);}
            else if (!(('0' <= sec_no) && (sec_no <= '9'))) {
               (void) fail_with ("%S", sec_no);
               return;
            }
            local_echo (&sym);
            if (sym == '=') {
               file_wanted = (0==0);
            } else if (sym_type[sym] != sym_type[';']) {
               (void) fail_with ("%S?", sym);
               return;
            }
         }
         if (file_wanted) {
           sec_filep = &sec_file[0];
           do {
             read_sym();
             *sec_filep++ = sym;
           } while (sym != '\n');
           *(--sec_filep) = '\0';
         }
         pending_sym = '\n';
         note_file[9] = note_sec;
         if (in_second) {
            FILE *sec_out = fopen (note_file, "wb");
            (void) (strcpy(com_prompt, ">"));
            if (sec_out == 0) {
               (void) fail_with ("Cannot save context", ' ');
               return;
            }
            P = fbeg;
            for (;;) {
               if (P == pp) P = fp;
               if (P == fend) break;
               fputc (*P++, sec_out);
            }
            fclose (sec_out);
            pp = fbeg - 1;
            fp = fend + 1;
            fbeg = a+1;
            fend = a+buffer_size;
            lbeg = pp;
            do { --lbeg; } while (*lbeg != '\n');
            lbeg++;
            lend = fp;
            while (*lend != '\n') lend++;
            in_second = (0!=0);
            if (sec_no == 0) {
               return;
            }
         }
         if (sec_no == 0) sec_no = '0';
         note_file[9] = sec_no;
         note_sec = sec_no;
         {
            FILE *sec_in = (file_wanted
                             ? fopen (sec_file, "rb")
                             : fopen (note_file, "rb"));
            if (sec_in == 0) {
               if (file_wanted) {
                  (void) fail_with ("Cannot open file", sym);
               } else {
                  (void) fail_with ("Unknown context", sym);
               }
               return;
            }
            (void) (strcpy(com_prompt, "X>"));
            com_prompt[0] = sec_no;
            in_second = (0==0);
            *pp = '\n';
            fbeg = pp + 1;
            fend = fp - 1;
            pp = fbeg;
            fp = fend;
            *fend = '\n';
            lbeg = pp;
            P = pp;
            for (;;) {
               sym = fgetc(sec_in);
               if (sym == EOF) break;
               *P++ = sym;
               if (P == fend) {
                  (void) fail_with ("%S corrupt - no room", ' ');
                  fclose (sec_in);
                  return;
               }
            }
            fclose (sec_in);
            while (P != pp) *(--fp) = *(--P);
            lend = fp;
            while (*lend != '\n') lend++;
         }
         break;
      default:
         (void) fail_with ("Percent", Command_sym);
   }
   do { read_sym(); } while (sym_type[sym] != sym_type[';']);
}
void unchain(void) {
   do {
      pointer = last_unit;
      if (pointer < 0) return;
      last_unit = link[pointer];
      link[pointer] = this_unit;
   } while (com[pointer] != '(');
}
void stack(void) {
   com[this_unit] = command;
   link[this_unit] = pointer;
   num[this_unit] = repeat_count;
   lim[this_unit] = limit;
   this_unit++;
}
void execute_command(void) {
   char *i;
   int sym;
   ok = (0==0);
   switch (command & (~128)) {
      case 'p':
      case 'P':
         printed = (0==0);
         i = lbeg;
         for (;;) {
            if (i == noted) {
               fprintf (tty_out, "*** Note ***");
               if (i == lbeg) fputc ('\n', tty_out);
            }
            if (i == pp) {
               if (i != lbeg) fputc ('^', tty_out);
               i = fp;
            }
            if (i == lend) break;
            sym = (*i++)&255;
            if ((sym < 32) || (sym >= 127)) {
               fprintf (tty_out, "<%d>", sym);
            } else fputc (sym, tty_out);
         }
         if (i == fend) fprintf (tty_out, "*** End ***");
         fputc ('\n', tty_out);
         if (repeat_count == 1) return;
         if ((command & ('a'-'A')) != 0) {
            move_back (); left_star();
         } else {
            move ();
         }
         return;
      case 'g':
      case 'G':
         local_echo (&sym);
         if (sym == ':') {
            local_echo (&sym);
            pending_sym = sym;
            if (sym != '\n')
               printed = (0==0);
            ok = (0!=0);
            return;
         }
         left_star();
         for (;;) {
            *pp++ = sym;
            if (sym == '\n') break;
            local_echo (&sym);
         }
         lbeg = pp;
         if ((command & ('a'-'A')) != 0) {
            move_back();
            printed = (0==0);
         }
         return;
      case 'E':
         if (fp == lend) {
            ok = (0!=0);
            return;
         }
         if (repeat_count == 0) {
            fp = lend;
            ok = (0!=0);
         } else fp++;
         return;
      case 'e':
         if (pp == lbeg) {
            ok = (0!=0);
            return;
         }
         if (repeat_count == 0) {
            pp = lbeg;
            ok = (0!=0);
         } else --pp;
         return;
      case 'C':
         if (fp == lend) {
            ok = (0!=0);
            return;
         }
         sym = *fp++;
         if (('a' <= (sym | ('a'-'A'))) && ((sym | ('a'-'A')) <= 'z')) {
            if (caseflip != 0) {
               *pp++ = sym ^ ('a'-'A');
            } else {
               *pp++ = ((sym ^ ('a'-'A')) | to_lower_case) & to_upper_case;
            }
         } else {
            *pp++ = sym;
         }
         return;
      case 'c':
         if (pp == lbeg) {
            ok = (0!=0);
            return;
         }
         sym = *(--pp);
         if (('a' <= (sym | ('a'-'A'))) && ((sym | ('a'-'A')) <= 'z')) {
            if (caseflip != 0) {
       *(--fp) = sym ^ ('a'-'A');
            } else {
       *(--fp) = ((sym ^ ('a'-'A')) | to_lower_case) & to_upper_case;
            }
         } else {
    *(--fp) = sym;
         }
         return;
      case 'l':
      case 'R':
         if (repeat_count == 0) {
            right_star();
            ok = (0!=0);
         } else (void) right ();
         ms_back = 0;
         return;
      case 'r':
      case 'L':
         if (repeat_count == 0) {
            left_star();
            ok = (0!=0);
         } else (void) left ();
         ms = 0;
         return;
      case 'B':
         *pp++ = '\n';
         lbeg = pp;
         return;
      case 'b':
 *(--fp) = '\n';
         lend = fp;
         return;
      case 'J':
         right_star();
         if (fp == fend) {
            ok = (0!=0);
            return;
         }
         lend = ++fp;
         while (*lend != '\n')
            lend++;
         return;
      case 'j':
         left_star();
         if (pp == fbeg) {
            ok = (0!=0);
            return;
         }
         lbeg = --pp;
         do { --lbeg; } while (*lbeg != '\n');
         lbeg++;
         return;
      case 'M':
         if (repeat_count == 0) {
            move_star();
            ok = (0!=0);
         } else {
            move ();
         }
         return;
      case 'm':
         if (repeat_count == 0) {
            move_back_star();
            ok = (0!=0);
         } else {
            move_back(); left_star();
         }
         return;
      case 'k':
      case 'K':
         if ((command & ('a'-'A')) != 0) {
            move_back();
            if (!ok) return;
         }
         pp = lbeg;
         fp = lend;
         if (lend == fend) {
            ok = (0!=0);
            return;
         }
         lend = ++fp ;
         while (*lend != '\n') lend++;
         return;
      case 'V':
         (void) verify ();
         return;
      case 'v':
         (void) verify_back ();
         return;
      case 'F':
         (void) find ();
         return;
      case 'f':
         (void) find_back ();
         return;
      case 'U':
         if (!find ()) return;
         pp = pp_before;
         lbeg = pp;
         do { --lbeg; } while (*lbeg != '\n');
         lbeg++;
         return;
      case 'u':
         if (!find_back ()) return;
         fp = fp_before;
         lend = fp;
         while (*lend != '\n')
            lend++;
         return;
      case 'D':
         if (!find ()) return;
         fp = ml;
         ms = fp;
         return;
      case 'd':
         if (!find_back ()) return;
         pp = ml_back;
         ms_back = pp;
         return;
      case 'T':
         if (!find ()) return;
         while (fp != ml) *pp++ = *fp++;
         return;
      case 't':
         if (!find_back ()) return;
         while (pp != ml_back) *(--fp) = *(--pp);
         return;
      case 'I':
         insert ();
         return;
      case 'i':
         insert_back ();
         return;
      case 's':
      case 'S':
         if (fp == ms) {
            fp = ml;
         } else if (pp == ms_back) {
            pp = ml_back;
         } else {
            ok = (0!=0);
            return;
         }
         if ((command & ('a'-'A')) != 0) {
            insert_back ();
         } else {
            insert ();
         }
         return;
      case '(':
         ;
         num[pointer] = repeat_count;
         repeat_count = 1;
         ;
         return;
      case ')':
         ;
         --(num[this_unit]);
         if ((0 != num[this_unit]) && (num[this_unit] != stopper)) {
            ;
            this_unit = pointer;
         }
         repeat_count = 1;
         ;
         return;
      case '\\':
         ;
         ok = (0!=0);
         return;
      case '?':
         ;
         return;
      case ',':
         ;
         this_unit = pointer - 1;
         ;
         return;
      case 'N':
         noted = pp;
         changes = fp-pp;
         return;
      case 'A':
         if ((noted == 0)
          || (noted >= pp)
          || (changes != fp-pp)) {
            ok = (0!=0);
            return;
         }
         note_file[9] = lim[this_unit]+'0';
         {
            FILE *note_out = fopen (note_file, "wb");
            char *p = noted;
            if (note_out == 0) {
               ok = (0!=0);
               return;
            }
            do {
               fputc (*p++, note_out);
            } while (p != pp);
            fclose (note_out);
            pp = noted;
            lbeg = pp;
            do { --lbeg; } while (*lbeg != '\n');
            lbeg++;
         }
         noted = 0;
         return;
      case 'H':
         note_file[9] = lim[this_unit]+'0';
         {
            FILE *note_in = fopen (note_file, "rb");
            if (note_in == 0) {
               ok = (0!=0);
               return;
            }
            { char *p = pp;
               for (;;) {
                  sym = fgetc(note_in);
                  if (sym == EOF) break;
                  *p++ = sym;
                  if (p == fp) {
                     fclose (note_in);
                     ok = (0!=0);
                     return;
                  }
               }
               pp = p;
            }
            lbeg = pp;
            do { --lbeg; } while (*lbeg != '\n');
            lbeg++;
            fclose (note_in);
         }
         return;
      default:
         (void) fail_with ("Unrecognised command", command);
         return;
   }
}
void Scan_sign(void) {
   read_sym ();
   if (sym_type[sym] == sym_type['+']) {
      command = command | 128;
   } else if ((sym_type[sym] == sym_type['-']) &&
            (('A' <= command) && (command <= 'Z'))) {
      command = command | ('a'-'A');
   } else {
      pending_sym = sym;
   }
}
void Scan_scope(void) {
   number = 1;
   if (('D' != (command && (~(('a'-'A') | 128)))) &&
                ((command && (~(('a'-'A') | 128))) != 'U')) number = 0;
   read_item ();
   if ((type & 32) == 0) pending_sym = sym;
   limit = number;
   if (('H' == command) || (command == 'A')) {
      if (!((0 <= limit) && (limit <= 9))) limit = '?'-'0';
   }
}
void Scan_text(void) {
   char last;
   read_sym ();
   last = sym;
   if ((sym_type[sym] & 16) == 0) {
      pending_sym = sym;
      (void) fail_with ("Text for", command);
      return;
   }
   if (('a' <= command) && (command <= 'z')) {
      text[endpos] = 0;
      for (;;) {
         local_echo (&sym);
         if (sym == last) break;
         if (sym == '\n') {
            pending_sym = '\n';
            break;
         }
         text[--endpos] = sym;
      }
      pointer = endpos--;
   } else {
      pointer = pos;
      for (;;) {
         local_echo (&sym);
         if (sym == last) break;
         if (sym == '\n') {
            pending_sym = '\n';
            break;
         }
         text[pos++] = sym;
      }
      text[pos++] = 0;
   }
   ok = (0==0);
}
void Scan_repeat (void) {
   number = 1;
   read_item ();
   if ((type & 32) == 0) pending_sym = sym;
   repeat_count = number;
}
int analyse (void) {
   int saved_type;
   ok = (0==0);
   pos = 0;
   endpos = 127;
   this_unit = 0;
   last_unit = -1;
   eprompt = com_prompt;
   do { read_item (); } while (type == sym_type[';']);
   command = sym;
   if (command == '%') {
      read_sym();
      if (sym_type[sym] == sym_type[';']) {
         pending_sym = sym;
         sym = 0;
      }
      percent (((('a' <= sym) && (sym <= 'z')) ? (sym - ('a'-'A')) : sym ));
      return (ok = (0!=0));
   }
   if ((type & 32) != 0) {
      if (max_unit > 0) {
         num[max_unit] = number;
      } else {
         return (ok = (0!=0));
      }
      read_item();
      if (type != sym_type[';'])
         (void) fail_with ("?", sym);
      pending_sym = sym;
      return (ok);
   }
   for (;;) {
      if ((type & 128) != 0) {
         return (fail_with ("Command", command));
      }
      if ((type & 16) != 0) {
         return (fail_with ("Command before", command));
      }
      if ((type & 32) != 0) {
         return (fail_with ("Unexpected repetition count", command));
      }
      limit = 0;
      pointer = 0;
      repeat_count = 1;
      if ((type & 64) == 0) {
         saved_type = type;
         if ((saved_type & 8) != 0) Scan_sign ();
         if ((saved_type & 4) != 0) Scan_scope ();
         if ((saved_type & 2) != 0) Scan_text ();
         if (!ok) return (ok);
         if ((saved_type & 1) != 0) Scan_repeat ();
         type = saved_type;
      } else {
         switch (type & 15) {
            case 15:
               pending_sym = '\n';
               unchain ();
               if (pointer >= 0) {
                  return (fail_with ("Missing", ')'));
               }
               max_unit = this_unit;
               repeat_count = 1;
               command = ')';
               stack ();
               command = 0;
               stack ();
               return (ok);
            case 2:
               command = '(';
               pointer = last_unit;
               last_unit = this_unit;
               break;
            case 3:
               command = ',';
               pointer = last_unit;
               last_unit = this_unit;
               break;
            case 4:
               command = ')';
               Scan_repeat ();
               unchain ();
               if (pointer < 0) {
                  return (fail_with ("Missing", '('));
               }
               num[pointer] = repeat_count;
               break;
         }
      }
      stack ();
      read_item ();
      command = sym;
   }
   return (ok);
}
void load_file (void) {
   char *p = fbeg;
   int sym;
   sym = fgetc(main_in);
   while (sym != EOF) {
      *p++ = sym;
      if (p == fend) {
         fprintf (stderr, "* File too large!\n");
         percent ('A');
      }
      sym = fgetc(main_in);
   }
   fclose (main_in);
   while (p != fbeg) *(--fp) = *(--p);
   lend = fp;
   while (*lend != '\n')
      lend++;
}
int execute_unit (void) {
   char culprit;
   command = com[this_unit];
   culprit = command;
   pointer = link[this_unit];
   repeat_count = num[this_unit];
   ;
   for (;;) {
      if (IntSeen) {
        ;
        return (ok = (0!=0));
      }
      execute_command ();
      --repeat_count;
      if (ok) {
         if (repeat_count == 0 || repeat_count == stopper) {
           ;
           return (ok);
         }
         continue;
      }
      ok = (0==0);
      for (;;) {
         if (IntSeen) {
           ;
           return (ok = (0!=0));
         }
         if (repeat_count < 0 ) {
           if (com[this_unit+1] == '\\') {
              this_unit++;
              ;
              return (ok = (0!=0));
           }
           ;
           return (ok);
         }
         if ((com[this_unit+1] == '\\') || (com[this_unit+1] == '?')) {
            this_unit++;
            ;
            return (ok);
         }
         for (;;) {
            if (IntSeen) {
              ;
              return (ok = (0!=0));
            }
            this_unit++;
            command = com[this_unit];
            switch (command) {
               case '(':
                  this_unit = link[this_unit];
                  break;
               case ',':
                  ;
                  return (ok);
               case ')':
                  --num[this_unit];
                  repeat_count = num[this_unit];
                  ;
                  goto breaklab;
               default: ;
            }
            if (com[this_unit] == 0) {
               ;
               return (fail_with ("Failure:", culprit));
            }
         }
         breaklab: ;
         ;
      }
      ;
   }
   ;
   return (ok);
}
void execute_all (void) {
   eprompt = ":";
   this_unit = 0;
   ;
   do {
      if (!execute_unit()) {
        ;
       return;
      }
      if (IntSeen) {
        ;
        return;
      }
      this_unit++;
   } while (com[this_unit] != 0);
   ;
   ok = (0==0);
}
char case_op (char sym) {
int chr = sym | ('a'-'A');
   if (('a' <= chr) && (chr <= 'z')) sym = (sym | to_lower_case)
                                                & to_upper_case;
   return (sym);
}
int right (void) {
   if (fp == lend) {
      return (ok = (0!=0));
   }
   *pp++ = *fp++;
   return (ok = (0==0));
}
int left (void) {
   if (pp == lbeg) {
      return (ok = (0!=0));
   }
   *(--fp) = *(--pp);
   return (ok = (0==0));
}
void right_star(void) {
   while (fp != lend) *pp++ = *fp++;
}
void left_star(void) {
  while (pp != lbeg) *(--fp) = *(--pp);
}
void move (void) {
   ok = (0==0);
   right_star ();
   if (fp == fend) {
      ok = (0!=0);
      return;
   }
   *pp++ = *fp++;
   lbeg = pp;
   lend = fp;
   while (*lend != '\n') lend++;
   ms_back = 0;
}
void move_back(void) {
   ok = (0==0);
   left_star ();
   if (pp == fbeg) {
      ok = (0!=0);
      return;
   }
   *(--fp) = *(--pp);
   lend = fp;
   lbeg = pp;
   do { --lbeg; } while (*lbeg != '\n');
   lbeg++;
   ms = 0;
}
void move_star (void) {
   while (fp != fend) *pp++ = *fp++;
   lend = fend;
   lbeg = pp;
   do { --lbeg; } while (*lbeg != '\n');
   lbeg++;
   ms_back = 0;
}
void move_back_star (void) {
  while (pp != fbeg) *(--fp) = *(--pp);
   lbeg = fbeg;
   lend = fp;
   while (*lend != '\n')
      lend++;
   ms = 0;
}
void insert (void) {
   int p = pointer;
   ml_back = pp;
   while (text[p] != 0) *pp++ = text[p++];
   ms_back = pp;
   ms = 0;
}
void insert_back (void) {
   int p = pointer;
   ml = fp;
   while (text[p] != 0) *(--fp) = text[p++];
   ms = fp;
   ms_back = 0;
}
int verify(void) {
   int x = pointer;
   char *y = fp-1;
   char if_sym;
   char sym ;
   do {
      sym = case_op (text[x++]);
      if_sym = case_op (*(++y));
   } while (sym == if_sym);
   if (sym != 0) return (ok = (0!=0));
   ms = fp;
   ml = y;
   ms_back = 0;
   return (ok = (0==0));
}
int verify_back (void) {
   int x = pointer - 1;
   int y = 0;
   char if_sym;
   char sym;
   do {
      sym = case_op (text[++x]);
      if_sym = case_op (*(pp - ++y));
   } while (sym == if_sym);
   if (sym != 0) return (ok = (0!=0));
   ms_back = pp;
   ml_back = pp - y + 1;
   ms = 0;
   return (ok = (0==0));
}
int find (void) {
   char sym = text[pointer] | ('a'-'A');
   pp_before = pp;
   limit = lim[this_unit];
   if (fp == ms) {
      if (!(right ())) move ();
   }
   for (;;) {
      if ((*fp | ('a'-'A')) == sym) {
         if (verify ()) return (ok);
      }
      if (!right ()) {
         --limit;
         if (limit == 0) break;
         move ();
         if (!ok) break;
      }
   }
   return (ok = (0!=0));
}
int find_back (void) {
   fp_before = fp;
   limit = lim[this_unit];
   if (pp == ms_back) {
      if (!left ()) move_back ();
   }
   for (;;) {
      if (verify_back ()) return(ok);
      if (!left ()) {
         --limit;
         if (limit == 0) break;
         move_back ();
         if (!ok) break;
      }
   }
   return (ok = (0!=0));
}

   1: AST_TYPE_Atom 0 0  [[typeinfo=0]]
   6: AST_TAG "init_globals" (c[4].s)  [[typeinfo=0]]
  10: AST_TYPE_Atom 0 0  [[typeinfo=0]]
  15: AST_TAG "free_buffers" (c[13].s)  [[typeinfo=0]]
  19: AST_TYPE_Atom 0 0  [[typeinfo=0]]
  24: AST_TAG "local_echo" (c[22].s)  [[typeinfo=0]]
  28: AST_TAG "sym" (c[28].s)  [[typeinfo=0]]
  32: AST_TYPE_Atom 0 4  [[typeinfo=0]]
  37: AST_TYPE_PointerTo [32]  [[typeinfo=0]]
  41: AST_DefParam 28 [37] [-1]  [[typeinfo=0]]
  47: AST_TYPE_Atom 0 0  [[typeinfo=0]]
  52: AST_TAG "read_sym" (c[34].s)  [[typeinfo=0]]
  56: AST_TYPE_Atom 0 4  [[typeinfo=0]]
  61: AST_TAG "fail_with" (c[43].s)  [[typeinfo=0]]
  65: AST_TAG "mess" (c[49].s)  [[typeinfo=0]]
  69: AST_TYPE_Atom 0 1  [[typeinfo=0]]
  74: AST_TYPE_PointerTo [69]  [[typeinfo=0]]
  78: AST_DefParam 65 [74] [93]  [[typeinfo=0]]
  84: AST_TAG "culprit" (c[54].s)  [[typeinfo=0]]
  88: AST_TYPE_Atom 0 1  [[typeinfo=0]]
  93: AST_DefParam 84 [88] [-1]  [[typeinfo=0]]
  99: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 104: AST_TAG "percent" (c[60].s)  [[typeinfo=0]]
 108: AST_TAG "Command_sym" (c[65].s)  [[typeinfo=0]]
 112: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 117: AST_DefParam 108 [112] [-1]  [[typeinfo=0]]
 123: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 128: AST_TAG "unchain" (c[71].s)  [[typeinfo=0]]
 132: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 137: AST_TAG "stack" (c[79].s)  [[typeinfo=0]]
 141: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 146: AST_TAG "execute_command" (c[87].s)  [[typeinfo=0]]
 150: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 155: AST_TAG "Scan_sign" (c[95].s)  [[typeinfo=0]]
 159: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 164: AST_TAG "Scan_scope" (c[103].s)  [[typeinfo=0]]
 168: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 173: AST_TAG "Scan_text" (c[111].s)  [[typeinfo=0]]
 177: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 182: AST_TAG "Scan_repeat" (c[119].s)  [[typeinfo=0]]
 186: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 191: AST_TAG "analyse" (c[128].s)  [[typeinfo=0]]
 195: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 200: AST_TAG "load_file" (c[137].s)  [[typeinfo=0]]
 204: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 209: AST_TAG "execute_unit" (c[146].s)  [[typeinfo=0]]
 213: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 218: AST_TAG "execute_all" (c[155].s)  [[typeinfo=0]]
 222: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 227: AST_TAG "case_op" (c[164].s)  [[typeinfo=0]]
 231: AST_TAG "sym" (c[169].s)  [[typeinfo=0]]
 235: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 240: AST_DefParam 231 [235] [-1]  [[typeinfo=0]]
 246: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 251: AST_TAG "right" (c[175].s)  [[typeinfo=0]]
 255: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 260: AST_TAG "left" (c[184].s)  [[typeinfo=0]]
 264: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 269: AST_TAG "right_star" (c[193].s)  [[typeinfo=0]]
 273: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 278: AST_TAG "left_star" (c[201].s)  [[typeinfo=0]]
 282: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 287: AST_TAG "move" (c[209].s)  [[typeinfo=0]]
 291: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 296: AST_TAG "move_back" (c[218].s)  [[typeinfo=0]]
 300: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 305: AST_TAG "move_star" (c[226].s)  [[typeinfo=0]]
 309: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 314: AST_TAG "move_back_star" (c[235].s)  [[typeinfo=0]]
 318: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 323: AST_TAG "insert" (c[244].s)  [[typeinfo=0]]
 327: AST_TYPE_Atom 0 0  [[typeinfo=0]]
 332: AST_TAG "insert_back" (c[253].s)  [[typeinfo=0]]
 336: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 341: AST_TAG "verify" (c[262].s)  [[typeinfo=0]]
 345: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 350: AST_TAG "verify_back" (c[270].s)  [[typeinfo=0]]
 354: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 359: AST_TAG "find" (c[279].s)  [[typeinfo=0]]
 363: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 368: AST_TAG "find_back" (c[288].s)  [[typeinfo=0]]
 372: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 377: AST_TAG "buffer_size" (c[299].s)  [[typeinfo=0]]
 381: AST_Declare [377] [372]  [[typeinfo=0]]
 386: AST_SEQ [381] [-1]  [[typeinfo=0]]
 391: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 396: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 400: AST_TAG "note_file" (c[307].s)  [[typeinfo=0]]
 404: AST_Declare [400] [391]  [[typeinfo=0]]
 409: AST_SEQ [404] [-1]  [[typeinfo=0]]
 414: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 419: AST_TAG "ok" (c[314].s)  [[typeinfo=0]]
 423: AST_Declare [419] [414]  [[typeinfo=0]]
 428: AST_SEQ [423] [-1]  [[typeinfo=0]]
 433: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 438: AST_TAG "printed" (c[321].s)  [[typeinfo=0]]
 442: AST_Declare [438] [433]  [[typeinfo=0]]
 447: AST_SEQ [442] [-1]  [[typeinfo=0]]
 452: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 457: AST_TAG "stopper" (c[328].s)  [[typeinfo=0]]
 461: AST_Declare [457] [452]  [[typeinfo=0]]
 466: AST_SEQ [461] [-1]  [[typeinfo=0]]
 471: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 476: AST_TAG "max_unit" (c[335].s)  [[typeinfo=0]]
 480: AST_Declare [476] [471]  [[typeinfo=0]]
 485: AST_SEQ [480] [-1]  [[typeinfo=0]]
 490: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 495: AST_TAG "pending_sym" (c[342].s)  [[typeinfo=0]]
 499: AST_Declare [495] [490]  [[typeinfo=0]]
 504: AST_SEQ [499] [-1]  [[typeinfo=0]]
 509: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 514: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 518: AST_TAG "fbeg" (c[350].s)  [[typeinfo=0]]
 522: AST_Declare [518] [509]  [[typeinfo=0]]
 527: AST_SEQ [522] [-1]  [[typeinfo=0]]
 532: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 537: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 541: AST_TAG "lbeg" (c[358].s)  [[typeinfo=0]]
 545: AST_Declare [541] [532]  [[typeinfo=0]]
 550: AST_SEQ [545] [-1]  [[typeinfo=0]]
 555: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 560: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 564: AST_TAG "pp" (c[366].s)  [[typeinfo=0]]
 568: AST_Declare [564] [555]  [[typeinfo=0]]
 573: AST_SEQ [568] [-1]  [[typeinfo=0]]
 578: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 583: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 587: AST_TAG "fp" (c[374].s)  [[typeinfo=0]]
 591: AST_Declare [587] [578]  [[typeinfo=0]]
 596: AST_SEQ [591] [-1]  [[typeinfo=0]]
 601: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 606: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 610: AST_TAG "lend" (c[382].s)  [[typeinfo=0]]
 614: AST_Declare [610] [601]  [[typeinfo=0]]
 619: AST_SEQ [614] [-1]  [[typeinfo=0]]
 624: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 629: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 633: AST_TAG "fend" (c[390].s)  [[typeinfo=0]]
 637: AST_Declare [633] [624]  [[typeinfo=0]]
 642: AST_SEQ [637] [-1]  [[typeinfo=0]]
 647: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 652: AST_TAG "type" (c[397].s)  [[typeinfo=0]]
 656: AST_Declare [652] [647]  [[typeinfo=0]]
 661: AST_SEQ [656] [-1]  [[typeinfo=0]]
 666: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 671: AST_TAG "command" (c[404].s)  [[typeinfo=0]]
 675: AST_Declare [671] [666]  [[typeinfo=0]]
 680: AST_SEQ [675] [-1]  [[typeinfo=0]]
 685: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 690: AST_TAG "repeat_count" (c[411].s)  [[typeinfo=0]]
 694: AST_Declare [690] [685]  [[typeinfo=0]]
 699: AST_SEQ [694] [-1]  [[typeinfo=0]]
 704: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 709: AST_TAG "limit" (c[418].s)  [[typeinfo=0]]
 713: AST_Declare [709] [704]  [[typeinfo=0]]
 718: AST_SEQ [713] [-1]  [[typeinfo=0]]
 723: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 728: AST_TAG "pointer" (c[425].s)  [[typeinfo=0]]
 732: AST_Declare [728] [723]  [[typeinfo=0]]
 737: AST_SEQ [732] [-1]  [[typeinfo=0]]
 742: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 747: AST_TAG "last_unit" (c[432].s)  [[typeinfo=0]]
 751: AST_Declare [747] [742]  [[typeinfo=0]]
 756: AST_SEQ [751] [-1]  [[typeinfo=0]]
 761: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 766: AST_TAG "this_unit" (c[439].s)  [[typeinfo=0]]
 770: AST_Declare [766] [761]  [[typeinfo=0]]
 775: AST_SEQ [770] [-1]  [[typeinfo=0]]
 780: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 785: AST_TAG "pos" (c[446].s)  [[typeinfo=0]]
 789: AST_Declare [785] [780]  [[typeinfo=0]]
 794: AST_SEQ [789] [-1]  [[typeinfo=0]]
 799: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 804: AST_TAG "endpos" (c[453].s)  [[typeinfo=0]]
 808: AST_Declare [804] [799]  [[typeinfo=0]]
 813: AST_SEQ [808] [-1]  [[typeinfo=0]]
 818: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 823: AST_TAG "sym" (c[460].s)  [[typeinfo=0]]
 827: AST_Declare [823] [818]  [[typeinfo=0]]
 832: AST_SEQ [827] [-1]  [[typeinfo=0]]
 837: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 842: AST_TAG "number" (c[467].s)  [[typeinfo=0]]
 846: AST_Declare [842] [837]  [[typeinfo=0]]
 851: AST_SEQ [846] [-1]  [[typeinfo=0]]
 856: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 861: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 865: AST_TAG "pp_before" (c[475].s)  [[typeinfo=0]]
 869: AST_Declare [865] [856]  [[typeinfo=0]]
 874: AST_SEQ [869] [-1]  [[typeinfo=0]]
 879: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 884: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 888: AST_TAG "fp_before" (c[483].s)  [[typeinfo=0]]
 892: AST_Declare [888] [879]  [[typeinfo=0]]
 897: AST_SEQ [892] [-1]  [[typeinfo=0]]
 902: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 907: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 911: AST_TAG "ms" (c[491].s)  [[typeinfo=0]]
 915: AST_Declare [911] [902]  [[typeinfo=0]]
 920: AST_SEQ [915] [-1]  [[typeinfo=0]]
 925: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 930: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 934: AST_TAG "ms_back" (c[499].s)  [[typeinfo=0]]
 938: AST_Declare [934] [925]  [[typeinfo=0]]
 943: AST_SEQ [938] [-1]  [[typeinfo=0]]
 948: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 953: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 957: AST_TAG "ml" (c[507].s)  [[typeinfo=0]]
 961: AST_Declare [957] [948]  [[typeinfo=0]]
 966: AST_SEQ [961] [-1]  [[typeinfo=0]]
 971: AST_TYPE_Atom 0 1  [[typeinfo=0]]
 976: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
 980: AST_TAG "ml_back" (c[515].s)  [[typeinfo=0]]
 984: AST_Declare [980] [971]  [[typeinfo=0]]
 989: AST_SEQ [984] [-1]  [[typeinfo=0]]
 994: AST_TYPE_Atom 0 4  [[typeinfo=0]]
 999: AST_TAG "to_upper_case" (c[522].s)  [[typeinfo=0]]
1003: AST_Declare [999] [994]  [[typeinfo=0]]
1008: AST_SEQ [1003] [-1]  [[typeinfo=0]]
1013: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1018: AST_TAG "to_lower_case" (c[529].s)  [[typeinfo=0]]
1022: AST_Declare "to_lower_case" [1013]  [[typeinfo=0]]
1027: AST_SEQ [1022] [-1]  [[typeinfo=0]]
1032: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1037: AST_TAG "caseflip" (c[536].s)  [[typeinfo=0]]
1041: AST_Declare "caseflip" [1032]  [[typeinfo=0]]
1046: AST_SEQ [1041] [-1]  [[typeinfo=0]]
1051: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1056: AST_TAG "blank_line" (c[543].s)  [[typeinfo=0]]
1060: AST_Declare "blank_line" [1051]  [[typeinfo=0]]
1065: AST_SEQ [1060] [-1]  [[typeinfo=0]]
1070: AST_TYPE_Atom 0 1  [[typeinfo=0]]
1075: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
1079: AST_TAG "eprompt" (c[551].s)  [[typeinfo=0]]
1083: AST_Declare "eprompt" [1070]  [[typeinfo=0]]
1088: AST_SEQ [1083] [-1]  [[typeinfo=0]]
1093: AST_TYPE_Atom 0 1  [[typeinfo=0]]
1098: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
1102: AST_TAG "noted" (c[559].s)  [[typeinfo=0]]
1106: AST_Declare [1102] [1093]  [[typeinfo=0]]
1111: AST_SEQ [1106] [-1]  [[typeinfo=0]]
1116: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1121: AST_TAG "changes" (c[566].s)  [[typeinfo=0]]
1125: AST_Declare [1121] [1116]  [[typeinfo=0]]
1130: AST_SEQ [1125] [-1]  [[typeinfo=0]]
1135: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1140: AST_TAG "in_second" (c[573].s)  [[typeinfo=0]]
1144: AST_Declare [1140] [1135]  [[typeinfo=0]]
1149: AST_SEQ [1144] [-1]  [[typeinfo=0]]
1154: AST_TYPE_Atom 0 1  [[typeinfo=0]]
1159: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
1163: AST_TAG "com_prompt" (c[581].s)  [[typeinfo=0]]
1167: AST_Declare [1163] [1154]  [[typeinfo=0]]
1172: AST_SEQ [1167] [-1]  [[typeinfo=0]]
1177: AST_TYPE_Atom 0 4  [[typeinfo=0]]
1182: AST_TAG "sym_type" (c[588].s)  [[typeinfo=0]]
1186: AST_Const 599 64  [[typeinfo=0]]
1191: AST_Const 602 15  [[typeinfo=0]]
1196: AST_Add [1186] [1191]  [[typeinfo=0]]
1201: AST_Const 608 64  [[typeinfo=0]]
1206: AST_Const 611 15  [[typeinfo=0]]
1211: AST_Add [1201] [1206]  [[typeinfo=0]]
1216: AST_Const 617 64  [[typeinfo=0]]
1221: AST_Const 620 15  [[typeinfo=0]]
1226: AST_Add [1216] [1221]  [[typeinfo=0]]
1231: AST_Const 626 64  [[typeinfo=0]]
1236: AST_Const 629 15  [[typeinfo=0]]
1241: AST_Add [1231] [1236]  [[typeinfo=0]]
1246: AST_Const 635 64  [[typeinfo=0]]
1251: AST_Const 638 15  [[typeinfo=0]]
1256: AST_Add [1246] [1251]  [[typeinfo=0]]
1261: AST_Const 644 64  [[typeinfo=0]]
1266: AST_Const 647 15  [[typeinfo=0]]
1271: AST_Add [1261] [1266]  [[typeinfo=0]]
1276: AST_Const 653 64  [[typeinfo=0]]
1281: AST_Const 656 15  [[typeinfo=0]]
1286: AST_Add [1276] [1281]  [[typeinfo=0]]
1291: AST_Const 662 64  [[typeinfo=0]]
1296: AST_Const 665 15  [[typeinfo=0]]
1301: AST_Add [1291] [1296]  [[typeinfo=0]]
1306: AST_Const 671 64  [[typeinfo=0]]
1311: AST_Const 674 15  [[typeinfo=0]]
1316: AST_Add [1306] [1311]  [[typeinfo=0]]
1321: AST_Const 680 64  [[typeinfo=0]]
1326: AST_Const 683 15  [[typeinfo=0]]
1331: AST_Add [1321] [1326]  [[typeinfo=0]]
1336: AST_Const 689 64  [[typeinfo=0]]
1341: AST_Const 692 15  [[typeinfo=0]]
1346: AST_Add [1336] [1341]  [[typeinfo=0]]
1351: AST_Const 698 64  [[typeinfo=0]]
1356: AST_Const 701 15  [[typeinfo=0]]
1361: AST_Add [1351] [1356]  [[typeinfo=0]]
1366: AST_Const 707 64  [[typeinfo=0]]
1371: AST_Const 710 15  [[typeinfo=0]]
1376: AST_Add [1366] [1371]  [[typeinfo=0]]
1381: AST_Const 716 64  [[typeinfo=0]]
1386: AST_Const 719 15  [[typeinfo=0]]
1391: AST_Add [1381] [1386]  [[typeinfo=0]]
1396: AST_Const 725 64  [[typeinfo=0]]
1401: AST_Const 728 15  [[typeinfo=0]]
1406: AST_Add [1396] [1401]  [[typeinfo=0]]
1411: AST_Const 734 64  [[typeinfo=0]]
1416: AST_Const 737 15  [[typeinfo=0]]
1421: AST_Add [1411] [1416]  [[typeinfo=0]]
1426: AST_Const 743 64  [[typeinfo=0]]
1431: AST_Const 746 15  [[typeinfo=0]]
1436: AST_Add [1426] [1431]  [[typeinfo=0]]
1441: AST_Const 752 64  [[typeinfo=0]]
1446: AST_Const 755 15  [[typeinfo=0]]
1451: AST_Add [1441] [1446]  [[typeinfo=0]]
1456: AST_Const 761 64  [[typeinfo=0]]
1461: AST_Const 764 15  [[typeinfo=0]]
1466: AST_Add [1456] [1461]  [[typeinfo=0]]
1471: AST_Const 770 64  [[typeinfo=0]]
1476: AST_Const 773 15  [[typeinfo=0]]
1481: AST_Add [1471] [1476]  [[typeinfo=0]]
1486: AST_Const 779 64  [[typeinfo=0]]
1491: AST_Const 782 15  [[typeinfo=0]]
1496: AST_Add [1486] [1491]  [[typeinfo=0]]
1501: AST_Const 788 64  [[typeinfo=0]]
1506: AST_Const 791 15  [[typeinfo=0]]
1511: AST_Add [1501] [1506]  [[typeinfo=0]]
1516: AST_Const 797 64  [[typeinfo=0]]
1521: AST_Const 800 15  [[typeinfo=0]]
1526: AST_Add [1516] [1521]  [[typeinfo=0]]
1531: AST_Const 806 64  [[typeinfo=0]]
1536: AST_Const 809 15  [[typeinfo=0]]
1541: AST_Add [1531] [1536]  [[typeinfo=0]]
1546: AST_Const 815 64  [[typeinfo=0]]
1551: AST_Const 818 15  [[typeinfo=0]]
1556: AST_Add [1546] [1551]  [[typeinfo=0]]
1561: AST_Const 824 64  [[typeinfo=0]]
1566: AST_Const 827 15  [[typeinfo=0]]
1571: AST_Add [1561] [1566]  [[typeinfo=0]]
1576: AST_Const 833 64  [[typeinfo=0]]
1581: AST_Const 836 15  [[typeinfo=0]]
1586: AST_Add [1576] [1581]  [[typeinfo=0]]
1591: AST_Const 842 64  [[typeinfo=0]]
1596: AST_Const 845 15  [[typeinfo=0]]
1601: AST_Add [1591] [1596]  [[typeinfo=0]]
1606: AST_Const 851 64  [[typeinfo=0]]
1611: AST_Const 854 15  [[typeinfo=0]]
1616: AST_Add [1606] [1611]  [[typeinfo=0]]
1621: AST_Const 860 64  [[typeinfo=0]]
1626: AST_Const 863 15  [[typeinfo=0]]
1631: AST_Add [1621] [1626]  [[typeinfo=0]]
1636: AST_Const 869 64  [[typeinfo=0]]
1641: AST_Const 872 15  [[typeinfo=0]]
1646: AST_Add [1636] [1641]  [[typeinfo=0]]
1651: AST_Const 878 64  [[typeinfo=0]]
1656: AST_Const 881 15  [[typeinfo=0]]
1661: AST_Add [1651] [1656]  [[typeinfo=0]]
1666: AST_Const 887 128  [[typeinfo=0]]
1671: AST_Const 893 64  [[typeinfo=0]]
1676: AST_Const 896 32  [[typeinfo=0]]
1681: AST_Const 899 7  [[typeinfo=0]]
1686: AST_Add [1691] [1681]  [[typeinfo=0]]
1691: AST_Add [1671] [1676]  [[typeinfo=0]]
1696: AST_Const 905 16  [[typeinfo=0]]
1701: AST_Const 911 128  [[typeinfo=0]]
1706: AST_Const 917 128  [[typeinfo=0]]
1711: AST_Const 923 64  [[typeinfo=0]]
1716: AST_Const 926 1  [[typeinfo=0]]
1721: AST_Add [1711] [1716]  [[typeinfo=0]]
1726: AST_Const 932 128  [[typeinfo=0]]
1731: AST_Const 938 16  [[typeinfo=0]]
1736: AST_Const 944 64  [[typeinfo=0]]
1741: AST_Const 947 2  [[typeinfo=0]]
1746: AST_Add [1736] [1741]  [[typeinfo=0]]
1751: AST_Const 953 64  [[typeinfo=0]]
1756: AST_Const 956 4  [[typeinfo=0]]
1761: AST_Add [1751] [1756]  [[typeinfo=0]]
1766: AST_Const 962 64  [[typeinfo=0]]
1771: AST_Const 965 32  [[typeinfo=0]]
1776: AST_Const 968 8  [[typeinfo=0]]
1781: AST_Add [1786] [1776]  [[typeinfo=0]]
1786: AST_Add [1766] [1771]  [[typeinfo=0]]
1791: AST_Const 974 64  [[typeinfo=0]]
1796: AST_Const 977 5  [[typeinfo=0]]
1801: AST_Add [1791] [1796]  [[typeinfo=0]]
1806: AST_Const 983 64  [[typeinfo=0]]
1811: AST_Const 986 3  [[typeinfo=0]]
1816: AST_Add [1806] [1811]  [[typeinfo=0]]
1821: AST_Const 992 64  [[typeinfo=0]]
1826: AST_Const 995 6  [[typeinfo=0]]
1831: AST_Add [1821] [1826]  [[typeinfo=0]]
1836: AST_Const 1001 16  [[typeinfo=0]]
1841: AST_Const 1007 16  [[typeinfo=0]]
1846: AST_Const 1013 64  [[typeinfo=0]]
1851: AST_Const 1016 32  [[typeinfo=0]]
1856: AST_Const 1019 0  [[typeinfo=0]]
1861: AST_Add [1866] [1856]  [[typeinfo=0]]
1866: AST_Add [1846] [1851]  [[typeinfo=0]]
1871: AST_Const 1025 64  [[typeinfo=0]]
1876: AST_Const 1028 32  [[typeinfo=0]]
1881: AST_Const 1031 0  [[typeinfo=0]]
1886: AST_Add [1891] [1881]  [[typeinfo=0]]
1891: AST_Add [1871] [1876]  [[typeinfo=0]]
1896: AST_Const "caseflip" 64  [[typeinfo=0]]
1901: AST_Const 1040 32  [[typeinfo=0]]
1906: AST_Const 1043 0  [[typeinfo=0]]
1911: AST_Add [1916] [1906]  [[typeinfo=0]]
1916: AST_Add [1896] [1901]  [[typeinfo=0]]
1921: AST_Const 1049 64  [[typeinfo=0]]
1926: AST_Const 1052 32  [[typeinfo=0]]
1931: AST_Const 1055 0  [[typeinfo=0]]
1936: AST_Add [1941] [1931]  [[typeinfo=0]]
1941: AST_Add [1921] [1926]  [[typeinfo=0]]
1946: AST_Const 1061 64  [[typeinfo=0]]
1951: AST_Const 1064 32  [[typeinfo=0]]
1956: AST_Const 1067 0  [[typeinfo=0]]
1961: AST_Add [1966] [1956]  [[typeinfo=0]]
1966: AST_Add [1946] [1951]  [[typeinfo=0]]
1971: AST_Const 1073 64  [[typeinfo=0]]
1976: AST_Const 1076 32  [[typeinfo=0]]
1981: AST_Const "eprompt" 0  [[typeinfo=0]]
1986: AST_Add [1991] [1981]  [[typeinfo=0]]
1991: AST_Add [1971] [1976]  [[typeinfo=0]]
1996: AST_Const 1085 64  [[typeinfo=0]]
2001: AST_Const 1088 32  [[typeinfo=0]]
2006: AST_Const 1091 0  [[typeinfo=0]]
2011: AST_Add [2016] [2006]  [[typeinfo=0]]
2016: AST_Add [1996] [2001]  [[typeinfo=0]]
2021: AST_Const 1097 64  [[typeinfo=0]]
2026: AST_Const 1100 32  [[typeinfo=0]]
2031: AST_Const 1103 0  [[typeinfo=0]]
2036: AST_Add [2041] [2031]  [[typeinfo=0]]
2041: AST_Add [2021] [2026]  [[typeinfo=0]]
2046: AST_Const 1109 64  [[typeinfo=0]]
2051: AST_Const 1112 32  [[typeinfo=0]]
2056: AST_Const 1115 0  [[typeinfo=0]]
2061: AST_Add [2066] [2056]  [[typeinfo=0]]
2066: AST_Add [2046] [2051]  [[typeinfo=0]]
2071: AST_Const 1121 64  [[typeinfo=0]]
2076: AST_Const 1124 32  [[typeinfo=0]]
2081: AST_Const 1127 0  [[typeinfo=0]]
2086: AST_Add [2091] [2081]  [[typeinfo=0]]
2091: AST_Add [2071] [2076]  [[typeinfo=0]]
2096: AST_Const 1133 16  [[typeinfo=0]]
2101: AST_Const 1139 64  [[typeinfo=0]]
2106: AST_Const 1142 15  [[typeinfo=0]]
2111: AST_Add [2101] [2106]  [[typeinfo=0]]
2116: AST_Const 1148 64  [[typeinfo=0]]
2121: AST_Const 1151 2  [[typeinfo=0]]
2126: AST_Add [2116] [2121]  [[typeinfo=0]]
2131: AST_Const 1157 16  [[typeinfo=0]]
2136: AST_Const 1163 64  [[typeinfo=0]]
2141: AST_Const 1166 4  [[typeinfo=0]]
2146: AST_Add [2136] [2141]  [[typeinfo=0]]
2151: AST_Const 1172 0  [[typeinfo=0]]
2156: AST_Const 1178 128  [[typeinfo=0]]
2161: AST_Const 1184 4  [[typeinfo=0]]
2166: AST_Const 1190 8  [[typeinfo=0]]
2171: AST_Const 1193 1  [[typeinfo=0]]
2176: AST_Add [2166] [2171]  [[typeinfo=0]]
2181: AST_Const 1199 8  [[typeinfo=0]]
2186: AST_Const 1202 1  [[typeinfo=0]]
2191: AST_Add [2181] [2186]  [[typeinfo=0]]
2196: AST_Const 1208 8  [[typeinfo=0]]
2201: AST_Const 1211 4  [[typeinfo=0]]
2206: AST_Const 1214 2  [[typeinfo=0]]
2211: AST_Const 1217 1  [[typeinfo=0]]
2216: AST_Add [2221] [2211]  [[typeinfo=0]]
2221: AST_Add [2226] [2206]  [[typeinfo=0]]
2226: AST_Add [2196] [2201]  [[typeinfo=0]]
2231: AST_Const 1223 8  [[typeinfo=0]]
2236: AST_Const 1226 1  [[typeinfo=0]]
2241: AST_Add [2231] [2236]  [[typeinfo=0]]
2246: AST_Const 1232 8  [[typeinfo=0]]
2251: AST_Const 1235 4  [[typeinfo=0]]
2256: AST_Const 1238 2  [[typeinfo=0]]
2261: AST_Const 1241 1  [[typeinfo=0]]
2266: AST_Add [2271] [2261]  [[typeinfo=0]]
2271: AST_Add [2276] [2256]  [[typeinfo=0]]
2276: AST_Add [2246] [2251]  [[typeinfo=0]]
2281: AST_Const 1247 8  [[typeinfo=0]]
2286: AST_Const 1250 1  [[typeinfo=0]]
2291: AST_Add [2281] [2286]  [[typeinfo=0]]
2296: AST_Const 1256 4  [[typeinfo=0]]
2301: AST_Const 1262 8  [[typeinfo=0]]
2306: AST_Const 1265 2  [[typeinfo=0]]
2311: AST_Const 1268 1  [[typeinfo=0]]
2316: AST_Add [2321] [2311]  [[typeinfo=0]]
2321: AST_Add [2301] [2306]  [[typeinfo=0]]
2326: AST_Const 1274 8  [[typeinfo=0]]
2331: AST_Const 1277 1  [[typeinfo=0]]
2336: AST_Add [2326] [2331]  [[typeinfo=0]]
2341: AST_Const 1283 8  [[typeinfo=0]]
2346: AST_Const 1286 1  [[typeinfo=0]]
2351: AST_Add [2341] [2346]  [[typeinfo=0]]
2356: AST_Const 1292 8  [[typeinfo=0]]
2361: AST_Const 1295 1  [[typeinfo=0]]
2366: AST_Add [2356] [2361]  [[typeinfo=0]]
2371: AST_Const 1301 8  [[typeinfo=0]]
2376: AST_Const 1304 1  [[typeinfo=0]]
2381: AST_Add [2371] [2376]  [[typeinfo=0]]
2386: AST_Const 1310 0  [[typeinfo=0]]
2391: AST_Const 1316 128  [[typeinfo=0]]
2396: AST_Const 1322 8  [[typeinfo=0]]
2401: AST_Const 1325 1  [[typeinfo=0]]
2406: AST_Add [2396] [2401]  [[typeinfo=0]]
2411: AST_Const 1331 128  [[typeinfo=0]]
2416: AST_Const 1337 8  [[typeinfo=0]]
2421: AST_Const 1340 1  [[typeinfo=0]]
2426: AST_Add [2416] [2421]  [[typeinfo=0]]
2431: AST_Const 1346 8  [[typeinfo=0]]
2436: AST_Const 1349 2  [[typeinfo=0]]
2441: AST_Add [2431] [2436]  [[typeinfo=0]]
2446: AST_Const 1355 8  [[typeinfo=0]]
2451: AST_Const 1358 4  [[typeinfo=0]]
2456: AST_Const 1361 2  [[typeinfo=0]]
2461: AST_Const 1364 1  [[typeinfo=0]]
2466: AST_Add [2471] [2461]  [[typeinfo=0]]
2471: AST_Add [2476] [2456]  [[typeinfo=0]]
2476: AST_Add [2446] [2451]  [[typeinfo=0]]
2481: AST_Const 1370 8  [[typeinfo=0]]
2486: AST_Const 1373 4  [[typeinfo=0]]
2491: AST_Const 1376 2  [[typeinfo=0]]
2496: AST_Const 1379 1  [[typeinfo=0]]
2501: AST_Add [2506] [2496]  [[typeinfo=0]]
2506: AST_Add [2511] [2491]  [[typeinfo=0]]
2511: AST_Add [2481] [2486]  [[typeinfo=0]]
2516: AST_Const 1385 8  [[typeinfo=0]]
2521: AST_Const 1388 2  [[typeinfo=0]]
2526: AST_Add [2516] [2521]  [[typeinfo=0]]
2531: AST_Const 1394 128  [[typeinfo=0]]
2536: AST_Const 1400 128  [[typeinfo=0]]
2541: AST_Const 1406 128  [[typeinfo=0]]
2546: AST_Const 1412 128  [[typeinfo=0]]
2551: AST_Const 1418 64  [[typeinfo=0]]
2556: AST_Const 1421 2  [[typeinfo=0]]
2561: AST_Add [2551] [2556]  [[typeinfo=0]]
2566: AST_Const 1427 0  [[typeinfo=0]]
2571: AST_Const 1433 64  [[typeinfo=0]]
2576: AST_Const 1436 4  [[typeinfo=0]]
2581: AST_Add [2571] [2576]  [[typeinfo=0]]
2586: AST_Const 1442 64  [[typeinfo=0]]
2591: AST_Const 1445 6  [[typeinfo=0]]
2596: AST_Add [2586] [2591]  [[typeinfo=0]]
2601: AST_Const 1451 16  [[typeinfo=0]]
2606: AST_Const 1457 128  [[typeinfo=0]]
2611: AST_Const 1463 128  [[typeinfo=0]]
2616: AST_Const 1469 8  [[typeinfo=0]]
2621: AST_Const 1472 1  [[typeinfo=0]]
2626: AST_Add [2616] [2621]  [[typeinfo=0]]
2631: AST_Const 1478 8  [[typeinfo=0]]
2636: AST_Const 1481 1  [[typeinfo=0]]
2641: AST_Add [2631] [2636]  [[typeinfo=0]]
2646: AST_Const 1487 8  [[typeinfo=0]]
2651: AST_Const 1490 4  [[typeinfo=0]]
2656: AST_Const 1493 2  [[typeinfo=0]]
2661: AST_Const 1496 1  [[typeinfo=0]]
2666: AST_Add [2671] [2661]  [[typeinfo=0]]
2671: AST_Add [2676] [2656]  [[typeinfo=0]]
2676: AST_Add [2646] [2651]  [[typeinfo=0]]
2681: AST_Const 1502 8  [[typeinfo=0]]
2686: AST_Const 1505 1  [[typeinfo=0]]
2691: AST_Add [2681] [2686]  [[typeinfo=0]]
2696: AST_Const 1511 8  [[typeinfo=0]]
2701: AST_Const 1514 4  [[typeinfo=0]]
2706: AST_Const 1517 2  [[typeinfo=0]]
2711: AST_Const 1520 1  [[typeinfo=0]]
2716: AST_Add [2721] [2711]  [[typeinfo=0]]
2721: AST_Add [2726] [2706]  [[typeinfo=0]]
2726: AST_Add [2696] [2701]  [[typeinfo=0]]
2731: AST_Const 1526 8  [[typeinfo=0]]
2736: AST_Const 1529 1  [[typeinfo=0]]
2741: AST_Add [2731] [2736]  [[typeinfo=0]]
2746: AST_Const 1535 128  [[typeinfo=0]]
2751: AST_Const 1541 8  [[typeinfo=0]]
2756: AST_Const 1544 2  [[typeinfo=0]]
2761: AST_Const 1547 1  [[typeinfo=0]]
2766: AST_Add [2771] [2761]  [[typeinfo=0]]
2771: AST_Add [2751] [2756]  [[typeinfo=0]]
2776: AST_Const 1553 8  [[typeinfo=0]]
2781: AST_Const 1556 1  [[typeinfo=0]]
2786: AST_Add [2776] [2781]  [[typeinfo=0]]
2791: AST_Const 1562 8  [[typeinfo=0]]
2796: AST_Const 1565 1  [[typeinfo=0]]
2801: AST_Add [2791] [2796]  [[typeinfo=0]]
2806: AST_Const 1571 8  [[typeinfo=0]]
2811: AST_Const 1574 1  [[typeinfo=0]]
2816: AST_Add [2806] [2811]  [[typeinfo=0]]
2821: AST_Const 1580 8  [[typeinfo=0]]
2826: AST_Const 1583 1  [[typeinfo=0]]
2831: AST_Add [2821] [2826]  [[typeinfo=0]]
2836: AST_Const 1589 128  [[typeinfo=0]]
2841: AST_Const 1595 128  [[typeinfo=0]]
2846: AST_Const 1601 8  [[typeinfo=0]]
2851: AST_Const 1604 1  [[typeinfo=0]]
2856: AST_Add [2846] [2851]  [[typeinfo=0]]
2861: AST_Const 1610 128  [[typeinfo=0]]
2866: AST_Const 1616 8  [[typeinfo=0]]
2871: AST_Const 1619 1  [[typeinfo=0]]
2876: AST_Add [2866] [2871]  [[typeinfo=0]]
2881: AST_Const 1625 8  [[typeinfo=0]]
2886: AST_Const 1628 2  [[typeinfo=0]]
2891: AST_Add [2881] [2886]  [[typeinfo=0]]
2896: AST_Const 1634 8  [[typeinfo=0]]
2901: AST_Const 1637 4  [[typeinfo=0]]
2906: AST_Const 1640 2  [[typeinfo=0]]
2911: AST_Const 1643 1  [[typeinfo=0]]
2916: AST_Add [2921] [2911]  [[typeinfo=0]]
2921: AST_Add [2926] [2906]  [[typeinfo=0]]
2926: AST_Add [2896] [2901]  [[typeinfo=0]]
2931: AST_Const 1649 8  [[typeinfo=0]]
2936: AST_Const 1652 4  [[typeinfo=0]]
2941: AST_Const 1655 2  [[typeinfo=0]]
2946: AST_Const 1658 1  [[typeinfo=0]]
2951: AST_Add [2956] [2946]  [[typeinfo=0]]
2956: AST_Add [2961] [2941]  [[typeinfo=0]]
2961: AST_Add [2931] [2936]  [[typeinfo=0]]
2966: AST_Const 1664 8  [[typeinfo=0]]
2971: AST_Const 1667 2  [[typeinfo=0]]
2976: AST_Add [2966] [2971]  [[typeinfo=0]]
2981: AST_Const 1673 128  [[typeinfo=0]]
2986: AST_Const 1679 128  [[typeinfo=0]]
2991: AST_Const 1685 128  [[typeinfo=0]]
2996: AST_Const 1691 128  [[typeinfo=0]]
3001: AST_Const 1697 64  [[typeinfo=0]]
3006: AST_Const 1700 2  [[typeinfo=0]]
3011: AST_Add [3001] [3006]  [[typeinfo=0]]
3016: AST_Const 1706 0  [[typeinfo=0]]
3021: AST_Const 1712 64  [[typeinfo=0]]
3026: AST_Const 1715 4  [[typeinfo=0]]
3031: AST_Add [3021] [3026]  [[typeinfo=0]]
3036: AST_Const 1721 64  [[typeinfo=0]]
3041: AST_Const 1724 6  [[typeinfo=0]]
3046: AST_Add [3036] [3041]  [[typeinfo=0]]
3051: AST_Const 1730 16  [[typeinfo=0]]
3056: AST_Const 1735 128  [[typeinfo=0]]
3061: AST_Const 1738 128  [[typeinfo=0]]
3066: AST_Const 1741 128  [[typeinfo=0]]
3071: AST_Const 1744 128  [[typeinfo=0]]
3076: AST_Const 1747 128  [[typeinfo=0]]
3081: AST_Const 1750 128  [[typeinfo=0]]
3086: AST_Const 1753 128  [[typeinfo=0]]
3091: AST_Const 1756 128  [[typeinfo=0]]
3096: AST_Const 1762 128  [[typeinfo=0]]
3101: AST_Const 1765 128  [[typeinfo=0]]
3106: AST_Const 1768 128  [[typeinfo=0]]
3111: AST_Const 1771 128  [[typeinfo=0]]
3116: AST_Const 1774 128  [[typeinfo=0]]
3121: AST_Const 1777 128  [[typeinfo=0]]
3126: AST_Const 1780 128  [[typeinfo=0]]
3131: AST_Const 1783 128  [[typeinfo=0]]
3136: AST_Const 1789 128  [[typeinfo=0]]
3141: AST_Const 1792 128  [[typeinfo=0]]
3146: AST_Const 1795 128  [[typeinfo=0]]
3151: AST_Const 1798 128  [[typeinfo=0]]
3156: AST_Const 1801 128  [[typeinfo=0]]
3161: AST_Const 1804 128  [[typeinfo=0]]
3166: AST_Const 1807 128  [[typeinfo=0]]
3171: AST_Const 1810 128  [[typeinfo=0]]
3176: AST_Const 1816 128  [[typeinfo=0]]
3181: AST_Const 1819 128  [[typeinfo=0]]
3186: AST_Const 1822 128  [[typeinfo=0]]
3191: AST_Const 1825 128  [[typeinfo=0]]
3196: AST_Const 1828 128  [[typeinfo=0]]
3201: AST_Const 1831 128  [[typeinfo=0]]
3206: AST_Const 1834 128  [[typeinfo=0]]
3211: AST_Const 1837 128  [[typeinfo=0]]
3216: AST_Const 1843 128  [[typeinfo=0]]
3221: AST_Const 1846 128  [[typeinfo=0]]
3226: AST_Const 1849 128  [[typeinfo=0]]
3231: AST_Const 1852 128  [[typeinfo=0]]
3236: AST_Const 1855 128  [[typeinfo=0]]
3241: AST_Const 1858 128  [[typeinfo=0]]
3246: AST_Const 1861 128  [[typeinfo=0]]
3251: AST_Const 1864 128  [[typeinfo=0]]
3256: AST_Const 1870 128  [[typeinfo=0]]
3261: AST_Const 1873 128  [[typeinfo=0]]
3266: AST_Const 1876 128  [[typeinfo=0]]
3271: AST_Const 1879 128  [[typeinfo=0]]
3276: AST_Const 1882 128  [[typeinfo=0]]
3281: AST_Const 1885 128  [[typeinfo=0]]
3286: AST_Const 1888 128  [[typeinfo=0]]
3291: AST_Const 1891 128  [[typeinfo=0]]
3296: AST_Const 1897 128  [[typeinfo=0]]
3301: AST_Const 1900 128  [[typeinfo=0]]
3306: AST_Const 1903 128  [[typeinfo=0]]
3311: AST_Const 1906 128  [[typeinfo=0]]
3316: AST_Const 1909 128  [[typeinfo=0]]
3321: AST_Const 1912 128  [[typeinfo=0]]
3326: AST_Const 1915 128  [[typeinfo=0]]
3331: AST_Const 1918 128  [[typeinfo=0]]
3336: AST_Const 1924 128  [[typeinfo=0]]
3341: AST_Const 1927 128  [[typeinfo=0]]
3346: AST_Const 1930 128  [[typeinfo=0]]
3351: AST_Const 1933 128  [[typeinfo=0]]
3356: AST_Const 1936 128  [[typeinfo=0]]
3361: AST_Const 1939 128  [[typeinfo=0]]
3366: AST_Const 1942 128  [[typeinfo=0]]
3371: AST_Const 1945 128  [[typeinfo=0]]
3376: AST_Const 1951 128  [[typeinfo=0]]
3381: AST_Const 1954 128  [[typeinfo=0]]
3386: AST_Const 1957 128  [[typeinfo=0]]
3391: AST_Const 1960 128  [[typeinfo=0]]
3396: AST_Const 1963 128  [[typeinfo=0]]
3401: AST_Const 1966 128  [[typeinfo=0]]
3406: AST_Const 1969 128  [[typeinfo=0]]
3411: AST_Const 1972 128  [[typeinfo=0]]
3416: AST_Const 1978 128  [[typeinfo=0]]
3421: AST_Const 1981 128  [[typeinfo=0]]
3426: AST_Const 1984 128  [[typeinfo=0]]
3431: AST_Const 1987 128  [[typeinfo=0]]
3436: AST_Const 1990 128  [[typeinfo=0]]
3441: AST_Const 1993 128  [[typeinfo=0]]
3446: AST_Const 1996 128  [[typeinfo=0]]
3451: AST_Const 1999 128  [[typeinfo=0]]
3456: AST_Const 2005 128  [[typeinfo=0]]
3461: AST_Const 2008 128  [[typeinfo=0]]
3466: AST_Const 2011 128  [[typeinfo=0]]
3471: AST_Const 2014 128  [[typeinfo=0]]
3476: AST_Const 2017 128  [[typeinfo=0]]
3481: AST_Const 2020 128  [[typeinfo=0]]
3486: AST_Const 2023 128  [[typeinfo=0]]
3491: AST_Const 2026 128  [[typeinfo=0]]
3496: AST_Const 2032 128  [[typeinfo=0]]
3501: AST_Const 2035 128  [[typeinfo=0]]
3506: AST_Const 2038 128  [[typeinfo=0]]
3511: AST_Const 2041 128  [[typeinfo=0]]
3516: AST_Const 2044 128  [[typeinfo=0]]
3521: AST_Const 2047 128  [[typeinfo=0]]
3526: AST_Const 2050 128  [[typeinfo=0]]
3531: AST_Const 2053 128  [[typeinfo=0]]
3536: AST_Const 2059 128  [[typeinfo=0]]
3541: AST_Const 2062 128  [[typeinfo=0]]
3546: AST_Const 2065 128  [[typeinfo=0]]
3551: AST_Const 2068 128  [[typeinfo=0]]
3556: AST_Const 2071 128  [[typeinfo=0]]
3561: AST_Const 2074 128  [[typeinfo=0]]
3566: AST_Const 2077 128  [[typeinfo=0]]
3571: AST_Const 2080 128  [[typeinfo=0]]
3576: AST_Const 2086 128  [[typeinfo=0]]
3581: AST_Const 2089 128  [[typeinfo=0]]
3586: AST_Const 2092 128  [[typeinfo=0]]
3591: AST_Const 2095 128  [[typeinfo=0]]
3596: AST_Const 2098 128  [[typeinfo=0]]
3601: AST_Const 2101 128  [[typeinfo=0]]
3606: AST_Const 2104 128  [[typeinfo=0]]
3611: AST_Const 2107 128  [[typeinfo=0]]
3616: AST_Const 2113 128  [[typeinfo=0]]
3621: AST_Const 2116 128  [[typeinfo=0]]
3626: AST_Const 2119 128  [[typeinfo=0]]
3631: AST_Const 2122 128  [[typeinfo=0]]
3636: AST_Const 2125 128  [[typeinfo=0]]
3641: AST_Const 2128 128  [[typeinfo=0]]
3646: AST_Const 2131 128  [[typeinfo=0]]
3651: AST_Const 2134 128  [[typeinfo=0]]
3656: AST_Const 2140 128  [[typeinfo=0]]
3661: AST_Const 2143 128  [[typeinfo=0]]
3666: AST_Const 2146 128  [[typeinfo=0]]
3671: AST_Const 2149 128  [[typeinfo=0]]
3676: AST_Const 2152 128  [[typeinfo=0]]
3681: AST_Const 2155 128  [[typeinfo=0]]
3686: AST_Const 2158 128  [[typeinfo=0]]
3691: AST_Const 2161 128  [[typeinfo=0]]
3696: AST_CommaSEQ [3686] [3691]  [[typeinfo=0]]
3701: AST_CommaSEQ [3681] [3696]  [[typeinfo=0]]
3706: AST_CommaSEQ [3676] [3701]  [[typeinfo=0]]
3711: AST_CommaSEQ [3671] [3706]  [[typeinfo=0]]
3716: AST_CommaSEQ [3666] [3711]  [[typeinfo=0]]
3721: AST_CommaSEQ [3661] [3716]  [[typeinfo=0]]
3726: AST_CommaSEQ [3656] [3721]  [[typeinfo=0]]
3731: AST_CommaSEQ [3651] [3726]  [[typeinfo=0]]
3736: AST_CommaSEQ [3646] [3731]  [[typeinfo=0]]
3741: AST_CommaSEQ [3641] [3736]  [[typeinfo=0]]
3746: AST_CommaSEQ [3636] [3741]  [[typeinfo=0]]
3751: AST_CommaSEQ [3631] [3746]  [[typeinfo=0]]
3756: AST_CommaSEQ [3626] [3751]  [[typeinfo=0]]
3761: AST_CommaSEQ [3621] [3756]  [[typeinfo=0]]
3766: AST_CommaSEQ [3616] [3761]  [[typeinfo=0]]
3771: AST_CommaSEQ [3611] [3766]  [[typeinfo=0]]
3776: AST_CommaSEQ [3606] [3771]  [[typeinfo=0]]
3781: AST_CommaSEQ [3601] [3776]  [[typeinfo=0]]
3786: AST_CommaSEQ [3596] [3781]  [[typeinfo=0]]
3791: AST_CommaSEQ [3591] [3786]  [[typeinfo=0]]
3796: AST_CommaSEQ [3586] [3791]  [[typeinfo=0]]
3801: AST_CommaSEQ [3581] [3796]  [[typeinfo=0]]
3806: AST_CommaSEQ [3576] [3801]  [[typeinfo=0]]
3811: AST_CommaSEQ [3571] [3806]  [[typeinfo=0]]
3816: AST_CommaSEQ [3566] [3811]  [[typeinfo=0]]
3821: AST_CommaSEQ [3561] [3816]  [[typeinfo=0]]
3826: AST_CommaSEQ [3556] [3821]  [[typeinfo=0]]
3831: AST_CommaSEQ [3551] [3826]  [[typeinfo=0]]
3836: AST_CommaSEQ [3546] [3831]  [[typeinfo=0]]
3841: AST_CommaSEQ [3541] [3836]  [[typeinfo=0]]
3846: AST_CommaSEQ [3536] [3841]  [[typeinfo=0]]
3851: AST_CommaSEQ [3531] [3846]  [[typeinfo=0]]
3856: AST_CommaSEQ [3526] [3851]  [[typeinfo=0]]
3861: AST_CommaSEQ [3521] [3856]  [[typeinfo=0]]
3866: AST_CommaSEQ [3516] [3861]  [[typeinfo=0]]
3871: AST_CommaSEQ [3511] [3866]  [[typeinfo=0]]
3876: AST_CommaSEQ [3506] [3871]  [[typeinfo=0]]
3881: AST_CommaSEQ [3501] [3876]  [[typeinfo=0]]
3886: AST_CommaSEQ [3496] [3881]  [[typeinfo=0]]
3891: AST_CommaSEQ [3491] [3886]  [[typeinfo=0]]
3896: AST_CommaSEQ [3486] [3891]  [[typeinfo=0]]
3901: AST_CommaSEQ [3481] [3896]  [[typeinfo=0]]
3906: AST_CommaSEQ [3476] [3901]  [[typeinfo=0]]
3911: AST_CommaSEQ [3471] [3906]  [[typeinfo=0]]
3916: AST_CommaSEQ [3466] [3911]  [[typeinfo=0]]
3921: AST_CommaSEQ [3461] [3916]  [[typeinfo=0]]
3926: AST_CommaSEQ [3456] [3921]  [[typeinfo=0]]
3931: AST_CommaSEQ [3451] [3926]  [[typeinfo=0]]
3936: AST_CommaSEQ [3446] [3931]  [[typeinfo=0]]
3941: AST_CommaSEQ [3441] [3936]  [[typeinfo=0]]
3946: AST_CommaSEQ [3436] [3941]  [[typeinfo=0]]
3951: AST_CommaSEQ [3431] [3946]  [[typeinfo=0]]
3956: AST_CommaSEQ [3426] [3951]  [[typeinfo=0]]
3961: AST_CommaSEQ [3421] [3956]  [[typeinfo=0]]
3966: AST_CommaSEQ [3416] [3961]  [[typeinfo=0]]
3971: AST_CommaSEQ [3411] [3966]  [[typeinfo=0]]
3976: AST_CommaSEQ [3406] [3971]  [[typeinfo=0]]
3981: AST_CommaSEQ [3401] [3976]  [[typeinfo=0]]
3986: AST_CommaSEQ [3396] [3981]  [[typeinfo=0]]
3991: AST_CommaSEQ [3391] [3986]  [[typeinfo=0]]
3996: AST_CommaSEQ [3386] [3991]  [[typeinfo=0]]
4001: AST_CommaSEQ [3381] [3996]  [[typeinfo=0]]
4006: AST_CommaSEQ [3376] [4001]  [[typeinfo=0]]
4011: AST_CommaSEQ [3371] [4006]  [[typeinfo=0]]
4016: AST_CommaSEQ [3366] [4011]  [[typeinfo=0]]
4021: AST_CommaSEQ [3361] [4016]  [[typeinfo=0]]
4026: AST_CommaSEQ [3356] [4021]  [[typeinfo=0]]
4031: AST_CommaSEQ [3351] [4026]  [[typeinfo=0]]
4036: AST_CommaSEQ [3346] [4031]  [[typeinfo=0]]
4041: AST_CommaSEQ [3341] [4036]  [[typeinfo=0]]
4046: AST_CommaSEQ [3336] [4041]  [[typeinfo=0]]
4051: AST_CommaSEQ [3331] [4046]  [[typeinfo=0]]
4056: AST_CommaSEQ [3326] [4051]  [[typeinfo=0]]
4061: AST_CommaSEQ [3321] [4056]  [[typeinfo=0]]
4066: AST_CommaSEQ [3316] [4061]  [[typeinfo=0]]
4071: AST_CommaSEQ [3311] [4066]  [[typeinfo=0]]
4076: AST_CommaSEQ [3306] [4071]  [[typeinfo=0]]
4081: AST_CommaSEQ [3301] [4076]  [[typeinfo=0]]
4086: AST_CommaSEQ [3296] [4081]  [[typeinfo=0]]
4091: AST_CommaSEQ [3291] [4086]  [[typeinfo=0]]
4096: AST_CommaSEQ [3286] [4091]  [[typeinfo=0]]
4101: AST_CommaSEQ [3281] [4096]  [[typeinfo=0]]
4106: AST_CommaSEQ [3276] [4101]  [[typeinfo=0]]
4111: AST_CommaSEQ [3271] [4106]  [[typeinfo=0]]
4116: AST_CommaSEQ [3266] [4111]  [[typeinfo=0]]
4121: AST_CommaSEQ [3261] [4116]  [[typeinfo=0]]
4126: AST_CommaSEQ [3256] [4121]  [[typeinfo=0]]
4131: AST_CommaSEQ [3251] [4126]  [[typeinfo=0]]
4136: AST_CommaSEQ [3246] [4131]  [[typeinfo=0]]
4141: AST_CommaSEQ [3241] [4136]  [[typeinfo=0]]
4146: AST_CommaSEQ [3236] [4141]  [[typeinfo=0]]
4151: AST_CommaSEQ [3231] [4146]  [[typeinfo=0]]
4156: AST_CommaSEQ [3226] [4151]  [[typeinfo=0]]
4161: AST_CommaSEQ [3221] [4156]  [[typeinfo=0]]
4166: AST_CommaSEQ [3216] [4161]  [[typeinfo=0]]
4171: AST_CommaSEQ [3211] [4166]  [[typeinfo=0]]
4176: AST_CommaSEQ [3206] [4171]  [[typeinfo=0]]
4181: AST_CommaSEQ [3201] [4176]  [[typeinfo=0]]
4186: AST_CommaSEQ [3196] [4181]  [[typeinfo=0]]
4191: AST_CommaSEQ [3191] [4186]  [[typeinfo=0]]
4196: AST_CommaSEQ [3186] [4191]  [[typeinfo=0]]
4201: AST_CommaSEQ [3181] [4196]  [[typeinfo=0]]
4206: AST_CommaSEQ [3176] [4201]  [[typeinfo=0]]
4211: AST_CommaSEQ [3171] [4206]  [[typeinfo=0]]
4216: AST_CommaSEQ [3166] [4211]  [[typeinfo=0]]
4221: AST_CommaSEQ [3161] [4216]  [[typeinfo=0]]
4226: AST_CommaSEQ [3156] [4221]  [[typeinfo=0]]
4231: AST_CommaSEQ [3151] [4226]  [[typeinfo=0]]
4236: AST_CommaSEQ [3146] [4231]  [[typeinfo=0]]
4241: AST_CommaSEQ [3141] [4236]  [[typeinfo=0]]
4246: AST_CommaSEQ [3136] [4241]  [[typeinfo=0]]
4251: AST_CommaSEQ [3131] [4246]  [[typeinfo=0]]
4256: AST_CommaSEQ [3126] [4251]  [[typeinfo=0]]
4261: AST_CommaSEQ [3121] [4256]  [[typeinfo=0]]
4266: AST_CommaSEQ [3116] [4261]  [[typeinfo=0]]
4271: AST_CommaSEQ [3111] [4266]  [[typeinfo=0]]
4276: AST_CommaSEQ [3106] [4271]  [[typeinfo=0]]
4281: AST_CommaSEQ [3101] [4276]  [[typeinfo=0]]
4286: AST_CommaSEQ [3096] [4281]  [[typeinfo=0]]
4291: AST_CommaSEQ [3091] [4286]  [[typeinfo=0]]
4296: AST_CommaSEQ [3086] [4291]  [[typeinfo=0]]
4301: AST_CommaSEQ [3081] [4296]  [[typeinfo=0]]
4306: AST_CommaSEQ [3076] [4301]  [[typeinfo=0]]
4311: AST_CommaSEQ [3071] [4306]  [[typeinfo=0]]
4316: AST_CommaSEQ [3066] [4311]  [[typeinfo=0]]
4321: AST_CommaSEQ [3061] [4316]  [[typeinfo=0]]
4326: AST_CommaSEQ [3056] [4321]  [[typeinfo=0]]
4331: AST_CommaSEQ [3051] [4326]  [[typeinfo=0]]
4336: AST_CommaSEQ [3046] [4331]  [[typeinfo=0]]
4341: AST_CommaSEQ [3031] [4336]  [[typeinfo=0]]
4346: AST_CommaSEQ [3016] [4341]  [[typeinfo=0]]
4351: AST_CommaSEQ [3011] [4346]  [[typeinfo=0]]
4356: AST_CommaSEQ [2996] [4351]  [[typeinfo=0]]
4361: AST_CommaSEQ [2991] [4356]  [[typeinfo=0]]
4366: AST_CommaSEQ [2986] [4361]  [[typeinfo=0]]
4371: AST_CommaSEQ [2981] [4366]  [[typeinfo=0]]
4376: AST_CommaSEQ [2976] [4371]  [[typeinfo=0]]
4381: AST_CommaSEQ [2956] [4376]  [[typeinfo=0]]
4386: AST_CommaSEQ [2921] [4381]  [[typeinfo=0]]
4391: AST_CommaSEQ [2891] [4386]  [[typeinfo=0]]
4396: AST_CommaSEQ [2876] [4391]  [[typeinfo=0]]
4401: AST_CommaSEQ [2861] [4396]  [[typeinfo=0]]
4406: AST_CommaSEQ [2856] [4401]  [[typeinfo=0]]
4411: AST_CommaSEQ [2841] [4406]  [[typeinfo=0]]
4416: AST_CommaSEQ [2836] [4411]  [[typeinfo=0]]
4421: AST_CommaSEQ [2831] [4416]  [[typeinfo=0]]
4426: AST_CommaSEQ [2816] [4421]  [[typeinfo=0]]
4431: AST_CommaSEQ [2801] [4426]  [[typeinfo=0]]
4436: AST_CommaSEQ [2786] [4431]  [[typeinfo=0]]
4441: AST_CommaSEQ [2766] [4436]  [[typeinfo=0]]
4446: AST_CommaSEQ [2746] [4441]  [[typeinfo=0]]
4451: AST_CommaSEQ [2741] [4446]  [[typeinfo=0]]
4456: AST_CommaSEQ [2721] [4451]  [[typeinfo=0]]
4461: AST_CommaSEQ [2691] [4456]  [[typeinfo=0]]
4466: AST_CommaSEQ [2671] [4461]  [[typeinfo=0]]
4471: AST_CommaSEQ [2641] [4466]  [[typeinfo=0]]
4476: AST_CommaSEQ [2626] [4471]  [[typeinfo=0]]
4481: AST_CommaSEQ [2611] [4476]  [[typeinfo=0]]
4486: AST_CommaSEQ [2606] [4481]  [[typeinfo=0]]
4491: AST_CommaSEQ [2601] [4486]  [[typeinfo=0]]
4496: AST_CommaSEQ [2596] [4491]  [[typeinfo=0]]
4501: AST_CommaSEQ [2581] [4496]  [[typeinfo=0]]
4506: AST_CommaSEQ [2566] [4501]  [[typeinfo=0]]
4511: AST_CommaSEQ [2561] [4506]  [[typeinfo=0]]
4516: AST_CommaSEQ [2546] [4511]  [[typeinfo=0]]
4521: AST_CommaSEQ [2541] [4516]  [[typeinfo=0]]
4526: AST_CommaSEQ [2536] [4521]  [[typeinfo=0]]
4531: AST_CommaSEQ [2531] [4526]  [[typeinfo=0]]
4536: AST_CommaSEQ [2526] [4531]  [[typeinfo=0]]
4541: AST_CommaSEQ [2506] [4536]  [[typeinfo=0]]
4546: AST_CommaSEQ [2471] [4541]  [[typeinfo=0]]
4551: AST_CommaSEQ [2441] [4546]  [[typeinfo=0]]
4556: AST_CommaSEQ [2426] [4551]  [[typeinfo=0]]
4561: AST_CommaSEQ [2411] [4556]  [[typeinfo=0]]
4566: AST_CommaSEQ [2406] [4561]  [[typeinfo=0]]
4571: AST_CommaSEQ [2391] [4566]  [[typeinfo=0]]
4576: AST_CommaSEQ [2386] [4571]  [[typeinfo=0]]
4581: AST_CommaSEQ [2381] [4576]  [[typeinfo=0]]
4586: AST_CommaSEQ [2366] [4581]  [[typeinfo=0]]
4591: AST_CommaSEQ [2351] [4586]  [[typeinfo=0]]
4596: AST_CommaSEQ [2336] [4591]  [[typeinfo=0]]
4601: AST_CommaSEQ [2316] [4596]  [[typeinfo=0]]
4606: AST_CommaSEQ [2296] [4601]  [[typeinfo=0]]
4611: AST_CommaSEQ [2291] [4606]  [[typeinfo=0]]
4616: AST_CommaSEQ [2271] [4611]  [[typeinfo=0]]
4621: AST_CommaSEQ [2241] [4616]  [[typeinfo=0]]
4626: AST_CommaSEQ [2221] [4621]  [[typeinfo=0]]
4631: AST_CommaSEQ [2191] [4626]  [[typeinfo=0]]
4636: AST_CommaSEQ [2176] [4631]  [[typeinfo=0]]
4641: AST_CommaSEQ [2161] [4636]  [[typeinfo=0]]
4646: AST_CommaSEQ [2156] [4641]  [[typeinfo=0]]
4651: AST_CommaSEQ [2151] [4646]  [[typeinfo=0]]
4656: AST_CommaSEQ [2146] [4651]  [[typeinfo=0]]
4661: AST_CommaSEQ [2131] [4656]  [[typeinfo=0]]
4666: AST_CommaSEQ [2126] [4661]  [[typeinfo=0]]
4671: AST_CommaSEQ [2111] [4666]  [[typeinfo=0]]
4676: AST_CommaSEQ [2096] [4671]  [[typeinfo=0]]
4681: AST_CommaSEQ [2086] [4676]  [[typeinfo=0]]
4686: AST_CommaSEQ [2061] [4681]  [[typeinfo=0]]
4691: AST_CommaSEQ [2036] [4686]  [[typeinfo=0]]
4696: AST_CommaSEQ [2011] [4691]  [[typeinfo=0]]
4701: AST_CommaSEQ [1986] [4696]  [[typeinfo=0]]
4706: AST_CommaSEQ [1961] [4701]  [[typeinfo=0]]
4711: AST_CommaSEQ [1936] [4706]  [[typeinfo=0]]
4716: AST_CommaSEQ [1911] [4711]  [[typeinfo=0]]
4721: AST_CommaSEQ [1886] [4716]  [[typeinfo=0]]
4726: AST_CommaSEQ [1861] [4721]  [[typeinfo=0]]
4731: AST_CommaSEQ [1841] [4726]  [[typeinfo=0]]
4736: AST_CommaSEQ [1836] [4731]  [[typeinfo=0]]
4741: AST_CommaSEQ [1831] [4736]  [[typeinfo=0]]
4746: AST_CommaSEQ [1816] [4741]  [[typeinfo=0]]
4751: AST_CommaSEQ [1801] [4746]  [[typeinfo=0]]
4756: AST_CommaSEQ [1781] [4751]  [[typeinfo=0]]
4761: AST_CommaSEQ [1761] [4756]  [[typeinfo=0]]
4766: AST_CommaSEQ [1746] [4761]  [[typeinfo=0]]
4771: AST_CommaSEQ [1731] [4766]  [[typeinfo=0]]
4776: AST_CommaSEQ [1726] [4771]  [[typeinfo=0]]
4781: AST_CommaSEQ [1721] [4776]  [[typeinfo=0]]
4786: AST_CommaSEQ [1706] [4781]  [[typeinfo=0]]
4791: AST_CommaSEQ [1701] [4786]  [[typeinfo=0]]
4796: AST_CommaSEQ [1696] [4791]  [[typeinfo=0]]
4801: AST_CommaSEQ [1686] [4796]  [[typeinfo=0]]
4806: AST_CommaSEQ [1666] [4801]  [[typeinfo=0]]
4811: AST_CommaSEQ [1661] [4806]  [[typeinfo=0]]
4816: AST_CommaSEQ [1646] [4811]  [[typeinfo=0]]
4821: AST_CommaSEQ [1631] [4816]  [[typeinfo=0]]
4826: AST_CommaSEQ [1616] [4821]  [[typeinfo=0]]
4831: AST_CommaSEQ [1601] [4826]  [[typeinfo=0]]
4836: AST_CommaSEQ [1586] [4831]  [[typeinfo=0]]
4841: AST_CommaSEQ [1571] [4836]  [[typeinfo=0]]
4846: AST_CommaSEQ [1556] [4841]  [[typeinfo=0]]
4851: AST_CommaSEQ [1541] [4846]  [[typeinfo=0]]
4856: AST_CommaSEQ [1526] [4851]  [[typeinfo=0]]
4861: AST_CommaSEQ [1511] [4856]  [[typeinfo=0]]
4866: AST_CommaSEQ [1496] [4861]  [[typeinfo=0]]
4871: AST_CommaSEQ [1481] [4866]  [[typeinfo=0]]
4876: AST_CommaSEQ [1466] [4871]  [[typeinfo=0]]
4881: AST_CommaSEQ [1451] [4876]  [[typeinfo=0]]
4886: AST_CommaSEQ [1436] [4881]  [[typeinfo=0]]
4891: AST_CommaSEQ [1421] [4886]  [[typeinfo=0]]
4896: AST_CommaSEQ [1406] [4891]  [[typeinfo=0]]
4901: AST_CommaSEQ [1391] [4896]  [[typeinfo=0]]
4906: AST_CommaSEQ [1376] [4901]  [[typeinfo=0]]
4911: AST_CommaSEQ [1361] [4906]  [[typeinfo=0]]
4916: AST_CommaSEQ [1346] [4911]  [[typeinfo=0]]
4921: AST_CommaSEQ [1331] [4916]  [[typeinfo=0]]
4926: AST_CommaSEQ [1316] [4921]  [[typeinfo=0]]
4931: AST_CommaSEQ [1301] [4926]  [[typeinfo=0]]
4936: AST_CommaSEQ [1286] [4931]  [[typeinfo=0]]
4941: AST_CommaSEQ [1271] [4936]  [[typeinfo=0]]
4946: AST_CommaSEQ [1256] [4941]  [[typeinfo=0]]
4951: AST_CommaSEQ [1241] [4946]  [[typeinfo=0]]
4956: AST_CommaSEQ [1226] [4951]  [[typeinfo=0]]
4961: AST_CommaSEQ [1211] [4956]  [[typeinfo=0]]
4966: AST_CommaSEQ [1196] [4961]  [[typeinfo=0]]
4971: AST_CommaSEQ [4966] [-1]  [[typeinfo=0]]
4976: AST_AssignTo [-1] [4971]  [[typeinfo=0]]
4981: AST_TYPE_Atom 0 4  [[typeinfo=0]]
4986: AST_TYPE_ArrayOf [1177] [4981] 0 -1 -1  [[typeinfo=0]]
4994: AST_Declare [1182] [4986]  [[typeinfo=0]]
4999: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5004: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5008: AST_TAG "a" (c[2171].s)  [[typeinfo=0]]
5012: AST_Declare [5008] [4999]  [[typeinfo=0]]
5017: AST_SEQ [5012] [-1]  [[typeinfo=0]]
5022: AST_TYPE_Atom 0 0  [[typeinfo=0]]
5027: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5031: AST_TAG "main_in" (c[2179].s)  [[typeinfo=0]]
5035: AST_Declare [5031] [5022]  [[typeinfo=0]]
5040: AST_SEQ [5035] [-1]  [[typeinfo=0]]
5045: AST_TYPE_Atom 0 0  [[typeinfo=0]]
5050: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5054: AST_TAG "main_out" (c[2187].s)  [[typeinfo=0]]
5058: AST_Declare [5054] [5045]  [[typeinfo=0]]
5063: AST_SEQ [5058] [-1]  [[typeinfo=0]]
5068: AST_TYPE_Atom 0 0  [[typeinfo=0]]
5073: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5077: AST_TAG "tty_in" (c[2195].s)  [[typeinfo=0]]
5081: AST_Declare [5077] [5068]  [[typeinfo=0]]
5086: AST_SEQ [5081] [-1]  [[typeinfo=0]]
5091: AST_TYPE_Atom 0 0  [[typeinfo=0]]
5096: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5100: AST_TAG "tty_out" (c[2203].s)  [[typeinfo=0]]
5104: AST_Declare [5100] [5091]  [[typeinfo=0]]
5109: AST_SEQ [5104] [-1]  [[typeinfo=0]]
5114: AST_TYPE_Atom 0 0  [[typeinfo=0]]
5119: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5123: AST_TAG "log_out" (c[2211].s)  [[typeinfo=0]]
5127: AST_Declare [5123] [5114]  [[typeinfo=0]]
5132: AST_SEQ [5127] [-1]  [[typeinfo=0]]
5137: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5142: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5146: AST_TAG "com" (c[2219].s)  [[typeinfo=0]]
5150: AST_Declare [5146] [5137]  [[typeinfo=0]]
5155: AST_SEQ [5150] [-1]  [[typeinfo=0]]
5160: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5165: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5169: AST_TAG "link" (c[2227].s)  [[typeinfo=0]]
5173: AST_Declare [5169] [5160]  [[typeinfo=0]]
5178: AST_SEQ [5173] [-1]  [[typeinfo=0]]
5183: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5188: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5192: AST_TAG "text" (c[2235].s)  [[typeinfo=0]]
5196: AST_Declare [5192] [5183]  [[typeinfo=0]]
5201: AST_SEQ [5196] [-1]  [[typeinfo=0]]
5206: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5211: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5215: AST_TAG "num" (c[2243].s)  [[typeinfo=0]]
5219: AST_Declare [5215] [5206]  [[typeinfo=0]]
5224: AST_SEQ [5219] [-1]  [[typeinfo=0]]
5229: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5234: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5238: AST_TAG "lim" (c[2251].s)  [[typeinfo=0]]
5242: AST_Declare [5238] [5229]  [[typeinfo=0]]
5247: AST_SEQ [5242] [-1]  [[typeinfo=0]]
5252: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5257: AST_TAG "argcmp" (c[2258].s)  [[typeinfo=0]]
5261: AST_TAG "si" (c[2263].s)  [[typeinfo=0]]
5265: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5270: AST_TYPE_PointerTo [5265]  [[typeinfo=0]]
5274: AST_DefParam 5261 [5270] [5293]  [[typeinfo=0]]
5280: AST_TAG "sm" (c[2269].s)  [[typeinfo=0]]
5284: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5289: AST_TYPE_PointerTo [5284]  [[typeinfo=0]]
5293: AST_DefParam 5280 [5289] [-1]  [[typeinfo=0]]
5299: AST_Scope [5723] -1 1  [[typeinfo=0]]
5305: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5310: AST_TAG "n" (c[2278].s)  [[typeinfo=0]]
5314: AST_TAG "strlen" (c[2282].s)  [[typeinfo=0]]
5318: AST_TAG "si" (c[2284].s)  [[typeinfo=0]]
5322: AST_UseParam [-1] [-1]  [[typeinfo=0]]
5327: AST_UseParam [5318] [5322]  [[typeinfo=0]]
5332: AST_Call [5314] [5327]  [[typeinfo=0]]
5337: AST_AssignTo [-1] [5332]  [[typeinfo=0]]
5342: AST_Declare [5310] [5305]  [[typeinfo=0]]
5347: AST_SEQ [5342] [-1]  [[typeinfo=0]]
5352: AST_SEQ [5347] [-1]  [[typeinfo=0]]
5357: AST_TAG "n" (c[2294].s)  [[typeinfo=0]]
5361: AST_TAG "strlen" (c[2298].s)  [[typeinfo=0]]
5365: AST_TAG "sm" (c[2300].s)  [[typeinfo=0]]
5369: AST_UseParam [-1] [-1]  [[typeinfo=0]]
5374: AST_UseParam [5365] [5369]  [[typeinfo=0]]
5379: AST_Call [5361] [5374]  [[typeinfo=0]]
5384: AST_GT [5357] [5379]  [[typeinfo=0]]
5389: AST_Const 2308 0  [[typeinfo=0]]
5394: AST_Const 2311 0  [[typeinfo=0]]
5399: AST_NE [5389] [5394]  [[typeinfo=0]]
5404: AST_ReturnResult [5399] -1  [[typeinfo=0]]
5409: AST_IFTHEN [5384] [5404]  [[typeinfo=0]]
5414: AST_TAG "n" (c[2322].s)  [[typeinfo=0]]
5418: AST_Post_Dec [5414]  [[typeinfo=0]]
5422: AST_Const 2327 0  [[typeinfo=0]]
5427: AST_GT [5418] [5422]  [[typeinfo=0]]
5432: AST_Const 2335 97  [[typeinfo=0]]
5437: AST_TAG "si" (c[2339].s)  [[typeinfo=0]]
5441: AST_TAG "n" (c[2341].s)  [[typeinfo=0]]
5445: AST_Idx [5437] [5441]  [[typeinfo=0]]
5450: AST_LE [5432] [5445]  [[typeinfo=0]]
5455: AST_TAG "si" (c[2347].s)  [[typeinfo=0]]
5459: AST_TAG "n" (c[2349].s)  [[typeinfo=0]]
5463: AST_Idx [5455] [5459]  [[typeinfo=0]]
5468: AST_Const 2354 122  [[typeinfo=0]]
5473: AST_LE [5463] [5468]  [[typeinfo=0]]
5478: AST_BoolAnd [5450] [5473]  [[typeinfo=0]]
5483: AST_TAG "si" (c[2358].s)  [[typeinfo=0]]
5487: AST_TAG "n" (c[2360].s)  [[typeinfo=0]]
5491: AST_Idx [5483] [5487]  [[typeinfo=0]]
5496: AST_Const 2364 97  [[typeinfo=0]]
5501: AST_Const 2366 65  [[typeinfo=0]]
5506: AST_Add [5511] [5501]  [[typeinfo=0]]
5511: AST_Sub [5491] [5496]  [[typeinfo=0]]
5516: AST_TAG "si" (c[2369].s)  [[typeinfo=0]]
5520: AST_TAG "n" (c[2371].s)  [[typeinfo=0]]
5524: AST_Idx [5516] [5520]  [[typeinfo=0]]
5529: AST_Cond [5478] [5506] [5524]  [[typeinfo=0]]
5535: AST_Const 2381 97  [[typeinfo=0]]
5540: AST_TAG "sm" (c[2385].s)  [[typeinfo=0]]
5544: AST_TAG "n" (c[2387].s)  [[typeinfo=0]]
5548: AST_Idx [5540] [5544]  [[typeinfo=0]]
5553: AST_LE [5535] [5548]  [[typeinfo=0]]
5558: AST_TAG "sm" (c[2393].s)  [[typeinfo=0]]
5562: AST_TAG "n" (c[2395].s)  [[typeinfo=0]]
5566: AST_Idx [5558] [5562]  [[typeinfo=0]]
5571: AST_Const 2400 122  [[typeinfo=0]]
5576: AST_LE [5566] [5571]  [[typeinfo=0]]
5581: AST_BoolAnd [5553] [5576]  [[typeinfo=0]]
5586: AST_TAG "sm" (c[2404].s)  [[typeinfo=0]]
5590: AST_TAG "n" (c[2406].s)  [[typeinfo=0]]
5594: AST_Idx [5586] [5590]  [[typeinfo=0]]
5599: AST_Const 2410 97  [[typeinfo=0]]
5604: AST_Const 2412 65  [[typeinfo=0]]
5609: AST_Add [5614] [5604]  [[typeinfo=0]]
5614: AST_Sub [5594] [5599]  [[typeinfo=0]]
5619: AST_TAG "sm" (c[2415].s)  [[typeinfo=0]]
5623: AST_TAG "n" (c[2417].s)  [[typeinfo=0]]
5627: AST_Idx [5619] [5623]  [[typeinfo=0]]
5632: AST_Cond [5581] [5609] [5627]  [[typeinfo=0]]
5638: AST_NE [5529] [5632]  [[typeinfo=0]]
5643: AST_Const 2427 0  [[typeinfo=0]]
5648: AST_Const 2430 0  [[typeinfo=0]]
5653: AST_NE [5643] [5648]  [[typeinfo=0]]
5658: AST_ReturnResult [5653] -1  [[typeinfo=0]]
5663: AST_IFTHEN [5638] [5658]  [[typeinfo=0]]
5668: AST_C_While [5427] [5663] -1 -1 -1  [[typeinfo=0]]
5676: AST_Const 2442 0  [[typeinfo=0]]
5681: AST_Const 2445 0  [[typeinfo=0]]
5686: AST_EQ [5676] [5681]  [[typeinfo=0]]
5691: AST_ReturnResult [5686] -1  [[typeinfo=0]]
5696: AST_SEQ [5668] [5691]  [[typeinfo=0]]
5701: AST_SEQ [5409] [5696]  [[typeinfo=0]]
5706: AST_SEQ [5352] [5701]  [[typeinfo=0]]
5711: AST_ReceiveParam 5280 [5289] [-1]  [[typeinfo=0]]
5717: AST_ReceiveParam 5261 [5270] [5711]  [[typeinfo=0]]
5723: AST_SEQ [5717] [5706]  [[typeinfo=0]]
5728: AST_DefProc 5252 [5257] [5274] [5299]  [[typeinfo=0]]
5735: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5740: AST_TAG "rdargs" (c[2455].s)  [[typeinfo=0]]
5744: AST_TAG "key" (c[2460].s)  [[typeinfo=0]]
5748: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5753: AST_TYPE_PointerTo [5748]  [[typeinfo=0]]
5757: AST_DefParam 5744 [5753] [5776]  [[typeinfo=0]]
5763: AST_TAG "Cargv" (c[2466].s)  [[typeinfo=0]]
5767: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5772: AST_TYPE_PointerTo [5767]  [[typeinfo=0]]
5776: AST_DefParam 5763 [5772] [5795]  [[typeinfo=0]]
5782: AST_TAG "Bargv" (c[2474].s)  [[typeinfo=0]]
5786: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5791: AST_TYPE_PointerTo [5786]  [[typeinfo=0]]
5795: AST_DefParam 5782 [5791] [5810]  [[typeinfo=0]]
5801: AST_TAG "Cargc" (c[2481].s)  [[typeinfo=0]]
5805: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5810: AST_DefParam 5801 [5805] [5825]  [[typeinfo=0]]
5816: AST_TAG "Bargc" (c[2486].s)  [[typeinfo=0]]
5820: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5825: AST_DefParam 5816 [5820] [-1]  [[typeinfo=0]]
5831: AST_Scope [7839] -1 1  [[typeinfo=0]]
5837: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5842: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5846: AST_TAG "keynames" (c[2494].s)  [[typeinfo=0]]
5850: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5855: AST_TYPE_ArrayOf [5837] [5850] 0 -1 -1  [[typeinfo=0]]
5863: AST_Declare [5846] [5855]  [[typeinfo=0]]
5868: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5873: AST_TAG "keyflags" (c[2505].s)  [[typeinfo=0]]
5877: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5882: AST_TYPE_ArrayOf [5868] [5877] 0 -1 -1  [[typeinfo=0]]
5890: AST_Declare [5873] [5882]  [[typeinfo=0]]
5895: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5900: AST_TAG "keycopy" (c[2516].s)  [[typeinfo=0]]
5904: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5909: AST_TYPE_ArrayOf [5895] [5904] 0 -1 -1  [[typeinfo=0]]
5917: AST_Declare [5900] [5909]  [[typeinfo=0]]
5922: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5927: AST_TAG "nkeys" (c[2529].s)  [[typeinfo=0]]
5931: AST_Declare [5927] [5922]  [[typeinfo=0]]
5936: AST_SEQ [5931] [-1]  [[typeinfo=0]]
5941: AST_TYPE_Atom 0 1  [[typeinfo=0]]
5946: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
5950: AST_TAG "keyp" (c[2540].s)  [[typeinfo=0]]
5954: AST_TAG "keycopy" (c[2544].s)  [[typeinfo=0]]
5958: AST_AssignTo [-1] [5954]  [[typeinfo=0]]
5963: AST_Declare [5950] [5941]  [[typeinfo=0]]
5968: AST_SEQ [5963] [-1]  [[typeinfo=0]]
5973: AST_TYPE_Atom 0 4  [[typeinfo=0]]
5978: AST_TAG "nfree" (c[2554].s)  [[typeinfo=0]]
5982: AST_Declare [5978] [5973]  [[typeinfo=0]]
5987: AST_SEQ [5982] [-1]  [[typeinfo=0]]
5992: AST_SEQ [5987] [-1]  [[typeinfo=0]]
5997: AST_SEQ [5968] [5992]  [[typeinfo=0]]
6002: AST_SEQ [5936] [5997]  [[typeinfo=0]]
6007: AST_SEQ [5917] [6002]  [[typeinfo=0]]
6012: AST_SEQ [5890] [6007]  [[typeinfo=0]]
6017: AST_SEQ [5863] [6012]  [[typeinfo=0]]
6022: AST_TAG "nkeys" (c[2563].s)  [[typeinfo=0]]
6026: AST_AssignTo [6022] [6031]  [[typeinfo=0]]
6031: AST_Const 2567 0  [[typeinfo=0]]
6036: AST_TAG "nkeys" (c[2570].s)  [[typeinfo=0]]
6040: AST_TAG "Bargc" (c[2575].s)  [[typeinfo=0]]
6044: AST_LE [6036] [6040]  [[typeinfo=0]]
6049: AST_TAG "nkeys" (c[2578].s)  [[typeinfo=0]]
6053: AST_Post_Inc [6049]  [[typeinfo=0]]
6057: AST_TAG "Bargv" (c[2582].s)  [[typeinfo=0]]
6061: AST_TAG "nkeys" (c[2584].s)  [[typeinfo=0]]
6065: AST_Idx [6057] [6061]  [[typeinfo=0]]
6070: AST_AssignTo [6065] [6075]  [[typeinfo=0]]
6075: AST_Const 2595 0  [[typeinfo=0]]
6080: AST_C_ForLoop [6026] [6044] [6053] [6070] -1 -1 -1  [[typeinfo=0]]
6090: AST_TAG "Bargv" (c[2601].s)  [[typeinfo=0]]
6094: AST_Const 2603 0  [[typeinfo=0]]
6099: AST_Idx [6090] [6094]  [[typeinfo=0]]
6104: AST_AssignTo [6099] [6118]  [[typeinfo=0]]
6109: AST_TAG "Cargv" (c[2608].s)  [[typeinfo=0]]
6113: AST_Const 2610 0  [[typeinfo=0]]
6118: AST_Idx [6109] [6113]  [[typeinfo=0]]
6123: AST_TAG "nkeys" (c[2617].s)  [[typeinfo=0]]
6127: AST_AssignTo [6123] [6132]  [[typeinfo=0]]
6132: AST_Const 2621 0  [[typeinfo=0]]
6137: AST_IndirectThrough [6141]  [[typeinfo=0]]
6141: AST_TAG "key" (c[2631].s)  [[typeinfo=0]]
6145: AST_Scope [6877] -1 2  [[typeinfo=0]]
6151: AST_IndirectThrough [6155]  [[typeinfo=0]]
6155: AST_TAG "key" (c[2646].s)  [[typeinfo=0]]
6159: AST_Const 2651 32  [[typeinfo=0]]
6164: AST_EQ [6151] [6159]  [[typeinfo=0]]
6169: AST_TAG "key" (c[2654].s)  [[typeinfo=0]]
6173: AST_Post_Inc [6169]  [[typeinfo=0]]
6177: AST_C_While [6164] [6173] -1 -1 -1  [[typeinfo=0]]
6185: AST_IndirectThrough [6189]  [[typeinfo=0]]
6189: AST_TAG "key" (c[2668].s)  [[typeinfo=0]]
6193: AST_Const 2673 0  [[typeinfo=0]]
6198: AST_EQ [6185] [6193]  [[typeinfo=0]]
6203: AST_C_Break -1  [[typeinfo=0]]
6207: AST_IFTHEN [6198] [6203]  [[typeinfo=0]]
6212: AST_TAG "keynames" (c[2685].s)  [[typeinfo=0]]
6216: AST_TAG "nkeys" (c[2687].s)  [[typeinfo=0]]
6220: AST_Idx [6212] [6216]  [[typeinfo=0]]
6225: AST_AssignTo [6220] [6230]  [[typeinfo=0]]
6230: AST_TAG "keyp" (c[2692].s)  [[typeinfo=0]]
6234: AST_TAG "keyflags" (c[2701].s)  [[typeinfo=0]]
6238: AST_TAG "nkeys" (c[2703].s)  [[typeinfo=0]]
6242: AST_Idx [6234] [6238]  [[typeinfo=0]]
6247: AST_AssignTo [6242] [6252]  [[typeinfo=0]]
6252: AST_Const 2708 0  [[typeinfo=0]]
6257: AST_IndirectThrough [6261]  [[typeinfo=0]]
6261: AST_TAG "key" (c[2721].s)  [[typeinfo=0]]
6265: AST_Const 2726 0  [[typeinfo=0]]
6270: AST_NE [6257] [6265]  [[typeinfo=0]]
6275: AST_IndirectThrough [6279]  [[typeinfo=0]]
6279: AST_TAG "key" (c[2732].s)  [[typeinfo=0]]
6283: AST_Const 2737 32  [[typeinfo=0]]
6288: AST_NE [6275] [6283]  [[typeinfo=0]]
6293: AST_IndirectThrough [6297]  [[typeinfo=0]]
6297: AST_TAG "key" (c[2743].s)  [[typeinfo=0]]
6301: AST_Const 2748 47  [[typeinfo=0]]
6306: AST_NE [6293] [6301]  [[typeinfo=0]]
6311: AST_BoolAnd [6316] [6306]  [[typeinfo=0]]
6316: AST_BoolAnd [6270] [6288]  [[typeinfo=0]]
6321: AST_Scope [6413] -1 2  [[typeinfo=0]]
6327: AST_IndirectThrough [6335]  [[typeinfo=0]]
6331: AST_TAG "keyp" (c[2763].s)  [[typeinfo=0]]
6335: AST_Post_Inc [6331]  [[typeinfo=0]]
6339: AST_AssignTo [6327] [6344]  [[typeinfo=0]]
6344: AST_IndirectThrough [6352]  [[typeinfo=0]]
6348: AST_TAG "key" (c[2769].s)  [[typeinfo=0]]
6352: AST_Post_Inc [6348]  [[typeinfo=0]]
6356: AST_TAG "keyp" (c[2785].s)  [[typeinfo=0]]
6360: AST_Const 2789 1  [[typeinfo=0]]
6365: AST_Add [6356] [6360]  [[typeinfo=0]]
6370: AST_TAG "keycopy" (c[2794].s)  [[typeinfo=0]]
6374: AST_SizeOf 6379 1  [[typeinfo=0]]
6379: AST_TAG "keycopy" (c[2800].s)  [[typeinfo=0]]
6383: AST_Add [6370] [6374]  [[typeinfo=0]]
6388: AST_GE [6365] [6383]  [[typeinfo=0]]
6393: AST_Const 2818 2818  [[typeinfo=0]]
6398: AST_ReturnResult [6393] -1  [[typeinfo=0]]
6403: AST_IFTHEN [6388] [6398]  [[typeinfo=0]]
6408: AST_SEQ [6339] [6403]  [[typeinfo=0]]
6413: AST_SEQ [-1] [6408]  [[typeinfo=0]]
6418: AST_C_While [6311] [6321] -1 -1 -1  [[typeinfo=0]]
6426: AST_IndirectThrough [6434]  [[typeinfo=0]]
6430: AST_TAG "keyp" (c[2837].s)  [[typeinfo=0]]
6434: AST_Post_Inc [6430]  [[typeinfo=0]]
6438: AST_AssignTo [6426] [6443]  [[typeinfo=0]]
6443: AST_Const 2842 0  [[typeinfo=0]]
6448: AST_IndirectThrough [6452]  [[typeinfo=0]]
6452: AST_TAG "key" (c[2855].s)  [[typeinfo=0]]
6456: AST_Const 2860 47  [[typeinfo=0]]
6461: AST_EQ [6448] [6456]  [[typeinfo=0]]
6466: AST_Scope [6790] -1 2  [[typeinfo=0]]
6472: AST_IndirectThrough [6476]  [[typeinfo=0]]
6476: AST_Pre_Inc [6480]  [[typeinfo=0]]
6480: AST_TAG "key" (c[2872].s)  [[typeinfo=0]]
6484: AST_Const 2878 32  [[typeinfo=0]]
6489: AST_NE [6472] [6484]  [[typeinfo=0]]
6494: AST_IndirectThrough [6498]  [[typeinfo=0]]
6498: AST_TAG "key" (c[2884].s)  [[typeinfo=0]]
6502: AST_Const 2889 0  [[typeinfo=0]]
6507: AST_NE [6494] [6502]  [[typeinfo=0]]
6512: AST_BoolAnd [6489] [6507]  [[typeinfo=0]]
6517: AST_Scope [6777] -1 2  [[typeinfo=0]]
6523: AST_IndirectThrough [6527]  [[typeinfo=0]]
6527: AST_TAG "key" (c[2910].s)  [[typeinfo=0]]
6531: AST_Scope [6764] -1 2  [[typeinfo=0]]
6537: AST_Const 2932 65  [[typeinfo=0]]
6542: AST_Const 2952 97  [[typeinfo=0]]
6547: AST_TAG "keyflags" (c[2975].s)  [[typeinfo=0]]
6551: AST_TAG "nkeys" (c[2977].s)  [[typeinfo=0]]
6555: AST_Idx [6547] [6551]  [[typeinfo=0]]
6560: AST_BitOrAss [6555] [6565]  [[typeinfo=0]]
6565: AST_Const 2983 1  [[typeinfo=0]]
6570: AST_Case [6542] -1 -1  [[typeinfo=0]]
6576: AST_SEQ [6570] [6560]  [[typeinfo=0]]
6581: AST_Case [6537] -1 -1  [[typeinfo=0]]
6587: AST_SEQ [6581] [6576]  [[typeinfo=0]]
6592: AST_C_Break -1  [[typeinfo=0]]
6596: AST_Const 3026 83  [[typeinfo=0]]
6601: AST_Const 3046 115  [[typeinfo=0]]
6606: AST_TAG "keyflags" (c[3069].s)  [[typeinfo=0]]
6610: AST_TAG "nkeys" (c[3071].s)  [[typeinfo=0]]
6614: AST_Idx [6606] [6610]  [[typeinfo=0]]
6619: AST_BitOrAss [6614] [6624]  [[typeinfo=0]]
6624: AST_Const 3077 2  [[typeinfo=0]]
6629: AST_Case [6601] -1 -1  [[typeinfo=0]]
6635: AST_SEQ [6629] [6619]  [[typeinfo=0]]
6640: AST_Case [6596] -1 -1  [[typeinfo=0]]
6646: AST_SEQ [6640] [6635]  [[typeinfo=0]]
6651: AST_C_Break -1  [[typeinfo=0]]
6655: AST_Const 3120 75  [[typeinfo=0]]
6660: AST_Const 3140 107  [[typeinfo=0]]
6665: AST_TAG "keyflags" (c[3163].s)  [[typeinfo=0]]
6669: AST_TAG "nkeys" (c[3165].s)  [[typeinfo=0]]
6673: AST_Idx [6665] [6669]  [[typeinfo=0]]
6678: AST_BitOrAss [6673] [6683]  [[typeinfo=0]]
6683: AST_Const 3171 4  [[typeinfo=0]]
6688: AST_Case [6660] -1 -1  [[typeinfo=0]]
6694: AST_SEQ [6688] [6678]  [[typeinfo=0]]
6699: AST_Case [6655] -1 -1  [[typeinfo=0]]
6705: AST_SEQ [6699] [6694]  [[typeinfo=0]]
6710: AST_C_Break -1  [[typeinfo=0]]
6714: AST_Const 3238 3238  [[typeinfo=0]]
6719: AST_ReturnResult [6714] -1  [[typeinfo=0]]
6724: AST_DefaultCase -1 -1  [[typeinfo=0]]
6729: AST_SEQ [6724] [6719]  [[typeinfo=0]]
6734: AST_SEQ [6710] [6729]  [[typeinfo=0]]
6739: AST_SEQ [6705] [6734]  [[typeinfo=0]]
6744: AST_SEQ [6651] [6739]  [[typeinfo=0]]
6749: AST_SEQ [6646] [6744]  [[typeinfo=0]]
6754: AST_SEQ [6592] [6749]  [[typeinfo=0]]
6759: AST_SEQ [6587] [6754]  [[typeinfo=0]]
6764: AST_SEQ [-1] [6759]  [[typeinfo=0]]
6769: AST_Switch [6523] [6531] -1 -1 -1  [[typeinfo=0]]
6777: AST_SEQ [-1] [6769]  [[typeinfo=0]]
6782: AST_C_While [6512] [6517] -1 -1 -1  [[typeinfo=0]]
6790: AST_SEQ [-1] [6782]  [[typeinfo=0]]
6795: AST_IFTHEN [6461] [6466]  [[typeinfo=0]]
6800: AST_TAG "nkeys" (c[3281].s)  [[typeinfo=0]]
6804: AST_Post_Inc [6800]  [[typeinfo=0]]
6808: AST_TAG "nkeys" (c[3294].s)  [[typeinfo=0]]
6812: AST_Const 3299 50  [[typeinfo=0]]
6817: AST_EQ [6808] [6812]  [[typeinfo=0]]
6822: AST_Const 3305 3305  [[typeinfo=0]]
6827: AST_ReturnResult [6822] -1  [[typeinfo=0]]
6832: AST_IFTHEN [6817] [6827]  [[typeinfo=0]]
6837: AST_SEQ [6804] [6832]  [[typeinfo=0]]
6842: AST_SEQ [6795] [6837]  [[typeinfo=0]]
6847: AST_SEQ [6438] [6842]  [[typeinfo=0]]
6852: AST_SEQ [6418] [6847]  [[typeinfo=0]]
6857: AST_SEQ [6247] [6852]  [[typeinfo=0]]
6862: AST_SEQ [6225] [6857]  [[typeinfo=0]]
6867: AST_SEQ [6207] [6862]  [[typeinfo=0]]
6872: AST_SEQ [6177] [6867]  [[typeinfo=0]]
6877: AST_SEQ [-1] [6872]  [[typeinfo=0]]
6882: AST_C_While [6137] [6145] -1 -1 -1  [[typeinfo=0]]
6890: AST_TAG "Cargv" (c[3317].s)  [[typeinfo=0]]
6894: AST_Post_Inc [6890]  [[typeinfo=0]]
6898: AST_TAG "Cargc" (c[3324].s)  [[typeinfo=0]]
6902: AST_Post_Dec [6898]  [[typeinfo=0]]
6906: AST_TAG "Bargc" (c[3334].s)  [[typeinfo=0]]
6910: AST_TAG "nkeys" (c[3338].s)  [[typeinfo=0]]
6914: AST_LT [6906] [6910]  [[typeinfo=0]]
6919: AST_Const 3344 3344  [[typeinfo=0]]
6924: AST_ReturnResult [6919] -1  [[typeinfo=0]]
6929: AST_IFTHEN [6914] [6924]  [[typeinfo=0]]
6934: AST_TAG "nfree" (c[3351].s)  [[typeinfo=0]]
6938: AST_AssignTo [6934] [6943]  [[typeinfo=0]]
6943: AST_Const 3355 0  [[typeinfo=0]]
6948: AST_TAG "Cargc" (c[3364].s)  [[typeinfo=0]]
6952: AST_Post_Dec [6948]  [[typeinfo=0]]
6956: AST_Const 3369 0  [[typeinfo=0]]
6961: AST_GT [6952] [6956]  [[typeinfo=0]]
6966: AST_Scope [7736] -1 2  [[typeinfo=0]]
6972: AST_IndirectThrough [6980]  [[typeinfo=0]]
6976: AST_IndirectThrough [6972]  [[typeinfo=0]]
6980: AST_TAG "Cargv" (c[3385].s)  [[typeinfo=0]]
6984: AST_Const 3390 45  [[typeinfo=0]]
6989: AST_EQ [6976] [6984]  [[typeinfo=0]]
6994: AST_Scope [7521] -1 2  [[typeinfo=0]]
7000: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7005: AST_TAG "itmp" (c[3408].s)  [[typeinfo=0]]
7009: AST_Declare [7005] [7000]  [[typeinfo=0]]
7014: AST_SEQ [7009] [-1]  [[typeinfo=0]]
7019: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7024: AST_TAG "found" (c[3424].s)  [[typeinfo=0]]
7028: AST_Const 3429 0  [[typeinfo=0]]
7033: AST_Const 3432 0  [[typeinfo=0]]
7038: AST_NE [7028] [7033]  [[typeinfo=0]]
7043: AST_AssignTo [-1] [7038]  [[typeinfo=0]]
7048: AST_Declare [7024] [7019]  [[typeinfo=0]]
7053: AST_SEQ [7048] [-1]  [[typeinfo=0]]
7058: AST_SEQ [7053] [-1]  [[typeinfo=0]]
7063: AST_SEQ [7014] [7058]  [[typeinfo=0]]
7068: AST_TAG "keyp" (c[3445].s)  [[typeinfo=0]]
7072: AST_AssignTo [7068] [7094]  [[typeinfo=0]]
7077: AST_IndirectThrough [7085]  [[typeinfo=0]]
7081: AST_TAG "Cargv" (c[3451].s)  [[typeinfo=0]]
7085: AST_Post_Inc [7081]  [[typeinfo=0]]
7089: AST_Const 3457 1  [[typeinfo=0]]
7094: AST_Add [7077] [7089]  [[typeinfo=0]]
7099: AST_TAG "itmp" (c[3472].s)  [[typeinfo=0]]
7103: AST_AssignTo [7099] [7108]  [[typeinfo=0]]
7108: AST_Const 3476 0  [[typeinfo=0]]
7113: AST_TAG "itmp" (c[3479].s)  [[typeinfo=0]]
7117: AST_TAG "nkeys" (c[3483].s)  [[typeinfo=0]]
7121: AST_LT [7113] [7117]  [[typeinfo=0]]
7126: AST_TAG "itmp" (c[3486].s)  [[typeinfo=0]]
7130: AST_Post_Inc [7126]  [[typeinfo=0]]
7134: AST_TAG "argcmp" (c[3505].s)  [[typeinfo=0]]
7138: AST_TAG "keyp" (c[3507].s)  [[typeinfo=0]]
7142: AST_TAG "keynames" (c[3510].s)  [[typeinfo=0]]
7146: AST_TAG "itmp" (c[3512].s)  [[typeinfo=0]]
7150: AST_Idx [7142] [7146]  [[typeinfo=0]]
7155: AST_UseParam [-1] [-1]  [[typeinfo=0]]
7160: AST_UseParam [7150] [7155]  [[typeinfo=0]]
7165: AST_UseParam [7138] [7160]  [[typeinfo=0]]
7170: AST_Call [7134] [7165]  [[typeinfo=0]]
7175: AST_Scope [7468] -1 2  [[typeinfo=0]]
7181: AST_TAG "keyflags" (c[3538].s)  [[typeinfo=0]]
7185: AST_TAG "itmp" (c[3540].s)  [[typeinfo=0]]
7189: AST_Idx [7181] [7185]  [[typeinfo=0]]
7194: AST_Const 3545 2  [[typeinfo=0]]
7199: AST_BitAnd [7189] [7194]  [[typeinfo=0]]
7204: AST_Const 3551 0  [[typeinfo=0]]
7209: AST_NE [7199] [7204]  [[typeinfo=0]]
7214: AST_TAG "Bargv" (c[3554].s)  [[typeinfo=0]]
7218: AST_TAG "itmp" (c[3556].s)  [[typeinfo=0]]
7222: AST_Const 3558 1  [[typeinfo=0]]
7227: AST_Add [7218] [7222]  [[typeinfo=0]]
7232: AST_Idx [7214] [7227]  [[typeinfo=0]]
7237: AST_AssignTo [7232] [7242]  [[typeinfo=0]]
7242: AST_TAG "keyp" (c[3563].s)  [[typeinfo=0]]
7246: AST_Scope [7419] -1 2  [[typeinfo=0]]
7252: AST_TAG "Cargc" (c[3606].s)  [[typeinfo=0]]
7256: AST_Const 3610 1  [[typeinfo=0]]
7261: AST_LT [7252] [7256]  [[typeinfo=0]]
7266: AST_IndirectThrough [7274]  [[typeinfo=0]]
7270: AST_IndirectThrough [7266]  [[typeinfo=0]]
7274: AST_TAG "Cargv" (c[3617].s)  [[typeinfo=0]]
7278: AST_Const 3622 45  [[typeinfo=0]]
7283: AST_EQ [7270] [7278]  [[typeinfo=0]]
7288: AST_BoolOr [7261] [7283]  [[typeinfo=0]]
7293: AST_Const 3648 3648  [[typeinfo=0]]
7298: AST_ReturnResult [7293] -1  [[typeinfo=0]]
7303: AST_IFTHEN [7288] [7298]  [[typeinfo=0]]
7308: AST_TAG "Bargv" (c[3673].s)  [[typeinfo=0]]
7312: AST_TAG "itmp" (c[3675].s)  [[typeinfo=0]]
7316: AST_Const 3677 1  [[typeinfo=0]]
7321: AST_Add [7312] [7316]  [[typeinfo=0]]
7326: AST_Idx [7308] [7321]  [[typeinfo=0]]
7331: AST_Const 3688 0  [[typeinfo=0]]
7336: AST_NE [7326] [7331]  [[typeinfo=0]]
7341: AST_Const 3714 3714  [[typeinfo=0]]
7346: AST_ReturnResult [7341] -1  [[typeinfo=0]]
7351: AST_IFTHEN [7336] [7346]  [[typeinfo=0]]
7356: AST_TAG "Bargv" (c[3736].s)  [[typeinfo=0]]
7360: AST_TAG "itmp" (c[3738].s)  [[typeinfo=0]]
7364: AST_Const 3740 1  [[typeinfo=0]]
7369: AST_Add [7360] [7364]  [[typeinfo=0]]
7374: AST_Idx [7356] [7369]  [[typeinfo=0]]
7379: AST_AssignTo [7374] [7384]  [[typeinfo=0]]
7384: AST_IndirectThrough [7392]  [[typeinfo=0]]
7388: AST_TAG "Cargv" (c[3746].s)  [[typeinfo=0]]
7392: AST_Post_Inc [7388]  [[typeinfo=0]]
7396: AST_TAG "Cargc" (c[3768].s)  [[typeinfo=0]]
7400: AST_Post_Dec [7396]  [[typeinfo=0]]
7404: AST_SEQ [7379] [7400]  [[typeinfo=0]]
7409: AST_SEQ [7351] [7404]  [[typeinfo=0]]
7414: AST_SEQ [7303] [7409]  [[typeinfo=0]]
7419: AST_SEQ [-1] [7414]  [[typeinfo=0]]
7424: AST_IFTHENELSE [7209] [7237] [7246]  [[typeinfo=0]]
7430: AST_TAG "found" (c[3804].s)  [[typeinfo=0]]
7434: AST_AssignTo [7430] [7449]  [[typeinfo=0]]
7439: AST_Const 3809 0  [[typeinfo=0]]
7444: AST_Const 3812 0  [[typeinfo=0]]
7449: AST_EQ [7439] [7444]  [[typeinfo=0]]
7454: AST_C_Break -1  [[typeinfo=0]]
7458: AST_SEQ [7434] [7454]  [[typeinfo=0]]
7463: AST_SEQ [7424] [7458]  [[typeinfo=0]]
7468: AST_SEQ [-1] [7463]  [[typeinfo=0]]
7473: AST_IFTHEN [7170] [7175]  [[typeinfo=0]]
7478: AST_C_ForLoop [7103] [7121] [7130] [7473] -1 -1 -1  [[typeinfo=0]]
7488: AST_UBoolNot [7492]  [[typeinfo=0]]
7492: AST_TAG "found" (c[3861].s)  [[typeinfo=0]]
7496: AST_Const 3866 3866  [[typeinfo=0]]
7501: AST_ReturnResult [7496] -1  [[typeinfo=0]]
7506: AST_IFTHEN [7488] [7501]  [[typeinfo=0]]
7511: AST_SEQ [7478] [7506]  [[typeinfo=0]]
7516: AST_SEQ [7072] [7511]  [[typeinfo=0]]
7521: AST_SEQ [7063] [7516]  [[typeinfo=0]]
7526: AST_Scope [7725] -1 2  [[typeinfo=0]]
7532: AST_TAG "nfree" (c[3895].s)  [[typeinfo=0]]
7536: AST_TAG "nkeys" (c[3899].s)  [[typeinfo=0]]
7540: AST_LT [7532] [7536]  [[typeinfo=0]]
7545: AST_TAG "Bargv" (c[3918].s)  [[typeinfo=0]]
7549: AST_TAG "nfree" (c[3920].s)  [[typeinfo=0]]
7553: AST_Const 3922 1  [[typeinfo=0]]
7558: AST_Add [7549] [7553]  [[typeinfo=0]]
7563: AST_Idx [7545] [7558]  [[typeinfo=0]]
7568: AST_Const 3934 0  [[typeinfo=0]]
7573: AST_NE [7563] [7568]  [[typeinfo=0]]
7578: AST_TAG "keyflags" (c[3954].s)  [[typeinfo=0]]
7582: AST_TAG "nfree" (c[3956].s)  [[typeinfo=0]]
7586: AST_Idx [7578] [7582]  [[typeinfo=0]]
7591: AST_Const 3962 4  [[typeinfo=0]]
7596: AST_Const 3964 2  [[typeinfo=0]]
7601: AST_BitOr [7591] [7596]  [[typeinfo=0]]
7606: AST_BitAnd [7586] [7601]  [[typeinfo=0]]
7611: AST_Const 3971 0  [[typeinfo=0]]
7616: AST_NE [7606] [7611]  [[typeinfo=0]]
7621: AST_BoolOr [7573] [7616]  [[typeinfo=0]]
7626: AST_BoolAnd [7540] [7621]  [[typeinfo=0]]
7631: AST_TAG "nfree" (c[3991].s)  [[typeinfo=0]]
7635: AST_Post_Inc [7631]  [[typeinfo=0]]
7639: AST_C_While [7626] [7635] -1 -1 -1  [[typeinfo=0]]
7647: AST_TAG "nfree" (c[4007].s)  [[typeinfo=0]]
7651: AST_TAG "Bargc" (c[4011].s)  [[typeinfo=0]]
7655: AST_LT [7647] [7651]  [[typeinfo=0]]
7660: AST_TAG "Bargv" (c[4014].s)  [[typeinfo=0]]
7664: AST_Const 4016 1  [[typeinfo=0]]
7669: AST_TAG "nfree" (c[4018].s)  [[typeinfo=0]]
7673: AST_Post_Inc [7669]  [[typeinfo=0]]
7677: AST_Add [7664] [7673]  [[typeinfo=0]]
7682: AST_Idx [7660] [7677]  [[typeinfo=0]]
7687: AST_AssignTo [7682] [7692]  [[typeinfo=0]]
7692: AST_IndirectThrough [7700]  [[typeinfo=0]]
7696: AST_TAG "Cargv" (c[4025].s)  [[typeinfo=0]]
7700: AST_Post_Inc [7696]  [[typeinfo=0]]
7704: AST_Const 4043 4043  [[typeinfo=0]]
7709: AST_ReturnResult [7704] -1  [[typeinfo=0]]
7714: AST_IFTHENELSE [7655] [7687] [7709]  [[typeinfo=0]]
7720: AST_SEQ [7639] [7714]  [[typeinfo=0]]
7725: AST_SEQ [-1] [7720]  [[typeinfo=0]]
7730: AST_IFTHENELSE [6989] [6994] [7526]  [[typeinfo=0]]
7736: AST_SEQ [-1] [7730]  [[typeinfo=0]]
7741: AST_C_While [6961] [6966] -1 -1 -1  [[typeinfo=0]]
7749: AST_Const 4073 0  [[typeinfo=0]]
7754: AST_ReturnResult [7749] -1  [[typeinfo=0]]
7759: AST_SEQ [7741] [7754]  [[typeinfo=0]]
7764: AST_SEQ [6938] [7759]  [[typeinfo=0]]
7769: AST_SEQ [6929] [7764]  [[typeinfo=0]]
7774: AST_SEQ [6902] [7769]  [[typeinfo=0]]
7779: AST_SEQ [6894] [7774]  [[typeinfo=0]]
7784: AST_SEQ [6882] [7779]  [[typeinfo=0]]
7789: AST_SEQ [6127] [7784]  [[typeinfo=0]]
7794: AST_SEQ [6104] [7789]  [[typeinfo=0]]
7799: AST_SEQ [6080] [7794]  [[typeinfo=0]]
7804: AST_SEQ [6017] [7799]  [[typeinfo=0]]
7809: AST_ReceiveParam 5816 [5820] [-1]  [[typeinfo=0]]
7815: AST_ReceiveParam 5801 [5805] [7809]  [[typeinfo=0]]
7821: AST_ReceiveParam 5782 [5791] [7815]  [[typeinfo=0]]
7827: AST_ReceiveParam 5763 [5772] [7821]  [[typeinfo=0]]
7833: AST_ReceiveParam 5744 [5753] [7827]  [[typeinfo=0]]
7839: AST_SEQ [7833] [7804]  [[typeinfo=0]]
7844: AST_DefProc 5735 [5740] [5757] [5831]  [[typeinfo=0]]
7851: AST_TYPE_Atom 0 0  [[typeinfo=0]]
7856: AST_TAG "exit" (c[4083].s)  [[typeinfo=0]]
7860: AST_TAG "rc" (c[4087].s)  [[typeinfo=0]]
7864: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7869: AST_DefParam 7860 [7864] [-1]  [[typeinfo=0]]
7875: AST_TYPE_Atom 0 1  [[typeinfo=0]]
7880: AST_TAG "malloc" (c[4096].s)  [[typeinfo=0]]
7884: AST_TAG "bytes" (c[4100].s)  [[typeinfo=0]]
7888: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7893: AST_DefParam 7884 [7888] [-1]  [[typeinfo=0]]
7899: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7904: AST_TAG "IntSeen" (c[4108].s)  [[typeinfo=0]]
7908: AST_Declare [7904] [7899]  [[typeinfo=0]]
7913: AST_SEQ [7908] [-1]  [[typeinfo=0]]
7918: AST_TYPE_Atom 0 1  [[typeinfo=0]]
7923: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
7927: AST_TAG "ARGV" (c[4116].s)  [[typeinfo=0]]
7931: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7936: AST_TYPE_ArrayOf [7918] [7931] 0 -1 -1  [[typeinfo=0]]
7944: AST_Declare [7927] [7936]  [[typeinfo=0]]
7949: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7954: AST_TAG "main" (c[4127].s)  [[typeinfo=0]]
7958: AST_TAG "argc" (c[4131].s)  [[typeinfo=0]]
7962: AST_TYPE_Atom 0 4  [[typeinfo=0]]
7967: AST_DefParam 7958 [7962] [7990]  [[typeinfo=0]]
7973: AST_TAG "argv" (c[4138].s)  [[typeinfo=0]]
7977: AST_TYPE_Atom 0 1  [[typeinfo=0]]
7982: AST_TYPE_PointerTo [7977]  [[typeinfo=0]]
7986: AST_TYPE_PointerTo [7982]  [[typeinfo=0]]
7990: AST_DefParam 7973 [7986] [-1]  [[typeinfo=0]]
7996: AST_Scope [9522] -1 1  [[typeinfo=0]]
8002: AST_TYPE_Atom 0 1  [[typeinfo=0]]
8007: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
8011: AST_TAG "errstr" (c[4146].s)  [[typeinfo=0]]
8015: AST_Declare [8011] [8002]  [[typeinfo=0]]
8020: AST_SEQ [8015] [-1]  [[typeinfo=0]]
8025: AST_SEQ [8020] [-1]  [[typeinfo=0]]
8030: AST_TAG "errstr" (c[4152].s)  [[typeinfo=0]]
8034: AST_AssignTo [8030] [8095]  [[typeinfo=0]]
8039: AST_TAG "rdargs" (c[4156].s)  [[typeinfo=0]]
8043: AST_Const 4158 4158  [[typeinfo=0]]
8048: AST_TAG "argv" (c[4161].s)  [[typeinfo=0]]
8052: AST_TAG "argc" (c[4164].s)  [[typeinfo=0]]
8056: AST_TAG "ARGV" (c[4167].s)  [[typeinfo=0]]
8060: AST_Const 4170 4  [[typeinfo=0]]
8065: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8070: AST_UseParam [8060] [8065]  [[typeinfo=0]]
8075: AST_UseParam [8056] [8070]  [[typeinfo=0]]
8080: AST_UseParam [8052] [8075]  [[typeinfo=0]]
8085: AST_UseParam [8048] [8080]  [[typeinfo=0]]
8090: AST_UseParam [8043] [8085]  [[typeinfo=0]]
8095: AST_Call [8039] [8090]  [[typeinfo=0]]
8100: AST_TAG "ARGV" (c[4180].s)  [[typeinfo=0]]
8104: AST_Const 4182 1  [[typeinfo=0]]
8109: AST_Idx [8100] [8104]  [[typeinfo=0]]
8114: AST_Const 4188 0  [[typeinfo=0]]
8119: AST_EQ [8109] [8114]  [[typeinfo=0]]
8124: AST_Scope [8211] -1 2  [[typeinfo=0]]
8130: AST_TAG "fprintf" (c[4199].s)  [[typeinfo=0]]
8134: AST_TAG "stderr" (c[4202].s)  [[typeinfo=0]]
8138: AST_Const 4214 4214  [[typeinfo=0]]
8143: AST_TAG "ARGV" (c[4227].s)  [[typeinfo=0]]
8147: AST_Const 4229 0  [[typeinfo=0]]
8152: AST_Idx [8143] [8147]  [[typeinfo=0]]
8157: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8162: AST_UseParam [8152] [8157]  [[typeinfo=0]]
8167: AST_UseParam [8138] [8162]  [[typeinfo=0]]
8172: AST_UseParam [8134] [8167]  [[typeinfo=0]]
8177: AST_Call [8130] [8172]  [[typeinfo=0]]
8182: AST_TAG "exit" (c[4240].s)  [[typeinfo=0]]
8186: AST_Const 4243 30  [[typeinfo=0]]
8191: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8196: AST_UseParam [8186] [8191]  [[typeinfo=0]]
8201: AST_Call [8182] [8196]  [[typeinfo=0]]
8206: AST_SEQ [8177] [8201]  [[typeinfo=0]]
8211: AST_SEQ [-1] [8206]  [[typeinfo=0]]
8216: AST_IFTHEN [8119] [8124]  [[typeinfo=0]]
8221: AST_TAG "errstr" (c[4258].s)  [[typeinfo=0]]
8225: AST_Const 4263 0  [[typeinfo=0]]
8230: AST_NE [8221] [8225]  [[typeinfo=0]]
8235: AST_Scope [8331] -1 2  [[typeinfo=0]]
8241: AST_TAG "fprintf" (c[4274].s)  [[typeinfo=0]]
8245: AST_TAG "stderr" (c[4277].s)  [[typeinfo=0]]
8249: AST_Const 4280 4280  [[typeinfo=0]]
8254: AST_TAG "ARGV" (c[4283].s)  [[typeinfo=0]]
8258: AST_Const 4285 0  [[typeinfo=0]]
8263: AST_Idx [8254] [8258]  [[typeinfo=0]]
8268: AST_TAG "errstr" (c[4289].s)  [[typeinfo=0]]
8272: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8277: AST_UseParam [8268] [8272]  [[typeinfo=0]]
8282: AST_UseParam [8263] [8277]  [[typeinfo=0]]
8287: AST_UseParam [8249] [8282]  [[typeinfo=0]]
8292: AST_UseParam [8245] [8287]  [[typeinfo=0]]
8297: AST_Call [8241] [8292]  [[typeinfo=0]]
8302: AST_TAG "exit" (c[4299].s)  [[typeinfo=0]]
8306: AST_Const 4302 20  [[typeinfo=0]]
8311: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8316: AST_UseParam [8306] [8311]  [[typeinfo=0]]
8321: AST_Call [8302] [8316]  [[typeinfo=0]]
8326: AST_SEQ [8297] [8321]  [[typeinfo=0]]
8331: AST_SEQ [-1] [8326]  [[typeinfo=0]]
8336: AST_IFTHEN [8230] [8235]  [[typeinfo=0]]
8341: AST_TAG "IntSeen" (c[4314].s)  [[typeinfo=0]]
8345: AST_AssignTo [8341] [8360]  [[typeinfo=0]]
8350: AST_Const 4319 0  [[typeinfo=0]]
8355: AST_Const 4322 0  [[typeinfo=0]]
8360: AST_NE [8350] [8355]  [[typeinfo=0]]
8365: AST_TAG "tty_in" (c[4329].s)  [[typeinfo=0]]
8369: AST_AssignTo [8365] [8374]  [[typeinfo=0]]
8374: AST_TAG "stdin" (c[4333].s)  [[typeinfo=0]]
8378: AST_TAG "tty_out" (c[4339].s)  [[typeinfo=0]]
8382: AST_AssignTo [8378] [8387]  [[typeinfo=0]]
8387: AST_TAG "stderr" (c[4343].s)  [[typeinfo=0]]
8391: AST_TAG "main_in" (c[4349].s)  [[typeinfo=0]]
8395: AST_AssignTo [8391] [8438]  [[typeinfo=0]]
8400: AST_TAG "fopen" (c[4353].s)  [[typeinfo=0]]
8404: AST_TAG "ARGV" (c[4356].s)  [[typeinfo=0]]
8408: AST_Const 4358 1  [[typeinfo=0]]
8413: AST_Idx [8404] [8408]  [[typeinfo=0]]
8418: AST_Const 4362 4362  [[typeinfo=0]]
8423: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8428: AST_UseParam [8418] [8423]  [[typeinfo=0]]
8433: AST_UseParam [8413] [8428]  [[typeinfo=0]]
8438: AST_Call [8400] [8433]  [[typeinfo=0]]
8443: AST_TAG "main_in" (c[4372].s)  [[typeinfo=0]]
8447: AST_Const 4377 0  [[typeinfo=0]]
8452: AST_EQ [8443] [8447]  [[typeinfo=0]]
8457: AST_Scope [8544] -1 2  [[typeinfo=0]]
8463: AST_TAG "fprintf" (c[4388].s)  [[typeinfo=0]]
8467: AST_TAG "stderr" (c[4391].s)  [[typeinfo=0]]
8471: AST_Const 4394 4394  [[typeinfo=0]]
8476: AST_TAG "ARGV" (c[4396].s)  [[typeinfo=0]]
8480: AST_Const 4398 1  [[typeinfo=0]]
8485: AST_Idx [8476] [8480]  [[typeinfo=0]]
8490: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8495: AST_UseParam [8485] [8490]  [[typeinfo=0]]
8500: AST_UseParam [8471] [8495]  [[typeinfo=0]]
8505: AST_UseParam [8467] [8500]  [[typeinfo=0]]
8510: AST_Call [8463] [8505]  [[typeinfo=0]]
8515: AST_TAG "exit" (c[4409].s)  [[typeinfo=0]]
8519: AST_Const 4412 30  [[typeinfo=0]]
8524: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8529: AST_UseParam [8519] [8524]  [[typeinfo=0]]
8534: AST_Call [8515] [8529]  [[typeinfo=0]]
8539: AST_SEQ [8510] [8534]  [[typeinfo=0]]
8544: AST_SEQ [-1] [8539]  [[typeinfo=0]]
8549: AST_IFTHEN [8452] [8457]  [[typeinfo=0]]
8554: AST_TAG "ARGV" (c[4427].s)  [[typeinfo=0]]
8558: AST_Const 4429 3  [[typeinfo=0]]
8563: AST_Idx [8554] [8558]  [[typeinfo=0]]
8568: AST_Const 4435 0  [[typeinfo=0]]
8573: AST_EQ [8563] [8568]  [[typeinfo=0]]
8578: AST_Scope [8598] -1 2  [[typeinfo=0]]
8584: AST_TAG "log_out" (c[4446].s)  [[typeinfo=0]]
8588: AST_AssignTo [8584] [8593]  [[typeinfo=0]]
8593: AST_Const 4450 0  [[typeinfo=0]]
8598: AST_SEQ [-1] [8588]  [[typeinfo=0]]
8603: AST_Scope [8767] -1 2  [[typeinfo=0]]
8609: AST_TAG "log_out" (c[4468].s)  [[typeinfo=0]]
8613: AST_AssignTo [8609] [8656]  [[typeinfo=0]]
8618: AST_TAG "fopen" (c[4472].s)  [[typeinfo=0]]
8622: AST_TAG "ARGV" (c[4475].s)  [[typeinfo=0]]
8626: AST_Const 4477 3  [[typeinfo=0]]
8631: AST_Idx [8622] [8626]  [[typeinfo=0]]
8636: AST_Const 4481 4481  [[typeinfo=0]]
8641: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8646: AST_UseParam [8636] [8641]  [[typeinfo=0]]
8651: AST_UseParam [8631] [8646]  [[typeinfo=0]]
8656: AST_Call [8618] [8651]  [[typeinfo=0]]
8661: AST_TAG "log_out" (c[4494].s)  [[typeinfo=0]]
8665: AST_Const 4499 0  [[typeinfo=0]]
8670: AST_EQ [8661] [8665]  [[typeinfo=0]]
8675: AST_Scope [8752] -1 2  [[typeinfo=0]]
8681: AST_TAG "fprintf" (c[4513].s)  [[typeinfo=0]]
8685: AST_TAG "stderr" (c[4516].s)  [[typeinfo=0]]
8689: AST_Const 4519 4519  [[typeinfo=0]]
8694: AST_TAG "ARGV" (c[4532].s)  [[typeinfo=0]]
8698: AST_Const 4534 0  [[typeinfo=0]]
8703: AST_Idx [8694] [8698]  [[typeinfo=0]]
8708: AST_TAG "ARGV" (c[4538].s)  [[typeinfo=0]]
8712: AST_Const 4540 3  [[typeinfo=0]]
8717: AST_Idx [8708] [8712]  [[typeinfo=0]]
8722: AST_UseParam [-1] [-1]  [[typeinfo=0]]
8727: AST_UseParam [8717] [8722]  [[typeinfo=0]]
8732: AST_UseParam [8703] [8727]  [[typeinfo=0]]
8737: AST_UseParam [8689] [8732]  [[typeinfo=0]]
8742: AST_UseParam [8685] [8737]  [[typeinfo=0]]
8747: AST_Call [8681] [8742]  [[typeinfo=0]]
8752: AST_SEQ [-1] [8747]  [[typeinfo=0]]
8757: AST_IFTHEN [8670] [8675]  [[typeinfo=0]]
8762: AST_SEQ [8613] [8757]  [[typeinfo=0]]
8767: AST_SEQ [-1] [8762]  [[typeinfo=0]]
8772: AST_IFTHENELSE [8573] [8578] [8603]  [[typeinfo=0]]
8778: AST_TAG "ARGV" (c[4564].s)  [[typeinfo=0]]
8782: AST_Const 4566 4  [[typeinfo=0]]
8787: AST_Idx [8778] [8782]  [[typeinfo=0]]
8792: AST_Const 4572 0  [[typeinfo=0]]
8797: AST_EQ [8787] [8792]  [[typeinfo=0]]
8802: AST_Scope [8842] -1 2  [[typeinfo=0]]
8808: AST_TAG "buffer_size" (c[4583].s)  [[typeinfo=0]]
8812: AST_AssignTo [8808] [8832]  [[typeinfo=0]]
8817: AST_Const 4588 2  [[typeinfo=0]]
8822: AST_Const 4590 1024  [[typeinfo=0]]
8827: AST_Const 4592 1024  [[typeinfo=0]]
8832: AST_Mul [8837] [8827]  [[typeinfo=0]]
8837: AST_Mul [8817] [8822]  [[typeinfo=0]]
8842: AST_SEQ [-1] [8812]  [[typeinfo=0]]
8847: AST_Scope [9051] -1 2  [[typeinfo=0]]
8853: AST_TYPE_Atom 0 4  [[typeinfo=0]]
8858: AST_TAG "n" (c[4613].s)  [[typeinfo=0]]
8862: AST_Const 4617 0  [[typeinfo=0]]
8867: AST_AssignTo [-1] [8862]  [[typeinfo=0]]
8872: AST_Declare [8858] [8853]  [[typeinfo=0]]
8877: AST_SEQ [8872] [-1]  [[typeinfo=0]]
8882: AST_TYPE_Atom 0 1  [[typeinfo=0]]
8887: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
8891: AST_TAG "c" (c[4629].s)  [[typeinfo=0]]
8895: AST_TAG "ARGV" (c[4633].s)  [[typeinfo=0]]
8899: AST_Const 4635 4  [[typeinfo=0]]
8904: AST_Idx [8895] [8899]  [[typeinfo=0]]
8909: AST_AssignTo [-1] [8904]  [[typeinfo=0]]
8914: AST_Declare [8891] [8882]  [[typeinfo=0]]
8919: AST_SEQ [8914] [-1]  [[typeinfo=0]]
8924: AST_SEQ [8919] [-1]  [[typeinfo=0]]
8929: AST_SEQ [8877] [8924]  [[typeinfo=0]]
8934: AST_Const 4649 48  [[typeinfo=0]]
8939: AST_IndirectThrough [8943]  [[typeinfo=0]]
8943: AST_TAG "c" (c[4654].s)  [[typeinfo=0]]
8947: AST_LE [8934] [8939]  [[typeinfo=0]]
8952: AST_IndirectThrough [8956]  [[typeinfo=0]]
8956: AST_TAG "c" (c[4662].s)  [[typeinfo=0]]
8960: AST_Const 4667 57  [[typeinfo=0]]
8965: AST_LE [8952] [8960]  [[typeinfo=0]]
8970: AST_BoolAnd [8947] [8965]  [[typeinfo=0]]
8975: AST_TAG "n" (c[4671].s)  [[typeinfo=0]]
8979: AST_AssignTo [8975] [9015]  [[typeinfo=0]]
8984: AST_TAG "n" (c[4675].s)  [[typeinfo=0]]
8988: AST_Const 4677 10  [[typeinfo=0]]
8993: AST_Mul [8984] [8988]  [[typeinfo=0]]
8998: AST_IndirectThrough [9006]  [[typeinfo=0]]
9002: AST_TAG "c" (c[4682].s)  [[typeinfo=0]]
9006: AST_Post_Inc [9002]  [[typeinfo=0]]
9010: AST_Const 4687 48  [[typeinfo=0]]
9015: AST_Sub [9020] [9010]  [[typeinfo=0]]
9020: AST_Add [8993] [8998]  [[typeinfo=0]]
9025: AST_C_While [8970] [8979] -1 -1 -1  [[typeinfo=0]]
9033: AST_TAG "buffer_size" (c[4696].s)  [[typeinfo=0]]
9037: AST_AssignTo [9033] [9042]  [[typeinfo=0]]
9042: AST_TAG "n" (c[4700].s)  [[typeinfo=0]]
9046: AST_SEQ [9025] [9037]  [[typeinfo=0]]
9051: AST_SEQ [8929] [9046]  [[typeinfo=0]]
9056: AST_IFTHENELSE [8797] [8802] [8847]  [[typeinfo=0]]
9062: AST_TAG "buffer_size" (c[4714].s)  [[typeinfo=0]]
9066: AST_Const 4719 0  [[typeinfo=0]]
9071: AST_EQ [9062] [9066]  [[typeinfo=0]]
9076: AST_TAG "buffer_size" (c[4722].s)  [[typeinfo=0]]
9080: AST_AssignTo [9076] [9095]  [[typeinfo=0]]
9085: AST_Const 4726 20  [[typeinfo=0]]
9090: AST_Const 4728 1024  [[typeinfo=0]]
9095: AST_Mul [9085] [9090]  [[typeinfo=0]]
9100: AST_IFTHEN [9071] [9080]  [[typeinfo=0]]
9105: AST_TAG "init_globals" (c[4734].s)  [[typeinfo=0]]
9109: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9114: AST_Call [9105] [9109]  [[typeinfo=0]]
9119: AST_TAG "a" (c[4743].s)  [[typeinfo=0]]
9123: AST_Const 4745 0  [[typeinfo=0]]
9128: AST_Idx [9119] [9123]  [[typeinfo=0]]
9133: AST_AssignTo [9128] [9138]  [[typeinfo=0]]
9138: AST_Const 4750 10  [[typeinfo=0]]
9143: AST_TAG "a" (c[4756].s)  [[typeinfo=0]]
9147: AST_TAG "buffer_size" (c[4758].s)  [[typeinfo=0]]
9151: AST_Idx [9143] [9147]  [[typeinfo=0]]
9156: AST_AssignTo [9151] [9161]  [[typeinfo=0]]
9161: AST_Const 4763 10  [[typeinfo=0]]
9166: AST_TAG "fprintf" (c[4769].s)  [[typeinfo=0]]
9170: AST_TAG "tty_out" (c[4772].s)  [[typeinfo=0]]
9174: AST_Const 4775 4775  [[typeinfo=0]]
9179: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9184: AST_UseParam [9174] [9179]  [[typeinfo=0]]
9189: AST_UseParam [9170] [9184]  [[typeinfo=0]]
9194: AST_Call [9166] [9189]  [[typeinfo=0]]
9199: AST_TAG "main_in" (c[4785].s)  [[typeinfo=0]]
9203: AST_Const 4790 0  [[typeinfo=0]]
9208: AST_NE [9199] [9203]  [[typeinfo=0]]
9213: AST_TAG "load_file" (c[4793].s)  [[typeinfo=0]]
9217: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9222: AST_Call [9213] [9217]  [[typeinfo=0]]
9227: AST_IFTHEN [9208] [9222]  [[typeinfo=0]]
9232: AST_TAG "percent" (c[4802].s)  [[typeinfo=0]]
9236: AST_Const 4805 69  [[typeinfo=0]]
9241: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9246: AST_UseParam [9236] [9241]  [[typeinfo=0]]
9251: AST_Call [9232] [9246]  [[typeinfo=0]]
9256: AST_Scope [9405] -1 2  [[typeinfo=0]]
9262: AST_TAG "analyse" (c[4830].s)  [[typeinfo=0]]
9266: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9271: AST_Call [9262] [9266]  [[typeinfo=0]]
9276: AST_Scope [9395] -1 2  [[typeinfo=0]]
9282: AST_TAG "printed" (c[4847].s)  [[typeinfo=0]]
9286: AST_AssignTo [9282] [9301]  [[typeinfo=0]]
9291: AST_Const 4852 0  [[typeinfo=0]]
9296: AST_Const 4855 0  [[typeinfo=0]]
9301: AST_NE [9291] [9296]  [[typeinfo=0]]
9306: AST_TAG "execute_all" (c[4868].s)  [[typeinfo=0]]
9310: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9315: AST_Call [9306] [9310]  [[typeinfo=0]]
9320: AST_TAG "command" (c[4883].s)  [[typeinfo=0]]
9324: AST_AssignTo [9320] [9329]  [[typeinfo=0]]
9329: AST_Const 4887 80  [[typeinfo=0]]
9334: AST_TAG "repeat_count" (c[4899].s)  [[typeinfo=0]]
9338: AST_AssignTo [9334] [9343]  [[typeinfo=0]]
9343: AST_Const 4903 1  [[typeinfo=0]]
9348: AST_UBoolNot [9352]  [[typeinfo=0]]
9352: AST_TAG "printed" (c[4919].s)  [[typeinfo=0]]
9356: AST_TAG "execute_command" (c[4922].s)  [[typeinfo=0]]
9360: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9365: AST_Call [9356] [9360]  [[typeinfo=0]]
9370: AST_IFTHEN [9348] [9365]  [[typeinfo=0]]
9375: AST_SEQ [9338] [9370]  [[typeinfo=0]]
9380: AST_SEQ [9324] [9375]  [[typeinfo=0]]
9385: AST_SEQ [9315] [9380]  [[typeinfo=0]]
9390: AST_SEQ [9286] [9385]  [[typeinfo=0]]
9395: AST_SEQ [-1] [9390]  [[typeinfo=0]]
9400: AST_IFTHEN [9271] [9276]  [[typeinfo=0]]
9405: AST_SEQ [-1] [9400]  [[typeinfo=0]]
9410: AST_C_ForLoop [-1] [-1] [-1] [9256] -1 -1 -1  [[typeinfo=0]]
9420: AST_SEQ [9251] [9410]  [[typeinfo=0]]
9425: AST_SEQ [9227] [9420]  [[typeinfo=0]]
9430: AST_SEQ [9194] [9425]  [[typeinfo=0]]
9435: AST_SEQ [9156] [9430]  [[typeinfo=0]]
9440: AST_SEQ [9133] [9435]  [[typeinfo=0]]
9445: AST_SEQ [9114] [9440]  [[typeinfo=0]]
9450: AST_SEQ [9100] [9445]  [[typeinfo=0]]
9455: AST_SEQ [9056] [9450]  [[typeinfo=0]]
9460: AST_SEQ [8772] [9455]  [[typeinfo=0]]
9465: AST_SEQ [8549] [9460]  [[typeinfo=0]]
9470: AST_SEQ [8395] [9465]  [[typeinfo=0]]
9475: AST_SEQ [8382] [9470]  [[typeinfo=0]]
9480: AST_SEQ [8369] [9475]  [[typeinfo=0]]
9485: AST_SEQ [8345] [9480]  [[typeinfo=0]]
9490: AST_SEQ [8336] [9485]  [[typeinfo=0]]
9495: AST_SEQ [8216] [9490]  [[typeinfo=0]]
9500: AST_SEQ [8034] [9495]  [[typeinfo=0]]
9505: AST_SEQ [8025] [9500]  [[typeinfo=0]]
9510: AST_ReceiveParam 7973 [7986] [-1]  [[typeinfo=0]]
9516: AST_ReceiveParam 7958 [7962] [9510]  [[typeinfo=0]]
9522: AST_SEQ [9516] [9505]  [[typeinfo=0]]
9527: AST_DefProc 7949 [7954] [7967] [7996]  [[typeinfo=0]]
9534: AST_TYPE_Atom 0 0  [[typeinfo=0]]
9539: AST_TAG "init_globals" (c[4945].s)  [[typeinfo=0]]
9543: AST_Scope [10711] -1 1  [[typeinfo=0]]
9549: AST_TAG "a" (c[4956].s)  [[typeinfo=0]]
9553: AST_AssignTo [9549] [9586]  [[typeinfo=0]]
9558: AST_TAG "malloc" (c[4960].s)  [[typeinfo=0]]
9562: AST_TAG "buffer_size" (c[4962].s)  [[typeinfo=0]]
9566: AST_Const 4964 1  [[typeinfo=0]]
9571: AST_Add [9562] [9566]  [[typeinfo=0]]
9576: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9581: AST_UseParam [9571] [9576]  [[typeinfo=0]]
9586: AST_Call [9558] [9581]  [[typeinfo=0]]
9591: AST_TAG "note_file" (c[4971].s)  [[typeinfo=0]]
9595: AST_AssignTo [9591] [9629]  [[typeinfo=0]]
9600: AST_TAG "malloc" (c[4975].s)  [[typeinfo=0]]
9604: AST_Const 4978 127  [[typeinfo=0]]
9609: AST_Const 4981 1  [[typeinfo=0]]
9614: AST_Add [9604] [9609]  [[typeinfo=0]]
9619: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9624: AST_UseParam [9614] [9619]  [[typeinfo=0]]
9629: AST_Call [9600] [9624]  [[typeinfo=0]]
9634: AST_TAG "com" (c[4988].s)  [[typeinfo=0]]
9638: AST_AssignTo [9634] [9672]  [[typeinfo=0]]
9643: AST_TAG "malloc" (c[4992].s)  [[typeinfo=0]]
9647: AST_Const 4995 127  [[typeinfo=0]]
9652: AST_Const 4998 1  [[typeinfo=0]]
9657: AST_Add [9647] [9652]  [[typeinfo=0]]
9662: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9667: AST_UseParam [9657] [9662]  [[typeinfo=0]]
9672: AST_Call [9643] [9667]  [[typeinfo=0]]
9677: AST_TAG "link" (c[5005].s)  [[typeinfo=0]]
9681: AST_AssignTo [9677] [9695]  [[typeinfo=0]]
9686: AST_TYPE_Atom 0 4  [[typeinfo=0]]
9691: AST_TYPE_PointerTo [9686]  [[typeinfo=0]]
9695: AST_Cast [9739] 9691  [[typeinfo=0]]
9700: AST_TAG "malloc" (c[5015].s)  [[typeinfo=0]]
9704: AST_Const 5019 127  [[typeinfo=0]]
9709: AST_Const 5022 1  [[typeinfo=0]]
9714: AST_Add [9704] [9709]  [[typeinfo=0]]
9719: AST_Const 5025 4  [[typeinfo=0]]
9724: AST_Mul [9714] [9719]  [[typeinfo=0]]
9729: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9734: AST_UseParam [9724] [9729]  [[typeinfo=0]]
9739: AST_Call [9700] [9734]  [[typeinfo=0]]
9744: AST_TAG "text" (c[5032].s)  [[typeinfo=0]]
9748: AST_AssignTo [9744] [9782]  [[typeinfo=0]]
9753: AST_TAG "malloc" (c[5036].s)  [[typeinfo=0]]
9757: AST_Const 5039 127  [[typeinfo=0]]
9762: AST_Const 5042 1  [[typeinfo=0]]
9767: AST_Add [9757] [9762]  [[typeinfo=0]]
9772: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9777: AST_UseParam [9767] [9772]  [[typeinfo=0]]
9782: AST_Call [9753] [9777]  [[typeinfo=0]]
9787: AST_TAG "num" (c[5049].s)  [[typeinfo=0]]
9791: AST_AssignTo [9787] [9805]  [[typeinfo=0]]
9796: AST_TYPE_Atom 0 4  [[typeinfo=0]]
9801: AST_TYPE_PointerTo [9796]  [[typeinfo=0]]
9805: AST_Cast [9849] 9801  [[typeinfo=0]]
9810: AST_TAG "malloc" (c[5059].s)  [[typeinfo=0]]
9814: AST_Const 5063 127  [[typeinfo=0]]
9819: AST_Const 5066 1  [[typeinfo=0]]
9824: AST_Add [9814] [9819]  [[typeinfo=0]]
9829: AST_Const 5069 4  [[typeinfo=0]]
9834: AST_Mul [9824] [9829]  [[typeinfo=0]]
9839: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9844: AST_UseParam [9834] [9839]  [[typeinfo=0]]
9849: AST_Call [9810] [9844]  [[typeinfo=0]]
9854: AST_TAG "lim" (c[5076].s)  [[typeinfo=0]]
9858: AST_AssignTo [9854] [9872]  [[typeinfo=0]]
9863: AST_TYPE_Atom 0 4  [[typeinfo=0]]
9868: AST_TYPE_PointerTo [9863]  [[typeinfo=0]]
9872: AST_Cast [9916] 9868  [[typeinfo=0]]
9877: AST_TAG "malloc" (c[5086].s)  [[typeinfo=0]]
9881: AST_Const 5090 127  [[typeinfo=0]]
9886: AST_Const 5093 1  [[typeinfo=0]]
9891: AST_Add [9881] [9886]  [[typeinfo=0]]
9896: AST_Const 5096 4  [[typeinfo=0]]
9901: AST_Mul [9891] [9896]  [[typeinfo=0]]
9906: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9911: AST_UseParam [9901] [9906]  [[typeinfo=0]]
9916: AST_Call [9877] [9911]  [[typeinfo=0]]
9921: AST_TAG "com_prompt" (c[5103].s)  [[typeinfo=0]]
9925: AST_AssignTo [9921] [9959]  [[typeinfo=0]]
9930: AST_TAG "malloc" (c[5107].s)  [[typeinfo=0]]
9934: AST_Const 5110 127  [[typeinfo=0]]
9939: AST_Const 5113 1  [[typeinfo=0]]
9944: AST_Add [9934] [9939]  [[typeinfo=0]]
9949: AST_UseParam [-1] [-1]  [[typeinfo=0]]
9954: AST_UseParam [9944] [9949]  [[typeinfo=0]]
9959: AST_Call [9930] [9954]  [[typeinfo=0]]
9964: AST_TAG "a" (c[5123].s)  [[typeinfo=0]]
9968: AST_Const 5128 0  [[typeinfo=0]]
9973: AST_EQ [9964] [9968]  [[typeinfo=0]]
9978: AST_TAG "note_file" (c[5133].s)  [[typeinfo=0]]
9982: AST_Const 5138 0  [[typeinfo=0]]
9987: AST_EQ [9978] [9982]  [[typeinfo=0]]
9992: AST_TAG "com" (c[5143].s)  [[typeinfo=0]]
9996: AST_Const 5148 0  [[typeinfo=0]]
10001: AST_EQ [9992] [9996]  [[typeinfo=0]]
10006: AST_TAG "link" (c[5157].s)  [[typeinfo=0]]
10010: AST_Const 5162 0  [[typeinfo=0]]
10015: AST_EQ [10006] [10010]  [[typeinfo=0]]
10020: AST_TAG "text" (c[5167].s)  [[typeinfo=0]]
10024: AST_Const 5172 0  [[typeinfo=0]]
10029: AST_EQ [10020] [10024]  [[typeinfo=0]]
10034: AST_TAG "num" (c[5177].s)  [[typeinfo=0]]
10038: AST_Const 5182 0  [[typeinfo=0]]
10043: AST_EQ [10034] [10038]  [[typeinfo=0]]
10048: AST_TAG "lim" (c[5187].s)  [[typeinfo=0]]
10052: AST_Const 5192 0  [[typeinfo=0]]
10057: AST_EQ [10048] [10052]  [[typeinfo=0]]
10062: AST_TAG "com_prompt" (c[5201].s)  [[typeinfo=0]]
10066: AST_Const 5206 0  [[typeinfo=0]]
10071: AST_EQ [10062] [10066]  [[typeinfo=0]]
10076: AST_BoolOr [10081] [10071]  [[typeinfo=0]]
10081: AST_BoolOr [10086] [10057]  [[typeinfo=0]]
10086: AST_BoolOr [10091] [10043]  [[typeinfo=0]]
10091: AST_BoolOr [10096] [10029]  [[typeinfo=0]]
10096: AST_BoolOr [10101] [10015]  [[typeinfo=0]]
10101: AST_BoolOr [10106] [10001]  [[typeinfo=0]]
10106: AST_BoolOr [9973] [9987]  [[typeinfo=0]]
10111: AST_Scope [10198] -1 2  [[typeinfo=0]]
10117: AST_TAG "fprintf" (c[5217].s)  [[typeinfo=0]]
10121: AST_TAG "stderr" (c[5220].s)  [[typeinfo=0]]
10125: AST_Const 5223 5223  [[typeinfo=0]]
10130: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10135: AST_UseParam [10125] [10130]  [[typeinfo=0]]
10140: AST_UseParam [10121] [10135]  [[typeinfo=0]]
10145: AST_Call [10117] [10140]  [[typeinfo=0]]
10150: AST_TAG "free_buffers" (c[5233].s)  [[typeinfo=0]]
10154: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10159: AST_Call [10150] [10154]  [[typeinfo=0]]
10164: AST_TAG "exit" (c[5244].s)  [[typeinfo=0]]
10168: AST_Const 5247 40  [[typeinfo=0]]
10173: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10178: AST_UseParam [10168] [10173]  [[typeinfo=0]]
10183: AST_Call [10164] [10178]  [[typeinfo=0]]
10188: AST_SEQ [10159] [10183]  [[typeinfo=0]]
10193: AST_SEQ [10145] [10188]  [[typeinfo=0]]
10198: AST_SEQ [-1] [10193]  [[typeinfo=0]]
10203: AST_IFTHEN [10101] [10111]  [[typeinfo=0]]
10208: AST_TAG "fprintf" (c[5259].s)  [[typeinfo=0]]
10212: AST_TAG "stderr" (c[5262].s)  [[typeinfo=0]]
10216: AST_Const 5265 5265  [[typeinfo=0]]
10221: AST_TAG "buffer_size" (c[5268].s)  [[typeinfo=0]]
10225: AST_Const 5271 10  [[typeinfo=0]]
10230: AST_BitRsh [10221] [10225]  [[typeinfo=0]]
10235: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10240: AST_UseParam [10230] [10235]  [[typeinfo=0]]
10245: AST_UseParam [10216] [10240]  [[typeinfo=0]]
10250: AST_UseParam [10212] [10245]  [[typeinfo=0]]
10255: AST_Call [10208] [10250]  [[typeinfo=0]]
10260: AST_TAG "fbeg" (c[5278].s)  [[typeinfo=0]]
10264: AST_AssignTo [10260] [10278]  [[typeinfo=0]]
10269: AST_TAG "a" (c[5282].s)  [[typeinfo=0]]
10273: AST_Const 5284 1  [[typeinfo=0]]
10278: AST_Add [10269] [10273]  [[typeinfo=0]]
10283: AST_TAG "lbeg" (c[5290].s)  [[typeinfo=0]]
10287: AST_AssignTo [10283] [10292]  [[typeinfo=0]]
10292: AST_TAG "fbeg" (c[5294].s)  [[typeinfo=0]]
10296: AST_TAG "pp" (c[5300].s)  [[typeinfo=0]]
10300: AST_AssignTo [10296] [10305]  [[typeinfo=0]]
10305: AST_TAG "lbeg" (c[5304].s)  [[typeinfo=0]]
10309: AST_TAG "fp" (c[5310].s)  [[typeinfo=0]]
10313: AST_AssignTo [10309] [10326]  [[typeinfo=0]]
10318: AST_TAG "a" (c[5314].s)  [[typeinfo=0]]
10322: AST_TAG "buffer_size" (c[5316].s)  [[typeinfo=0]]
10326: AST_Add [10318] [10322]  [[typeinfo=0]]
10331: AST_TAG "lend" (c[5322].s)  [[typeinfo=0]]
10335: AST_AssignTo [10331] [10340]  [[typeinfo=0]]
10340: AST_TAG "fp" (c[5326].s)  [[typeinfo=0]]
10344: AST_TAG "fend" (c[5332].s)  [[typeinfo=0]]
10348: AST_AssignTo [10344] [10353]  [[typeinfo=0]]
10353: AST_TAG "lend" (c[5336].s)  [[typeinfo=0]]
10357: AST_TAG "ms" (c[5342].s)  [[typeinfo=0]]
10361: AST_AssignTo [10357] [10366]  [[typeinfo=0]]
10366: AST_Const 5346 0  [[typeinfo=0]]
10371: AST_TAG "ms_back" (c[5352].s)  [[typeinfo=0]]
10375: AST_AssignTo [10371] [10380]  [[typeinfo=0]]
10380: AST_Const 5356 0  [[typeinfo=0]]
10385: AST_TAG "stopper" (c[5362].s)  [[typeinfo=0]]
10389: AST_AssignTo [10385] [10394]  [[typeinfo=0]]
10394: AST_UNeg [10398]  [[typeinfo=0]]
10398: AST_TAG "buffer_size" (c[5367].s)  [[typeinfo=0]]
10402: AST_TAG "max_unit" (c[5373].s)  [[typeinfo=0]]
10406: AST_AssignTo [10402] [10411]  [[typeinfo=0]]
10411: AST_UNeg [10415]  [[typeinfo=0]]
10415: AST_Const 5378 1  [[typeinfo=0]]
10420: AST_TAG "pending_sym" (c[5384].s)  [[typeinfo=0]]
10424: AST_AssignTo [10420] [10429]  [[typeinfo=0]]
10429: AST_Const 5388 10  [[typeinfo=0]]
10434: AST_TAG "blank_line" (c[5394].s)  [[typeinfo=0]]
10438: AST_AssignTo [10434] [10453]  [[typeinfo=0]]
10443: AST_Const 5399 0  [[typeinfo=0]]
10448: AST_Const 5402 0  [[typeinfo=0]]
10453: AST_EQ [10443] [10448]  [[typeinfo=0]]
10458: AST_TAG "strcpy" (c[5414].s)  [[typeinfo=0]]
10462: AST_TAG "note_file" (c[5416].s)  [[typeinfo=0]]
10466: AST_Const 5419 5419  [[typeinfo=0]]
10471: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10476: AST_UseParam [10466] [10471]  [[typeinfo=0]]
10481: AST_UseParam [10462] [10476]  [[typeinfo=0]]
10486: AST_Call [10458] [10481]  [[typeinfo=0]]
10491: AST_TAG "noted" (c[5427].s)  [[typeinfo=0]]
10495: AST_AssignTo [10491] [10500]  [[typeinfo=0]]
10500: AST_Const 5431 0  [[typeinfo=0]]
10505: AST_TAG "changes" (c[5437].s)  [[typeinfo=0]]
10509: AST_AssignTo [10505] [10514]  [[typeinfo=0]]
10514: AST_Const 5441 0  [[typeinfo=0]]
10519: AST_TAG "in_second" (c[5447].s)  [[typeinfo=0]]
10523: AST_AssignTo [10519] [10538]  [[typeinfo=0]]
10528: AST_Const 5452 0  [[typeinfo=0]]
10533: AST_Const 5455 0  [[typeinfo=0]]
10538: AST_NE [10528] [10533]  [[typeinfo=0]]
10543: AST_TAG "strcpy" (c[5467].s)  [[typeinfo=0]]
10547: AST_TAG "com_prompt" (c[5469].s)  [[typeinfo=0]]
10551: AST_Const 5472 5472  [[typeinfo=0]]
10556: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10561: AST_UseParam [10551] [10556]  [[typeinfo=0]]
10566: AST_UseParam [10547] [10561]  [[typeinfo=0]]
10571: AST_Call [10543] [10566]  [[typeinfo=0]]
10576: AST_SEQ [10523] [10571]  [[typeinfo=0]]
10581: AST_SEQ [10509] [10576]  [[typeinfo=0]]
10586: AST_SEQ [10495] [10581]  [[typeinfo=0]]
10591: AST_SEQ [10486] [10586]  [[typeinfo=0]]
10596: AST_SEQ [10438] [10591]  [[typeinfo=0]]
10601: AST_SEQ [10424] [10596]  [[typeinfo=0]]
10606: AST_SEQ [10406] [10601]  [[typeinfo=0]]
10611: AST_SEQ [10389] [10606]  [[typeinfo=0]]
10616: AST_SEQ [10375] [10611]  [[typeinfo=0]]
10621: AST_SEQ [10361] [10616]  [[typeinfo=0]]
10626: AST_SEQ [10348] [10621]  [[typeinfo=0]]
10631: AST_SEQ [10335] [10626]  [[typeinfo=0]]
10636: AST_SEQ [10313] [10631]  [[typeinfo=0]]
10641: AST_SEQ [10300] [10636]  [[typeinfo=0]]
10646: AST_SEQ [10287] [10641]  [[typeinfo=0]]
10651: AST_SEQ [10264] [10646]  [[typeinfo=0]]
10656: AST_SEQ [10255] [10651]  [[typeinfo=0]]
10661: AST_SEQ [10203] [10656]  [[typeinfo=0]]
10666: AST_SEQ [9925] [10661]  [[typeinfo=0]]
10671: AST_SEQ [9858] [10666]  [[typeinfo=0]]
10676: AST_SEQ [9791] [10671]  [[typeinfo=0]]
10681: AST_SEQ [9748] [10676]  [[typeinfo=0]]
10686: AST_SEQ [9681] [10681]  [[typeinfo=0]]
10691: AST_SEQ [9638] [10686]  [[typeinfo=0]]
10696: AST_SEQ [9595] [10691]  [[typeinfo=0]]
10701: AST_SEQ [9553] [10696]  [[typeinfo=0]]
10706: AST_SEQ [-1] [10701]  [[typeinfo=0]]
10711: AST_SEQ [-1] [10706]  [[typeinfo=0]]
10716: AST_DefProc 9534 [9539] [-1] [9543]  [[typeinfo=0]]
10723: AST_TYPE_Atom 0 0  [[typeinfo=0]]
10728: AST_TAG "free_buffers" (c[5481].s)  [[typeinfo=0]]
10732: AST_Scope [10743] -1 1  [[typeinfo=0]]
10738: AST_SEQ [-1] [-1]  [[typeinfo=0]]
10743: AST_SEQ [-1] [10738]  [[typeinfo=0]]
10748: AST_DefProc 10723 [10728] [-1] [10732]  [[typeinfo=0]]
10755: AST_TYPE_Atom 0 0  [[typeinfo=0]]
10760: AST_TAG "local_echo" (c[5493].s)  [[typeinfo=0]]
10764: AST_TAG "sym" (c[5499].s)  [[typeinfo=0]]
10768: AST_TYPE_Atom 0 4  [[typeinfo=0]]
10773: AST_TYPE_PointerTo [10768]  [[typeinfo=0]]
10777: AST_DefParam 10764 [10773] [-1]  [[typeinfo=0]]
10783: AST_Scope [11106] -1 1  [[typeinfo=0]]
10789: AST_TYPE_Atom 0 4  [[typeinfo=0]]
10794: AST_TAG "lsym" (c[5508].s)  [[typeinfo=0]]
10798: AST_Declare [10794] [10789]  [[typeinfo=0]]
10803: AST_SEQ [10798] [-1]  [[typeinfo=0]]
10808: AST_SEQ [10803] [-1]  [[typeinfo=0]]
10813: AST_TAG "blank_line" (c[5517].s)  [[typeinfo=0]]
10817: AST_TAG "fprintf" (c[5520].s)  [[typeinfo=0]]
10821: AST_TAG "tty_out" (c[5522].s)  [[typeinfo=0]]
10825: AST_TAG "eprompt" (c[5525].s)  [[typeinfo=0]]
10829: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10834: AST_UseParam [10825] [10829]  [[typeinfo=0]]
10839: AST_UseParam [10821] [10834]  [[typeinfo=0]]
10844: AST_Call [10817] [10839]  [[typeinfo=0]]
10849: AST_IFTHEN [10813] [10844]  [[typeinfo=0]]
10854: AST_TAG "lsym" (c[5532].s)  [[typeinfo=0]]
10858: AST_AssignTo [10854] [10881]  [[typeinfo=0]]
10863: AST_TAG "fgetc" (c[5536].s)  [[typeinfo=0]]
10867: AST_TAG "tty_in" (c[5539].s)  [[typeinfo=0]]
10871: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10876: AST_UseParam [10867] [10871]  [[typeinfo=0]]
10881: AST_Call [10863] [10876]  [[typeinfo=0]]
10886: AST_TAG "lsym" (c[5549].s)  [[typeinfo=0]]
10890: AST_TAG "EOF" (c[5554].s)  [[typeinfo=0]]
10894: AST_EQ [10886] [10890]  [[typeinfo=0]]
10899: AST_Scope [10958] -1 2  [[typeinfo=0]]
10905: AST_TAG "percent" (c[5565].s)  [[typeinfo=0]]
10909: AST_Const 5568 99  [[typeinfo=0]]
10914: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10919: AST_UseParam [10909] [10914]  [[typeinfo=0]]
10924: AST_Call [10905] [10919]  [[typeinfo=0]]
10929: AST_TAG "exit" (c[5578].s)  [[typeinfo=0]]
10933: AST_Const 5581 50  [[typeinfo=0]]
10938: AST_UseParam [-1] [-1]  [[typeinfo=0]]
10943: AST_UseParam [10933] [10938]  [[typeinfo=0]]
10948: AST_Call [10929] [10943]  [[typeinfo=0]]
10953: AST_SEQ [10924] [10948]  [[typeinfo=0]]
10958: AST_SEQ [-1] [10953]  [[typeinfo=0]]
10963: AST_IFTHEN [10894] [10899]  [[typeinfo=0]]
10968: AST_TAG "log_out" (c[5596].s)  [[typeinfo=0]]
10972: AST_Const 5601 0  [[typeinfo=0]]
10977: AST_NE [10968] [10972]  [[typeinfo=0]]
10982: AST_Scope [11020] -1 2  [[typeinfo=0]]
10988: AST_TAG "fputc" (c[5612].s)  [[typeinfo=0]]
10992: AST_TAG "lsym" (c[5615].s)  [[typeinfo=0]]
10996: AST_TAG "log_out" (c[5618].s)  [[typeinfo=0]]
11000: AST_UseParam [-1] [-1]  [[typeinfo=0]]
11005: AST_UseParam [10996] [11000]  [[typeinfo=0]]
11010: AST_UseParam [10992] [11005]  [[typeinfo=0]]
11015: AST_Call [10988] [11010]  [[typeinfo=0]]
11020: AST_SEQ [-1] [11015]  [[typeinfo=0]]
11025: AST_IFTHEN [10977] [10982]  [[typeinfo=0]]
11030: AST_TAG "blank_line" (c[5630].s)  [[typeinfo=0]]
11034: AST_AssignTo [11030] [11048]  [[typeinfo=0]]
11039: AST_TAG "lsym" (c[5635].s)  [[typeinfo=0]]
11043: AST_Const 5640 10  [[typeinfo=0]]
11048: AST_EQ [11039] [11043]  [[typeinfo=0]]
11053: AST_IndirectThrough [11057]  [[typeinfo=0]]
11057: AST_TAG "sym" (c[5648].s)  [[typeinfo=0]]
11061: AST_AssignTo [11053] [11066]  [[typeinfo=0]]
11066: AST_TAG "lsym" (c[5652].s)  [[typeinfo=0]]
11070: AST_SEQ [11034] [11061]  [[typeinfo=0]]
11075: AST_SEQ [11025] [11070]  [[typeinfo=0]]
11080: AST_SEQ [10963] [11075]  [[typeinfo=0]]
11085: AST_SEQ [10858] [11080]  [[typeinfo=0]]
11090: AST_SEQ [10849] [11085]  [[typeinfo=0]]
11095: AST_SEQ [10808] [11090]  [[typeinfo=0]]
11100: AST_ReceiveParam 10764 [10773] [-1]  [[typeinfo=0]]
11106: AST_SEQ [11100] [11095]  [[typeinfo=0]]
11111: AST_DefProc 10755 [10760] [10777] [10783]  [[typeinfo=0]]
11118: AST_TYPE_Atom 0 0  [[typeinfo=0]]
11123: AST_TAG "read_sym" (c[5659].s)  [[typeinfo=0]]
11127: AST_Scope [11272] -1 1  [[typeinfo=0]]
11133: AST_TAG "pending_sym" (c[5673].s)  [[typeinfo=0]]
11137: AST_Const 5678 0  [[typeinfo=0]]
11142: AST_EQ [11133] [11137]  [[typeinfo=0]]
11147: AST_Scope [11213] -1 2  [[typeinfo=0]]
11153: AST_Scope [11186] -1 2  [[typeinfo=0]]
11159: AST_TAG "local_echo" (c[5693].s)  [[typeinfo=0]]
11163: AST_AddressOf [11167]  [[typeinfo=0]]
11167: AST_TAG "sym" (c[5697].s)  [[typeinfo=0]]
11171: AST_UseParam [-1] [-1]  [[typeinfo=0]]
11176: AST_UseParam [11163] [11171]  [[typeinfo=0]]
11181: AST_Call [11159] [11176]  [[typeinfo=0]]
11186: AST_SEQ [-1] [11181]  [[typeinfo=0]]
11191: AST_TAG "sym" (c[5706].s)  [[typeinfo=0]]
11195: AST_Const 5711 32  [[typeinfo=0]]
11200: AST_EQ [11191] [11195]  [[typeinfo=0]]
11205: AST_C_DoWhile [11153] [11200] -1 -1 -1  [[typeinfo=0]]
11213: AST_SEQ [-1] [11205]  [[typeinfo=0]]
11218: AST_Scope [11256] -1 2  [[typeinfo=0]]
11224: AST_TAG "sym" (c[5730].s)  [[typeinfo=0]]
11228: AST_AssignTo [11224] [11233]  [[typeinfo=0]]
11233: AST_TAG "pending_sym" (c[5734].s)  [[typeinfo=0]]
11237: AST_TAG "pending_sym" (c[5743].s)  [[typeinfo=0]]
11241: AST_AssignTo [11237] [11246]  [[typeinfo=0]]
11246: AST_Const 5747 0  [[typeinfo=0]]
11251: AST_SEQ [11228] [11241]  [[typeinfo=0]]
11256: AST_SEQ [-1] [11251]  [[typeinfo=0]]
11261: AST_IFTHENELSE [11142] [11147] [11218]  [[typeinfo=0]]
11267: AST_SEQ [-1] [11261]  [[typeinfo=0]]
11272: AST_SEQ [-1] [11267]  [[typeinfo=0]]
11277: AST_DefProc 11118 [11123] [-1] [11127]  [[typeinfo=0]]
11284: AST_TYPE_Atom 0 4  [[typeinfo=0]]
11289: AST_TAG "fail_with" (c[5759].s)  [[typeinfo=0]]
11293: AST_TAG "mess" (c[5765].s)  [[typeinfo=0]]
11297: AST_TYPE_Atom 0 1  [[typeinfo=0]]
11302: AST_TYPE_PointerTo [11297]  [[typeinfo=0]]
11306: AST_DefParam 11293 [11302] [11321]  [[typeinfo=0]]
11312: AST_TAG "culprit" (c[5770].s)  [[typeinfo=0]]
11316: AST_TYPE_Atom 0 1  [[typeinfo=0]]
11321: AST_DefParam 11312 [11316] [-1]  [[typeinfo=0]]
11327: AST_Scope [11806] -1 1  [[typeinfo=0]]
11333: AST_TYPE_Atom 0 4  [[typeinfo=0]]
11338: AST_TAG "dirn_sign" (c[5778].s)  [[typeinfo=0]]
11342: AST_Declare [11338] [11333]  [[typeinfo=0]]
11347: AST_SEQ [11342] [-1]  [[typeinfo=0]]
11352: AST_SEQ [11347] [-1]  [[typeinfo=0]]
11357: AST_Const 5788 97  [[typeinfo=0]]
11362: AST_TAG "culprit" (c[5793].s)  [[typeinfo=0]]
11366: AST_LE [11357] [11362]  [[typeinfo=0]]
11371: AST_TAG "culprit" (c[5800].s)  [[typeinfo=0]]
11375: AST_Const 5805 122  [[typeinfo=0]]
11380: AST_LE [11371] [11375]  [[typeinfo=0]]
11385: AST_BoolAnd [11366] [11380]  [[typeinfo=0]]
11390: AST_Scope [11410] -1 2  [[typeinfo=0]]
11396: AST_TAG "dirn_sign" (c[5817].s)  [[typeinfo=0]]
11400: AST_AssignTo [11396] [11405]  [[typeinfo=0]]
11405: AST_Const 5821 45  [[typeinfo=0]]
11410: AST_SEQ [-1] [11400]  [[typeinfo=0]]
11415: AST_Scope [11501] -1 2  [[typeinfo=0]]
11421: AST_TAG "culprit" (c[5842].s)  [[typeinfo=0]]
11425: AST_Const 5846 128  [[typeinfo=0]]
11430: AST_BitAnd [11421] [11425]  [[typeinfo=0]]
11435: AST_Const 5852 0  [[typeinfo=0]]
11440: AST_NE [11430] [11435]  [[typeinfo=0]]
11445: AST_Scope [11465] -1 2  [[typeinfo=0]]
11451: AST_TAG "dirn_sign" (c[5865].s)  [[typeinfo=0]]
11455: AST_AssignTo [11451] [11460]  [[typeinfo=0]]
11460: AST_Const 5869 43  [[typeinfo=0]]
11465: AST_SEQ [-1] [11455]  [[typeinfo=0]]
11470: AST_Scope [11490] -1 2  [[typeinfo=0]]
11476: AST_TAG "dirn_sign" (c[5891].s)  [[typeinfo=0]]
11480: AST_AssignTo [11476] [11485]  [[typeinfo=0]]
11485: AST_Const 5895 32  [[typeinfo=0]]
11490: AST_SEQ [-1] [11480]  [[typeinfo=0]]
11495: AST_IFTHENELSE [11440] [11445] [11470]  [[typeinfo=0]]
11501: AST_SEQ [-1] [11495]  [[typeinfo=0]]
11506: AST_IFTHENELSE [11385] [11390] [11415]  [[typeinfo=0]]
11512: AST_TAG "culprit" (c[5913].s)  [[typeinfo=0]]
11516: AST_AssignTo [11512] [11534]  [[typeinfo=0]]
11521: AST_TAG "culprit" (c[5917].s)  [[typeinfo=0]]
11525: AST_UBitNot [11529]  [[typeinfo=0]]
11529: AST_Const 5923 128  [[typeinfo=0]]
11534: AST_BitAnd [11521] [11525]  [[typeinfo=0]]
11539: AST_Const 5934 65  [[typeinfo=0]]
11544: AST_TAG "culprit" (c[5939].s)  [[typeinfo=0]]
11548: AST_LE [11539] [11544]  [[typeinfo=0]]
11553: AST_TAG "culprit" (c[5946].s)  [[typeinfo=0]]
11557: AST_Const 5951 90  [[typeinfo=0]]
11562: AST_LE [11553] [11557]  [[typeinfo=0]]
11567: AST_BoolAnd [11548] [11562]  [[typeinfo=0]]
11572: AST_TAG "culprit" (c[5961].s)  [[typeinfo=0]]
11576: AST_AssignTo [11572] [11600]  [[typeinfo=0]]
11581: AST_TAG "culprit" (c[5965].s)  [[typeinfo=0]]
11585: AST_Const 5970 97  [[typeinfo=0]]
11590: AST_Const 5972 65  [[typeinfo=0]]
11595: AST_Sub [11585] [11590]  [[typeinfo=0]]
11600: AST_BitOr [11581] [11595]  [[typeinfo=0]]
11605: AST_IFTHEN [11567] [11576]  [[typeinfo=0]]
11610: AST_TAG "fprintf" (c[5979].s)  [[typeinfo=0]]
11614: AST_TAG "stderr" (c[5982].s)  [[typeinfo=0]]
11618: AST_Const 5985 5985  [[typeinfo=0]]
11623: AST_TAG "mess" (c[5988].s)  [[typeinfo=0]]
11627: AST_TAG "culprit" (c[5991].s)  [[typeinfo=0]]
11631: AST_TAG "dirn_sign" (c[5994].s)  [[typeinfo=0]]
11635: AST_UseParam [-1] [-1]  [[typeinfo=0]]
11640: AST_UseParam [11631] [11635]  [[typeinfo=0]]
11645: AST_UseParam [11627] [11640]  [[typeinfo=0]]
11650: AST_UseParam [11623] [11645]  [[typeinfo=0]]
11655: AST_UseParam [11618] [11650]  [[typeinfo=0]]
11660: AST_UseParam [11614] [11655]  [[typeinfo=0]]
11665: AST_Call [11610] [11660]  [[typeinfo=0]]
11670: AST_Scope [11690] -1 2  [[typeinfo=0]]
11676: AST_TAG "read_sym" (c[6005].s)  [[typeinfo=0]]
11680: AST_UseParam [-1] [-1]  [[typeinfo=0]]
11685: AST_Call [11676] [11680]  [[typeinfo=0]]
11690: AST_SEQ [-1] [11685]  [[typeinfo=0]]
11695: AST_TAG "sym_type" (c[6016].s)  [[typeinfo=0]]
11699: AST_TAG "sym" (c[6018].s)  [[typeinfo=0]]
11703: AST_Idx [11695] [11699]  [[typeinfo=0]]
11708: AST_TAG "sym_type" (c[6024].s)  [[typeinfo=0]]
11712: AST_Const 6026 59  [[typeinfo=0]]
11717: AST_Idx [11708] [11712]  [[typeinfo=0]]
11722: AST_NE [11703] [11717]  [[typeinfo=0]]
11727: AST_C_DoWhile [11670] [11722] -1 -1 -1  [[typeinfo=0]]
11735: AST_TAG "ok" (c[6037].s)  [[typeinfo=0]]
11739: AST_AssignTo [11735] [11754]  [[typeinfo=0]]
11744: AST_Const 6042 0  [[typeinfo=0]]
11749: AST_Const 6045 0  [[typeinfo=0]]
11754: AST_NE [11744] [11749]  [[typeinfo=0]]
11759: AST_ReturnResult [11739] -1  [[typeinfo=0]]
11764: AST_SEQ [11727] [11759]  [[typeinfo=0]]
11769: AST_SEQ [11665] [11764]  [[typeinfo=0]]
11774: AST_SEQ [11605] [11769]  [[typeinfo=0]]
11779: AST_SEQ [11516] [11774]  [[typeinfo=0]]
11784: AST_SEQ [11506] [11779]  [[typeinfo=0]]
11789: AST_SEQ [11352] [11784]  [[typeinfo=0]]
11794: AST_ReceiveParam 11312 [11316] [-1]  [[typeinfo=0]]
11800: AST_ReceiveParam 11293 [11302] [11794]  [[typeinfo=0]]
11806: AST_SEQ [11800] [11789]  [[typeinfo=0]]
11811: AST_DefProc 11284 [11289] [11306] [11327]  [[typeinfo=0]]
11818: AST_TYPE_Atom 0 0  [[typeinfo=0]]
11823: AST_TAG "read_item" (c[6054].s)  [[typeinfo=0]]
11827: AST_Scope [12382] -1 1  [[typeinfo=0]]
11833: AST_TYPE_Atom 0 4  [[typeinfo=0]]
11838: AST_TAG "saved_digit" (c[6066].s)  [[typeinfo=0]]
11842: AST_Declare [11838] [11833]  [[typeinfo=0]]
11847: AST_SEQ [11842] [-1]  [[typeinfo=0]]
11852: AST_SEQ [11847] [-1]  [[typeinfo=0]]
11857: AST_TAG "read_sym" (c[6072].s)  [[typeinfo=0]]
11861: AST_UseParam [-1] [-1]  [[typeinfo=0]]
11866: AST_Call [11857] [11861]  [[typeinfo=0]]
11871: AST_Const 6085 97  [[typeinfo=0]]
11876: AST_TAG "sym" (c[6090].s)  [[typeinfo=0]]
11880: AST_LE [11871] [11876]  [[typeinfo=0]]
11885: AST_TAG "sym" (c[6097].s)  [[typeinfo=0]]
11889: AST_Const 6102 122  [[typeinfo=0]]
11894: AST_LE [11885] [11889]  [[typeinfo=0]]
11899: AST_BoolAnd [11880] [11894]  [[typeinfo=0]]
11904: AST_TAG "sym" (c[6112].s)  [[typeinfo=0]]
11908: AST_AssignTo [11904] [11932]  [[typeinfo=0]]
11913: AST_TAG "sym" (c[6116].s)  [[typeinfo=0]]
11917: AST_Const 6121 97  [[typeinfo=0]]
11922: AST_Const 6123 65  [[typeinfo=0]]
11927: AST_Sub [11917] [11922]  [[typeinfo=0]]
11932: AST_Sub [11913] [11927]  [[typeinfo=0]]
11937: AST_IFTHEN [11899] [11908]  [[typeinfo=0]]
11942: AST_TAG "type" (c[6130].s)  [[typeinfo=0]]
11946: AST_AssignTo [11942] [11959]  [[typeinfo=0]]
11951: AST_TAG "sym_type" (c[6134].s)  [[typeinfo=0]]
11955: AST_TAG "sym" (c[6136].s)  [[typeinfo=0]]
11959: AST_Idx [11951] [11955]  [[typeinfo=0]]
11964: AST_TAG "type" (c[6147].s)  [[typeinfo=0]]
11968: AST_Const 6151 64  [[typeinfo=0]]
11973: AST_BitAnd [11964] [11968]  [[typeinfo=0]]
11978: AST_Const 6157 0  [[typeinfo=0]]
11983: AST_EQ [11973] [11978]  [[typeinfo=0]]
11988: AST_Return -1  [[typeinfo=0]]
11992: AST_IFTHEN [11983] [11988]  [[typeinfo=0]]
11997: AST_TAG "type" (c[6169].s)  [[typeinfo=0]]
12001: AST_Const 6173 15  [[typeinfo=0]]
12006: AST_BitAnd [11997] [12001]  [[typeinfo=0]]
12011: AST_Scope [12344] -1 2  [[typeinfo=0]]
12017: AST_Const 6186 8  [[typeinfo=0]]
12022: AST_TAG "number" (c[6198].s)  [[typeinfo=0]]
12026: AST_AssignTo [12022] [12031]  [[typeinfo=0]]
12031: AST_Const 6202 0  [[typeinfo=0]]
12036: AST_Case [12017] -1 -1  [[typeinfo=0]]
12042: AST_SEQ [12036] [12026]  [[typeinfo=0]]
12047: AST_Return -1  [[typeinfo=0]]
12051: AST_Const 6225 7  [[typeinfo=0]]
12056: AST_TAG "number" (c[6237].s)  [[typeinfo=0]]
12060: AST_AssignTo [12056] [12074]  [[typeinfo=0]]
12065: AST_TAG "stopper" (c[6241].s)  [[typeinfo=0]]
12069: AST_Const 6243 1  [[typeinfo=0]]
12074: AST_Sub [12065] [12069]  [[typeinfo=0]]
12079: AST_Case [12051] -1 -1  [[typeinfo=0]]
12085: AST_SEQ [12079] [12060]  [[typeinfo=0]]
12090: AST_Return -1  [[typeinfo=0]]
12094: AST_Const 6266 0  [[typeinfo=0]]
12099: AST_TAG "saved_digit" (c[6278].s)  [[typeinfo=0]]
12103: AST_AssignTo [12099] [12108]  [[typeinfo=0]]
12108: AST_TAG "sym" (c[6282].s)  [[typeinfo=0]]
12112: AST_Case [12094] -1 -1  [[typeinfo=0]]
12118: AST_SEQ [12112] [12103]  [[typeinfo=0]]
12123: AST_TAG "number" (c[6294].s)  [[typeinfo=0]]
12127: AST_AssignTo [12123] [12132]  [[typeinfo=0]]
12132: AST_Const 6298 0  [[typeinfo=0]]
12137: AST_Scope [12204] -1 2  [[typeinfo=0]]
12143: AST_TAG "number" (c[6326].s)  [[typeinfo=0]]
12147: AST_AssignTo [12143] [12180]  [[typeinfo=0]]
12152: AST_TAG "number" (c[6331].s)  [[typeinfo=0]]
12156: AST_Const 6335 10  [[typeinfo=0]]
12161: AST_Mul [12152] [12156]  [[typeinfo=0]]
12166: AST_TAG "sym" (c[6341].s)  [[typeinfo=0]]
12170: AST_Const 6345 48  [[typeinfo=0]]
12175: AST_Sub [12166] [12170]  [[typeinfo=0]]
12180: AST_Add [12161] [12175]  [[typeinfo=0]]
12185: AST_TAG "read_sym" (c[6361].s)  [[typeinfo=0]]
12189: AST_UseParam [-1] [-1]  [[typeinfo=0]]
12194: AST_Call [12185] [12189]  [[typeinfo=0]]
12199: AST_SEQ [12147] [12194]  [[typeinfo=0]]
12204: AST_SEQ [-1] [12199]  [[typeinfo=0]]
12209: AST_Const 6381 48  [[typeinfo=0]]
12214: AST_TAG "sym" (c[6386].s)  [[typeinfo=0]]
12218: AST_LE [12209] [12214]  [[typeinfo=0]]
12223: AST_TAG "sym" (c[6393].s)  [[typeinfo=0]]
12227: AST_Const 6398 57  [[typeinfo=0]]
12232: AST_LE [12223] [12227]  [[typeinfo=0]]
12237: AST_BoolAnd [12218] [12232]  [[typeinfo=0]]
12242: AST_C_DoWhile [12137] [12237] -1 -1 -1  [[typeinfo=0]]
12250: AST_TAG "pending_sym" (c[6412].s)  [[typeinfo=0]]
12254: AST_AssignTo [12250] [12259]  [[typeinfo=0]]
12259: AST_TAG "sym" (c[6416].s)  [[typeinfo=0]]
12263: AST_TAG "sym" (c[6428].s)  [[typeinfo=0]]
12267: AST_AssignTo [12263] [12272]  [[typeinfo=0]]
12272: AST_TAG "saved_digit" (c[6432].s)  [[typeinfo=0]]
12276: AST_Return -1  [[typeinfo=0]]
12280: AST_Return -1  [[typeinfo=0]]
12284: AST_DefaultCase -1 -1  [[typeinfo=0]]
12289: AST_SEQ [12284] [12280]  [[typeinfo=0]]
12294: AST_SEQ [12276] [12289]  [[typeinfo=0]]
12299: AST_SEQ [12267] [12294]  [[typeinfo=0]]
12304: AST_SEQ [12254] [12299]  [[typeinfo=0]]
12309: AST_SEQ [12242] [12304]  [[typeinfo=0]]
12314: AST_SEQ [12127] [12309]  [[typeinfo=0]]
12319: AST_SEQ [12118] [12314]  [[typeinfo=0]]
12324: AST_SEQ [12090] [12319]  [[typeinfo=0]]
12329: AST_SEQ [12085] [12324]  [[typeinfo=0]]
12334: AST_SEQ [12047] [12329]  [[typeinfo=0]]
12339: AST_SEQ [12042] [12334]  [[typeinfo=0]]
12344: AST_SEQ [-1] [12339]  [[typeinfo=0]]
12349: AST_Switch [12006] [12011] -1 -1 -1  [[typeinfo=0]]
12357: AST_SEQ [11992] [12349]  [[typeinfo=0]]
12362: AST_SEQ [11946] [12357]  [[typeinfo=0]]
12367: AST_SEQ [11937] [12362]  [[typeinfo=0]]
12372: AST_SEQ [11866] [12367]  [[typeinfo=0]]
12377: AST_SEQ [11852] [12372]  [[typeinfo=0]]
12382: AST_SEQ [-1] [12377]  [[typeinfo=0]]
12387: AST_DefProc 11818 [11823] [-1] [11827]  [[typeinfo=0]]
12394: AST_TYPE_Atom 0 0  [[typeinfo=0]]
12399: AST_TAG "percent" (c[6477].s)  [[typeinfo=0]]
12403: AST_TAG "Command_sym" (c[6482].s)  [[typeinfo=0]]
12407: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12412: AST_DefParam 12403 [12407] [-1]  [[typeinfo=0]]
12418: AST_Scope [18252] -1 1  [[typeinfo=0]]
12424: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12429: AST_TAG "note_sec" (c[6494].s)  [[typeinfo=0]]
12433: AST_Const 6498 48  [[typeinfo=0]]
12438: AST_AssignTo [-1] [12433]  [[typeinfo=0]]
12443: AST_Declare [12429] [12424]  [[typeinfo=0]]
12448: AST_SEQ [12443] [-1]  [[typeinfo=0]]
12453: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12458: AST_TAG "Emergency" (c[6506].s)  [[typeinfo=0]]
12462: AST_TYPE_Atom 0 4  [[typeinfo=0]]
12467: AST_TYPE_ArrayOf [12453] [12462] 0 -1 -1  [[typeinfo=0]]
12475: AST_Declare [12458] [12467]  [[typeinfo=0]]
12480: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12485: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
12489: AST_TAG "P" (c[6518].s)  [[typeinfo=0]]
12493: AST_Declare [12489] [12480]  [[typeinfo=0]]
12498: AST_SEQ [12493] [-1]  [[typeinfo=0]]
12503: AST_TYPE_Atom 0 4  [[typeinfo=0]]
12508: AST_TAG "p" (c[6526].s)  [[typeinfo=0]]
12512: AST_Declare [12508] [12503]  [[typeinfo=0]]
12517: AST_SEQ [12512] [-1]  [[typeinfo=0]]
12522: AST_TYPE_Atom 0 4  [[typeinfo=0]]
12527: AST_TAG "sec_no" (c[6534].s)  [[typeinfo=0]]
12531: AST_Declare [12527] [12522]  [[typeinfo=0]]
12536: AST_SEQ [12531] [-1]  [[typeinfo=0]]
12541: AST_TYPE_Atom 0 4  [[typeinfo=0]]
12546: AST_TAG "file_wanted" (c[6542].s)  [[typeinfo=0]]
12550: AST_Declare [12546] [12541]  [[typeinfo=0]]
12555: AST_SEQ [12550] [-1]  [[typeinfo=0]]
12560: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12565: AST_TAG "sec_file" (c[6550].s)  [[typeinfo=0]]
12569: AST_TYPE_Atom 0 4  [[typeinfo=0]]
12574: AST_TYPE_ArrayOf [12560] [12569] 0 -1 -1  [[typeinfo=0]]
12582: AST_Declare [12565] [12574]  [[typeinfo=0]]
12587: AST_TYPE_Atom 0 1  [[typeinfo=0]]
12592: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
12596: AST_TAG "sec_filep" (c[6562].s)  [[typeinfo=0]]
12600: AST_Declare [12596] [12587]  [[typeinfo=0]]
12605: AST_SEQ [12600] [-1]  [[typeinfo=0]]
12610: AST_SEQ [12605] [-1]  [[typeinfo=0]]
12615: AST_SEQ [12582] [12610]  [[typeinfo=0]]
12620: AST_SEQ [12555] [12615]  [[typeinfo=0]]
12625: AST_SEQ [12536] [12620]  [[typeinfo=0]]
12630: AST_SEQ [12517] [12625]  [[typeinfo=0]]
12635: AST_SEQ [12498] [12630]  [[typeinfo=0]]
12640: AST_SEQ [12475] [12635]  [[typeinfo=0]]
12645: AST_SEQ [12448] [12640]  [[typeinfo=0]]
12650: AST_TAG "ok" (c[6568].s)  [[typeinfo=0]]
12654: AST_AssignTo [12650] [12669]  [[typeinfo=0]]
12659: AST_Const 6573 0  [[typeinfo=0]]
12664: AST_Const 6576 0  [[typeinfo=0]]
12669: AST_EQ [12659] [12664]  [[typeinfo=0]]
12674: AST_UBoolNot [12746]  [[typeinfo=0]]
12678: AST_Const 6589 97  [[typeinfo=0]]
12683: AST_TAG "Command_sym" (c[6594].s)  [[typeinfo=0]]
12687: AST_LE [12678] [12683]  [[typeinfo=0]]
12692: AST_Const 6599 97  [[typeinfo=0]]
12697: AST_Const 6601 65  [[typeinfo=0]]
12702: AST_Sub [12692] [12697]  [[typeinfo=0]]
12707: AST_BitOr [12687] [12702]  [[typeinfo=0]]
12712: AST_TAG "Command_sym" (c[6609].s)  [[typeinfo=0]]
12716: AST_Const 6614 97  [[typeinfo=0]]
12721: AST_Const 6616 65  [[typeinfo=0]]
12726: AST_Sub [12716] [12721]  [[typeinfo=0]]
12731: AST_Const 6622 122  [[typeinfo=0]]
12736: AST_LE [12726] [12731]  [[typeinfo=0]]
12741: AST_BitOr [12712] [12736]  [[typeinfo=0]]
12746: AST_BoolAnd [12707] [12741]  [[typeinfo=0]]
12751: AST_Scope [12810] -1 2  [[typeinfo=0]]
12757: AST_TYPE_Atom 0 0  [[typeinfo=0]]
12762: AST_Cast [12796] 12757  [[typeinfo=0]]
12767: AST_TAG "fail_with" (c[6639].s)  [[typeinfo=0]]
12771: AST_Const 6642 6642  [[typeinfo=0]]
12776: AST_Const 6645 37  [[typeinfo=0]]
12781: AST_UseParam [-1] [-1]  [[typeinfo=0]]
12786: AST_UseParam [12776] [12781]  [[typeinfo=0]]
12791: AST_UseParam [12771] [12786]  [[typeinfo=0]]
12796: AST_Call [12767] [12791]  [[typeinfo=0]]
12801: AST_Return -1  [[typeinfo=0]]
12805: AST_SEQ [12762] [12801]  [[typeinfo=0]]
12810: AST_SEQ [-1] [12805]  [[typeinfo=0]]
12815: AST_IFTHEN [12674] [12751]  [[typeinfo=0]]
12820: AST_TAG "Command_sym" (c[6669].s)  [[typeinfo=0]]
12824: AST_Scope [18148] -1 2  [[typeinfo=0]]
12830: AST_Const 6682 76  [[typeinfo=0]]
12835: AST_TAG "to_upper_case" (c[6694].s)  [[typeinfo=0]]
12839: AST_AssignTo [12835] [12844]  [[typeinfo=0]]
12844: AST_UBitNot [12848]  [[typeinfo=0]]
12848: AST_Const 6699 0  [[typeinfo=0]]
12853: AST_Case [12830] -1 -1  [[typeinfo=0]]
12859: AST_SEQ [12853] [12839]  [[typeinfo=0]]
12864: AST_TAG "to_lower_case" (c[6711].s)  [[typeinfo=0]]
12868: AST_AssignTo [12864] [12883]  [[typeinfo=0]]
12873: AST_Const 6716 97  [[typeinfo=0]]
12878: AST_Const 6718 65  [[typeinfo=0]]
12883: AST_Sub [12873] [12878]  [[typeinfo=0]]
12888: AST_TAG "caseflip" (c[6731].s)  [[typeinfo=0]]
12892: AST_AssignTo [12888] [12897]  [[typeinfo=0]]
12897: AST_Const 6735 0  [[typeinfo=0]]
12902: AST_C_Break -1  [[typeinfo=0]]
12906: AST_Const 6758 85  [[typeinfo=0]]
12911: AST_TAG "to_upper_case" (c[6770].s)  [[typeinfo=0]]
12915: AST_AssignTo [12911] [12920]  [[typeinfo=0]]
12920: AST_UBitNot [12934]  [[typeinfo=0]]
12924: AST_Const 6776 97  [[typeinfo=0]]
12929: AST_Const 6778 65  [[typeinfo=0]]
12934: AST_Sub [12924] [12929]  [[typeinfo=0]]
12939: AST_Case [12906] -1 -1  [[typeinfo=0]]
12945: AST_SEQ [12939] [12915]  [[typeinfo=0]]
12950: AST_TAG "to_lower_case" (c[6791].s)  [[typeinfo=0]]
12954: AST_AssignTo [12950] [12959]  [[typeinfo=0]]
12959: AST_Const 6795 0  [[typeinfo=0]]
12964: AST_TAG "caseflip" (c[6807].s)  [[typeinfo=0]]
12968: AST_AssignTo [12964] [12973]  [[typeinfo=0]]
12973: AST_Const 6811 0  [[typeinfo=0]]
12978: AST_C_Break -1  [[typeinfo=0]]
12982: AST_Const 6834 78  [[typeinfo=0]]
12987: AST_TAG "to_upper_case" (c[6846].s)  [[typeinfo=0]]
12991: AST_AssignTo [12987] [12996]  [[typeinfo=0]]
12996: AST_UBitNot [13000]  [[typeinfo=0]]
13000: AST_Const 6851 0  [[typeinfo=0]]
13005: AST_Case [12982] -1 -1  [[typeinfo=0]]
13011: AST_SEQ [13005] [12991]  [[typeinfo=0]]
13016: AST_TAG "to_lower_case" (c[6863].s)  [[typeinfo=0]]
13020: AST_AssignTo [13016] [13025]  [[typeinfo=0]]
13025: AST_Const 6867 0  [[typeinfo=0]]
13030: AST_TAG "caseflip" (c[6879].s)  [[typeinfo=0]]
13034: AST_AssignTo [13030] [13049]  [[typeinfo=0]]
13039: AST_Const 6884 97  [[typeinfo=0]]
13044: AST_Const 6886 65  [[typeinfo=0]]
13049: AST_Sub [13039] [13044]  [[typeinfo=0]]
13054: AST_C_Break -1  [[typeinfo=0]]
13058: AST_Const 6910 69  [[typeinfo=0]]
13063: AST_TAG "to_upper_case" (c[6922].s)  [[typeinfo=0]]
13067: AST_AssignTo [13063] [13072]  [[typeinfo=0]]
13072: AST_UBitNot [13086]  [[typeinfo=0]]
13076: AST_Const 6928 97  [[typeinfo=0]]
13081: AST_Const 6930 65  [[typeinfo=0]]
13086: AST_Sub [13076] [13081]  [[typeinfo=0]]
13091: AST_Case [13058] -1 -1  [[typeinfo=0]]
13097: AST_SEQ [13091] [13067]  [[typeinfo=0]]
13102: AST_TAG "to_lower_case" (c[6943].s)  [[typeinfo=0]]
13106: AST_AssignTo [13102] [13111]  [[typeinfo=0]]
13111: AST_Const 6947 0  [[typeinfo=0]]
13116: AST_TAG "caseflip" (c[6959].s)  [[typeinfo=0]]
13120: AST_AssignTo [13116] [13135]  [[typeinfo=0]]
13125: AST_Const 6964 97  [[typeinfo=0]]
13130: AST_Const 6966 65  [[typeinfo=0]]
13135: AST_Sub [13125] [13130]  [[typeinfo=0]]
13140: AST_C_Break -1  [[typeinfo=0]]
13144: AST_Const 6990 86  [[typeinfo=0]]
13149: AST_TAG "fprintf" (c[7002].s)  [[typeinfo=0]]
13153: AST_TAG "tty_out" (c[7005].s)  [[typeinfo=0]]
13157: AST_Const 7008 7008  [[typeinfo=0]]
13162: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13167: AST_UseParam [13157] [13162]  [[typeinfo=0]]
13172: AST_UseParam [13153] [13167]  [[typeinfo=0]]
13177: AST_Call [13149] [13172]  [[typeinfo=0]]
13182: AST_Case [13144] -1 -1  [[typeinfo=0]]
13188: AST_SEQ [13182] [13177]  [[typeinfo=0]]
13193: AST_C_Break -1  [[typeinfo=0]]
13197: AST_Const 7032 87  [[typeinfo=0]]
13202: AST_Const 7043 67  [[typeinfo=0]]
13207: AST_Scope [13227] -1 2  [[typeinfo=0]]
13213: AST_TAG "read_sym" (c[7059].s)  [[typeinfo=0]]
13217: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13222: AST_Call [13213] [13217]  [[typeinfo=0]]
13227: AST_SEQ [-1] [13222]  [[typeinfo=0]]
13232: AST_TAG "sym_type" (c[7070].s)  [[typeinfo=0]]
13236: AST_TAG "sym" (c[7072].s)  [[typeinfo=0]]
13240: AST_Idx [13232] [13236]  [[typeinfo=0]]
13245: AST_TAG "sym_type" (c[7078].s)  [[typeinfo=0]]
13249: AST_Const 7080 59  [[typeinfo=0]]
13254: AST_Idx [13245] [13249]  [[typeinfo=0]]
13259: AST_NE [13240] [13254]  [[typeinfo=0]]
13264: AST_C_DoWhile [13207] [13259] -1 -1 -1  [[typeinfo=0]]
13272: AST_Case [13202] -1 -1  [[typeinfo=0]]
13278: AST_SEQ [13272] [13264]  [[typeinfo=0]]
13283: AST_Case [13197] -1 -1  [[typeinfo=0]]
13289: AST_SEQ [13283] [13278]  [[typeinfo=0]]
13294: AST_TAG "ARGV" (c[7097].s)  [[typeinfo=0]]
13298: AST_Const 7099 2  [[typeinfo=0]]
13303: AST_Idx [13294] [13298]  [[typeinfo=0]]
13308: AST_Const 7105 0  [[typeinfo=0]]
13313: AST_EQ [13303] [13308]  [[typeinfo=0]]
13318: AST_Scope [13338] -1 2  [[typeinfo=0]]
13324: AST_TAG "p" (c[7122].s)  [[typeinfo=0]]
13328: AST_AssignTo [13324] [13333]  [[typeinfo=0]]
13333: AST_Const 7126 1  [[typeinfo=0]]
13338: AST_SEQ [-1] [13328]  [[typeinfo=0]]
13343: AST_Scope [13363] -1 2  [[typeinfo=0]]
13349: AST_TAG "p" (c[7156].s)  [[typeinfo=0]]
13353: AST_AssignTo [13349] [13358]  [[typeinfo=0]]
13358: AST_Const 7160 2  [[typeinfo=0]]
13363: AST_SEQ [-1] [13353]  [[typeinfo=0]]
13368: AST_IFTHENELSE [13313] [13318] [13343]  [[typeinfo=0]]
13374: AST_Const 7182 99  [[typeinfo=0]]
13379: AST_TAG "in_second" (c[7197].s)  [[typeinfo=0]]
13383: AST_Scope [14029] -1 2  [[typeinfo=0]]
13389: AST_TYPE_Atom 0 0  [[typeinfo=0]]
13394: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
13398: AST_TAG "sec_out" (c[7217].s)  [[typeinfo=0]]
13402: AST_TAG "fopen" (c[7221].s)  [[typeinfo=0]]
13406: AST_TAG "note_file" (c[7224].s)  [[typeinfo=0]]
13410: AST_Const 7227 7227  [[typeinfo=0]]
13415: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13420: AST_UseParam [13410] [13415]  [[typeinfo=0]]
13425: AST_UseParam [13406] [13420]  [[typeinfo=0]]
13430: AST_Call [13402] [13425]  [[typeinfo=0]]
13435: AST_AssignTo [-1] [13430]  [[typeinfo=0]]
13440: AST_Declare [13398] [13389]  [[typeinfo=0]]
13445: AST_SEQ [13440] [-1]  [[typeinfo=0]]
13450: AST_SEQ [13445] [-1]  [[typeinfo=0]]
13455: AST_TAG "strcpy" (c[7248].s)  [[typeinfo=0]]
13459: AST_TAG "com_prompt" (c[7250].s)  [[typeinfo=0]]
13463: AST_Const 7253 7253  [[typeinfo=0]]
13468: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13473: AST_UseParam [13463] [13468]  [[typeinfo=0]]
13478: AST_UseParam [13459] [13473]  [[typeinfo=0]]
13483: AST_Call [13455] [13478]  [[typeinfo=0]]
13488: AST_TAG "sec_out" (c[7273].s)  [[typeinfo=0]]
13492: AST_Const 7278 0  [[typeinfo=0]]
13497: AST_EQ [13488] [13492]  [[typeinfo=0]]
13502: AST_Scope [13561] -1 2  [[typeinfo=0]]
13508: AST_TYPE_Atom 0 0  [[typeinfo=0]]
13513: AST_Cast [13547] 13508  [[typeinfo=0]]
13518: AST_TAG "fail_with" (c[7302].s)  [[typeinfo=0]]
13522: AST_Const 7305 7305  [[typeinfo=0]]
13527: AST_Const 7308 32  [[typeinfo=0]]
13532: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13537: AST_UseParam [13527] [13532]  [[typeinfo=0]]
13542: AST_UseParam [13522] [13537]  [[typeinfo=0]]
13547: AST_Call [13518] [13542]  [[typeinfo=0]]
13552: AST_C_Break -1  [[typeinfo=0]]
13556: AST_SEQ [13513] [13552]  [[typeinfo=0]]
13561: AST_SEQ [-1] [13556]  [[typeinfo=0]]
13566: AST_IFTHEN [13497] [13502]  [[typeinfo=0]]
13571: AST_TAG "P" (c[7356].s)  [[typeinfo=0]]
13575: AST_AssignTo [13571] [13580]  [[typeinfo=0]]
13580: AST_TAG "fbeg" (c[7360].s)  [[typeinfo=0]]
13584: AST_Scope [13693] -1 2  [[typeinfo=0]]
13590: AST_TAG "P" (c[7402].s)  [[typeinfo=0]]
13594: AST_TAG "pp" (c[7407].s)  [[typeinfo=0]]
13598: AST_EQ [13590] [13594]  [[typeinfo=0]]
13603: AST_TAG "P" (c[7410].s)  [[typeinfo=0]]
13607: AST_AssignTo [13603] [13612]  [[typeinfo=0]]
13612: AST_TAG "fp" (c[7414].s)  [[typeinfo=0]]
13616: AST_IFTHEN [13598] [13607]  [[typeinfo=0]]
13621: AST_TAG "P" (c[7435].s)  [[typeinfo=0]]
13625: AST_TAG "fend" (c[7440].s)  [[typeinfo=0]]
13629: AST_EQ [13621] [13625]  [[typeinfo=0]]
13634: AST_C_Break -1  [[typeinfo=0]]
13638: AST_IFTHEN [13629] [13634]  [[typeinfo=0]]
13643: AST_TAG "fputc" (c[7461].s)  [[typeinfo=0]]
13647: AST_IndirectThrough [13655]  [[typeinfo=0]]
13651: AST_TAG "P" (c[7465].s)  [[typeinfo=0]]
13655: AST_Post_Inc [13651]  [[typeinfo=0]]
13659: AST_TAG "sec_out" (c[7469].s)  [[typeinfo=0]]
13663: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13668: AST_UseParam [13659] [13663]  [[typeinfo=0]]
13673: AST_UseParam [13647] [13668]  [[typeinfo=0]]
13678: AST_Call [13643] [13673]  [[typeinfo=0]]
13683: AST_SEQ [13638] [13678]  [[typeinfo=0]]
13688: AST_SEQ [13616] [13683]  [[typeinfo=0]]
13693: AST_SEQ [-1] [13688]  [[typeinfo=0]]
13698: AST_C_ForLoop [-1] [-1] [-1] [13584] -1 -1 -1  [[typeinfo=0]]
13708: AST_TAG "fclose" (c[7499].s)  [[typeinfo=0]]
13712: AST_TAG "sec_out" (c[7502].s)  [[typeinfo=0]]
13716: AST_UseParam [-1] [-1]  [[typeinfo=0]]
13721: AST_UseParam [13712] [13716]  [[typeinfo=0]]
13726: AST_Call [13708] [13721]  [[typeinfo=0]]
13731: AST_TAG "pp" (c[7518].s)  [[typeinfo=0]]
13735: AST_AssignTo [13731] [13749]  [[typeinfo=0]]
13740: AST_TAG "fbeg" (c[7522].s)  [[typeinfo=0]]
13744: AST_Const 7526 1  [[typeinfo=0]]
13749: AST_Sub [13740] [13744]  [[typeinfo=0]]
13754: AST_TAG "fp" (c[7541].s)  [[typeinfo=0]]
13758: AST_AssignTo [13754] [13772]  [[typeinfo=0]]
13763: AST_TAG "fend" (c[7545].s)  [[typeinfo=0]]
13767: AST_Const 7549 1  [[typeinfo=0]]
13772: AST_Add [13763] [13767]  [[typeinfo=0]]
13777: AST_TAG "fbeg" (c[7564].s)  [[typeinfo=0]]
13781: AST_AssignTo [13777] [13795]  [[typeinfo=0]]
13786: AST_TAG "a" (c[7568].s)  [[typeinfo=0]]
13790: AST_Const 7570 1  [[typeinfo=0]]
13795: AST_Add [13786] [13790]  [[typeinfo=0]]
13800: AST_TAG "fend" (c[7585].s)  [[typeinfo=0]]
13804: AST_AssignTo [13800] [13817]  [[typeinfo=0]]
13809: AST_TAG "a" (c[7589].s)  [[typeinfo=0]]
13813: AST_TAG "buffer_size" (c[7591].s)  [[typeinfo=0]]
13817: AST_Add [13809] [13813]  [[typeinfo=0]]
13822: AST_TAG "lbeg" (c[7606].s)  [[typeinfo=0]]
13826: AST_AssignTo [13822] [13831]  [[typeinfo=0]]
13831: AST_TAG "pp" (c[7610].s)  [[typeinfo=0]]
13835: AST_Scope [13849] -1 2  [[typeinfo=0]]
13841: AST_Pre_Dec [13845]  [[typeinfo=0]]
13845: AST_TAG "lbeg" (c[7630].s)  [[typeinfo=0]]
13849: AST_SEQ [-1] [13841]  [[typeinfo=0]]
13854: AST_IndirectThrough [13858]  [[typeinfo=0]]
13858: AST_TAG "lbeg" (c[7639].s)  [[typeinfo=0]]
13862: AST_Const 7644 10  [[typeinfo=0]]
13867: AST_NE [13854] [13862]  [[typeinfo=0]]
13872: AST_C_DoWhile [13835] [13867] -1 -1 -1  [[typeinfo=0]]
13880: AST_TAG "lbeg" (c[7660].s)  [[typeinfo=0]]
13884: AST_Post_Inc [13880]  [[typeinfo=0]]
13888: AST_TAG "lend" (c[7676].s)  [[typeinfo=0]]
13892: AST_AssignTo [13888] [13897]  [[typeinfo=0]]
13897: AST_TAG "fp" (c[7680].s)  [[typeinfo=0]]
13901: AST_IndirectThrough [13905]  [[typeinfo=0]]
13905: AST_TAG "lend" (c[7699].s)  [[typeinfo=0]]
13909: AST_Const 7704 10  [[typeinfo=0]]
13914: AST_NE [13901] [13909]  [[typeinfo=0]]
13919: AST_TAG "lend" (c[7707].s)  [[typeinfo=0]]
13923: AST_Post_Inc [13919]  [[typeinfo=0]]
13927: AST_C_While [13914] [13923] -1 -1 -1  [[typeinfo=0]]
13935: AST_TAG "in_second" (c[7723].s)  [[typeinfo=0]]
13939: AST_AssignTo [13935] [13954]  [[typeinfo=0]]
13944: AST_Const 7728 0  [[typeinfo=0]]
13949: AST_Const 7731 0  [[typeinfo=0]]
13954: AST_NE [13944] [13949]  [[typeinfo=0]]
13959: AST_SEQ [13927] [13939]  [[typeinfo=0]]
13964: AST_SEQ [13892] [13959]  [[typeinfo=0]]
13969: AST_SEQ [13884] [13964]  [[typeinfo=0]]
13974: AST_SEQ [13872] [13969]  [[typeinfo=0]]
13979: AST_SEQ [13826] [13974]  [[typeinfo=0]]
13984: AST_SEQ [13804] [13979]  [[typeinfo=0]]
13989: AST_SEQ [13781] [13984]  [[typeinfo=0]]
13994: AST_SEQ [13758] [13989]  [[typeinfo=0]]
13999: AST_SEQ [13735] [13994]  [[typeinfo=0]]
14004: AST_SEQ [13726] [13999]  [[typeinfo=0]]
14009: AST_SEQ [13698] [14004]  [[typeinfo=0]]
14014: AST_SEQ [13575] [14009]  [[typeinfo=0]]
14019: AST_SEQ [13566] [14014]  [[typeinfo=0]]
14024: AST_SEQ [13483] [14019]  [[typeinfo=0]]
14029: AST_SEQ [13450] [14024]  [[typeinfo=0]]
14034: AST_IFTHEN [13379] [13383]  [[typeinfo=0]]
14039: AST_Case [13374] -1 -1  [[typeinfo=0]]
14045: AST_SEQ [14039] [14034]  [[typeinfo=0]]
14050: AST_TAG "Command_sym" (c[7758].s)  [[typeinfo=0]]
14054: AST_Const 7763 99  [[typeinfo=0]]
14059: AST_EQ [14050] [14054]  [[typeinfo=0]]
14064: AST_Scope [14417] -1 2  [[typeinfo=0]]
14070: AST_TAG "ARGV" (c[7780].s)  [[typeinfo=0]]
14074: AST_TAG "p" (c[7782].s)  [[typeinfo=0]]
14078: AST_Idx [14070] [14074]  [[typeinfo=0]]
14083: AST_AssignTo [14078] [14088]  [[typeinfo=0]]
14088: AST_Const 7787 7787  [[typeinfo=0]]
14093: AST_TAG "main_out" (c[7802].s)  [[typeinfo=0]]
14097: AST_AssignTo [14093] [14139]  [[typeinfo=0]]
14102: AST_TAG "fopen" (c[7806].s)  [[typeinfo=0]]
14106: AST_TAG "ARGV" (c[7809].s)  [[typeinfo=0]]
14110: AST_TAG "p" (c[7811].s)  [[typeinfo=0]]
14114: AST_Idx [14106] [14110]  [[typeinfo=0]]
14119: AST_Const 7815 7815  [[typeinfo=0]]
14124: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14129: AST_UseParam [14119] [14124]  [[typeinfo=0]]
14134: AST_UseParam [14114] [14129]  [[typeinfo=0]]
14139: AST_Call [14102] [14134]  [[typeinfo=0]]
14144: AST_TAG "main_out" (c[7834].s)  [[typeinfo=0]]
14148: AST_Const 7839 0  [[typeinfo=0]]
14153: AST_EQ [14144] [14148]  [[typeinfo=0]]
14158: AST_Scope [14243] -1 2  [[typeinfo=0]]
14164: AST_TAG "ARGV" (c[7859].s)  [[typeinfo=0]]
14168: AST_TAG "p" (c[7861].s)  [[typeinfo=0]]
14172: AST_Idx [14164] [14168]  [[typeinfo=0]]
14177: AST_AssignTo [14172] [14182]  [[typeinfo=0]]
14182: AST_Const 7866 7866  [[typeinfo=0]]
14187: AST_TAG "main_out" (c[7884].s)  [[typeinfo=0]]
14191: AST_AssignTo [14187] [14233]  [[typeinfo=0]]
14196: AST_TAG "fopen" (c[7888].s)  [[typeinfo=0]]
14200: AST_TAG "ARGV" (c[7891].s)  [[typeinfo=0]]
14204: AST_TAG "p" (c[7893].s)  [[typeinfo=0]]
14208: AST_Idx [14200] [14204]  [[typeinfo=0]]
14213: AST_Const 7897 7897  [[typeinfo=0]]
14218: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14223: AST_UseParam [14213] [14218]  [[typeinfo=0]]
14228: AST_UseParam [14208] [14223]  [[typeinfo=0]]
14233: AST_Call [14196] [14228]  [[typeinfo=0]]
14238: AST_SEQ [14177] [14191]  [[typeinfo=0]]
14243: AST_SEQ [-1] [14238]  [[typeinfo=0]]
14248: AST_IFTHEN [14153] [14158]  [[typeinfo=0]]
14253: AST_TAG "main_out" (c[7930].s)  [[typeinfo=0]]
14257: AST_Const 7935 0  [[typeinfo=0]]
14262: AST_EQ [14253] [14257]  [[typeinfo=0]]
14267: AST_Scope [14335] -1 2  [[typeinfo=0]]
14273: AST_TAG "fprintf" (c[7955].s)  [[typeinfo=0]]
14277: AST_TAG "stderr" (c[7957].s)  [[typeinfo=0]]
14281: AST_Const 7983 7983  [[typeinfo=0]]
14286: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14291: AST_UseParam [14281] [14286]  [[typeinfo=0]]
14296: AST_UseParam [14277] [14291]  [[typeinfo=0]]
14301: AST_Call [14273] [14296]  [[typeinfo=0]]
14306: AST_TAG "exit" (c[8002].s)  [[typeinfo=0]]
14310: AST_Const 8004 90  [[typeinfo=0]]
14315: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14320: AST_UseParam [14310] [14315]  [[typeinfo=0]]
14325: AST_Call [14306] [14320]  [[typeinfo=0]]
14330: AST_SEQ [14301] [14325]  [[typeinfo=0]]
14335: AST_SEQ [-1] [14330]  [[typeinfo=0]]
14340: AST_IFTHEN [14262] [14267]  [[typeinfo=0]]
14345: AST_TAG "fprintf" (c[8034].s)  [[typeinfo=0]]
14349: AST_TAG "tty_out" (c[8037].s)  [[typeinfo=0]]
14353: AST_Const 8040 8040  [[typeinfo=0]]
14358: AST_TAG "ARGV" (c[8043].s)  [[typeinfo=0]]
14362: AST_Const 8045 1  [[typeinfo=0]]
14367: AST_Idx [14358] [14362]  [[typeinfo=0]]
14372: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14377: AST_UseParam [14367] [14372]  [[typeinfo=0]]
14382: AST_UseParam [14353] [14377]  [[typeinfo=0]]
14387: AST_UseParam [14349] [14382]  [[typeinfo=0]]
14392: AST_Call [14345] [14387]  [[typeinfo=0]]
14397: AST_SEQ [14340] [14392]  [[typeinfo=0]]
14402: AST_SEQ [14248] [14397]  [[typeinfo=0]]
14407: AST_SEQ [14097] [14402]  [[typeinfo=0]]
14412: AST_SEQ [14083] [14407]  [[typeinfo=0]]
14417: AST_SEQ [-1] [14412]  [[typeinfo=0]]
14422: AST_Scope [14911] -1 2  [[typeinfo=0]]
14428: AST_TAG "main_out" (c[8077].s)  [[typeinfo=0]]
14432: AST_AssignTo [14428] [14474]  [[typeinfo=0]]
14437: AST_TAG "fopen" (c[8081].s)  [[typeinfo=0]]
14441: AST_TAG "ARGV" (c[8084].s)  [[typeinfo=0]]
14445: AST_TAG "p" (c[8086].s)  [[typeinfo=0]]
14449: AST_Idx [14441] [14445]  [[typeinfo=0]]
14454: AST_Const 8090 8090  [[typeinfo=0]]
14459: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14464: AST_UseParam [14454] [14459]  [[typeinfo=0]]
14469: AST_UseParam [14449] [14464]  [[typeinfo=0]]
14474: AST_Call [14437] [14469]  [[typeinfo=0]]
14479: AST_TAG "main_out" (c[8109].s)  [[typeinfo=0]]
14483: AST_Const 8114 0  [[typeinfo=0]]
14488: AST_EQ [14479] [14483]  [[typeinfo=0]]
14493: AST_Scope [14719] -1 2  [[typeinfo=0]]
14499: AST_TAG "fprintf" (c[8134].s)  [[typeinfo=0]]
14503: AST_TAG "stderr" (c[8137].s)  [[typeinfo=0]]
14507: AST_Const 8164 8164  [[typeinfo=0]]
14512: AST_TAG "ARGV" (c[8191].s)  [[typeinfo=0]]
14516: AST_TAG "p" (c[8193].s)  [[typeinfo=0]]
14520: AST_Idx [14512] [14516]  [[typeinfo=0]]
14525: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14530: AST_UseParam [14520] [14525]  [[typeinfo=0]]
14535: AST_UseParam [14507] [14530]  [[typeinfo=0]]
14540: AST_UseParam [14503] [14535]  [[typeinfo=0]]
14545: AST_Call [14499] [14540]  [[typeinfo=0]]
14550: AST_TAG "eprompt" (c[8216].s)  [[typeinfo=0]]
14554: AST_AssignTo [14550] [14559]  [[typeinfo=0]]
14559: AST_Const 8220 8220  [[typeinfo=0]]
14564: AST_TAG "strcpy" (c[8246].s)  [[typeinfo=0]]
14568: AST_TAG "Emergency" (c[8248].s)  [[typeinfo=0]]
14572: AST_Const 8251 8251  [[typeinfo=0]]
14577: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14582: AST_UseParam [14572] [14577]  [[typeinfo=0]]
14587: AST_UseParam [14568] [14582]  [[typeinfo=0]]
14592: AST_Call [14564] [14587]  [[typeinfo=0]]
14597: AST_TAG "main_out" (c[8274].s)  [[typeinfo=0]]
14601: AST_AssignTo [14597] [14634]  [[typeinfo=0]]
14606: AST_TAG "fopen" (c[8278].s)  [[typeinfo=0]]
14610: AST_TAG "Emergency" (c[8281].s)  [[typeinfo=0]]
14614: AST_Const 8284 8284  [[typeinfo=0]]
14619: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14624: AST_UseParam [14614] [14619]  [[typeinfo=0]]
14629: AST_UseParam [14610] [14624]  [[typeinfo=0]]
14634: AST_Call [14606] [14629]  [[typeinfo=0]]
14639: AST_TAG "fprintf" (c[8303].s)  [[typeinfo=0]]
14643: AST_TAG "stderr" (c[8306].s)  [[typeinfo=0]]
14647: AST_Const 8327 8327  [[typeinfo=0]]
14652: AST_TAG "Emergency" (c[8330].s)  [[typeinfo=0]]
14656: AST_TAG "ARGV" (c[8333].s)  [[typeinfo=0]]
14660: AST_TAG "p" (c[8335].s)  [[typeinfo=0]]
14664: AST_Idx [14656] [14660]  [[typeinfo=0]]
14669: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14674: AST_UseParam [14664] [14669]  [[typeinfo=0]]
14679: AST_UseParam [14652] [14674]  [[typeinfo=0]]
14684: AST_UseParam [14647] [14679]  [[typeinfo=0]]
14689: AST_UseParam [14643] [14684]  [[typeinfo=0]]
14694: AST_Call [14639] [14689]  [[typeinfo=0]]
14699: AST_SEQ [14601] [14694]  [[typeinfo=0]]
14704: AST_SEQ [14592] [14699]  [[typeinfo=0]]
14709: AST_SEQ [14554] [14704]  [[typeinfo=0]]
14714: AST_SEQ [14545] [14709]  [[typeinfo=0]]
14719: AST_SEQ [-1] [14714]  [[typeinfo=0]]
14724: AST_Scope [14895] -1 2  [[typeinfo=0]]
14730: AST_TAG "p" (c[8377].s)  [[typeinfo=0]]
14734: AST_Const 8382 2  [[typeinfo=0]]
14739: AST_EQ [14730] [14734]  [[typeinfo=0]]
14744: AST_Scope [14821] -1 2  [[typeinfo=0]]
14750: AST_TAG "fprintf" (c[8405].s)  [[typeinfo=0]]
14754: AST_TAG "tty_out" (c[8408].s)  [[typeinfo=0]]
14758: AST_Const 8438 8438  [[typeinfo=0]]
14763: AST_TAG "ARGV" (c[8441].s)  [[typeinfo=0]]
14767: AST_Const 8443 1  [[typeinfo=0]]
14772: AST_Idx [14763] [14767]  [[typeinfo=0]]
14777: AST_TAG "ARGV" (c[8447].s)  [[typeinfo=0]]
14781: AST_Const 8449 2  [[typeinfo=0]]
14786: AST_Idx [14777] [14781]  [[typeinfo=0]]
14791: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14796: AST_UseParam [14786] [14791]  [[typeinfo=0]]
14801: AST_UseParam [14772] [14796]  [[typeinfo=0]]
14806: AST_UseParam [14758] [14801]  [[typeinfo=0]]
14811: AST_UseParam [14754] [14806]  [[typeinfo=0]]
14816: AST_Call [14750] [14811]  [[typeinfo=0]]
14821: AST_SEQ [-1] [14816]  [[typeinfo=0]]
14826: AST_Scope [14884] -1 2  [[typeinfo=0]]
14832: AST_TAG "fprintf" (c[8493].s)  [[typeinfo=0]]
14836: AST_TAG "tty_out" (c[8496].s)  [[typeinfo=0]]
14840: AST_Const 8499 8499  [[typeinfo=0]]
14845: AST_TAG "ARGV" (c[8502].s)  [[typeinfo=0]]
14849: AST_Const 8504 1  [[typeinfo=0]]
14854: AST_Idx [14845] [14849]  [[typeinfo=0]]
14859: AST_UseParam [-1] [-1]  [[typeinfo=0]]
14864: AST_UseParam [14854] [14859]  [[typeinfo=0]]
14869: AST_UseParam [14840] [14864]  [[typeinfo=0]]
14874: AST_UseParam [14836] [14869]  [[typeinfo=0]]
14879: AST_Call [14832] [14874]  [[typeinfo=0]]
14884: AST_SEQ [-1] [14879]  [[typeinfo=0]]
14889: AST_IFTHENELSE [14739] [14744] [14826]  [[typeinfo=0]]
14895: AST_SEQ [-1] [14889]  [[typeinfo=0]]
14900: AST_IFTHENELSE [14488] [14493] [14724]  [[typeinfo=0]]
14906: AST_SEQ [14432] [14900]  [[typeinfo=0]]
14911: AST_SEQ [-1] [14906]  [[typeinfo=0]]
14916: AST_IFTHENELSE [14059] [14064] [14422]  [[typeinfo=0]]
14922: AST_TAG "P" (c[8560].s)  [[typeinfo=0]]
14926: AST_AssignTo [14922] [14931]  [[typeinfo=0]]
14931: AST_TAG "fbeg" (c[8564].s)  [[typeinfo=0]]
14935: AST_Scope [15044] -1 2  [[typeinfo=0]]
14941: AST_TAG "P" (c[8600].s)  [[typeinfo=0]]
14945: AST_TAG "pp" (c[8605].s)  [[typeinfo=0]]
14949: AST_EQ [14941] [14945]  [[typeinfo=0]]
14954: AST_TAG "P" (c[8608].s)  [[typeinfo=0]]
14958: AST_AssignTo [14954] [14963]  [[typeinfo=0]]
14963: AST_TAG "fp" (c[8612].s)  [[typeinfo=0]]
14967: AST_IFTHEN [14949] [14958]  [[typeinfo=0]]
14972: AST_TAG "P" (c[8630].s)  [[typeinfo=0]]
14976: AST_TAG "fend" (c[8635].s)  [[typeinfo=0]]
14980: AST_EQ [14972] [14976]  [[typeinfo=0]]
14985: AST_C_Break -1  [[typeinfo=0]]
14989: AST_IFTHEN [14980] [14985]  [[typeinfo=0]]
14994: AST_TAG "fputc" (c[8653].s)  [[typeinfo=0]]
14998: AST_IndirectThrough [15006]  [[typeinfo=0]]
15002: AST_TAG "P" (c[8657].s)  [[typeinfo=0]]
15006: AST_Post_Inc [15002]  [[typeinfo=0]]
15010: AST_TAG "main_out" (c[8661].s)  [[typeinfo=0]]
15014: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15019: AST_UseParam [15010] [15014]  [[typeinfo=0]]
15024: AST_UseParam [14998] [15019]  [[typeinfo=0]]
15029: AST_Call [14994] [15024]  [[typeinfo=0]]
15034: AST_SEQ [14989] [15029]  [[typeinfo=0]]
15039: AST_SEQ [14967] [15034]  [[typeinfo=0]]
15044: AST_SEQ [-1] [15039]  [[typeinfo=0]]
15049: AST_C_ForLoop [-1] [-1] [-1] [14935] -1 -1 -1  [[typeinfo=0]]
15059: AST_TAG "fclose" (c[8685].s)  [[typeinfo=0]]
15063: AST_TAG "main_out" (c[8688].s)  [[typeinfo=0]]
15067: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15072: AST_UseParam [15063] [15067]  [[typeinfo=0]]
15077: AST_Call [15059] [15072]  [[typeinfo=0]]
15082: AST_TAG "Command_sym" (c[8704].s)  [[typeinfo=0]]
15086: AST_Const 8709 87  [[typeinfo=0]]
15091: AST_EQ [15082] [15086]  [[typeinfo=0]]
15096: AST_Scope [15125] -1 2  [[typeinfo=0]]
15102: AST_TAG "pending_sym" (c[8726].s)  [[typeinfo=0]]
15106: AST_AssignTo [15102] [15111]  [[typeinfo=0]]
15111: AST_Const 8730 10  [[typeinfo=0]]
15116: AST_C_Break -1  [[typeinfo=0]]
15120: AST_SEQ [15106] [15116]  [[typeinfo=0]]
15125: AST_SEQ [-1] [15120]  [[typeinfo=0]]
15130: AST_IFTHEN [15091] [15096]  [[typeinfo=0]]
15135: AST_TAG "log_out" (c[8771].s)  [[typeinfo=0]]
15139: AST_Const 8776 0  [[typeinfo=0]]
15144: AST_NE [15135] [15139]  [[typeinfo=0]]
15149: AST_Scope [15178] -1 2  [[typeinfo=0]]
15155: AST_TAG "fclose" (c[8793].s)  [[typeinfo=0]]
15159: AST_TAG "log_out" (c[8796].s)  [[typeinfo=0]]
15163: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15168: AST_UseParam [15159] [15163]  [[typeinfo=0]]
15173: AST_Call [15155] [15168]  [[typeinfo=0]]
15178: AST_SEQ [-1] [15173]  [[typeinfo=0]]
15183: AST_IFTHEN [15144] [15149]  [[typeinfo=0]]
15188: AST_TAG "free_buffers" (c[8820].s)  [[typeinfo=0]]
15192: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15197: AST_Call [15188] [15192]  [[typeinfo=0]]
15202: AST_TAG "exit" (c[8835].s)  [[typeinfo=0]]
15206: AST_Const 8838 0  [[typeinfo=0]]
15211: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15216: AST_UseParam [15206] [15211]  [[typeinfo=0]]
15221: AST_Call [15202] [15216]  [[typeinfo=0]]
15226: AST_Const 8850 65  [[typeinfo=0]]
15231: AST_TAG "log_out" (c[8865].s)  [[typeinfo=0]]
15235: AST_Const 8870 0  [[typeinfo=0]]
15240: AST_NE [15231] [15235]  [[typeinfo=0]]
15245: AST_Scope [15274] -1 2  [[typeinfo=0]]
15251: AST_TAG "fclose" (c[8887].s)  [[typeinfo=0]]
15255: AST_TAG "log_out" (c[8890].s)  [[typeinfo=0]]
15259: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15264: AST_UseParam [15255] [15259]  [[typeinfo=0]]
15269: AST_Call [15251] [15264]  [[typeinfo=0]]
15274: AST_SEQ [-1] [15269]  [[typeinfo=0]]
15279: AST_IFTHEN [15240] [15245]  [[typeinfo=0]]
15284: AST_Case [15226] -1 -1  [[typeinfo=0]]
15290: AST_SEQ [15284] [15279]  [[typeinfo=0]]
15295: AST_TAG "fprintf" (c[8914].s)  [[typeinfo=0]]
15299: AST_TAG "stderr" (c[8917].s)  [[typeinfo=0]]
15303: AST_Const 8920 8920  [[typeinfo=0]]
15308: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15313: AST_UseParam [15303] [15308]  [[typeinfo=0]]
15318: AST_UseParam [15299] [15313]  [[typeinfo=0]]
15323: AST_Call [15295] [15318]  [[typeinfo=0]]
15328: AST_TAG "free_buffers" (c[8933].s)  [[typeinfo=0]]
15332: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15337: AST_Call [15328] [15332]  [[typeinfo=0]]
15342: AST_TAG "exit" (c[8948].s)  [[typeinfo=0]]
15346: AST_Const 8951 60  [[typeinfo=0]]
15351: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15356: AST_UseParam [15346] [15351]  [[typeinfo=0]]
15361: AST_Call [15342] [15356]  [[typeinfo=0]]
15366: AST_Const 8963 83  [[typeinfo=0]]
15371: AST_TAG "local_echo" (c[8975].s)  [[typeinfo=0]]
15375: AST_AddressOf [15379]  [[typeinfo=0]]
15379: AST_TAG "sec_no" (c[8979].s)  [[typeinfo=0]]
15383: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15388: AST_UseParam [15375] [15383]  [[typeinfo=0]]
15393: AST_Call [15371] [15388]  [[typeinfo=0]]
15398: AST_Case [15366] -1 -1  [[typeinfo=0]]
15404: AST_SEQ [15398] [15393]  [[typeinfo=0]]
15409: AST_TAG "file_wanted" (c[8992].s)  [[typeinfo=0]]
15413: AST_AssignTo [15409] [15428]  [[typeinfo=0]]
15418: AST_Const 8997 0  [[typeinfo=0]]
15423: AST_Const 9000 0  [[typeinfo=0]]
15428: AST_NE [15418] [15423]  [[typeinfo=0]]
15433: AST_TAG "sym_type" (c[9016].s)  [[typeinfo=0]]
15437: AST_TAG "sec_no" (c[9018].s)  [[typeinfo=0]]
15441: AST_Idx [15433] [15437]  [[typeinfo=0]]
15446: AST_TAG "sym_type" (c[9024].s)  [[typeinfo=0]]
15450: AST_Const 9026 59  [[typeinfo=0]]
15455: AST_Idx [15446] [15450]  [[typeinfo=0]]
15460: AST_EQ [15441] [15455]  [[typeinfo=0]]
15465: AST_Scope [15485] -1 2  [[typeinfo=0]]
15471: AST_TAG "sec_no" (c[9031].s)  [[typeinfo=0]]
15475: AST_AssignTo [15471] [15480]  [[typeinfo=0]]
15480: AST_Const 9035 0  [[typeinfo=0]]
15485: AST_SEQ [-1] [15475]  [[typeinfo=0]]
15490: AST_TAG "sec_no" (c[9053].s)  [[typeinfo=0]]
15494: AST_Const 9058 61  [[typeinfo=0]]
15499: AST_EQ [15490] [15494]  [[typeinfo=0]]
15504: AST_Scope [15553] -1 2  [[typeinfo=0]]
15510: AST_TAG "sec_no" (c[9062].s)  [[typeinfo=0]]
15514: AST_AssignTo [15510] [15519]  [[typeinfo=0]]
15519: AST_Const 9066 48  [[typeinfo=0]]
15524: AST_TAG "file_wanted" (c[9069].s)  [[typeinfo=0]]
15528: AST_AssignTo [15524] [15543]  [[typeinfo=0]]
15533: AST_Const 9074 0  [[typeinfo=0]]
15538: AST_Const 9077 0  [[typeinfo=0]]
15543: AST_EQ [15533] [15538]  [[typeinfo=0]]
15548: AST_SEQ [15514] [15528]  [[typeinfo=0]]
15553: AST_SEQ [-1] [15548]  [[typeinfo=0]]
15558: AST_Scope [15980] -1 2  [[typeinfo=0]]
15564: AST_TAG "sec_no" (c[9110].s)  [[typeinfo=0]]
15568: AST_Const 9115 33  [[typeinfo=0]]
15573: AST_EQ [15564] [15568]  [[typeinfo=0]]
15578: AST_Scope [15598] -1 2  [[typeinfo=0]]
15584: AST_TAG "sec_no" (c[9119].s)  [[typeinfo=0]]
15588: AST_AssignTo [15584] [15593]  [[typeinfo=0]]
15593: AST_Const 9123 63  [[typeinfo=0]]
15598: AST_SEQ [-1] [15588]  [[typeinfo=0]]
15603: AST_TAG "sec_no" (c[9144].s)  [[typeinfo=0]]
15607: AST_Const 9149 61  [[typeinfo=0]]
15612: AST_EQ [15603] [15607]  [[typeinfo=0]]
15617: AST_Scope [15666] -1 2  [[typeinfo=0]]
15623: AST_TAG "sec_no" (c[9153].s)  [[typeinfo=0]]
15627: AST_AssignTo [15623] [15632]  [[typeinfo=0]]
15632: AST_Const 9157 48  [[typeinfo=0]]
15637: AST_TAG "file_wanted" (c[9160].s)  [[typeinfo=0]]
15641: AST_AssignTo [15637] [15656]  [[typeinfo=0]]
15646: AST_Const 9165 0  [[typeinfo=0]]
15651: AST_Const 9168 0  [[typeinfo=0]]
15656: AST_EQ [15646] [15651]  [[typeinfo=0]]
15661: AST_SEQ [15627] [15641]  [[typeinfo=0]]
15666: AST_SEQ [-1] [15661]  [[typeinfo=0]]
15671: AST_UBoolNot [15703]  [[typeinfo=0]]
15675: AST_Const 9193 48  [[typeinfo=0]]
15680: AST_TAG "sec_no" (c[9198].s)  [[typeinfo=0]]
15684: AST_LE [15675] [15680]  [[typeinfo=0]]
15689: AST_TAG "sec_no" (c[9205].s)  [[typeinfo=0]]
15693: AST_Const 9210 57  [[typeinfo=0]]
15698: AST_LE [15689] [15693]  [[typeinfo=0]]
15703: AST_BoolAnd [15684] [15698]  [[typeinfo=0]]
15708: AST_Scope [15766] -1 2  [[typeinfo=0]]
15714: AST_TYPE_Atom 0 0  [[typeinfo=0]]
15719: AST_Cast [15752] 15714  [[typeinfo=0]]
15724: AST_TAG "fail_with" (c[9236].s)  [[typeinfo=0]]
15728: AST_Const 9239 9239  [[typeinfo=0]]
15733: AST_TAG "sec_no" (c[9242].s)  [[typeinfo=0]]
15737: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15742: AST_UseParam [15733] [15737]  [[typeinfo=0]]
15747: AST_UseParam [15728] [15742]  [[typeinfo=0]]
15752: AST_Call [15724] [15747]  [[typeinfo=0]]
15757: AST_Return -1  [[typeinfo=0]]
15761: AST_SEQ [15719] [15757]  [[typeinfo=0]]
15766: AST_SEQ [-1] [15761]  [[typeinfo=0]]
15771: AST_IFTHEN [15671] [15708]  [[typeinfo=0]]
15776: AST_IFTHENELSE [15612] [15617] [15771]  [[typeinfo=0]]
15782: AST_IFTHENELSE [15573] [15578] [15776]  [[typeinfo=0]]
15788: AST_TAG "local_echo" (c[9290].s)  [[typeinfo=0]]
15792: AST_AddressOf [15796]  [[typeinfo=0]]
15796: AST_TAG "sym" (c[9294].s)  [[typeinfo=0]]
15800: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15805: AST_UseParam [15792] [15800]  [[typeinfo=0]]
15810: AST_Call [15788] [15805]  [[typeinfo=0]]
15815: AST_TAG "sym" (c[9313].s)  [[typeinfo=0]]
15819: AST_Const 9318 61  [[typeinfo=0]]
15824: AST_EQ [15815] [15819]  [[typeinfo=0]]
15829: AST_Scope [15859] -1 2  [[typeinfo=0]]
15835: AST_TAG "file_wanted" (c[9338].s)  [[typeinfo=0]]
15839: AST_AssignTo [15835] [15854]  [[typeinfo=0]]
15844: AST_Const 9343 0  [[typeinfo=0]]
15849: AST_Const 9346 0  [[typeinfo=0]]
15854: AST_EQ [15844] [15849]  [[typeinfo=0]]
15859: AST_SEQ [-1] [15839]  [[typeinfo=0]]
15864: AST_TAG "sym_type" (c[9369].s)  [[typeinfo=0]]
15868: AST_TAG "sym" (c[9371].s)  [[typeinfo=0]]
15872: AST_Idx [15864] [15868]  [[typeinfo=0]]
15877: AST_TAG "sym_type" (c[9377].s)  [[typeinfo=0]]
15881: AST_Const 9379 59  [[typeinfo=0]]
15886: AST_Idx [15877] [15881]  [[typeinfo=0]]
15891: AST_NE [15872] [15886]  [[typeinfo=0]]
15896: AST_Scope [15954] -1 2  [[typeinfo=0]]
15902: AST_TYPE_Atom 0 0  [[typeinfo=0]]
15907: AST_Cast [15940] 15902  [[typeinfo=0]]
15912: AST_TAG "fail_with" (c[9404].s)  [[typeinfo=0]]
15916: AST_Const 9407 9407  [[typeinfo=0]]
15921: AST_TAG "sym" (c[9410].s)  [[typeinfo=0]]
15925: AST_UseParam [-1] [-1]  [[typeinfo=0]]
15930: AST_UseParam [15921] [15925]  [[typeinfo=0]]
15935: AST_UseParam [15916] [15930]  [[typeinfo=0]]
15940: AST_Call [15912] [15935]  [[typeinfo=0]]
15945: AST_Return -1  [[typeinfo=0]]
15949: AST_SEQ [15907] [15945]  [[typeinfo=0]]
15954: AST_SEQ [-1] [15949]  [[typeinfo=0]]
15959: AST_IFTHEN [15891] [15896]  [[typeinfo=0]]
15964: AST_IFTHENELSE [15824] [15829] [15959]  [[typeinfo=0]]
15970: AST_SEQ [15810] [15964]  [[typeinfo=0]]
15975: AST_SEQ [15782] [15970]  [[typeinfo=0]]
15980: AST_SEQ [-1] [15975]  [[typeinfo=0]]
15985: AST_IFTHENELSE [15499] [15504] [15558]  [[typeinfo=0]]
15991: AST_IFTHENELSE [15460] [15465] [15985]  [[typeinfo=0]]
15997: AST_TAG "file_wanted" (c[9469].s)  [[typeinfo=0]]
16001: AST_Scope [16139] -1 2  [[typeinfo=0]]
16007: AST_TAG "sec_filep" (c[9485].s)  [[typeinfo=0]]
16011: AST_AssignTo [16007] [16016]  [[typeinfo=0]]
16016: AST_AddressOf [16029]  [[typeinfo=0]]
16020: AST_TAG "sec_file" (c[9490].s)  [[typeinfo=0]]
16024: AST_Const 9492 0  [[typeinfo=0]]
16029: AST_Idx [16020] [16024]  [[typeinfo=0]]
16034: AST_Scope [16080] -1 2  [[typeinfo=0]]
16040: AST_TAG "read_sym" (c[9524].s)  [[typeinfo=0]]
16044: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16049: AST_Call [16040] [16044]  [[typeinfo=0]]
16054: AST_IndirectThrough [16062]  [[typeinfo=0]]
16058: AST_TAG "sec_filep" (c[9543].s)  [[typeinfo=0]]
16062: AST_Post_Inc [16058]  [[typeinfo=0]]
16066: AST_AssignTo [16054] [16071]  [[typeinfo=0]]
16071: AST_TAG "sym" (c[9548].s)  [[typeinfo=0]]
16075: AST_SEQ [16049] [16066]  [[typeinfo=0]]
16080: AST_SEQ [-1] [16075]  [[typeinfo=0]]
16085: AST_TAG "sym" (c[9567].s)  [[typeinfo=0]]
16089: AST_Const 9572 10  [[typeinfo=0]]
16094: AST_NE [16085] [16089]  [[typeinfo=0]]
16099: AST_C_DoWhile [16034] [16094] -1 -1 -1  [[typeinfo=0]]
16107: AST_IndirectThrough [16111]  [[typeinfo=0]]
16111: AST_Pre_Dec [16115]  [[typeinfo=0]]
16115: AST_TAG "sec_filep" (c[9590].s)  [[typeinfo=0]]
16119: AST_AssignTo [16107] [16124]  [[typeinfo=0]]
16124: AST_Const 9595 0  [[typeinfo=0]]
16129: AST_SEQ [16099] [16119]  [[typeinfo=0]]
16134: AST_SEQ [16011] [16129]  [[typeinfo=0]]
16139: AST_SEQ [-1] [16134]  [[typeinfo=0]]
16144: AST_IFTHEN [15997] [16001]  [[typeinfo=0]]
16149: AST_TAG "pending_sym" (c[9618].s)  [[typeinfo=0]]
16153: AST_AssignTo [16149] [16158]  [[typeinfo=0]]
16158: AST_Const 9622 10  [[typeinfo=0]]
16163: AST_TAG "note_file" (c[9634].s)  [[typeinfo=0]]
16167: AST_Const 9636 9  [[typeinfo=0]]
16172: AST_Idx [16163] [16167]  [[typeinfo=0]]
16177: AST_AssignTo [16172] [16182]  [[typeinfo=0]]
16182: AST_TAG "note_sec" (c[9641].s)  [[typeinfo=0]]
16186: AST_TAG "in_second" (c[9656].s)  [[typeinfo=0]]
16190: AST_Scope [16875] -1 2  [[typeinfo=0]]
16196: AST_TYPE_Atom 0 0  [[typeinfo=0]]
16201: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
16205: AST_TAG "sec_out" (c[9676].s)  [[typeinfo=0]]
16209: AST_TAG "fopen" (c[9680].s)  [[typeinfo=0]]
16213: AST_TAG "note_file" (c[9683].s)  [[typeinfo=0]]
16217: AST_Const 9686 9686  [[typeinfo=0]]
16222: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16227: AST_UseParam [16217] [16222]  [[typeinfo=0]]
16232: AST_UseParam [16213] [16227]  [[typeinfo=0]]
16237: AST_Call [16209] [16232]  [[typeinfo=0]]
16242: AST_AssignTo [-1] [16237]  [[typeinfo=0]]
16247: AST_Declare [16205] [16196]  [[typeinfo=0]]
16252: AST_SEQ [16247] [-1]  [[typeinfo=0]]
16257: AST_SEQ [16252] [-1]  [[typeinfo=0]]
16262: AST_TAG "strcpy" (c[9707].s)  [[typeinfo=0]]
16266: AST_TAG "com_prompt" (c[9709].s)  [[typeinfo=0]]
16270: AST_Const 9712 9712  [[typeinfo=0]]
16275: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16280: AST_UseParam [16270] [16275]  [[typeinfo=0]]
16285: AST_UseParam [16266] [16280]  [[typeinfo=0]]
16290: AST_Call [16262] [16285]  [[typeinfo=0]]
16295: AST_TAG "sec_out" (c[9732].s)  [[typeinfo=0]]
16299: AST_Const 9737 0  [[typeinfo=0]]
16304: AST_EQ [16295] [16299]  [[typeinfo=0]]
16309: AST_Scope [16368] -1 2  [[typeinfo=0]]
16315: AST_TYPE_Atom 0 0  [[typeinfo=0]]
16320: AST_Cast [16354] 16315  [[typeinfo=0]]
16325: AST_TAG "fail_with" (c[9761].s)  [[typeinfo=0]]
16329: AST_Const 9764 9764  [[typeinfo=0]]
16334: AST_Const 9767 32  [[typeinfo=0]]
16339: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16344: AST_UseParam [16334] [16339]  [[typeinfo=0]]
16349: AST_UseParam [16329] [16344]  [[typeinfo=0]]
16354: AST_Call [16325] [16349]  [[typeinfo=0]]
16359: AST_Return -1  [[typeinfo=0]]
16363: AST_SEQ [16320] [16359]  [[typeinfo=0]]
16368: AST_SEQ [-1] [16363]  [[typeinfo=0]]
16373: AST_IFTHEN [16304] [16309]  [[typeinfo=0]]
16378: AST_TAG "P" (c[9815].s)  [[typeinfo=0]]
16382: AST_AssignTo [16378] [16387]  [[typeinfo=0]]
16387: AST_TAG "fbeg" (c[9819].s)  [[typeinfo=0]]
16391: AST_Scope [16500] -1 2  [[typeinfo=0]]
16397: AST_TAG "P" (c[9861].s)  [[typeinfo=0]]
16401: AST_TAG "pp" (c[9866].s)  [[typeinfo=0]]
16405: AST_EQ [16397] [16401]  [[typeinfo=0]]
16410: AST_TAG "P" (c[9869].s)  [[typeinfo=0]]
16414: AST_AssignTo [16410] [16419]  [[typeinfo=0]]
16419: AST_TAG "fp" (c[9873].s)  [[typeinfo=0]]
16423: AST_IFTHEN [16405] [16414]  [[typeinfo=0]]
16428: AST_TAG "P" (c[9894].s)  [[typeinfo=0]]
16432: AST_TAG "fend" (c[9899].s)  [[typeinfo=0]]
16436: AST_EQ [16428] [16432]  [[typeinfo=0]]
16441: AST_C_Break -1  [[typeinfo=0]]
16445: AST_IFTHEN [16436] [16441]  [[typeinfo=0]]
16450: AST_TAG "fputc" (c[9920].s)  [[typeinfo=0]]
16454: AST_IndirectThrough [16462]  [[typeinfo=0]]
16458: AST_TAG "P" (c[9924].s)  [[typeinfo=0]]
16462: AST_Post_Inc [16458]  [[typeinfo=0]]
16466: AST_TAG "sec_out" (c[9928].s)  [[typeinfo=0]]
16470: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16475: AST_UseParam [16466] [16470]  [[typeinfo=0]]
16480: AST_UseParam [16454] [16475]  [[typeinfo=0]]
16485: AST_Call [16450] [16480]  [[typeinfo=0]]
16490: AST_SEQ [16445] [16485]  [[typeinfo=0]]
16495: AST_SEQ [16423] [16490]  [[typeinfo=0]]
16500: AST_SEQ [-1] [16495]  [[typeinfo=0]]
16505: AST_C_ForLoop [-1] [-1] [-1] [16391] -1 -1 -1  [[typeinfo=0]]
16515: AST_TAG "fclose" (c[9958].s)  [[typeinfo=0]]
16519: AST_TAG "sec_out" (c[9961].s)  [[typeinfo=0]]
16523: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16528: AST_UseParam [16519] [16523]  [[typeinfo=0]]
16533: AST_Call [16515] [16528]  [[typeinfo=0]]
16538: AST_TAG "pp" (c[9977].s)  [[typeinfo=0]]
16542: AST_AssignTo [16538] [16556]  [[typeinfo=0]]
16547: AST_TAG "fbeg" (c[9981].s)  [[typeinfo=0]]
16551: AST_Const 9985 1  [[typeinfo=0]]
16556: AST_Sub [16547] [16551]  [[typeinfo=0]]
16561: AST_TAG "fp" (c[10000].s)  [[typeinfo=0]]
16565: AST_AssignTo [16561] [16579]  [[typeinfo=0]]
16570: AST_TAG "fend" (c[10004].s)  [[typeinfo=0]]
16574: AST_Const 10008 1  [[typeinfo=0]]
16579: AST_Add [16570] [16574]  [[typeinfo=0]]
16584: AST_TAG "fbeg" (c[10023].s)  [[typeinfo=0]]
16588: AST_AssignTo [16584] [16602]  [[typeinfo=0]]
16593: AST_TAG "a" (c[10027].s)  [[typeinfo=0]]
16597: AST_Const 10029 1  [[typeinfo=0]]
16602: AST_Add [16593] [16597]  [[typeinfo=0]]
16607: AST_TAG "fend" (c[10044].s)  [[typeinfo=0]]
16611: AST_AssignTo [16607] [16624]  [[typeinfo=0]]
16616: AST_TAG "a" (c[10048].s)  [[typeinfo=0]]
16620: AST_TAG "buffer_size" (c[10050].s)  [[typeinfo=0]]
16624: AST_Add [16616] [16620]  [[typeinfo=0]]
16629: AST_TAG "lbeg" (c[10065].s)  [[typeinfo=0]]
16633: AST_AssignTo [16629] [16638]  [[typeinfo=0]]
16638: AST_TAG "pp" (c[10069].s)  [[typeinfo=0]]
16642: AST_Scope [16656] -1 2  [[typeinfo=0]]
16648: AST_Pre_Dec [16652]  [[typeinfo=0]]
16652: AST_TAG "lbeg" (c[10089].s)  [[typeinfo=0]]
16656: AST_SEQ [-1] [16648]  [[typeinfo=0]]
16661: AST_IndirectThrough [16665]  [[typeinfo=0]]
16665: AST_TAG "lbeg" (c[10098].s)  [[typeinfo=0]]
16669: AST_Const 10103 10  [[typeinfo=0]]
16674: AST_NE [16661] [16669]  [[typeinfo=0]]
16679: AST_C_DoWhile [16642] [16674] -1 -1 -1  [[typeinfo=0]]
16687: AST_TAG "lbeg" (c[10119].s)  [[typeinfo=0]]
16691: AST_Post_Inc [16687]  [[typeinfo=0]]
16695: AST_TAG "lend" (c[10135].s)  [[typeinfo=0]]
16699: AST_AssignTo [16695] [16704]  [[typeinfo=0]]
16704: AST_TAG "fp" (c[10139].s)  [[typeinfo=0]]
16708: AST_IndirectThrough [16712]  [[typeinfo=0]]
16712: AST_TAG "lend" (c[10158].s)  [[typeinfo=0]]
16716: AST_Const 10163 10  [[typeinfo=0]]
16721: AST_NE [16708] [16716]  [[typeinfo=0]]
16726: AST_TAG "lend" (c[10166].s)  [[typeinfo=0]]
16730: AST_Post_Inc [16726]  [[typeinfo=0]]
16734: AST_C_While [16721] [16730] -1 -1 -1  [[typeinfo=0]]
16742: AST_TAG "in_second" (c[10182].s)  [[typeinfo=0]]
16746: AST_AssignTo [16742] [16761]  [[typeinfo=0]]
16751: AST_Const 10187 0  [[typeinfo=0]]
16756: AST_Const 10190 0  [[typeinfo=0]]
16761: AST_NE [16751] [16756]  [[typeinfo=0]]
16766: AST_TAG "sec_no" (c[10209].s)  [[typeinfo=0]]
16770: AST_Const 10214 0  [[typeinfo=0]]
16775: AST_EQ [16766] [16770]  [[typeinfo=0]]
16780: AST_Scope [16790] -1 2  [[typeinfo=0]]
16786: AST_Return -1  [[typeinfo=0]]
16790: AST_SEQ [-1] [16786]  [[typeinfo=0]]
16795: AST_IFTHEN [16775] [16780]  [[typeinfo=0]]
16800: AST_SEQ [16746] [16795]  [[typeinfo=0]]
16805: AST_SEQ [16734] [16800]  [[typeinfo=0]]
16810: AST_SEQ [16699] [16805]  [[typeinfo=0]]
16815: AST_SEQ [16691] [16810]  [[typeinfo=0]]
16820: AST_SEQ [16679] [16815]  [[typeinfo=0]]
16825: AST_SEQ [16633] [16820]  [[typeinfo=0]]
16830: AST_SEQ [16611] [16825]  [[typeinfo=0]]
16835: AST_SEQ [16588] [16830]  [[typeinfo=0]]
16840: AST_SEQ [16565] [16835]  [[typeinfo=0]]
16845: AST_SEQ [16542] [16840]  [[typeinfo=0]]
16850: AST_SEQ [16533] [16845]  [[typeinfo=0]]
16855: AST_SEQ [16505] [16850]  [[typeinfo=0]]
16860: AST_SEQ [16382] [16855]  [[typeinfo=0]]
16865: AST_SEQ [16373] [16860]  [[typeinfo=0]]
16870: AST_SEQ [16290] [16865]  [[typeinfo=0]]
16875: AST_SEQ [16257] [16870]  [[typeinfo=0]]
16880: AST_IFTHEN [16186] [16190]  [[typeinfo=0]]
16885: AST_TAG "sec_no" (c[10274].s)  [[typeinfo=0]]
16889: AST_Const 10279 0  [[typeinfo=0]]
16894: AST_EQ [16885] [16889]  [[typeinfo=0]]
16899: AST_TAG "sec_no" (c[10282].s)  [[typeinfo=0]]
16903: AST_AssignTo [16899] [16908]  [[typeinfo=0]]
16908: AST_Const 10286 48  [[typeinfo=0]]
16913: AST_IFTHEN [16894] [16903]  [[typeinfo=0]]
16918: AST_TAG "note_file" (c[10298].s)  [[typeinfo=0]]
16922: AST_Const 10300 9  [[typeinfo=0]]
16927: AST_Idx [16918] [16922]  [[typeinfo=0]]
16932: AST_AssignTo [16927] [16937]  [[typeinfo=0]]
16937: AST_TAG "sec_no" (c[10305].s)  [[typeinfo=0]]
16941: AST_TAG "note_sec" (c[10317].s)  [[typeinfo=0]]
16945: AST_AssignTo [16941] [16950]  [[typeinfo=0]]
16950: AST_TAG "sec_no" (c[10321].s)  [[typeinfo=0]]
16954: AST_Scope [17861] -1 2  [[typeinfo=0]]
16960: AST_TYPE_Atom 0 0  [[typeinfo=0]]
16965: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
16969: AST_TAG "sec_in" (c[10350].s)  [[typeinfo=0]]
16973: AST_TAG "file_wanted" (c[10355].s)  [[typeinfo=0]]
16977: AST_TAG "fopen" (c[10388].s)  [[typeinfo=0]]
16981: AST_TAG "sec_file" (c[10391].s)  [[typeinfo=0]]
16985: AST_Const 10394 10394  [[typeinfo=0]]
16990: AST_UseParam [-1] [-1]  [[typeinfo=0]]
16995: AST_UseParam [16985] [16990]  [[typeinfo=0]]
17000: AST_UseParam [16981] [16995]  [[typeinfo=0]]
17005: AST_Call [16977] [17000]  [[typeinfo=0]]
17010: AST_TAG "fopen" (c[10428].s)  [[typeinfo=0]]
17014: AST_TAG "note_file" (c[10431].s)  [[typeinfo=0]]
17018: AST_Const 10434 10434  [[typeinfo=0]]
17023: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17028: AST_UseParam [17018] [17023]  [[typeinfo=0]]
17033: AST_UseParam [17014] [17028]  [[typeinfo=0]]
17038: AST_Call [17010] [17033]  [[typeinfo=0]]
17043: AST_Cond [16973] [17005] [17038]  [[typeinfo=0]]
17049: AST_AssignTo [-1] [17043]  [[typeinfo=0]]
17054: AST_Declare [16969] [16960]  [[typeinfo=0]]
17059: AST_SEQ [17054] [-1]  [[typeinfo=0]]
17064: AST_SEQ [17059] [-1]  [[typeinfo=0]]
17069: AST_TAG "sec_in" (c[10454].s)  [[typeinfo=0]]
17073: AST_Const 10459 0  [[typeinfo=0]]
17078: AST_EQ [17069] [17073]  [[typeinfo=0]]
17083: AST_Scope [17216] -1 2  [[typeinfo=0]]
17089: AST_TAG "file_wanted" (c[10482].s)  [[typeinfo=0]]
17093: AST_Scope [17142] -1 2  [[typeinfo=0]]
17099: AST_TYPE_Atom 0 0  [[typeinfo=0]]
17104: AST_Cast [17137] 17099  [[typeinfo=0]]
17109: AST_TAG "fail_with" (c[10509].s)  [[typeinfo=0]]
17113: AST_Const 10512 10512  [[typeinfo=0]]
17118: AST_TAG "sym" (c[10515].s)  [[typeinfo=0]]
17122: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17127: AST_UseParam [17118] [17122]  [[typeinfo=0]]
17132: AST_UseParam [17113] [17127]  [[typeinfo=0]]
17137: AST_Call [17109] [17132]  [[typeinfo=0]]
17142: AST_SEQ [-1] [17104]  [[typeinfo=0]]
17147: AST_Scope [17196] -1 2  [[typeinfo=0]]
17153: AST_TYPE_Atom 0 0  [[typeinfo=0]]
17158: AST_Cast [17191] 17153  [[typeinfo=0]]
17163: AST_TAG "fail_with" (c[10562].s)  [[typeinfo=0]]
17167: AST_Const 10565 10565  [[typeinfo=0]]
17172: AST_TAG "sym" (c[10568].s)  [[typeinfo=0]]
17176: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17181: AST_UseParam [17172] [17176]  [[typeinfo=0]]
17186: AST_UseParam [17167] [17181]  [[typeinfo=0]]
17191: AST_Call [17163] [17186]  [[typeinfo=0]]
17196: AST_SEQ [-1] [17158]  [[typeinfo=0]]
17201: AST_IFTHENELSE [17089] [17093] [17147]  [[typeinfo=0]]
17207: AST_Return -1  [[typeinfo=0]]
17211: AST_SEQ [17201] [17207]  [[typeinfo=0]]
17216: AST_SEQ [-1] [17211]  [[typeinfo=0]]
17221: AST_IFTHEN [17078] [17083]  [[typeinfo=0]]
17226: AST_TAG "strcpy" (c[10638].s)  [[typeinfo=0]]
17230: AST_TAG "com_prompt" (c[10640].s)  [[typeinfo=0]]
17234: AST_Const 10643 10643  [[typeinfo=0]]
17239: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17244: AST_UseParam [17234] [17239]  [[typeinfo=0]]
17249: AST_UseParam [17230] [17244]  [[typeinfo=0]]
17254: AST_Call [17226] [17249]  [[typeinfo=0]]
17259: AST_TAG "com_prompt" (c[10660].s)  [[typeinfo=0]]
17263: AST_Const 10662 0  [[typeinfo=0]]
17268: AST_Idx [17259] [17263]  [[typeinfo=0]]
17273: AST_AssignTo [17268] [17278]  [[typeinfo=0]]
17278: AST_TAG "sec_no" (c[10667].s)  [[typeinfo=0]]
17282: AST_TAG "in_second" (c[10682].s)  [[typeinfo=0]]
17286: AST_AssignTo [17282] [17301]  [[typeinfo=0]]
17291: AST_Const 10687 0  [[typeinfo=0]]
17296: AST_Const 10690 0  [[typeinfo=0]]
17301: AST_EQ [17291] [17296]  [[typeinfo=0]]
17306: AST_IndirectThrough [17310]  [[typeinfo=0]]
17310: AST_TAG "pp" (c[10707].s)  [[typeinfo=0]]
17314: AST_AssignTo [17306] [17319]  [[typeinfo=0]]
17319: AST_Const 10711 10  [[typeinfo=0]]
17324: AST_TAG "fbeg" (c[10726].s)  [[typeinfo=0]]
17328: AST_AssignTo [17324] [17342]  [[typeinfo=0]]
17333: AST_TAG "pp" (c[10730].s)  [[typeinfo=0]]
17337: AST_Const 10734 1  [[typeinfo=0]]
17342: AST_Add [17333] [17337]  [[typeinfo=0]]
17347: AST_TAG "fend" (c[10749].s)  [[typeinfo=0]]
17351: AST_AssignTo [17347] [17365]  [[typeinfo=0]]
17356: AST_TAG "fp" (c[10753].s)  [[typeinfo=0]]
17360: AST_Const 10757 1  [[typeinfo=0]]
17365: AST_Sub [17356] [17360]  [[typeinfo=0]]
17370: AST_TAG "pp" (c[10772].s)  [[typeinfo=0]]
17374: AST_AssignTo [17370] [17379]  [[typeinfo=0]]
17379: AST_TAG "fbeg" (c[10776].s)  [[typeinfo=0]]
17383: AST_TAG "fp" (c[10791].s)  [[typeinfo=0]]
17387: AST_AssignTo [17383] [17392]  [[typeinfo=0]]
17392: AST_TAG "fend" (c[10795].s)  [[typeinfo=0]]
17396: AST_IndirectThrough [17400]  [[typeinfo=0]]
17400: AST_TAG "fend" (c[10811].s)  [[typeinfo=0]]
17404: AST_AssignTo [17396] [17409]  [[typeinfo=0]]
17409: AST_Const 10815 10  [[typeinfo=0]]
17414: AST_TAG "lbeg" (c[10830].s)  [[typeinfo=0]]
17418: AST_AssignTo [17414] [17423]  [[typeinfo=0]]
17423: AST_TAG "pp" (c[10834].s)  [[typeinfo=0]]
17427: AST_TAG "P" (c[10849].s)  [[typeinfo=0]]
17431: AST_AssignTo [17427] [17436]  [[typeinfo=0]]
17436: AST_TAG "pp" (c[10853].s)  [[typeinfo=0]]
17440: AST_Scope [17646] -1 2  [[typeinfo=0]]
17446: AST_TAG "sym" (c[10892].s)  [[typeinfo=0]]
17450: AST_AssignTo [17446] [17473]  [[typeinfo=0]]
17455: AST_TAG "fgetc" (c[10896].s)  [[typeinfo=0]]
17459: AST_TAG "sec_in" (c[10898].s)  [[typeinfo=0]]
17463: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17468: AST_UseParam [17459] [17463]  [[typeinfo=0]]
17473: AST_Call [17455] [17468]  [[typeinfo=0]]
17478: AST_TAG "sym" (c[10920].s)  [[typeinfo=0]]
17482: AST_TAG "EOF" (c[10925].s)  [[typeinfo=0]]
17486: AST_EQ [17478] [17482]  [[typeinfo=0]]
17491: AST_C_Break -1  [[typeinfo=0]]
17495: AST_IFTHEN [17486] [17491]  [[typeinfo=0]]
17500: AST_IndirectThrough [17508]  [[typeinfo=0]]
17504: AST_TAG "P" (c[10947].s)  [[typeinfo=0]]
17508: AST_Post_Inc [17504]  [[typeinfo=0]]
17512: AST_AssignTo [17500] [17517]  [[typeinfo=0]]
17517: AST_TAG "sym" (c[10952].s)  [[typeinfo=0]]
17521: AST_TAG "P" (c[10973].s)  [[typeinfo=0]]
17525: AST_TAG "fend" (c[10978].s)  [[typeinfo=0]]
17529: AST_EQ [17521] [17525]  [[typeinfo=0]]
17534: AST_Scope [17621] -1 2  [[typeinfo=0]]
17540: AST_TYPE_Atom 0 0  [[typeinfo=0]]
17545: AST_Cast [17579] 17540  [[typeinfo=0]]
17550: AST_TAG "fail_with" (c[11005].s)  [[typeinfo=0]]
17554: AST_Const 11008 11008  [[typeinfo=0]]
17559: AST_Const 11011 32  [[typeinfo=0]]
17564: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17569: AST_UseParam [17559] [17564]  [[typeinfo=0]]
17574: AST_UseParam [17554] [17569]  [[typeinfo=0]]
17579: AST_Call [17550] [17574]  [[typeinfo=0]]
17584: AST_TAG "fclose" (c[11033].s)  [[typeinfo=0]]
17588: AST_TAG "sec_in" (c[11036].s)  [[typeinfo=0]]
17592: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17597: AST_UseParam [17588] [17592]  [[typeinfo=0]]
17602: AST_Call [17584] [17597]  [[typeinfo=0]]
17607: AST_Return -1  [[typeinfo=0]]
17611: AST_SEQ [17602] [17607]  [[typeinfo=0]]
17616: AST_SEQ [17545] [17611]  [[typeinfo=0]]
17621: AST_SEQ [-1] [17616]  [[typeinfo=0]]
17626: AST_IFTHEN [17529] [17534]  [[typeinfo=0]]
17631: AST_SEQ [17512] [17626]  [[typeinfo=0]]
17636: AST_SEQ [17495] [17631]  [[typeinfo=0]]
17641: AST_SEQ [17450] [17636]  [[typeinfo=0]]
17646: AST_SEQ [-1] [17641]  [[typeinfo=0]]
17651: AST_C_ForLoop [-1] [-1] [-1] [17440] -1 -1 -1  [[typeinfo=0]]
17661: AST_TAG "fclose" (c[11104].s)  [[typeinfo=0]]
17665: AST_TAG "sec_in" (c[11107].s)  [[typeinfo=0]]
17669: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17674: AST_UseParam [17665] [17669]  [[typeinfo=0]]
17679: AST_Call [17661] [17674]  [[typeinfo=0]]
17684: AST_TAG "P" (c[11126].s)  [[typeinfo=0]]
17688: AST_TAG "pp" (c[11131].s)  [[typeinfo=0]]
17692: AST_NE [17684] [17688]  [[typeinfo=0]]
17697: AST_IndirectThrough [17701]  [[typeinfo=0]]
17701: AST_Pre_Dec [17705]  [[typeinfo=0]]
17705: AST_TAG "fp" (c[11137].s)  [[typeinfo=0]]
17709: AST_AssignTo [17697] [17714]  [[typeinfo=0]]
17714: AST_IndirectThrough [17718]  [[typeinfo=0]]
17718: AST_Pre_Dec [17722]  [[typeinfo=0]]
17722: AST_TAG "P" (c[11145].s)  [[typeinfo=0]]
17726: AST_C_While [17692] [17709] -1 -1 -1  [[typeinfo=0]]
17734: AST_TAG "lend" (c[11161].s)  [[typeinfo=0]]
17738: AST_AssignTo [17734] [17743]  [[typeinfo=0]]
17743: AST_TAG "fp" (c[11165].s)  [[typeinfo=0]]
17747: AST_IndirectThrough [17751]  [[typeinfo=0]]
17751: AST_TAG "lend" (c[11184].s)  [[typeinfo=0]]
17755: AST_Const 11189 10  [[typeinfo=0]]
17760: AST_NE [17747] [17755]  [[typeinfo=0]]
17765: AST_TAG "lend" (c[11192].s)  [[typeinfo=0]]
17769: AST_Post_Inc [17765]  [[typeinfo=0]]
17773: AST_C_While [17760] [17769] -1 -1 -1  [[typeinfo=0]]
17781: AST_SEQ [17738] [17773]  [[typeinfo=0]]
17786: AST_SEQ [17726] [17781]  [[typeinfo=0]]
17791: AST_SEQ [17679] [17786]  [[typeinfo=0]]
17796: AST_SEQ [17651] [17791]  [[typeinfo=0]]
17801: AST_SEQ [17431] [17796]  [[typeinfo=0]]
17806: AST_SEQ [17418] [17801]  [[typeinfo=0]]
17811: AST_SEQ [17404] [17806]  [[typeinfo=0]]
17816: AST_SEQ [17387] [17811]  [[typeinfo=0]]
17821: AST_SEQ [17374] [17816]  [[typeinfo=0]]
17826: AST_SEQ [17351] [17821]  [[typeinfo=0]]
17831: AST_SEQ [17328] [17826]  [[typeinfo=0]]
17836: AST_SEQ [17314] [17831]  [[typeinfo=0]]
17841: AST_SEQ [17286] [17836]  [[typeinfo=0]]
17846: AST_SEQ [17273] [17841]  [[typeinfo=0]]
17851: AST_SEQ [17254] [17846]  [[typeinfo=0]]
17856: AST_SEQ [17221] [17851]  [[typeinfo=0]]
17861: AST_SEQ [17064] [17856]  [[typeinfo=0]]
17866: AST_C_Break -1  [[typeinfo=0]]
17870: AST_TYPE_Atom 0 0  [[typeinfo=0]]
17875: AST_Cast [17908] 17870  [[typeinfo=0]]
17880: AST_TAG "fail_with" (c[11241].s)  [[typeinfo=0]]
17884: AST_Const 11244 11244  [[typeinfo=0]]
17889: AST_TAG "Command_sym" (c[11247].s)  [[typeinfo=0]]
17893: AST_UseParam [-1] [-1]  [[typeinfo=0]]
17898: AST_UseParam [17889] [17893]  [[typeinfo=0]]
17903: AST_UseParam [17884] [17898]  [[typeinfo=0]]
17908: AST_Call [17880] [17903]  [[typeinfo=0]]
17913: AST_DefaultCase -1 -1  [[typeinfo=0]]
17918: AST_SEQ [17913] [17875]  [[typeinfo=0]]
17923: AST_SEQ [17866] [17918]  [[typeinfo=0]]
17928: AST_SEQ [16954] [17923]  [[typeinfo=0]]
17933: AST_SEQ [16945] [17928]  [[typeinfo=0]]
17938: AST_SEQ [16932] [17933]  [[typeinfo=0]]
17943: AST_SEQ [16913] [17938]  [[typeinfo=0]]
17948: AST_SEQ [16880] [17943]  [[typeinfo=0]]
17953: AST_SEQ [16177] [17948]  [[typeinfo=0]]
17958: AST_SEQ [16153] [17953]  [[typeinfo=0]]
17963: AST_SEQ [16144] [17958]  [[typeinfo=0]]
17968: AST_SEQ [15991] [17963]  [[typeinfo=0]]
17973: AST_SEQ [15413] [17968]  [[typeinfo=0]]
17978: AST_SEQ [15404] [17973]  [[typeinfo=0]]
17983: AST_SEQ [15361] [17978]  [[typeinfo=0]]
17988: AST_SEQ [15337] [17983]  [[typeinfo=0]]
17993: AST_SEQ [15323] [17988]  [[typeinfo=0]]
17998: AST_SEQ [15290] [17993]  [[typeinfo=0]]
18003: AST_SEQ [15221] [17998]  [[typeinfo=0]]
18008: AST_SEQ [15197] [18003]  [[typeinfo=0]]
18013: AST_SEQ [15183] [18008]  [[typeinfo=0]]
18018: AST_SEQ [15130] [18013]  [[typeinfo=0]]
18023: AST_SEQ [15077] [18018]  [[typeinfo=0]]
18028: AST_SEQ [15049] [18023]  [[typeinfo=0]]
18033: AST_SEQ [14926] [18028]  [[typeinfo=0]]
18038: AST_SEQ [14916] [18033]  [[typeinfo=0]]
18043: AST_SEQ [14045] [18038]  [[typeinfo=0]]
18048: AST_SEQ [13368] [18043]  [[typeinfo=0]]
18053: AST_SEQ [13289] [18048]  [[typeinfo=0]]
18058: AST_SEQ [13193] [18053]  [[typeinfo=0]]
18063: AST_SEQ [13188] [18058]  [[typeinfo=0]]
18068: AST_SEQ [13140] [18063]  [[typeinfo=0]]
18073: AST_SEQ [13120] [18068]  [[typeinfo=0]]
18078: AST_SEQ [13106] [18073]  [[typeinfo=0]]
18083: AST_SEQ [13097] [18078]  [[typeinfo=0]]
18088: AST_SEQ [13054] [18083]  [[typeinfo=0]]
18093: AST_SEQ [13034] [18088]  [[typeinfo=0]]
18098: AST_SEQ [13020] [18093]  [[typeinfo=0]]
18103: AST_SEQ [13011] [18098]  [[typeinfo=0]]
18108: AST_SEQ [12978] [18103]  [[typeinfo=0]]
18113: AST_SEQ [12968] [18108]  [[typeinfo=0]]
18118: AST_SEQ [12954] [18113]  [[typeinfo=0]]
18123: AST_SEQ [12945] [18118]  [[typeinfo=0]]
18128: AST_SEQ [12902] [18123]  [[typeinfo=0]]
18133: AST_SEQ [12892] [18128]  [[typeinfo=0]]
18138: AST_SEQ [12868] [18133]  [[typeinfo=0]]
18143: AST_SEQ [12859] [18138]  [[typeinfo=0]]
18148: AST_SEQ [-1] [18143]  [[typeinfo=0]]
18153: AST_Switch [12820] [12824] -1 -1 -1  [[typeinfo=0]]
18161: AST_Scope [18181] -1 2  [[typeinfo=0]]
18167: AST_TAG "read_sym" (c[11263].s)  [[typeinfo=0]]
18171: AST_UseParam [-1] [-1]  [[typeinfo=0]]
18176: AST_Call [18167] [18171]  [[typeinfo=0]]
18181: AST_SEQ [-1] [18176]  [[typeinfo=0]]
18186: AST_TAG "sym_type" (c[11273].s)  [[typeinfo=0]]
18190: AST_TAG "sym" (c[11275].s)  [[typeinfo=0]]
18194: AST_Idx [18186] [18190]  [[typeinfo=0]]
18199: AST_TAG "sym_type" (c[11281].s)  [[typeinfo=0]]
18203: AST_Const 11283 59  [[typeinfo=0]]
18208: AST_Idx [18199] [18203]  [[typeinfo=0]]
18213: AST_NE [18194] [18208]  [[typeinfo=0]]
18218: AST_C_DoWhile [18161] [18213] -1 -1 -1  [[typeinfo=0]]
18226: AST_SEQ [18153] [18218]  [[typeinfo=0]]
18231: AST_SEQ [12815] [18226]  [[typeinfo=0]]
18236: AST_SEQ [12654] [18231]  [[typeinfo=0]]
18241: AST_SEQ [12645] [18236]  [[typeinfo=0]]
18246: AST_ReceiveParam 12403 [12407] [-1]  [[typeinfo=0]]
18252: AST_SEQ [18246] [18241]  [[typeinfo=0]]
18257: AST_DefProc 12394 [12399] [12412] [12418]  [[typeinfo=0]]
18264: AST_TYPE_Atom 0 0  [[typeinfo=0]]
18269: AST_TAG "unchain" (c[11292].s)  [[typeinfo=0]]
18273: AST_Scope [18421] -1 1  [[typeinfo=0]]
18279: AST_Scope [18380] -1 2  [[typeinfo=0]]
18285: AST_TAG "pointer" (c[11312].s)  [[typeinfo=0]]
18289: AST_AssignTo [18285] [18294]  [[typeinfo=0]]
18294: AST_TAG "last_unit" (c[11316].s)  [[typeinfo=0]]
18298: AST_TAG "pointer" (c[11328].s)  [[typeinfo=0]]
18302: AST_Const 11332 0  [[typeinfo=0]]
18307: AST_LT [18298] [18302]  [[typeinfo=0]]
18312: AST_Return -1  [[typeinfo=0]]
18316: AST_IFTHEN [18307] [18312]  [[typeinfo=0]]
18321: AST_TAG "last_unit" (c[11344].s)  [[typeinfo=0]]
18325: AST_AssignTo [18321] [18338]  [[typeinfo=0]]
18330: AST_TAG "link" (c[11348].s)  [[typeinfo=0]]
18334: AST_TAG "pointer" (c[11350].s)  [[typeinfo=0]]
18338: AST_Idx [18330] [18334]  [[typeinfo=0]]
18343: AST_TAG "link" (c[11360].s)  [[typeinfo=0]]
18347: AST_TAG "pointer" (c[11362].s)  [[typeinfo=0]]
18351: AST_Idx [18343] [18347]  [[typeinfo=0]]
18356: AST_AssignTo [18351] [18361]  [[typeinfo=0]]
18361: AST_TAG "this_unit" (c[11367].s)  [[typeinfo=0]]
18365: AST_SEQ [18325] [18356]  [[typeinfo=0]]
18370: AST_SEQ [18316] [18365]  [[typeinfo=0]]
18375: AST_SEQ [18289] [18370]  [[typeinfo=0]]
18380: AST_SEQ [-1] [18375]  [[typeinfo=0]]
18385: AST_TAG "com" (c[11378].s)  [[typeinfo=0]]
18389: AST_TAG "pointer" (c[11380].s)  [[typeinfo=0]]
18393: AST_Idx [18385] [18389]  [[typeinfo=0]]
18398: AST_Const 11386 40  [[typeinfo=0]]
18403: AST_NE [18393] [18398]  [[typeinfo=0]]
18408: AST_C_DoWhile [18279] [18403] -1 -1 -1  [[typeinfo=0]]
18416: AST_SEQ [-1] [18408]  [[typeinfo=0]]
18421: AST_SEQ [-1] [18416]  [[typeinfo=0]]
18426: AST_DefProc 18264 [18269] [-1] [18273]  [[typeinfo=0]]
18433: AST_TYPE_Atom 0 0  [[typeinfo=0]]
18438: AST_TAG "stack" (c[11394].s)  [[typeinfo=0]]
18442: AST_Scope [18569] -1 1  [[typeinfo=0]]
18448: AST_TAG "com" (c[11404].s)  [[typeinfo=0]]
18452: AST_TAG "this_unit" (c[11406].s)  [[typeinfo=0]]
18456: AST_Idx [18448] [18452]  [[typeinfo=0]]
18461: AST_AssignTo [18456] [18466]  [[typeinfo=0]]
18466: AST_TAG "command" (c[11411].s)  [[typeinfo=0]]
18470: AST_TAG "link" (c[11417].s)  [[typeinfo=0]]
18474: AST_TAG "this_unit" (c[11419].s)  [[typeinfo=0]]
18478: AST_Idx [18470] [18474]  [[typeinfo=0]]
18483: AST_AssignTo [18478] [18488]  [[typeinfo=0]]
18488: AST_TAG "pointer" (c[11424].s)  [[typeinfo=0]]
18492: AST_TAG "num" (c[11430].s)  [[typeinfo=0]]
18496: AST_TAG "this_unit" (c[11432].s)  [[typeinfo=0]]
18500: AST_Idx [18492] [18496]  [[typeinfo=0]]
18505: AST_AssignTo [18500] [18510]  [[typeinfo=0]]
18510: AST_TAG "repeat_count" (c[11437].s)  [[typeinfo=0]]
18514: AST_TAG "lim" (c[11443].s)  [[typeinfo=0]]
18518: AST_TAG "this_unit" (c[11445].s)  [[typeinfo=0]]
18522: AST_Idx [18514] [18518]  [[typeinfo=0]]
18527: AST_AssignTo [18522] [18532]  [[typeinfo=0]]
18532: AST_TAG "limit" (c[11450].s)  [[typeinfo=0]]
18536: AST_TAG "this_unit" (c[11456].s)  [[typeinfo=0]]
18540: AST_Post_Inc [18536]  [[typeinfo=0]]
18544: AST_SEQ [18527] [18540]  [[typeinfo=0]]
18549: AST_SEQ [18505] [18544]  [[typeinfo=0]]
18554: AST_SEQ [18483] [18549]  [[typeinfo=0]]
18559: AST_SEQ [18461] [18554]  [[typeinfo=0]]
18564: AST_SEQ [-1] [18559]  [[typeinfo=0]]
18569: AST_SEQ [-1] [18564]  [[typeinfo=0]]
18574: AST_DefProc 18433 [18438] [-1] [18442]  [[typeinfo=0]]
18581: AST_TYPE_Atom 0 0  [[typeinfo=0]]
18586: AST_TAG "execute_command" (c[11464].s)  [[typeinfo=0]]
18590: AST_Scope [25491] -1 1  [[typeinfo=0]]
18596: AST_TYPE_Atom 0 1  [[typeinfo=0]]
18601: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
18605: AST_TAG "i" (c[11477].s)  [[typeinfo=0]]
18609: AST_Declare [18605] [18596]  [[typeinfo=0]]
18614: AST_SEQ [18609] [-1]  [[typeinfo=0]]
18619: AST_TYPE_Atom 0 4  [[typeinfo=0]]
18624: AST_TAG "sym" (c[11485].s)  [[typeinfo=0]]
18628: AST_Declare [18624] [18619]  [[typeinfo=0]]
18633: AST_SEQ [18628] [-1]  [[typeinfo=0]]
18638: AST_SEQ [18633] [-1]  [[typeinfo=0]]
18643: AST_SEQ [18614] [18638]  [[typeinfo=0]]
18648: AST_TAG "ok" (c[11491].s)  [[typeinfo=0]]
18652: AST_AssignTo [18648] [18667]  [[typeinfo=0]]
18657: AST_Const 11496 0  [[typeinfo=0]]
18662: AST_Const 11499 0  [[typeinfo=0]]
18667: AST_EQ [18657] [18662]  [[typeinfo=0]]
18672: AST_TAG "command" (c[11509].s)  [[typeinfo=0]]
18676: AST_UBitNot [18680]  [[typeinfo=0]]
18680: AST_Const 11515 128  [[typeinfo=0]]
18685: AST_BitAnd [18672] [18676]  [[typeinfo=0]]
18690: AST_Scope [25468] -1 2  [[typeinfo=0]]
18696: AST_Const 11529 112  [[typeinfo=0]]
18701: AST_Const 11540 80  [[typeinfo=0]]
18706: AST_TAG "printed" (c[11552].s)  [[typeinfo=0]]
18710: AST_AssignTo [18706] [18725]  [[typeinfo=0]]
18715: AST_Const 11557 0  [[typeinfo=0]]
18720: AST_Const 11560 0  [[typeinfo=0]]
18725: AST_EQ [18715] [18720]  [[typeinfo=0]]
18730: AST_Case [18701] -1 -1  [[typeinfo=0]]
18736: AST_SEQ [18730] [18710]  [[typeinfo=0]]
18741: AST_Case [18696] -1 -1  [[typeinfo=0]]
18747: AST_SEQ [18741] [18736]  [[typeinfo=0]]
18752: AST_TAG "i" (c[11573].s)  [[typeinfo=0]]
18756: AST_AssignTo [18752] [18761]  [[typeinfo=0]]
18761: AST_TAG "lbeg" (c[11577].s)  [[typeinfo=0]]
18765: AST_Scope [19184] -1 2  [[typeinfo=0]]
18771: AST_TAG "i" (c[11613].s)  [[typeinfo=0]]
18775: AST_TAG "noted" (c[11618].s)  [[typeinfo=0]]
18779: AST_EQ [18771] [18775]  [[typeinfo=0]]
18784: AST_Scope [18879] -1 2  [[typeinfo=0]]
18790: AST_TAG "fprintf" (c[11638].s)  [[typeinfo=0]]
18794: AST_TAG "tty_out" (c[11641].s)  [[typeinfo=0]]
18798: AST_Const 11644 11644  [[typeinfo=0]]
18803: AST_UseParam [-1] [-1]  [[typeinfo=0]]
18808: AST_UseParam [18798] [18803]  [[typeinfo=0]]
18813: AST_UseParam [18794] [18808]  [[typeinfo=0]]
18818: AST_Call [18790] [18813]  [[typeinfo=0]]
18823: AST_TAG "i" (c[11666].s)  [[typeinfo=0]]
18827: AST_TAG "lbeg" (c[11671].s)  [[typeinfo=0]]
18831: AST_EQ [18823] [18827]  [[typeinfo=0]]
18836: AST_TAG "fputc" (c[11674].s)  [[typeinfo=0]]
18840: AST_Const 11677 10  [[typeinfo=0]]
18845: AST_TAG "tty_out" (c[11680].s)  [[typeinfo=0]]
18849: AST_UseParam [-1] [-1]  [[typeinfo=0]]
18854: AST_UseParam [18845] [18849]  [[typeinfo=0]]
18859: AST_UseParam [18840] [18854]  [[typeinfo=0]]
18864: AST_Call [18836] [18859]  [[typeinfo=0]]
18869: AST_IFTHEN [18831] [18864]  [[typeinfo=0]]
18874: AST_SEQ [18818] [18869]  [[typeinfo=0]]
18879: AST_SEQ [-1] [18874]  [[typeinfo=0]]
18884: AST_IFTHEN [18779] [18784]  [[typeinfo=0]]
18889: AST_TAG "i" (c[11713].s)  [[typeinfo=0]]
18893: AST_TAG "pp" (c[11718].s)  [[typeinfo=0]]
18897: AST_EQ [18889] [18893]  [[typeinfo=0]]
18902: AST_Scope [18977] -1 2  [[typeinfo=0]]
18908: AST_TAG "i" (c[11741].s)  [[typeinfo=0]]
18912: AST_TAG "lbeg" (c[11746].s)  [[typeinfo=0]]
18916: AST_NE [18908] [18912]  [[typeinfo=0]]
18921: AST_TAG "fputc" (c[11749].s)  [[typeinfo=0]]
18925: AST_Const 11752 94  [[typeinfo=0]]
18930: AST_TAG "tty_out" (c[11755].s)  [[typeinfo=0]]
18934: AST_UseParam [-1] [-1]  [[typeinfo=0]]
18939: AST_UseParam [18930] [18934]  [[typeinfo=0]]
18944: AST_UseParam [18925] [18939]  [[typeinfo=0]]
18949: AST_Call [18921] [18944]  [[typeinfo=0]]
18954: AST_IFTHEN [18916] [18949]  [[typeinfo=0]]
18959: AST_TAG "i" (c[11774].s)  [[typeinfo=0]]
18963: AST_AssignTo [18959] [18968]  [[typeinfo=0]]
18968: AST_TAG "fp" (c[11778].s)  [[typeinfo=0]]
18972: AST_SEQ [18954] [18963]  [[typeinfo=0]]
18977: AST_SEQ [-1] [18972]  [[typeinfo=0]]
18982: AST_IFTHEN [18897] [18902]  [[typeinfo=0]]
18987: AST_TAG "i" (c[11810].s)  [[typeinfo=0]]
18991: AST_TAG "lend" (c[11815].s)  [[typeinfo=0]]
18995: AST_EQ [18987] [18991]  [[typeinfo=0]]
19000: AST_C_Break -1  [[typeinfo=0]]
19004: AST_IFTHEN [18995] [19000]  [[typeinfo=0]]
19009: AST_TAG "sym" (c[11833].s)  [[typeinfo=0]]
19013: AST_AssignTo [19009] [19035]  [[typeinfo=0]]
19018: AST_IndirectThrough [19026]  [[typeinfo=0]]
19022: AST_TAG "i" (c[11839].s)  [[typeinfo=0]]
19026: AST_Post_Inc [19022]  [[typeinfo=0]]
19030: AST_Const 11843 255  [[typeinfo=0]]
19035: AST_BitAnd [19018] [19030]  [[typeinfo=0]]
19040: AST_TAG "sym" (c[11862].s)  [[typeinfo=0]]
19044: AST_Const 11866 32  [[typeinfo=0]]
19049: AST_LT [19040] [19044]  [[typeinfo=0]]
19054: AST_TAG "sym" (c[11873].s)  [[typeinfo=0]]
19058: AST_Const 11878 127  [[typeinfo=0]]
19063: AST_GE [19054] [19058]  [[typeinfo=0]]
19068: AST_BoolOr [19049] [19063]  [[typeinfo=0]]
19073: AST_Scope [19121] -1 2  [[typeinfo=0]]
19079: AST_TAG "fprintf" (c[11899].s)  [[typeinfo=0]]
19083: AST_TAG "tty_out" (c[11902].s)  [[typeinfo=0]]
19087: AST_Const 11905 11905  [[typeinfo=0]]
19092: AST_TAG "sym" (c[11908].s)  [[typeinfo=0]]
19096: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19101: AST_UseParam [19092] [19096]  [[typeinfo=0]]
19106: AST_UseParam [19087] [19101]  [[typeinfo=0]]
19111: AST_UseParam [19083] [19106]  [[typeinfo=0]]
19116: AST_Call [19079] [19111]  [[typeinfo=0]]
19121: AST_SEQ [-1] [19116]  [[typeinfo=0]]
19126: AST_TAG "fputc" (c[11928].s)  [[typeinfo=0]]
19130: AST_TAG "sym" (c[11931].s)  [[typeinfo=0]]
19134: AST_TAG "tty_out" (c[11934].s)  [[typeinfo=0]]
19138: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19143: AST_UseParam [19134] [19138]  [[typeinfo=0]]
19148: AST_UseParam [19130] [19143]  [[typeinfo=0]]
19153: AST_Call [19126] [19148]  [[typeinfo=0]]
19158: AST_IFTHENELSE [19068] [19073] [19153]  [[typeinfo=0]]
19164: AST_SEQ [19013] [19158]  [[typeinfo=0]]
19169: AST_SEQ [19004] [19164]  [[typeinfo=0]]
19174: AST_SEQ [18982] [19169]  [[typeinfo=0]]
19179: AST_SEQ [18884] [19174]  [[typeinfo=0]]
19184: AST_SEQ [-1] [19179]  [[typeinfo=0]]
19189: AST_C_ForLoop [-1] [-1] [-1] [18765] -1 -1 -1  [[typeinfo=0]]
19199: AST_TAG "i" (c[11961].s)  [[typeinfo=0]]
19203: AST_TAG "fend" (c[11966].s)  [[typeinfo=0]]
19207: AST_EQ [19199] [19203]  [[typeinfo=0]]
19212: AST_TAG "fprintf" (c[11969].s)  [[typeinfo=0]]
19216: AST_TAG "tty_out" (c[11972].s)  [[typeinfo=0]]
19220: AST_Const 11975 11975  [[typeinfo=0]]
19225: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19230: AST_UseParam [19220] [19225]  [[typeinfo=0]]
19235: AST_UseParam [19216] [19230]  [[typeinfo=0]]
19240: AST_Call [19212] [19235]  [[typeinfo=0]]
19245: AST_IFTHEN [19207] [19240]  [[typeinfo=0]]
19250: AST_TAG "fputc" (c[11988].s)  [[typeinfo=0]]
19254: AST_Const 11991 10  [[typeinfo=0]]
19259: AST_TAG "tty_out" (c[11994].s)  [[typeinfo=0]]
19263: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19268: AST_UseParam [19259] [19263]  [[typeinfo=0]]
19273: AST_UseParam [19254] [19268]  [[typeinfo=0]]
19278: AST_Call [19250] [19273]  [[typeinfo=0]]
19283: AST_TAG "repeat_count" (c[12010].s)  [[typeinfo=0]]
19287: AST_Const 12015 1  [[typeinfo=0]]
19292: AST_EQ [19283] [19287]  [[typeinfo=0]]
19297: AST_Return -1  [[typeinfo=0]]
19301: AST_IFTHEN [19292] [19297]  [[typeinfo=0]]
19306: AST_TAG "command" (c[12034].s)  [[typeinfo=0]]
19310: AST_Const 12039 97  [[typeinfo=0]]
19315: AST_Const 12041 65  [[typeinfo=0]]
19320: AST_Sub [19310] [19315]  [[typeinfo=0]]
19325: AST_BitAnd [19306] [19320]  [[typeinfo=0]]
19330: AST_Const 12048 0  [[typeinfo=0]]
19335: AST_NE [19325] [19330]  [[typeinfo=0]]
19340: AST_Scope [19379] -1 2  [[typeinfo=0]]
19346: AST_TAG "move_back" (c[12065].s)  [[typeinfo=0]]
19350: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19355: AST_Call [19346] [19350]  [[typeinfo=0]]
19360: AST_TAG "left_star" (c[12071].s)  [[typeinfo=0]]
19364: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19369: AST_Call [19360] [19364]  [[typeinfo=0]]
19374: AST_SEQ [19355] [19369]  [[typeinfo=0]]
19379: AST_SEQ [-1] [19374]  [[typeinfo=0]]
19384: AST_Scope [19404] -1 2  [[typeinfo=0]]
19390: AST_TAG "move" (c[12103].s)  [[typeinfo=0]]
19394: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19399: AST_Call [19390] [19394]  [[typeinfo=0]]
19404: AST_SEQ [-1] [19399]  [[typeinfo=0]]
19409: AST_IFTHENELSE [19335] [19340] [19384]  [[typeinfo=0]]
19415: AST_Return -1  [[typeinfo=0]]
19419: AST_Const 12140 103  [[typeinfo=0]]
19424: AST_Const 12151 71  [[typeinfo=0]]
19429: AST_TAG "local_echo" (c[12163].s)  [[typeinfo=0]]
19433: AST_AddressOf [19437]  [[typeinfo=0]]
19437: AST_TAG "sym" (c[12167].s)  [[typeinfo=0]]
19441: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19446: AST_UseParam [19433] [19441]  [[typeinfo=0]]
19451: AST_Call [19429] [19446]  [[typeinfo=0]]
19456: AST_Case [19424] -1 -1  [[typeinfo=0]]
19462: AST_SEQ [19456] [19451]  [[typeinfo=0]]
19467: AST_Case [19419] -1 -1  [[typeinfo=0]]
19473: AST_SEQ [19467] [19462]  [[typeinfo=0]]
19478: AST_TAG "sym" (c[12183].s)  [[typeinfo=0]]
19482: AST_Const 12188 58  [[typeinfo=0]]
19487: AST_EQ [19478] [19482]  [[typeinfo=0]]
19492: AST_Scope [19629] -1 2  [[typeinfo=0]]
19498: AST_TAG "local_echo" (c[12205].s)  [[typeinfo=0]]
19502: AST_AddressOf [19506]  [[typeinfo=0]]
19506: AST_TAG "sym" (c[12209].s)  [[typeinfo=0]]
19510: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19515: AST_UseParam [19502] [19510]  [[typeinfo=0]]
19520: AST_Call [19498] [19515]  [[typeinfo=0]]
19525: AST_TAG "pending_sym" (c[12225].s)  [[typeinfo=0]]
19529: AST_AssignTo [19525] [19534]  [[typeinfo=0]]
19534: AST_TAG "sym" (c[12229].s)  [[typeinfo=0]]
19538: AST_TAG "sym" (c[12247].s)  [[typeinfo=0]]
19542: AST_Const 12252 10  [[typeinfo=0]]
19547: AST_NE [19538] [19542]  [[typeinfo=0]]
19552: AST_TAG "printed" (c[12270].s)  [[typeinfo=0]]
19556: AST_AssignTo [19552] [19571]  [[typeinfo=0]]
19561: AST_Const 12275 0  [[typeinfo=0]]
19566: AST_Const 12278 0  [[typeinfo=0]]
19571: AST_EQ [19561] [19566]  [[typeinfo=0]]
19576: AST_IFTHEN [19547] [19556]  [[typeinfo=0]]
19581: AST_TAG "ok" (c[12294].s)  [[typeinfo=0]]
19585: AST_AssignTo [19581] [19600]  [[typeinfo=0]]
19590: AST_Const 12299 0  [[typeinfo=0]]
19595: AST_Const 12302 0  [[typeinfo=0]]
19600: AST_NE [19590] [19595]  [[typeinfo=0]]
19605: AST_Return -1  [[typeinfo=0]]
19609: AST_SEQ [19585] [19605]  [[typeinfo=0]]
19614: AST_SEQ [19576] [19609]  [[typeinfo=0]]
19619: AST_SEQ [19529] [19614]  [[typeinfo=0]]
19624: AST_SEQ [19520] [19619]  [[typeinfo=0]]
19629: AST_SEQ [-1] [19624]  [[typeinfo=0]]
19634: AST_IFTHEN [19487] [19492]  [[typeinfo=0]]
19639: AST_TAG "left_star" (c[12341].s)  [[typeinfo=0]]
19643: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19648: AST_Call [19639] [19643]  [[typeinfo=0]]
19653: AST_Scope [19740] -1 2  [[typeinfo=0]]
19659: AST_IndirectThrough [19667]  [[typeinfo=0]]
19663: AST_TAG "pp" (c[12377].s)  [[typeinfo=0]]
19667: AST_Post_Inc [19663]  [[typeinfo=0]]
19671: AST_AssignTo [19659] [19676]  [[typeinfo=0]]
19676: AST_TAG "sym" (c[12382].s)  [[typeinfo=0]]
19680: AST_TAG "sym" (c[12400].s)  [[typeinfo=0]]
19684: AST_Const 12405 10  [[typeinfo=0]]
19689: AST_EQ [19680] [19684]  [[typeinfo=0]]
19694: AST_C_Break -1  [[typeinfo=0]]
19698: AST_IFTHEN [19689] [19694]  [[typeinfo=0]]
19703: AST_TAG "local_echo" (c[12423].s)  [[typeinfo=0]]
19707: AST_AddressOf [19711]  [[typeinfo=0]]
19711: AST_TAG "sym" (c[12427].s)  [[typeinfo=0]]
19715: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19720: AST_UseParam [19707] [19715]  [[typeinfo=0]]
19725: AST_Call [19703] [19720]  [[typeinfo=0]]
19730: AST_SEQ [19698] [19725]  [[typeinfo=0]]
19735: AST_SEQ [19671] [19730]  [[typeinfo=0]]
19740: AST_SEQ [-1] [19735]  [[typeinfo=0]]
19745: AST_C_ForLoop [-1] [-1] [-1] [19653] -1 -1 -1  [[typeinfo=0]]
19755: AST_TAG "lbeg" (c[12451].s)  [[typeinfo=0]]
19759: AST_AssignTo [19755] [19764]  [[typeinfo=0]]
19764: AST_TAG "pp" (c[12455].s)  [[typeinfo=0]]
19768: AST_TAG "command" (c[12471].s)  [[typeinfo=0]]
19772: AST_Const 12476 97  [[typeinfo=0]]
19777: AST_Const 12478 65  [[typeinfo=0]]
19782: AST_Sub [19772] [19777]  [[typeinfo=0]]
19787: AST_BitAnd [19768] [19782]  [[typeinfo=0]]
19792: AST_Const 12485 0  [[typeinfo=0]]
19797: AST_NE [19787] [19792]  [[typeinfo=0]]
19802: AST_Scope [19851] -1 2  [[typeinfo=0]]
19808: AST_TAG "move_back" (c[12502].s)  [[typeinfo=0]]
19812: AST_UseParam [-1] [-1]  [[typeinfo=0]]
19817: AST_Call [19808] [19812]  [[typeinfo=0]]
19822: AST_TAG "printed" (c[12519].s)  [[typeinfo=0]]
19826: AST_AssignTo [19822] [19841]  [[typeinfo=0]]
19831: AST_Const 12524 0  [[typeinfo=0]]
19836: AST_Const 12527 0  [[typeinfo=0]]
19841: AST_EQ [19831] [19836]  [[typeinfo=0]]
19846: AST_SEQ [19817] [19826]  [[typeinfo=0]]
19851: AST_SEQ [-1] [19846]  [[typeinfo=0]]
19856: AST_IFTHEN [19797] [19802]  [[typeinfo=0]]
19861: AST_Return -1  [[typeinfo=0]]
19865: AST_Const 12562 69  [[typeinfo=0]]
19870: AST_TAG "fp" (c[12577].s)  [[typeinfo=0]]
19874: AST_TAG "lend" (c[12582].s)  [[typeinfo=0]]
19878: AST_EQ [19870] [19874]  [[typeinfo=0]]
19883: AST_Scope [19922] -1 2  [[typeinfo=0]]
19889: AST_TAG "ok" (c[12599].s)  [[typeinfo=0]]
19893: AST_AssignTo [19889] [19908]  [[typeinfo=0]]
19898: AST_Const 12604 0  [[typeinfo=0]]
19903: AST_Const 12607 0  [[typeinfo=0]]
19908: AST_NE [19898] [19903]  [[typeinfo=0]]
19913: AST_Return -1  [[typeinfo=0]]
19917: AST_SEQ [19893] [19913]  [[typeinfo=0]]
19922: AST_SEQ [-1] [19917]  [[typeinfo=0]]
19927: AST_IFTHEN [19878] [19883]  [[typeinfo=0]]
19932: AST_Case [19865] -1 -1  [[typeinfo=0]]
19938: AST_SEQ [19932] [19927]  [[typeinfo=0]]
19943: AST_TAG "repeat_count" (c[12649].s)  [[typeinfo=0]]
19947: AST_Const 12654 0  [[typeinfo=0]]
19952: AST_EQ [19943] [19947]  [[typeinfo=0]]
19957: AST_Scope [20005] -1 2  [[typeinfo=0]]
19963: AST_TAG "fp" (c[12671].s)  [[typeinfo=0]]
19967: AST_AssignTo [19963] [19972]  [[typeinfo=0]]
19972: AST_TAG "lend" (c[12675].s)  [[typeinfo=0]]
19976: AST_TAG "ok" (c[12690].s)  [[typeinfo=0]]
19980: AST_AssignTo [19976] [19995]  [[typeinfo=0]]
19985: AST_Const 12695 0  [[typeinfo=0]]
19990: AST_Const 12698 0  [[typeinfo=0]]
19995: AST_NE [19985] [19990]  [[typeinfo=0]]
20000: AST_SEQ [19967] [19980]  [[typeinfo=0]]
20005: AST_SEQ [-1] [20000]  [[typeinfo=0]]
20010: AST_TAG "fp" (c[12715].s)  [[typeinfo=0]]
20014: AST_Post_Inc [20010]  [[typeinfo=0]]
20018: AST_IFTHENELSE [19952] [19957] [20014]  [[typeinfo=0]]
20024: AST_Return -1  [[typeinfo=0]]
20028: AST_Const 12739 101  [[typeinfo=0]]
20033: AST_TAG "pp" (c[12754].s)  [[typeinfo=0]]
20037: AST_TAG "lbeg" (c[12759].s)  [[typeinfo=0]]
20041: AST_EQ [20033] [20037]  [[typeinfo=0]]
20046: AST_Scope [20085] -1 2  [[typeinfo=0]]
20052: AST_TAG "ok" (c[12776].s)  [[typeinfo=0]]
20056: AST_AssignTo [20052] [20071]  [[typeinfo=0]]
20061: AST_Const 12781 0  [[typeinfo=0]]
20066: AST_Const 12784 0  [[typeinfo=0]]
20071: AST_NE [20061] [20066]  [[typeinfo=0]]
20076: AST_Return -1  [[typeinfo=0]]
20080: AST_SEQ [20056] [20076]  [[typeinfo=0]]
20085: AST_SEQ [-1] [20080]  [[typeinfo=0]]
20090: AST_IFTHEN [20041] [20046]  [[typeinfo=0]]
20095: AST_Case [20028] -1 -1  [[typeinfo=0]]
20101: AST_SEQ [20095] [20090]  [[typeinfo=0]]
20106: AST_TAG "repeat_count" (c[12826].s)  [[typeinfo=0]]
20110: AST_Const 12831 0  [[typeinfo=0]]
20115: AST_EQ [20106] [20110]  [[typeinfo=0]]
20120: AST_Scope [20168] -1 2  [[typeinfo=0]]
20126: AST_TAG "pp" (c[12848].s)  [[typeinfo=0]]
20130: AST_AssignTo [20126] [20135]  [[typeinfo=0]]
20135: AST_TAG "lbeg" (c[12852].s)  [[typeinfo=0]]
20139: AST_TAG "ok" (c[12867].s)  [[typeinfo=0]]
20143: AST_AssignTo [20139] [20158]  [[typeinfo=0]]
20148: AST_Const 12872 0  [[typeinfo=0]]
20153: AST_Const 12875 0  [[typeinfo=0]]
20158: AST_NE [20148] [20153]  [[typeinfo=0]]
20163: AST_SEQ [20130] [20143]  [[typeinfo=0]]
20168: AST_SEQ [-1] [20163]  [[typeinfo=0]]
20173: AST_Pre_Dec [20177]  [[typeinfo=0]]
20177: AST_TAG "pp" (c[12893].s)  [[typeinfo=0]]
20181: AST_IFTHENELSE [20115] [20120] [20173]  [[typeinfo=0]]
20187: AST_Return -1  [[typeinfo=0]]
20191: AST_Const 12916 67  [[typeinfo=0]]
20196: AST_TAG "fp" (c[12931].s)  [[typeinfo=0]]
20200: AST_TAG "lend" (c[12936].s)  [[typeinfo=0]]
20204: AST_EQ [20196] [20200]  [[typeinfo=0]]
20209: AST_Scope [20248] -1 2  [[typeinfo=0]]
20215: AST_TAG "ok" (c[12953].s)  [[typeinfo=0]]
20219: AST_AssignTo [20215] [20234]  [[typeinfo=0]]
20224: AST_Const 12958 0  [[typeinfo=0]]
20229: AST_Const 12961 0  [[typeinfo=0]]
20234: AST_NE [20224] [20229]  [[typeinfo=0]]
20239: AST_Return -1  [[typeinfo=0]]
20243: AST_SEQ [20219] [20239]  [[typeinfo=0]]
20248: AST_SEQ [-1] [20243]  [[typeinfo=0]]
20253: AST_IFTHEN [20204] [20209]  [[typeinfo=0]]
20258: AST_Case [20191] -1 -1  [[typeinfo=0]]
20264: AST_SEQ [20258] [20253]  [[typeinfo=0]]
20269: AST_TAG "sym" (c[13000].s)  [[typeinfo=0]]
20273: AST_AssignTo [20269] [20278]  [[typeinfo=0]]
20278: AST_IndirectThrough [20286]  [[typeinfo=0]]
20282: AST_TAG "fp" (c[13005].s)  [[typeinfo=0]]
20286: AST_Post_Inc [20282]  [[typeinfo=0]]
20290: AST_Const 13022 97  [[typeinfo=0]]
20295: AST_TAG "sym" (c[13028].s)  [[typeinfo=0]]
20299: AST_Const 13033 97  [[typeinfo=0]]
20304: AST_Const 13035 65  [[typeinfo=0]]
20309: AST_Sub [20299] [20304]  [[typeinfo=0]]
20314: AST_BitOr [20295] [20309]  [[typeinfo=0]]
20319: AST_LE [20290] [20314]  [[typeinfo=0]]
20324: AST_TAG "sym" (c[13045].s)  [[typeinfo=0]]
20328: AST_Const 13050 97  [[typeinfo=0]]
20333: AST_Const 13052 65  [[typeinfo=0]]
20338: AST_Sub [20328] [20333]  [[typeinfo=0]]
20343: AST_BitOr [20324] [20338]  [[typeinfo=0]]
20348: AST_Const 13059 122  [[typeinfo=0]]
20353: AST_LE [20343] [20348]  [[typeinfo=0]]
20358: AST_BoolAnd [20319] [20353]  [[typeinfo=0]]
20363: AST_Scope [20511] -1 2  [[typeinfo=0]]
20369: AST_TAG "caseflip" (c[13080].s)  [[typeinfo=0]]
20373: AST_Const 13085 0  [[typeinfo=0]]
20378: AST_NE [20369] [20373]  [[typeinfo=0]]
20383: AST_Scope [20430] -1 2  [[typeinfo=0]]
20389: AST_IndirectThrough [20397]  [[typeinfo=0]]
20393: AST_TAG "pp" (c[13106].s)  [[typeinfo=0]]
20397: AST_Post_Inc [20393]  [[typeinfo=0]]
20401: AST_AssignTo [20389] [20425]  [[typeinfo=0]]
20406: AST_TAG "sym" (c[13111].s)  [[typeinfo=0]]
20410: AST_Const 13116 97  [[typeinfo=0]]
20415: AST_Const 13118 65  [[typeinfo=0]]
20420: AST_Sub [20410] [20415]  [[typeinfo=0]]
20425: AST_BitXor [20406] [20420]  [[typeinfo=0]]
20430: AST_SEQ [-1] [20401]  [[typeinfo=0]]
20435: AST_Scope [20500] -1 2  [[typeinfo=0]]
20441: AST_IndirectThrough [20449]  [[typeinfo=0]]
20445: AST_TAG "pp" (c[13156].s)  [[typeinfo=0]]
20449: AST_Post_Inc [20445]  [[typeinfo=0]]
20453: AST_AssignTo [20441] [20495]  [[typeinfo=0]]
20458: AST_TAG "sym" (c[13163].s)  [[typeinfo=0]]
20462: AST_Const 13168 97  [[typeinfo=0]]
20467: AST_Const 13170 65  [[typeinfo=0]]
20472: AST_Sub [20462] [20467]  [[typeinfo=0]]
20477: AST_BitXor [20458] [20472]  [[typeinfo=0]]
20482: AST_TAG "to_lower_case" (c[13176].s)  [[typeinfo=0]]
20486: AST_BitOr [20477] [20482]  [[typeinfo=0]]
20491: AST_TAG "to_upper_case" (c[13181].s)  [[typeinfo=0]]
20495: AST_BitAnd [20486] [20491]  [[typeinfo=0]]
20500: AST_SEQ [-1] [20453]  [[typeinfo=0]]
20505: AST_IFTHENELSE [20378] [20383] [20435]  [[typeinfo=0]]
20511: AST_SEQ [-1] [20505]  [[typeinfo=0]]
20516: AST_Scope [20543] -1 2  [[typeinfo=0]]
20522: AST_IndirectThrough [20530]  [[typeinfo=0]]
20526: AST_TAG "pp" (c[13226].s)  [[typeinfo=0]]
20530: AST_Post_Inc [20526]  [[typeinfo=0]]
20534: AST_AssignTo [20522] [20539]  [[typeinfo=0]]
20539: AST_TAG "sym" (c[13231].s)  [[typeinfo=0]]
20543: AST_SEQ [-1] [20534]  [[typeinfo=0]]
20548: AST_IFTHENELSE [20358] [20363] [20516]  [[typeinfo=0]]
20554: AST_Return -1  [[typeinfo=0]]
20558: AST_Const 13265 99  [[typeinfo=0]]
20563: AST_TAG "pp" (c[13280].s)  [[typeinfo=0]]
20567: AST_TAG "lbeg" (c[13285].s)  [[typeinfo=0]]
20571: AST_EQ [20563] [20567]  [[typeinfo=0]]
20576: AST_Scope [20615] -1 2  [[typeinfo=0]]
20582: AST_TAG "ok" (c[13302].s)  [[typeinfo=0]]
20586: AST_AssignTo [20582] [20601]  [[typeinfo=0]]
20591: AST_Const 13307 0  [[typeinfo=0]]
20596: AST_Const 13310 0  [[typeinfo=0]]
20601: AST_NE [20591] [20596]  [[typeinfo=0]]
20606: AST_Return -1  [[typeinfo=0]]
20610: AST_SEQ [20586] [20606]  [[typeinfo=0]]
20615: AST_SEQ [-1] [20610]  [[typeinfo=0]]
20620: AST_IFTHEN [20571] [20576]  [[typeinfo=0]]
20625: AST_Case [20558] -1 -1  [[typeinfo=0]]
20631: AST_SEQ [20625] [20620]  [[typeinfo=0]]
20636: AST_TAG "sym" (c[13349].s)  [[typeinfo=0]]
20640: AST_AssignTo [20636] [20645]  [[typeinfo=0]]
20645: AST_IndirectThrough [20649]  [[typeinfo=0]]
20649: AST_Pre_Dec [20653]  [[typeinfo=0]]
20653: AST_TAG "pp" (c[13356].s)  [[typeinfo=0]]
20657: AST_Const 13373 97  [[typeinfo=0]]
20662: AST_TAG "sym" (c[13379].s)  [[typeinfo=0]]
20666: AST_Const 13384 97  [[typeinfo=0]]
20671: AST_Const 13386 65  [[typeinfo=0]]
20676: AST_Sub [20666] [20671]  [[typeinfo=0]]
20681: AST_BitOr [20662] [20676]  [[typeinfo=0]]
20686: AST_LE [20657] [20681]  [[typeinfo=0]]
20691: AST_TAG "sym" (c[13396].s)  [[typeinfo=0]]
20695: AST_Const 13401 97  [[typeinfo=0]]
20700: AST_Const 13403 65  [[typeinfo=0]]
20705: AST_Sub [20695] [20700]  [[typeinfo=0]]
20710: AST_BitOr [20691] [20705]  [[typeinfo=0]]
20715: AST_Const 13410 122  [[typeinfo=0]]
20720: AST_LE [20710] [20715]  [[typeinfo=0]]
20725: AST_BoolAnd [20686] [20720]  [[typeinfo=0]]
20730: AST_Scope [20878] -1 2  [[typeinfo=0]]
20736: AST_TAG "caseflip" (c[13431].s)  [[typeinfo=0]]
20740: AST_Const 13436 0  [[typeinfo=0]]
20745: AST_NE [20736] [20740]  [[typeinfo=0]]
20750: AST_Scope [20797] -1 2  [[typeinfo=0]]
20756: AST_IndirectThrough [20760]  [[typeinfo=0]]
20760: AST_Pre_Dec [20764]  [[typeinfo=0]]
20764: AST_TAG "fp" (c[13451].s)  [[typeinfo=0]]
20768: AST_AssignTo [20756] [20792]  [[typeinfo=0]]
20773: AST_TAG "sym" (c[13456].s)  [[typeinfo=0]]
20777: AST_Const 13461 97  [[typeinfo=0]]
20782: AST_Const 13463 65  [[typeinfo=0]]
20787: AST_Sub [20777] [20782]  [[typeinfo=0]]
20792: AST_BitXor [20773] [20787]  [[typeinfo=0]]
20797: AST_SEQ [-1] [20768]  [[typeinfo=0]]
20802: AST_Scope [20867] -1 2  [[typeinfo=0]]
20808: AST_IndirectThrough [20812]  [[typeinfo=0]]
20812: AST_Pre_Dec [20816]  [[typeinfo=0]]
20816: AST_TAG "fp" (c[13495].s)  [[typeinfo=0]]
20820: AST_AssignTo [20808] [20862]  [[typeinfo=0]]
20825: AST_TAG "sym" (c[13502].s)  [[typeinfo=0]]
20829: AST_Const 13507 97  [[typeinfo=0]]
20834: AST_Const 13509 65  [[typeinfo=0]]
20839: AST_Sub [20829] [20834]  [[typeinfo=0]]
20844: AST_BitXor [20825] [20839]  [[typeinfo=0]]
20849: AST_TAG "to_lower_case" (c[13515].s)  [[typeinfo=0]]
20853: AST_BitOr [20844] [20849]  [[typeinfo=0]]
20858: AST_TAG "to_upper_case" (c[13520].s)  [[typeinfo=0]]
20862: AST_BitAnd [20853] [20858]  [[typeinfo=0]]
20867: AST_SEQ [-1] [20820]  [[typeinfo=0]]
20872: AST_IFTHENELSE [20745] [20750] [20802]  [[typeinfo=0]]
20878: AST_SEQ [-1] [20872]  [[typeinfo=0]]
20883: AST_Scope [20910] -1 2  [[typeinfo=0]]
20889: AST_IndirectThrough [20893]  [[typeinfo=0]]
20893: AST_Pre_Dec [20897]  [[typeinfo=0]]
20897: AST_TAG "fp" (c[13559].s)  [[typeinfo=0]]
20901: AST_AssignTo [20889] [20906]  [[typeinfo=0]]
20906: AST_TAG "sym" (c[13564].s)  [[typeinfo=0]]
20910: AST_SEQ [-1] [20901]  [[typeinfo=0]]
20915: AST_IFTHENELSE [20725] [20730] [20883]  [[typeinfo=0]]
20921: AST_Return -1  [[typeinfo=0]]
20925: AST_Const 13598 108  [[typeinfo=0]]
20930: AST_Const 13609 82  [[typeinfo=0]]
20935: AST_TAG "repeat_count" (c[13624].s)  [[typeinfo=0]]
20939: AST_Const 13629 0  [[typeinfo=0]]
20944: AST_EQ [20935] [20939]  [[typeinfo=0]]
20949: AST_Scope [20998] -1 2  [[typeinfo=0]]
20955: AST_TAG "right_star" (c[13646].s)  [[typeinfo=0]]
20959: AST_UseParam [-1] [-1]  [[typeinfo=0]]
20964: AST_Call [20955] [20959]  [[typeinfo=0]]
20969: AST_TAG "ok" (c[13663].s)  [[typeinfo=0]]
20973: AST_AssignTo [20969] [20988]  [[typeinfo=0]]
20978: AST_Const 13668 0  [[typeinfo=0]]
20983: AST_Const 13671 0  [[typeinfo=0]]
20988: AST_NE [20978] [20983]  [[typeinfo=0]]
20993: AST_SEQ [20964] [20973]  [[typeinfo=0]]
20998: AST_SEQ [-1] [20993]  [[typeinfo=0]]
21003: AST_TYPE_Atom 0 0  [[typeinfo=0]]
21008: AST_Cast [21022] 21003  [[typeinfo=0]]
21013: AST_TAG "right" (c[13692].s)  [[typeinfo=0]]
21017: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21022: AST_Call [21013] [21017]  [[typeinfo=0]]
21027: AST_IFTHENELSE [20944] [20949] [21008]  [[typeinfo=0]]
21033: AST_Case [20930] -1 -1  [[typeinfo=0]]
21039: AST_SEQ [21033] [21027]  [[typeinfo=0]]
21044: AST_Case [20925] -1 -1  [[typeinfo=0]]
21050: AST_SEQ [21044] [21039]  [[typeinfo=0]]
21055: AST_TAG "ms_back" (c[13707].s)  [[typeinfo=0]]
21059: AST_AssignTo [21055] [21064]  [[typeinfo=0]]
21064: AST_Const 13711 0  [[typeinfo=0]]
21069: AST_Return -1  [[typeinfo=0]]
21073: AST_Const 13734 114  [[typeinfo=0]]
21078: AST_Const 13745 76  [[typeinfo=0]]
21083: AST_TAG "repeat_count" (c[13760].s)  [[typeinfo=0]]
21087: AST_Const 13765 0  [[typeinfo=0]]
21092: AST_EQ [21083] [21087]  [[typeinfo=0]]
21097: AST_Scope [21146] -1 2  [[typeinfo=0]]
21103: AST_TAG "left_star" (c[13782].s)  [[typeinfo=0]]
21107: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21112: AST_Call [21103] [21107]  [[typeinfo=0]]
21117: AST_TAG "ok" (c[13799].s)  [[typeinfo=0]]
21121: AST_AssignTo [21117] [21136]  [[typeinfo=0]]
21126: AST_Const 13804 0  [[typeinfo=0]]
21131: AST_Const 13807 0  [[typeinfo=0]]
21136: AST_NE [21126] [21131]  [[typeinfo=0]]
21141: AST_SEQ [21112] [21121]  [[typeinfo=0]]
21146: AST_SEQ [-1] [21141]  [[typeinfo=0]]
21151: AST_TYPE_Atom 0 0  [[typeinfo=0]]
21156: AST_Cast [21170] 21151  [[typeinfo=0]]
21161: AST_TAG "left" (c[13828].s)  [[typeinfo=0]]
21165: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21170: AST_Call [21161] [21165]  [[typeinfo=0]]
21175: AST_IFTHENELSE [21092] [21097] [21156]  [[typeinfo=0]]
21181: AST_Case [21078] -1 -1  [[typeinfo=0]]
21187: AST_SEQ [21181] [21175]  [[typeinfo=0]]
21192: AST_Case [21073] -1 -1  [[typeinfo=0]]
21198: AST_SEQ [21192] [21187]  [[typeinfo=0]]
21203: AST_TAG "ms" (c[13843].s)  [[typeinfo=0]]
21207: AST_AssignTo [21203] [21212]  [[typeinfo=0]]
21212: AST_Const 13847 0  [[typeinfo=0]]
21217: AST_Return -1  [[typeinfo=0]]
21221: AST_Const 13870 66  [[typeinfo=0]]
21226: AST_IndirectThrough [21234]  [[typeinfo=0]]
21230: AST_TAG "pp" (c[13883].s)  [[typeinfo=0]]
21234: AST_Post_Inc [21230]  [[typeinfo=0]]
21238: AST_AssignTo [21226] [21243]  [[typeinfo=0]]
21243: AST_Const 13888 10  [[typeinfo=0]]
21248: AST_Case [21221] -1 -1  [[typeinfo=0]]
21254: AST_SEQ [21248] [21238]  [[typeinfo=0]]
21259: AST_TAG "lbeg" (c[13900].s)  [[typeinfo=0]]
21263: AST_AssignTo [21259] [21268]  [[typeinfo=0]]
21268: AST_TAG "pp" (c[13904].s)  [[typeinfo=0]]
21272: AST_Return -1  [[typeinfo=0]]
21276: AST_Const 13927 98  [[typeinfo=0]]
21281: AST_IndirectThrough [21285]  [[typeinfo=0]]
21285: AST_Pre_Dec [21289]  [[typeinfo=0]]
21289: AST_TAG "fp" (c[13934].s)  [[typeinfo=0]]
21293: AST_AssignTo [21281] [21298]  [[typeinfo=0]]
21298: AST_Const 13939 10  [[typeinfo=0]]
21303: AST_Case [21276] -1 -1  [[typeinfo=0]]
21309: AST_SEQ [21303] [21293]  [[typeinfo=0]]
21314: AST_TAG "lend" (c[13951].s)  [[typeinfo=0]]
21318: AST_AssignTo [21314] [21323]  [[typeinfo=0]]
21323: AST_TAG "fp" (c[13955].s)  [[typeinfo=0]]
21327: AST_Return -1  [[typeinfo=0]]
21331: AST_Const 13978 74  [[typeinfo=0]]
21336: AST_TAG "right_star" (c[13990].s)  [[typeinfo=0]]
21340: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21345: AST_Call [21336] [21340]  [[typeinfo=0]]
21350: AST_Case [21331] -1 -1  [[typeinfo=0]]
21356: AST_SEQ [21350] [21345]  [[typeinfo=0]]
21361: AST_TAG "fp" (c[14007].s)  [[typeinfo=0]]
21365: AST_TAG "fend" (c[14012].s)  [[typeinfo=0]]
21369: AST_EQ [21361] [21365]  [[typeinfo=0]]
21374: AST_Scope [21413] -1 2  [[typeinfo=0]]
21380: AST_TAG "ok" (c[14029].s)  [[typeinfo=0]]
21384: AST_AssignTo [21380] [21399]  [[typeinfo=0]]
21389: AST_Const 14034 0  [[typeinfo=0]]
21394: AST_Const 14037 0  [[typeinfo=0]]
21399: AST_NE [21389] [21394]  [[typeinfo=0]]
21404: AST_Return -1  [[typeinfo=0]]
21408: AST_SEQ [21384] [21404]  [[typeinfo=0]]
21413: AST_SEQ [-1] [21408]  [[typeinfo=0]]
21418: AST_IFTHEN [21369] [21374]  [[typeinfo=0]]
21423: AST_TAG "lend" (c[14076].s)  [[typeinfo=0]]
21427: AST_AssignTo [21423] [21432]  [[typeinfo=0]]
21432: AST_Pre_Inc [21436]  [[typeinfo=0]]
21436: AST_TAG "fp" (c[14081].s)  [[typeinfo=0]]
21440: AST_IndirectThrough [21444]  [[typeinfo=0]]
21444: AST_TAG "lend" (c[14097].s)  [[typeinfo=0]]
21448: AST_Const 14102 10  [[typeinfo=0]]
21453: AST_NE [21440] [21448]  [[typeinfo=0]]
21458: AST_TAG "lend" (c[14117].s)  [[typeinfo=0]]
21462: AST_Post_Inc [21458]  [[typeinfo=0]]
21466: AST_C_While [21453] [21462] -1 -1 -1  [[typeinfo=0]]
21474: AST_Return -1  [[typeinfo=0]]
21478: AST_Const 14141 106  [[typeinfo=0]]
21483: AST_TAG "left_star" (c[14153].s)  [[typeinfo=0]]
21487: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21492: AST_Call [21483] [21487]  [[typeinfo=0]]
21497: AST_Case [21478] -1 -1  [[typeinfo=0]]
21503: AST_SEQ [21497] [21492]  [[typeinfo=0]]
21508: AST_TAG "pp" (c[14170].s)  [[typeinfo=0]]
21512: AST_TAG "fbeg" (c[14175].s)  [[typeinfo=0]]
21516: AST_EQ [21508] [21512]  [[typeinfo=0]]
21521: AST_Scope [21560] -1 2  [[typeinfo=0]]
21527: AST_TAG "ok" (c[14192].s)  [[typeinfo=0]]
21531: AST_AssignTo [21527] [21546]  [[typeinfo=0]]
21536: AST_Const 14197 0  [[typeinfo=0]]
21541: AST_Const 14200 0  [[typeinfo=0]]
21546: AST_NE [21536] [21541]  [[typeinfo=0]]
21551: AST_Return -1  [[typeinfo=0]]
21555: AST_SEQ [21531] [21551]  [[typeinfo=0]]
21560: AST_SEQ [-1] [21555]  [[typeinfo=0]]
21565: AST_IFTHEN [21516] [21521]  [[typeinfo=0]]
21570: AST_TAG "lbeg" (c[14239].s)  [[typeinfo=0]]
21574: AST_AssignTo [21570] [21579]  [[typeinfo=0]]
21579: AST_Pre_Dec [21583]  [[typeinfo=0]]
21583: AST_TAG "pp" (c[14244].s)  [[typeinfo=0]]
21587: AST_Scope [21601] -1 2  [[typeinfo=0]]
21593: AST_Pre_Dec [21597]  [[typeinfo=0]]
21597: AST_TAG "lbeg" (c[14261].s)  [[typeinfo=0]]
21601: AST_SEQ [-1] [21593]  [[typeinfo=0]]
21606: AST_IndirectThrough [21610]  [[typeinfo=0]]
21610: AST_TAG "lbeg" (c[14270].s)  [[typeinfo=0]]
21614: AST_Const 14275 10  [[typeinfo=0]]
21619: AST_NE [21606] [21614]  [[typeinfo=0]]
21624: AST_C_DoWhile [21587] [21619] -1 -1 -1  [[typeinfo=0]]
21632: AST_TAG "lbeg" (c[14288].s)  [[typeinfo=0]]
21636: AST_Post_Inc [21632]  [[typeinfo=0]]
21640: AST_Return -1  [[typeinfo=0]]
21644: AST_Const 14312 77  [[typeinfo=0]]
21649: AST_TAG "repeat_count" (c[14327].s)  [[typeinfo=0]]
21653: AST_Const 14332 0  [[typeinfo=0]]
21658: AST_EQ [21649] [21653]  [[typeinfo=0]]
21663: AST_Scope [21712] -1 2  [[typeinfo=0]]
21669: AST_TAG "move_star" (c[14349].s)  [[typeinfo=0]]
21673: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21678: AST_Call [21669] [21673]  [[typeinfo=0]]
21683: AST_TAG "ok" (c[14366].s)  [[typeinfo=0]]
21687: AST_AssignTo [21683] [21702]  [[typeinfo=0]]
21692: AST_Const 14371 0  [[typeinfo=0]]
21697: AST_Const 14374 0  [[typeinfo=0]]
21702: AST_NE [21692] [21697]  [[typeinfo=0]]
21707: AST_SEQ [21678] [21687]  [[typeinfo=0]]
21712: AST_SEQ [-1] [21707]  [[typeinfo=0]]
21717: AST_Scope [21737] -1 2  [[typeinfo=0]]
21723: AST_TAG "move" (c[14405].s)  [[typeinfo=0]]
21727: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21732: AST_Call [21723] [21727]  [[typeinfo=0]]
21737: AST_SEQ [-1] [21732]  [[typeinfo=0]]
21742: AST_IFTHENELSE [21658] [21663] [21717]  [[typeinfo=0]]
21748: AST_Case [21644] -1 -1  [[typeinfo=0]]
21754: AST_SEQ [21748] [21742]  [[typeinfo=0]]
21759: AST_Return -1  [[typeinfo=0]]
21763: AST_Const 14442 109  [[typeinfo=0]]
21768: AST_TAG "repeat_count" (c[14457].s)  [[typeinfo=0]]
21772: AST_Const 14462 0  [[typeinfo=0]]
21777: AST_EQ [21768] [21772]  [[typeinfo=0]]
21782: AST_Scope [21831] -1 2  [[typeinfo=0]]
21788: AST_TAG "move_back_star" (c[14479].s)  [[typeinfo=0]]
21792: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21797: AST_Call [21788] [21792]  [[typeinfo=0]]
21802: AST_TAG "ok" (c[14496].s)  [[typeinfo=0]]
21806: AST_AssignTo [21802] [21821]  [[typeinfo=0]]
21811: AST_Const 14501 0  [[typeinfo=0]]
21816: AST_Const 14504 0  [[typeinfo=0]]
21821: AST_NE [21811] [21816]  [[typeinfo=0]]
21826: AST_SEQ [21797] [21806]  [[typeinfo=0]]
21831: AST_SEQ [-1] [21826]  [[typeinfo=0]]
21836: AST_Scope [21875] -1 2  [[typeinfo=0]]
21842: AST_TAG "move_back" (c[14535].s)  [[typeinfo=0]]
21846: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21851: AST_Call [21842] [21846]  [[typeinfo=0]]
21856: AST_TAG "left_star" (c[14540].s)  [[typeinfo=0]]
21860: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21865: AST_Call [21856] [21860]  [[typeinfo=0]]
21870: AST_SEQ [21851] [21865]  [[typeinfo=0]]
21875: AST_SEQ [-1] [21870]  [[typeinfo=0]]
21880: AST_IFTHENELSE [21777] [21782] [21836]  [[typeinfo=0]]
21886: AST_Case [21763] -1 -1  [[typeinfo=0]]
21892: AST_SEQ [21886] [21880]  [[typeinfo=0]]
21897: AST_Return -1  [[typeinfo=0]]
21901: AST_Const 14576 107  [[typeinfo=0]]
21906: AST_Const 14587 75  [[typeinfo=0]]
21911: AST_TAG "command" (c[14603].s)  [[typeinfo=0]]
21915: AST_Const 14608 97  [[typeinfo=0]]
21920: AST_Const 14610 65  [[typeinfo=0]]
21925: AST_Sub [21915] [21920]  [[typeinfo=0]]
21930: AST_BitAnd [21911] [21925]  [[typeinfo=0]]
21935: AST_Const 14617 0  [[typeinfo=0]]
21940: AST_NE [21930] [21935]  [[typeinfo=0]]
21945: AST_Scope [21987] -1 2  [[typeinfo=0]]
21951: AST_TAG "move_back" (c[14634].s)  [[typeinfo=0]]
21955: AST_UseParam [-1] [-1]  [[typeinfo=0]]
21960: AST_Call [21951] [21955]  [[typeinfo=0]]
21965: AST_UBoolNot [21969]  [[typeinfo=0]]
21969: AST_TAG "ok" (c[14655].s)  [[typeinfo=0]]
21973: AST_Return -1  [[typeinfo=0]]
21977: AST_IFTHEN [21965] [21973]  [[typeinfo=0]]
21982: AST_SEQ [21960] [21977]  [[typeinfo=0]]
21987: AST_SEQ [-1] [21982]  [[typeinfo=0]]
21992: AST_IFTHEN [21940] [21945]  [[typeinfo=0]]
21997: AST_Case [21906] -1 -1  [[typeinfo=0]]
22003: AST_SEQ [21997] [21992]  [[typeinfo=0]]
22008: AST_Case [21901] -1 -1  [[typeinfo=0]]
22014: AST_SEQ [22008] [22003]  [[typeinfo=0]]
22019: AST_TAG "pp" (c[14681].s)  [[typeinfo=0]]
22023: AST_AssignTo [22019] [22028]  [[typeinfo=0]]
22028: AST_TAG "lbeg" (c[14685].s)  [[typeinfo=0]]
22032: AST_TAG "fp" (c[14697].s)  [[typeinfo=0]]
22036: AST_AssignTo [22032] [22041]  [[typeinfo=0]]
22041: AST_TAG "lend" (c[14701].s)  [[typeinfo=0]]
22045: AST_TAG "lend" (c[14716].s)  [[typeinfo=0]]
22049: AST_TAG "fend" (c[14721].s)  [[typeinfo=0]]
22053: AST_EQ [22045] [22049]  [[typeinfo=0]]
22058: AST_Scope [22097] -1 2  [[typeinfo=0]]
22064: AST_TAG "ok" (c[14738].s)  [[typeinfo=0]]
22068: AST_AssignTo [22064] [22083]  [[typeinfo=0]]
22073: AST_Const 14743 0  [[typeinfo=0]]
22078: AST_Const 14746 0  [[typeinfo=0]]
22083: AST_NE [22073] [22078]  [[typeinfo=0]]
22088: AST_Return -1  [[typeinfo=0]]
22092: AST_SEQ [22068] [22088]  [[typeinfo=0]]
22097: AST_SEQ [-1] [22092]  [[typeinfo=0]]
22102: AST_IFTHEN [22053] [22058]  [[typeinfo=0]]
22107: AST_TAG "lend" (c[14785].s)  [[typeinfo=0]]
22111: AST_AssignTo [22107] [22116]  [[typeinfo=0]]
22116: AST_Pre_Inc [22120]  [[typeinfo=0]]
22120: AST_TAG "fp" (c[14790].s)  [[typeinfo=0]]
22124: AST_IndirectThrough [22128]  [[typeinfo=0]]
22128: AST_TAG "lend" (c[14807].s)  [[typeinfo=0]]
22132: AST_Const 14812 10  [[typeinfo=0]]
22137: AST_NE [22124] [22132]  [[typeinfo=0]]
22142: AST_TAG "lend" (c[14815].s)  [[typeinfo=0]]
22146: AST_Post_Inc [22142]  [[typeinfo=0]]
22150: AST_C_While [22137] [22146] -1 -1 -1  [[typeinfo=0]]
22158: AST_Return -1  [[typeinfo=0]]
22162: AST_Const 14839 86  [[typeinfo=0]]
22167: AST_TYPE_Atom 0 0  [[typeinfo=0]]
22172: AST_Cast [22186] 22167  [[typeinfo=0]]
22177: AST_TAG "verify" (c[14855].s)  [[typeinfo=0]]
22181: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22186: AST_Call [22177] [22181]  [[typeinfo=0]]
22191: AST_Case [22162] -1 -1  [[typeinfo=0]]
22197: AST_SEQ [22191] [22172]  [[typeinfo=0]]
22202: AST_Return -1  [[typeinfo=0]]
22206: AST_Const 14881 118  [[typeinfo=0]]
22211: AST_TYPE_Atom 0 0  [[typeinfo=0]]
22216: AST_Cast [22230] 22211  [[typeinfo=0]]
22221: AST_TAG "verify_back" (c[14897].s)  [[typeinfo=0]]
22225: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22230: AST_Call [22221] [22225]  [[typeinfo=0]]
22235: AST_Case [22206] -1 -1  [[typeinfo=0]]
22241: AST_SEQ [22235] [22216]  [[typeinfo=0]]
22246: AST_Return -1  [[typeinfo=0]]
22250: AST_Const 14923 70  [[typeinfo=0]]
22255: AST_TYPE_Atom 0 0  [[typeinfo=0]]
22260: AST_Cast [22274] 22255  [[typeinfo=0]]
22265: AST_TAG "find" (c[14939].s)  [[typeinfo=0]]
22269: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22274: AST_Call [22265] [22269]  [[typeinfo=0]]
22279: AST_Case [22250] -1 -1  [[typeinfo=0]]
22285: AST_SEQ [22279] [22260]  [[typeinfo=0]]
22290: AST_Return -1  [[typeinfo=0]]
22294: AST_Const 14965 102  [[typeinfo=0]]
22299: AST_TYPE_Atom 0 0  [[typeinfo=0]]
22304: AST_Cast [22318] 22299  [[typeinfo=0]]
22309: AST_TAG "find_back" (c[14981].s)  [[typeinfo=0]]
22313: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22318: AST_Call [22309] [22313]  [[typeinfo=0]]
22323: AST_Case [22294] -1 -1  [[typeinfo=0]]
22329: AST_SEQ [22323] [22304]  [[typeinfo=0]]
22334: AST_Return -1  [[typeinfo=0]]
22338: AST_Const 15007 85  [[typeinfo=0]]
22343: AST_UBoolNot [22356]  [[typeinfo=0]]
22347: AST_TAG "find" (c[15023].s)  [[typeinfo=0]]
22351: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22356: AST_Call [22347] [22351]  [[typeinfo=0]]
22361: AST_Return -1  [[typeinfo=0]]
22365: AST_IFTHEN [22343] [22361]  [[typeinfo=0]]
22370: AST_Case [22338] -1 -1  [[typeinfo=0]]
22376: AST_SEQ [22370] [22365]  [[typeinfo=0]]
22381: AST_TAG "pp" (c[15041].s)  [[typeinfo=0]]
22385: AST_AssignTo [22381] [22390]  [[typeinfo=0]]
22390: AST_TAG "pp_before" (c[15045].s)  [[typeinfo=0]]
22394: AST_TAG "lbeg" (c[15057].s)  [[typeinfo=0]]
22398: AST_AssignTo [22394] [22403]  [[typeinfo=0]]
22403: AST_TAG "pp" (c[15061].s)  [[typeinfo=0]]
22407: AST_Scope [22421] -1 2  [[typeinfo=0]]
22413: AST_Pre_Dec [22417]  [[typeinfo=0]]
22417: AST_TAG "lbeg" (c[15078].s)  [[typeinfo=0]]
22421: AST_SEQ [-1] [22413]  [[typeinfo=0]]
22426: AST_IndirectThrough [22430]  [[typeinfo=0]]
22430: AST_TAG "lbeg" (c[15087].s)  [[typeinfo=0]]
22434: AST_Const 15092 10  [[typeinfo=0]]
22439: AST_NE [22426] [22434]  [[typeinfo=0]]
22444: AST_C_DoWhile [22407] [22439] -1 -1 -1  [[typeinfo=0]]
22452: AST_TAG "lbeg" (c[15105].s)  [[typeinfo=0]]
22456: AST_Post_Inc [22452]  [[typeinfo=0]]
22460: AST_Return -1  [[typeinfo=0]]
22464: AST_Const 15129 117  [[typeinfo=0]]
22469: AST_UBoolNot [22482]  [[typeinfo=0]]
22473: AST_TAG "find_back" (c[15145].s)  [[typeinfo=0]]
22477: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22482: AST_Call [22473] [22477]  [[typeinfo=0]]
22487: AST_Return -1  [[typeinfo=0]]
22491: AST_IFTHEN [22469] [22487]  [[typeinfo=0]]
22496: AST_Case [22464] -1 -1  [[typeinfo=0]]
22502: AST_SEQ [22496] [22491]  [[typeinfo=0]]
22507: AST_TAG "fp" (c[15163].s)  [[typeinfo=0]]
22511: AST_AssignTo [22507] [22516]  [[typeinfo=0]]
22516: AST_TAG "fp_before" (c[15167].s)  [[typeinfo=0]]
22520: AST_TAG "lend" (c[15179].s)  [[typeinfo=0]]
22524: AST_AssignTo [22520] [22529]  [[typeinfo=0]]
22529: AST_TAG "fp" (c[15183].s)  [[typeinfo=0]]
22533: AST_IndirectThrough [22537]  [[typeinfo=0]]
22537: AST_TAG "lend" (c[15199].s)  [[typeinfo=0]]
22541: AST_Const 15204 10  [[typeinfo=0]]
22546: AST_NE [22533] [22541]  [[typeinfo=0]]
22551: AST_TAG "lend" (c[15219].s)  [[typeinfo=0]]
22555: AST_Post_Inc [22551]  [[typeinfo=0]]
22559: AST_C_While [22546] [22555] -1 -1 -1  [[typeinfo=0]]
22567: AST_Return -1  [[typeinfo=0]]
22571: AST_Const 15243 68  [[typeinfo=0]]
22576: AST_UBoolNot [22589]  [[typeinfo=0]]
22580: AST_TAG "find" (c[15259].s)  [[typeinfo=0]]
22584: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22589: AST_Call [22580] [22584]  [[typeinfo=0]]
22594: AST_Return -1  [[typeinfo=0]]
22598: AST_IFTHEN [22576] [22594]  [[typeinfo=0]]
22603: AST_Case [22571] -1 -1  [[typeinfo=0]]
22609: AST_SEQ [22603] [22598]  [[typeinfo=0]]
22614: AST_TAG "fp" (c[15277].s)  [[typeinfo=0]]
22618: AST_AssignTo [22614] [22623]  [[typeinfo=0]]
22623: AST_TAG "ml" (c[15281].s)  [[typeinfo=0]]
22627: AST_TAG "ms" (c[15293].s)  [[typeinfo=0]]
22631: AST_AssignTo [22627] [22636]  [[typeinfo=0]]
22636: AST_TAG "fp" (c[15297].s)  [[typeinfo=0]]
22640: AST_Return -1  [[typeinfo=0]]
22644: AST_Const 15320 100  [[typeinfo=0]]
22649: AST_UBoolNot [22662]  [[typeinfo=0]]
22653: AST_TAG "find_back" (c[15336].s)  [[typeinfo=0]]
22657: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22662: AST_Call [22653] [22657]  [[typeinfo=0]]
22667: AST_Return -1  [[typeinfo=0]]
22671: AST_IFTHEN [22649] [22667]  [[typeinfo=0]]
22676: AST_Case [22644] -1 -1  [[typeinfo=0]]
22682: AST_SEQ [22676] [22671]  [[typeinfo=0]]
22687: AST_TAG "pp" (c[15354].s)  [[typeinfo=0]]
22691: AST_AssignTo [22687] [22696]  [[typeinfo=0]]
22696: AST_TAG "ml_back" (c[15358].s)  [[typeinfo=0]]
22700: AST_TAG "ms_back" (c[15370].s)  [[typeinfo=0]]
22704: AST_AssignTo [22700] [22709]  [[typeinfo=0]]
22709: AST_TAG "pp" (c[15374].s)  [[typeinfo=0]]
22713: AST_Return -1  [[typeinfo=0]]
22717: AST_Const 15397 84  [[typeinfo=0]]
22722: AST_UBoolNot [22735]  [[typeinfo=0]]
22726: AST_TAG "find" (c[15413].s)  [[typeinfo=0]]
22730: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22735: AST_Call [22726] [22730]  [[typeinfo=0]]
22740: AST_Return -1  [[typeinfo=0]]
22744: AST_IFTHEN [22722] [22740]  [[typeinfo=0]]
22749: AST_Case [22717] -1 -1  [[typeinfo=0]]
22755: AST_SEQ [22749] [22744]  [[typeinfo=0]]
22760: AST_TAG "fp" (c[15434].s)  [[typeinfo=0]]
22764: AST_TAG "ml" (c[15439].s)  [[typeinfo=0]]
22768: AST_NE [22760] [22764]  [[typeinfo=0]]
22773: AST_IndirectThrough [22781]  [[typeinfo=0]]
22777: AST_TAG "pp" (c[15443].s)  [[typeinfo=0]]
22781: AST_Post_Inc [22777]  [[typeinfo=0]]
22785: AST_AssignTo [22773] [22790]  [[typeinfo=0]]
22790: AST_IndirectThrough [22798]  [[typeinfo=0]]
22794: AST_TAG "fp" (c[15449].s)  [[typeinfo=0]]
22798: AST_Post_Inc [22794]  [[typeinfo=0]]
22802: AST_C_While [22768] [22785] -1 -1 -1  [[typeinfo=0]]
22810: AST_Return -1  [[typeinfo=0]]
22814: AST_Const 15473 116  [[typeinfo=0]]
22819: AST_UBoolNot [22832]  [[typeinfo=0]]
22823: AST_TAG "find_back" (c[15489].s)  [[typeinfo=0]]
22827: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22832: AST_Call [22823] [22827]  [[typeinfo=0]]
22837: AST_Return -1  [[typeinfo=0]]
22841: AST_IFTHEN [22819] [22837]  [[typeinfo=0]]
22846: AST_Case [22814] -1 -1  [[typeinfo=0]]
22852: AST_SEQ [22846] [22841]  [[typeinfo=0]]
22857: AST_TAG "pp" (c[15510].s)  [[typeinfo=0]]
22861: AST_TAG "ml_back" (c[15515].s)  [[typeinfo=0]]
22865: AST_NE [22857] [22861]  [[typeinfo=0]]
22870: AST_IndirectThrough [22874]  [[typeinfo=0]]
22874: AST_Pre_Dec [22878]  [[typeinfo=0]]
22878: AST_TAG "fp" (c[15521].s)  [[typeinfo=0]]
22882: AST_AssignTo [22870] [22887]  [[typeinfo=0]]
22887: AST_IndirectThrough [22891]  [[typeinfo=0]]
22891: AST_Pre_Dec [22895]  [[typeinfo=0]]
22895: AST_TAG "pp" (c[15529].s)  [[typeinfo=0]]
22899: AST_C_While [22865] [22882] -1 -1 -1  [[typeinfo=0]]
22907: AST_Return -1  [[typeinfo=0]]
22911: AST_Const 15553 73  [[typeinfo=0]]
22916: AST_TAG "insert" (c[15565].s)  [[typeinfo=0]]
22920: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22925: AST_Call [22916] [22920]  [[typeinfo=0]]
22930: AST_Case [22911] -1 -1  [[typeinfo=0]]
22936: AST_SEQ [22930] [22925]  [[typeinfo=0]]
22941: AST_Return -1  [[typeinfo=0]]
22945: AST_Const 15591 105  [[typeinfo=0]]
22950: AST_TAG "insert_back" (c[15603].s)  [[typeinfo=0]]
22954: AST_UseParam [-1] [-1]  [[typeinfo=0]]
22959: AST_Call [22950] [22954]  [[typeinfo=0]]
22964: AST_Case [22945] -1 -1  [[typeinfo=0]]
22970: AST_SEQ [22964] [22959]  [[typeinfo=0]]
22975: AST_Return -1  [[typeinfo=0]]
22979: AST_Const 15629 115  [[typeinfo=0]]
22984: AST_Const 15640 83  [[typeinfo=0]]
22989: AST_TAG "fp" (c[15655].s)  [[typeinfo=0]]
22993: AST_TAG "ms" (c[15660].s)  [[typeinfo=0]]
22997: AST_EQ [22989] [22993]  [[typeinfo=0]]
23002: AST_Scope [23021] -1 2  [[typeinfo=0]]
23008: AST_TAG "fp" (c[15677].s)  [[typeinfo=0]]
23012: AST_AssignTo [23008] [23017]  [[typeinfo=0]]
23017: AST_TAG "ml" (c[15681].s)  [[typeinfo=0]]
23021: AST_SEQ [-1] [23012]  [[typeinfo=0]]
23026: AST_TAG "pp" (c[15700].s)  [[typeinfo=0]]
23030: AST_TAG "ms_back" (c[15705].s)  [[typeinfo=0]]
23034: AST_EQ [23026] [23030]  [[typeinfo=0]]
23039: AST_Scope [23058] -1 2  [[typeinfo=0]]
23045: AST_TAG "pp" (c[15722].s)  [[typeinfo=0]]
23049: AST_AssignTo [23045] [23054]  [[typeinfo=0]]
23054: AST_TAG "ml_back" (c[15726].s)  [[typeinfo=0]]
23058: AST_SEQ [-1] [23049]  [[typeinfo=0]]
23063: AST_Scope [23102] -1 2  [[typeinfo=0]]
23069: AST_TAG "ok" (c[15756].s)  [[typeinfo=0]]
23073: AST_AssignTo [23069] [23088]  [[typeinfo=0]]
23078: AST_Const 15761 0  [[typeinfo=0]]
23083: AST_Const 15764 0  [[typeinfo=0]]
23088: AST_NE [23078] [23083]  [[typeinfo=0]]
23093: AST_Return -1  [[typeinfo=0]]
23097: AST_SEQ [23073] [23093]  [[typeinfo=0]]
23102: AST_SEQ [-1] [23097]  [[typeinfo=0]]
23107: AST_IFTHENELSE [23034] [23039] [23063]  [[typeinfo=0]]
23113: AST_IFTHENELSE [22997] [23002] [23107]  [[typeinfo=0]]
23119: AST_Case [22984] -1 -1  [[typeinfo=0]]
23125: AST_SEQ [23119] [23113]  [[typeinfo=0]]
23130: AST_Case [22979] -1 -1  [[typeinfo=0]]
23136: AST_SEQ [23130] [23125]  [[typeinfo=0]]
23141: AST_TAG "command" (c[15807].s)  [[typeinfo=0]]
23145: AST_Const 15812 97  [[typeinfo=0]]
23150: AST_Const 15814 65  [[typeinfo=0]]
23155: AST_Sub [23145] [23150]  [[typeinfo=0]]
23160: AST_BitAnd [23141] [23155]  [[typeinfo=0]]
23165: AST_Const 15821 0  [[typeinfo=0]]
23170: AST_NE [23160] [23165]  [[typeinfo=0]]
23175: AST_Scope [23195] -1 2  [[typeinfo=0]]
23181: AST_TAG "insert_back" (c[15838].s)  [[typeinfo=0]]
23185: AST_UseParam [-1] [-1]  [[typeinfo=0]]
23190: AST_Call [23181] [23185]  [[typeinfo=0]]
23195: AST_SEQ [-1] [23190]  [[typeinfo=0]]
23200: AST_Scope [23220] -1 2  [[typeinfo=0]]
23206: AST_TAG "insert" (c[15871].s)  [[typeinfo=0]]
23210: AST_UseParam [-1] [-1]  [[typeinfo=0]]
23215: AST_Call [23206] [23210]  [[typeinfo=0]]
23220: AST_SEQ [-1] [23215]  [[typeinfo=0]]
23225: AST_IFTHENELSE [23170] [23175] [23200]  [[typeinfo=0]]
23231: AST_Return -1  [[typeinfo=0]]
23235: AST_Const 15908 40  [[typeinfo=0]]
23240: AST_Case [23235] -1 -1  [[typeinfo=0]]
23246: AST_SEQ [23240] [-1]  [[typeinfo=0]]
23251: AST_TAG "num" (c[15931].s)  [[typeinfo=0]]
23255: AST_TAG "pointer" (c[15933].s)  [[typeinfo=0]]
23259: AST_Idx [23251] [23255]  [[typeinfo=0]]
23264: AST_AssignTo [23259] [23269]  [[typeinfo=0]]
23269: AST_TAG "repeat_count" (c[15938].s)  [[typeinfo=0]]
23273: AST_TAG "repeat_count" (c[15950].s)  [[typeinfo=0]]
23277: AST_AssignTo [23273] [23282]  [[typeinfo=0]]
23282: AST_Const 15954 1  [[typeinfo=0]]
23287: AST_Return -1  [[typeinfo=0]]
23291: AST_Const 15988 41  [[typeinfo=0]]
23296: AST_Case [23291] -1 -1  [[typeinfo=0]]
23302: AST_SEQ [23296] [-1]  [[typeinfo=0]]
23307: AST_Pre_Dec [23319]  [[typeinfo=0]]
23311: AST_TAG "num" (c[16013].s)  [[typeinfo=0]]
23315: AST_TAG "this_unit" (c[16015].s)  [[typeinfo=0]]
23319: AST_Idx [23311] [23315]  [[typeinfo=0]]
23324: AST_Const 16033 0  [[typeinfo=0]]
23329: AST_TAG "num" (c[16038].s)  [[typeinfo=0]]
23333: AST_TAG "this_unit" (c[16040].s)  [[typeinfo=0]]
23337: AST_Idx [23329] [23333]  [[typeinfo=0]]
23342: AST_NE [23324] [23337]  [[typeinfo=0]]
23347: AST_TAG "num" (c[16048].s)  [[typeinfo=0]]
23351: AST_TAG "this_unit" (c[16050].s)  [[typeinfo=0]]
23355: AST_Idx [23347] [23351]  [[typeinfo=0]]
23360: AST_TAG "stopper" (c[16056].s)  [[typeinfo=0]]
23364: AST_NE [23355] [23360]  [[typeinfo=0]]
23369: AST_BoolAnd [23342] [23364]  [[typeinfo=0]]
23374: AST_Scope [23398] -1 2  [[typeinfo=0]]
23380: AST_TAG "this_unit" (c[16088].s)  [[typeinfo=0]]
23384: AST_AssignTo [23380] [23389]  [[typeinfo=0]]
23389: AST_TAG "pointer" (c[16092].s)  [[typeinfo=0]]
23393: AST_SEQ [-1] [23384]  [[typeinfo=0]]
23398: AST_SEQ [-1] [23393]  [[typeinfo=0]]
23403: AST_IFTHEN [23369] [23374]  [[typeinfo=0]]
23408: AST_TAG "repeat_count" (c[16115].s)  [[typeinfo=0]]
23412: AST_AssignTo [23408] [23417]  [[typeinfo=0]]
23417: AST_Const 16119 1  [[typeinfo=0]]
23422: AST_Return -1  [[typeinfo=0]]
23426: AST_Const 16153 92  [[typeinfo=0]]
23431: AST_Case [23426] -1 -1  [[typeinfo=0]]
23437: AST_SEQ [23431] [-1]  [[typeinfo=0]]
23442: AST_TAG "ok" (c[16176].s)  [[typeinfo=0]]
23446: AST_AssignTo [23442] [23461]  [[typeinfo=0]]
23451: AST_Const 16181 0  [[typeinfo=0]]
23456: AST_Const 16184 0  [[typeinfo=0]]
23461: AST_NE [23451] [23456]  [[typeinfo=0]]
23466: AST_Return -1  [[typeinfo=0]]
23470: AST_Const 16208 63  [[typeinfo=0]]
23475: AST_Case [23470] -1 -1  [[typeinfo=0]]
23481: AST_SEQ [23475] [-1]  [[typeinfo=0]]
23486: AST_Return -1  [[typeinfo=0]]
23490: AST_Const 16242 44  [[typeinfo=0]]
23495: AST_Case [23490] -1 -1  [[typeinfo=0]]
23501: AST_SEQ [23495] [-1]  [[typeinfo=0]]
23506: AST_TAG "this_unit" (c[16265].s)  [[typeinfo=0]]
23510: AST_AssignTo [23506] [23524]  [[typeinfo=0]]
23515: AST_TAG "pointer" (c[16269].s)  [[typeinfo=0]]
23519: AST_Const 16273 1  [[typeinfo=0]]
23524: AST_Sub [23515] [23519]  [[typeinfo=0]]
23529: AST_Return -1  [[typeinfo=0]]
23533: AST_Const 16307 78  [[typeinfo=0]]
23538: AST_TAG "noted" (c[16319].s)  [[typeinfo=0]]
23542: AST_AssignTo [23538] [23547]  [[typeinfo=0]]
23547: AST_TAG "pp" (c[16323].s)  [[typeinfo=0]]
23551: AST_Case [23533] -1 -1  [[typeinfo=0]]
23557: AST_SEQ [23551] [23542]  [[typeinfo=0]]
23562: AST_TAG "changes" (c[16335].s)  [[typeinfo=0]]
23566: AST_AssignTo [23562] [23579]  [[typeinfo=0]]
23571: AST_TAG "fp" (c[16339].s)  [[typeinfo=0]]
23575: AST_TAG "pp" (c[16341].s)  [[typeinfo=0]]
23579: AST_Sub [23571] [23575]  [[typeinfo=0]]
23584: AST_Return -1  [[typeinfo=0]]
23588: AST_Const 16364 65  [[typeinfo=0]]
23593: AST_TAG "noted" (c[16380].s)  [[typeinfo=0]]
23597: AST_Const 16385 0  [[typeinfo=0]]
23602: AST_EQ [23593] [23597]  [[typeinfo=0]]
23607: AST_TAG "noted" (c[16402].s)  [[typeinfo=0]]
23611: AST_TAG "pp" (c[16407].s)  [[typeinfo=0]]
23615: AST_GE [23607] [23611]  [[typeinfo=0]]
23620: AST_TAG "changes" (c[16424].s)  [[typeinfo=0]]
23624: AST_TAG "fp" (c[16429].s)  [[typeinfo=0]]
23628: AST_TAG "pp" (c[16431].s)  [[typeinfo=0]]
23632: AST_Sub [23624] [23628]  [[typeinfo=0]]
23637: AST_NE [23620] [23632]  [[typeinfo=0]]
23642: AST_BoolOr [23647] [23637]  [[typeinfo=0]]
23647: AST_BoolOr [23602] [23615]  [[typeinfo=0]]
23652: AST_Scope [23691] -1 2  [[typeinfo=0]]
23658: AST_TAG "ok" (c[16449].s)  [[typeinfo=0]]
23662: AST_AssignTo [23658] [23677]  [[typeinfo=0]]
23667: AST_Const 16454 0  [[typeinfo=0]]
23672: AST_Const 16457 0  [[typeinfo=0]]
23677: AST_NE [23667] [23672]  [[typeinfo=0]]
23682: AST_Return -1  [[typeinfo=0]]
23686: AST_SEQ [23662] [23682]  [[typeinfo=0]]
23691: AST_SEQ [-1] [23686]  [[typeinfo=0]]
23696: AST_IFTHEN [23642] [23652]  [[typeinfo=0]]
23701: AST_Case [23588] -1 -1  [[typeinfo=0]]
23707: AST_SEQ [23701] [23696]  [[typeinfo=0]]
23712: AST_TAG "note_file" (c[16496].s)  [[typeinfo=0]]
23716: AST_Const 16498 9  [[typeinfo=0]]
23721: AST_Idx [23712] [23716]  [[typeinfo=0]]
23726: AST_AssignTo [23721] [23749]  [[typeinfo=0]]
23731: AST_TAG "lim" (c[16503].s)  [[typeinfo=0]]
23735: AST_TAG "this_unit" (c[16505].s)  [[typeinfo=0]]
23739: AST_Idx [23731] [23735]  [[typeinfo=0]]
23744: AST_Const 16508 48  [[typeinfo=0]]
23749: AST_Add [23739] [23744]  [[typeinfo=0]]
23754: AST_Scope [24130] -1 2  [[typeinfo=0]]
23760: AST_TYPE_Atom 0 0  [[typeinfo=0]]
23765: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
23769: AST_TAG "note_out" (c[16537].s)  [[typeinfo=0]]
23773: AST_TAG "fopen" (c[16541].s)  [[typeinfo=0]]
23777: AST_TAG "note_file" (c[16544].s)  [[typeinfo=0]]
23781: AST_Const 16547 16547  [[typeinfo=0]]
23786: AST_UseParam [-1] [-1]  [[typeinfo=0]]
23791: AST_UseParam [23781] [23786]  [[typeinfo=0]]
23796: AST_UseParam [23777] [23791]  [[typeinfo=0]]
23801: AST_Call [23773] [23796]  [[typeinfo=0]]
23806: AST_AssignTo [-1] [23801]  [[typeinfo=0]]
23811: AST_Declare [23769] [23760]  [[typeinfo=0]]
23816: AST_SEQ [23811] [-1]  [[typeinfo=0]]
23821: AST_TYPE_Atom 0 1  [[typeinfo=0]]
23826: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
23830: AST_TAG "p" (c[16566].s)  [[typeinfo=0]]
23834: AST_TAG "noted" (c[16570].s)  [[typeinfo=0]]
23838: AST_AssignTo [-1] [23834]  [[typeinfo=0]]
23843: AST_Declare [23830] [23821]  [[typeinfo=0]]
23848: AST_SEQ [23843] [-1]  [[typeinfo=0]]
23853: AST_SEQ [23848] [-1]  [[typeinfo=0]]
23858: AST_SEQ [23816] [23853]  [[typeinfo=0]]
23863: AST_TAG "note_out" (c[16588].s)  [[typeinfo=0]]
23867: AST_Const 16593 0  [[typeinfo=0]]
23872: AST_EQ [23863] [23867]  [[typeinfo=0]]
23877: AST_Scope [23916] -1 2  [[typeinfo=0]]
23883: AST_TAG "ok" (c[16613].s)  [[typeinfo=0]]
23887: AST_AssignTo [23883] [23902]  [[typeinfo=0]]
23892: AST_Const 16618 0  [[typeinfo=0]]
23897: AST_Const 16621 0  [[typeinfo=0]]
23902: AST_NE [23892] [23897]  [[typeinfo=0]]
23907: AST_Return -1  [[typeinfo=0]]
23911: AST_SEQ [23887] [23907]  [[typeinfo=0]]
23916: AST_SEQ [-1] [23911]  [[typeinfo=0]]
23921: AST_IFTHEN [23872] [23877]  [[typeinfo=0]]
23926: AST_Scope [23972] -1 2  [[typeinfo=0]]
23932: AST_TAG "fputc" (c[16688].s)  [[typeinfo=0]]
23936: AST_IndirectThrough [23944]  [[typeinfo=0]]
23940: AST_TAG "p" (c[16692].s)  [[typeinfo=0]]
23944: AST_Post_Inc [23940]  [[typeinfo=0]]
23948: AST_TAG "note_out" (c[16696].s)  [[typeinfo=0]]
23952: AST_UseParam [-1] [-1]  [[typeinfo=0]]
23957: AST_UseParam [23948] [23952]  [[typeinfo=0]]
23962: AST_UseParam [23936] [23957]  [[typeinfo=0]]
23967: AST_Call [23932] [23962]  [[typeinfo=0]]
23972: AST_SEQ [-1] [23967]  [[typeinfo=0]]
23977: AST_TAG "p" (c[16717].s)  [[typeinfo=0]]
23981: AST_TAG "pp" (c[16722].s)  [[typeinfo=0]]
23985: AST_NE [23977] [23981]  [[typeinfo=0]]
23990: AST_C_DoWhile [23926] [23985] -1 -1 -1  [[typeinfo=0]]
23998: AST_TAG "fclose" (c[16738].s)  [[typeinfo=0]]
24002: AST_TAG "note_out" (c[16741].s)  [[typeinfo=0]]
24006: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24011: AST_UseParam [24002] [24006]  [[typeinfo=0]]
24016: AST_Call [23998] [24011]  [[typeinfo=0]]
24021: AST_TAG "pp" (c[16757].s)  [[typeinfo=0]]
24025: AST_AssignTo [24021] [24030]  [[typeinfo=0]]
24030: AST_TAG "noted" (c[16761].s)  [[typeinfo=0]]
24034: AST_TAG "lbeg" (c[16776].s)  [[typeinfo=0]]
24038: AST_AssignTo [24034] [24043]  [[typeinfo=0]]
24043: AST_TAG "pp" (c[16780].s)  [[typeinfo=0]]
24047: AST_Scope [24061] -1 2  [[typeinfo=0]]
24053: AST_Pre_Dec [24057]  [[typeinfo=0]]
24057: AST_TAG "lbeg" (c[16800].s)  [[typeinfo=0]]
24061: AST_SEQ [-1] [24053]  [[typeinfo=0]]
24066: AST_IndirectThrough [24070]  [[typeinfo=0]]
24070: AST_TAG "lbeg" (c[16809].s)  [[typeinfo=0]]
24074: AST_Const 16814 10  [[typeinfo=0]]
24079: AST_NE [24066] [24074]  [[typeinfo=0]]
24084: AST_C_DoWhile [24047] [24079] -1 -1 -1  [[typeinfo=0]]
24092: AST_TAG "lbeg" (c[16830].s)  [[typeinfo=0]]
24096: AST_Post_Inc [24092]  [[typeinfo=0]]
24100: AST_SEQ [24084] [24096]  [[typeinfo=0]]
24105: AST_SEQ [24038] [24100]  [[typeinfo=0]]
24110: AST_SEQ [24025] [24105]  [[typeinfo=0]]
24115: AST_SEQ [24016] [24110]  [[typeinfo=0]]
24120: AST_SEQ [23990] [24115]  [[typeinfo=0]]
24125: AST_SEQ [23921] [24120]  [[typeinfo=0]]
24130: AST_SEQ [23858] [24125]  [[typeinfo=0]]
24135: AST_TAG "noted" (c[16854].s)  [[typeinfo=0]]
24139: AST_AssignTo [24135] [24144]  [[typeinfo=0]]
24144: AST_Const 16858 0  [[typeinfo=0]]
24149: AST_Return -1  [[typeinfo=0]]
24153: AST_Const 16881 72  [[typeinfo=0]]
24158: AST_TAG "note_file" (c[16893].s)  [[typeinfo=0]]
24162: AST_Const 16895 9  [[typeinfo=0]]
24167: AST_Idx [24158] [24162]  [[typeinfo=0]]
24172: AST_AssignTo [24167] [24195]  [[typeinfo=0]]
24177: AST_TAG "lim" (c[16900].s)  [[typeinfo=0]]
24181: AST_TAG "this_unit" (c[16902].s)  [[typeinfo=0]]
24185: AST_Idx [24177] [24181]  [[typeinfo=0]]
24190: AST_Const 16905 48  [[typeinfo=0]]
24195: AST_Add [24185] [24190]  [[typeinfo=0]]
24200: AST_Case [24153] -1 -1  [[typeinfo=0]]
24206: AST_SEQ [24200] [24172]  [[typeinfo=0]]
24211: AST_Scope [24727] -1 2  [[typeinfo=0]]
24217: AST_TYPE_Atom 0 0  [[typeinfo=0]]
24222: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
24226: AST_TAG "note_in" (c[16934].s)  [[typeinfo=0]]
24230: AST_TAG "fopen" (c[16938].s)  [[typeinfo=0]]
24234: AST_TAG "note_file" (c[16941].s)  [[typeinfo=0]]
24238: AST_Const 16944 16944  [[typeinfo=0]]
24243: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24248: AST_UseParam [24238] [24243]  [[typeinfo=0]]
24253: AST_UseParam [24234] [24248]  [[typeinfo=0]]
24258: AST_Call [24230] [24253]  [[typeinfo=0]]
24263: AST_AssignTo [-1] [24258]  [[typeinfo=0]]
24268: AST_Declare [24226] [24217]  [[typeinfo=0]]
24273: AST_SEQ [24268] [-1]  [[typeinfo=0]]
24278: AST_SEQ [24273] [-1]  [[typeinfo=0]]
24283: AST_TAG "note_in" (c[16963].s)  [[typeinfo=0]]
24287: AST_Const 16968 0  [[typeinfo=0]]
24292: AST_EQ [24283] [24287]  [[typeinfo=0]]
24297: AST_Scope [24336] -1 2  [[typeinfo=0]]
24303: AST_TAG "ok" (c[16988].s)  [[typeinfo=0]]
24307: AST_AssignTo [24303] [24322]  [[typeinfo=0]]
24312: AST_Const 16993 0  [[typeinfo=0]]
24317: AST_Const 16996 0  [[typeinfo=0]]
24322: AST_NE [24312] [24317]  [[typeinfo=0]]
24327: AST_Return -1  [[typeinfo=0]]
24331: AST_SEQ [24307] [24327]  [[typeinfo=0]]
24336: AST_SEQ [-1] [24331]  [[typeinfo=0]]
24341: AST_IFTHEN [24292] [24297]  [[typeinfo=0]]
24346: AST_Scope [24608] -1 2  [[typeinfo=0]]
24352: AST_TYPE_Atom 0 1  [[typeinfo=0]]
24357: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
24361: AST_TAG "p" (c[17049].s)  [[typeinfo=0]]
24365: AST_TAG "pp" (c[17053].s)  [[typeinfo=0]]
24369: AST_AssignTo [-1] [24365]  [[typeinfo=0]]
24374: AST_Declare [24361] [24352]  [[typeinfo=0]]
24379: AST_SEQ [24374] [-1]  [[typeinfo=0]]
24384: AST_SEQ [24379] [-1]  [[typeinfo=0]]
24389: AST_Scope [24575] -1 2  [[typeinfo=0]]
24395: AST_TAG "sym" (c[17098].s)  [[typeinfo=0]]
24399: AST_AssignTo [24395] [24422]  [[typeinfo=0]]
24404: AST_TAG "fgetc" (c[17102].s)  [[typeinfo=0]]
24408: AST_TAG "note_in" (c[17104].s)  [[typeinfo=0]]
24412: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24417: AST_UseParam [24408] [24412]  [[typeinfo=0]]
24422: AST_Call [24404] [24417]  [[typeinfo=0]]
24427: AST_TAG "sym" (c[17129].s)  [[typeinfo=0]]
24431: AST_TAG "EOF" (c[17134].s)  [[typeinfo=0]]
24435: AST_EQ [24427] [24431]  [[typeinfo=0]]
24440: AST_C_Break -1  [[typeinfo=0]]
24444: AST_IFTHEN [24435] [24440]  [[typeinfo=0]]
24449: AST_IndirectThrough [24457]  [[typeinfo=0]]
24453: AST_TAG "p" (c[17159].s)  [[typeinfo=0]]
24457: AST_Post_Inc [24453]  [[typeinfo=0]]
24461: AST_AssignTo [24449] [24466]  [[typeinfo=0]]
24466: AST_TAG "sym" (c[17164].s)  [[typeinfo=0]]
24470: AST_TAG "p" (c[17188].s)  [[typeinfo=0]]
24474: AST_TAG "fp" (c[17193].s)  [[typeinfo=0]]
24478: AST_EQ [24470] [24474]  [[typeinfo=0]]
24483: AST_Scope [24550] -1 2  [[typeinfo=0]]
24489: AST_TAG "fclose" (c[17219].s)  [[typeinfo=0]]
24493: AST_TAG "note_in" (c[17222].s)  [[typeinfo=0]]
24497: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24502: AST_UseParam [24493] [24497]  [[typeinfo=0]]
24507: AST_Call [24489] [24502]  [[typeinfo=0]]
24512: AST_TAG "ok" (c[17247].s)  [[typeinfo=0]]
24516: AST_AssignTo [24512] [24531]  [[typeinfo=0]]
24521: AST_Const 17252 0  [[typeinfo=0]]
24526: AST_Const 17255 0  [[typeinfo=0]]
24531: AST_NE [24521] [24526]  [[typeinfo=0]]
24536: AST_Return -1  [[typeinfo=0]]
24540: AST_SEQ [24516] [24536]  [[typeinfo=0]]
24545: AST_SEQ [24507] [24540]  [[typeinfo=0]]
24550: AST_SEQ [-1] [24545]  [[typeinfo=0]]
24555: AST_IFTHEN [24478] [24483]  [[typeinfo=0]]
24560: AST_SEQ [24461] [24555]  [[typeinfo=0]]
24565: AST_SEQ [24444] [24560]  [[typeinfo=0]]
24570: AST_SEQ [24399] [24565]  [[typeinfo=0]]
24575: AST_SEQ [-1] [24570]  [[typeinfo=0]]
24580: AST_C_ForLoop [-1] [-1] [-1] [24389] -1 -1 -1  [[typeinfo=0]]
24590: AST_TAG "pp" (c[17335].s)  [[typeinfo=0]]
24594: AST_AssignTo [24590] [24599]  [[typeinfo=0]]
24599: AST_TAG "p" (c[17339].s)  [[typeinfo=0]]
24603: AST_SEQ [24580] [24594]  [[typeinfo=0]]
24608: AST_SEQ [24384] [24603]  [[typeinfo=0]]
24613: AST_TAG "lbeg" (c[17368].s)  [[typeinfo=0]]
24617: AST_AssignTo [24613] [24622]  [[typeinfo=0]]
24622: AST_TAG "pp" (c[17372].s)  [[typeinfo=0]]
24626: AST_Scope [24640] -1 2  [[typeinfo=0]]
24632: AST_Pre_Dec [24636]  [[typeinfo=0]]
24636: AST_TAG "lbeg" (c[17392].s)  [[typeinfo=0]]
24640: AST_SEQ [-1] [24632]  [[typeinfo=0]]
24645: AST_IndirectThrough [24649]  [[typeinfo=0]]
24649: AST_TAG "lbeg" (c[17401].s)  [[typeinfo=0]]
24653: AST_Const 17406 10  [[typeinfo=0]]
24658: AST_NE [24645] [24653]  [[typeinfo=0]]
24663: AST_C_DoWhile [24626] [24658] -1 -1 -1  [[typeinfo=0]]
24671: AST_TAG "lbeg" (c[17422].s)  [[typeinfo=0]]
24675: AST_Post_Inc [24671]  [[typeinfo=0]]
24679: AST_TAG "fclose" (c[17438].s)  [[typeinfo=0]]
24683: AST_TAG "note_in" (c[17441].s)  [[typeinfo=0]]
24687: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24692: AST_UseParam [24683] [24687]  [[typeinfo=0]]
24697: AST_Call [24679] [24692]  [[typeinfo=0]]
24702: AST_SEQ [24675] [24697]  [[typeinfo=0]]
24707: AST_SEQ [24663] [24702]  [[typeinfo=0]]
24712: AST_SEQ [24617] [24707]  [[typeinfo=0]]
24717: AST_SEQ [24346] [24712]  [[typeinfo=0]]
24722: AST_SEQ [24341] [24717]  [[typeinfo=0]]
24727: AST_SEQ [24278] [24722]  [[typeinfo=0]]
24732: AST_Return -1  [[typeinfo=0]]
24736: AST_TYPE_Atom 0 0  [[typeinfo=0]]
24741: AST_Cast [24774] 24736  [[typeinfo=0]]
24746: AST_TAG "fail_with" (c[17490].s)  [[typeinfo=0]]
24750: AST_Const 17493 17493  [[typeinfo=0]]
24755: AST_TAG "command" (c[17496].s)  [[typeinfo=0]]
24759: AST_UseParam [-1] [-1]  [[typeinfo=0]]
24764: AST_UseParam [24755] [24759]  [[typeinfo=0]]
24769: AST_UseParam [24750] [24764]  [[typeinfo=0]]
24774: AST_Call [24746] [24769]  [[typeinfo=0]]
24779: AST_DefaultCase -1 -1  [[typeinfo=0]]
24784: AST_SEQ [24779] [24741]  [[typeinfo=0]]
24789: AST_Return -1  [[typeinfo=0]]
24793: AST_SEQ [24784] [24789]  [[typeinfo=0]]
24798: AST_SEQ [24732] [24793]  [[typeinfo=0]]
24803: AST_SEQ [24211] [24798]  [[typeinfo=0]]
24808: AST_SEQ [24206] [24803]  [[typeinfo=0]]
24813: AST_SEQ [24149] [24808]  [[typeinfo=0]]
24818: AST_SEQ [24139] [24813]  [[typeinfo=0]]
24823: AST_SEQ [23754] [24818]  [[typeinfo=0]]
24828: AST_SEQ [23726] [24823]  [[typeinfo=0]]
24833: AST_SEQ [23707] [24828]  [[typeinfo=0]]
24838: AST_SEQ [23584] [24833]  [[typeinfo=0]]
24843: AST_SEQ [23566] [24838]  [[typeinfo=0]]
24848: AST_SEQ [23557] [24843]  [[typeinfo=0]]
24853: AST_SEQ [23529] [24848]  [[typeinfo=0]]
24858: AST_SEQ [-1] [24853]  [[typeinfo=0]]
24863: AST_SEQ [23510] [24858]  [[typeinfo=0]]
24868: AST_SEQ [23501] [24863]  [[typeinfo=0]]
24873: AST_SEQ [23486] [24868]  [[typeinfo=0]]
24878: AST_SEQ [23481] [24873]  [[typeinfo=0]]
24883: AST_SEQ [23466] [24878]  [[typeinfo=0]]
24888: AST_SEQ [23446] [24883]  [[typeinfo=0]]
24893: AST_SEQ [23437] [24888]  [[typeinfo=0]]
24898: AST_SEQ [23422] [24893]  [[typeinfo=0]]
24903: AST_SEQ [-1] [24898]  [[typeinfo=0]]
24908: AST_SEQ [23412] [24903]  [[typeinfo=0]]
24913: AST_SEQ [23403] [24908]  [[typeinfo=0]]
24918: AST_SEQ [23307] [24913]  [[typeinfo=0]]
24923: AST_SEQ [23302] [24918]  [[typeinfo=0]]
24928: AST_SEQ [23287] [24923]  [[typeinfo=0]]
24933: AST_SEQ [-1] [24928]  [[typeinfo=0]]
24938: AST_SEQ [23277] [24933]  [[typeinfo=0]]
24943: AST_SEQ [23264] [24938]  [[typeinfo=0]]
24948: AST_SEQ [23246] [24943]  [[typeinfo=0]]
24953: AST_SEQ [23231] [24948]  [[typeinfo=0]]
24958: AST_SEQ [23225] [24953]  [[typeinfo=0]]
24963: AST_SEQ [23136] [24958]  [[typeinfo=0]]
24968: AST_SEQ [22975] [24963]  [[typeinfo=0]]
24973: AST_SEQ [22970] [24968]  [[typeinfo=0]]
24978: AST_SEQ [22941] [24973]  [[typeinfo=0]]
24983: AST_SEQ [22936] [24978]  [[typeinfo=0]]
24988: AST_SEQ [22907] [24983]  [[typeinfo=0]]
24993: AST_SEQ [22899] [24988]  [[typeinfo=0]]
24998: AST_SEQ [22852] [24993]  [[typeinfo=0]]
25003: AST_SEQ [22810] [24998]  [[typeinfo=0]]
25008: AST_SEQ [22802] [25003]  [[typeinfo=0]]
25013: AST_SEQ [22755] [25008]  [[typeinfo=0]]
25018: AST_SEQ [22713] [25013]  [[typeinfo=0]]
25023: AST_SEQ [22704] [25018]  [[typeinfo=0]]
25028: AST_SEQ [22691] [25023]  [[typeinfo=0]]
25033: AST_SEQ [22682] [25028]  [[typeinfo=0]]
25038: AST_SEQ [22640] [25033]  [[typeinfo=0]]
25043: AST_SEQ [22631] [25038]  [[typeinfo=0]]
25048: AST_SEQ [22618] [25043]  [[typeinfo=0]]
25053: AST_SEQ [22609] [25048]  [[typeinfo=0]]
25058: AST_SEQ [22567] [25053]  [[typeinfo=0]]
25063: AST_SEQ [22559] [25058]  [[typeinfo=0]]
25068: AST_SEQ [22524] [25063]  [[typeinfo=0]]
25073: AST_SEQ [22511] [25068]  [[typeinfo=0]]
25078: AST_SEQ [22502] [25073]  [[typeinfo=0]]
25083: AST_SEQ [22460] [25078]  [[typeinfo=0]]
25088: AST_SEQ [22456] [25083]  [[typeinfo=0]]
25093: AST_SEQ [22444] [25088]  [[typeinfo=0]]
25098: AST_SEQ [22398] [25093]  [[typeinfo=0]]
25103: AST_SEQ [22385] [25098]  [[typeinfo=0]]
25108: AST_SEQ [22376] [25103]  [[typeinfo=0]]
25113: AST_SEQ [22334] [25108]  [[typeinfo=0]]
25118: AST_SEQ [22329] [25113]  [[typeinfo=0]]
25123: AST_SEQ [22290] [25118]  [[typeinfo=0]]
25128: AST_SEQ [22285] [25123]  [[typeinfo=0]]
25133: AST_SEQ [22246] [25128]  [[typeinfo=0]]
25138: AST_SEQ [22241] [25133]  [[typeinfo=0]]
25143: AST_SEQ [22202] [25138]  [[typeinfo=0]]
25148: AST_SEQ [22197] [25143]  [[typeinfo=0]]
25153: AST_SEQ [22158] [25148]  [[typeinfo=0]]
25158: AST_SEQ [22150] [25153]  [[typeinfo=0]]
25163: AST_SEQ [22111] [25158]  [[typeinfo=0]]
25168: AST_SEQ [22102] [25163]  [[typeinfo=0]]
25173: AST_SEQ [22036] [25168]  [[typeinfo=0]]
25178: AST_SEQ [22023] [25173]  [[typeinfo=0]]
25183: AST_SEQ [22014] [25178]  [[typeinfo=0]]
25188: AST_SEQ [21897] [25183]  [[typeinfo=0]]
25193: AST_SEQ [21892] [25188]  [[typeinfo=0]]
25198: AST_SEQ [21759] [25193]  [[typeinfo=0]]
25203: AST_SEQ [21754] [25198]  [[typeinfo=0]]
25208: AST_SEQ [21640] [25203]  [[typeinfo=0]]
25213: AST_SEQ [21636] [25208]  [[typeinfo=0]]
25218: AST_SEQ [21624] [25213]  [[typeinfo=0]]
25223: AST_SEQ [21574] [25218]  [[typeinfo=0]]
25228: AST_SEQ [21565] [25223]  [[typeinfo=0]]
25233: AST_SEQ [21503] [25228]  [[typeinfo=0]]
25238: AST_SEQ [21474] [25233]  [[typeinfo=0]]
25243: AST_SEQ [21466] [25238]  [[typeinfo=0]]
25248: AST_SEQ [21427] [25243]  [[typeinfo=0]]
25253: AST_SEQ [21418] [25248]  [[typeinfo=0]]
25258: AST_SEQ [21356] [25253]  [[typeinfo=0]]
25263: AST_SEQ [21327] [25258]  [[typeinfo=0]]
25268: AST_SEQ [21318] [25263]  [[typeinfo=0]]
25273: AST_SEQ [21309] [25268]  [[typeinfo=0]]
25278: AST_SEQ [21272] [25273]  [[typeinfo=0]]
25283: AST_SEQ [21263] [25278]  [[typeinfo=0]]
25288: AST_SEQ [21254] [25283]  [[typeinfo=0]]
25293: AST_SEQ [21217] [25288]  [[typeinfo=0]]
25298: AST_SEQ [21207] [25293]  [[typeinfo=0]]
25303: AST_SEQ [21198] [25298]  [[typeinfo=0]]
25308: AST_SEQ [21069] [25303]  [[typeinfo=0]]
25313: AST_SEQ [21059] [25308]  [[typeinfo=0]]
25318: AST_SEQ [21050] [25313]  [[typeinfo=0]]
25323: AST_SEQ [20921] [25318]  [[typeinfo=0]]
25328: AST_SEQ [20915] [25323]  [[typeinfo=0]]
25333: AST_SEQ [20640] [25328]  [[typeinfo=0]]
25338: AST_SEQ [20631] [25333]  [[typeinfo=0]]
25343: AST_SEQ [20554] [25338]  [[typeinfo=0]]
25348: AST_SEQ [20548] [25343]  [[typeinfo=0]]
25353: AST_SEQ [20273] [25348]  [[typeinfo=0]]
25358: AST_SEQ [20264] [25353]  [[typeinfo=0]]
25363: AST_SEQ [20187] [25358]  [[typeinfo=0]]
25368: AST_SEQ [20181] [25363]  [[typeinfo=0]]
25373: AST_SEQ [20101] [25368]  [[typeinfo=0]]
25378: AST_SEQ [20024] [25373]  [[typeinfo=0]]
25383: AST_SEQ [20018] [25378]  [[typeinfo=0]]
25388: AST_SEQ [19938] [25383]  [[typeinfo=0]]
25393: AST_SEQ [19861] [25388]  [[typeinfo=0]]
25398: AST_SEQ [19856] [25393]  [[typeinfo=0]]
25403: AST_SEQ [19759] [25398]  [[typeinfo=0]]
25408: AST_SEQ [19745] [25403]  [[typeinfo=0]]
25413: AST_SEQ [19648] [25408]  [[typeinfo=0]]
25418: AST_SEQ [19634] [25413]  [[typeinfo=0]]
25423: AST_SEQ [19473] [25418]  [[typeinfo=0]]
25428: AST_SEQ [19415] [25423]  [[typeinfo=0]]
25433: AST_SEQ [19409] [25428]  [[typeinfo=0]]
25438: AST_SEQ [19301] [25433]  [[typeinfo=0]]
25443: AST_SEQ [19278] [25438]  [[typeinfo=0]]
25448: AST_SEQ [19245] [25443]  [[typeinfo=0]]
25453: AST_SEQ [19189] [25448]  [[typeinfo=0]]
25458: AST_SEQ [18756] [25453]  [[typeinfo=0]]
25463: AST_SEQ [18747] [25458]  [[typeinfo=0]]
25468: AST_SEQ [-1] [25463]  [[typeinfo=0]]
25473: AST_Switch [18685] [18690] -1 -1 -1  [[typeinfo=0]]
25481: AST_SEQ [18652] [25473]  [[typeinfo=0]]
25486: AST_SEQ [18643] [25481]  [[typeinfo=0]]
25491: AST_SEQ [-1] [25486]  [[typeinfo=0]]
25496: AST_DefProc 18581 [18586] [-1] [18590]  [[typeinfo=0]]
25503: AST_TYPE_Atom 0 0  [[typeinfo=0]]
25508: AST_TAG "Scan_sign" (c[17521].s)  [[typeinfo=0]]
25512: AST_Scope [25758] -1 1  [[typeinfo=0]]
25518: AST_TAG "read_sym" (c[17531].s)  [[typeinfo=0]]
25522: AST_UseParam [-1] [-1]  [[typeinfo=0]]
25527: AST_Call [25518] [25522]  [[typeinfo=0]]
25532: AST_TAG "sym_type" (c[17543].s)  [[typeinfo=0]]
25536: AST_TAG "sym" (c[17545].s)  [[typeinfo=0]]
25540: AST_Idx [25532] [25536]  [[typeinfo=0]]
25545: AST_TAG "sym_type" (c[17551].s)  [[typeinfo=0]]
25549: AST_Const 17553 43  [[typeinfo=0]]
25554: AST_Idx [25545] [25549]  [[typeinfo=0]]
25559: AST_EQ [25540] [25554]  [[typeinfo=0]]
25564: AST_Scope [25593] -1 2  [[typeinfo=0]]
25570: AST_TAG "command" (c[17565].s)  [[typeinfo=0]]
25574: AST_AssignTo [25570] [25588]  [[typeinfo=0]]
25579: AST_TAG "command" (c[17569].s)  [[typeinfo=0]]
25583: AST_Const 17573 128  [[typeinfo=0]]
25588: AST_BitOr [25579] [25583]  [[typeinfo=0]]
25593: AST_SEQ [-1] [25574]  [[typeinfo=0]]
25598: AST_TAG "sym_type" (c[17587].s)  [[typeinfo=0]]
25602: AST_TAG "sym" (c[17589].s)  [[typeinfo=0]]
25606: AST_Idx [25598] [25602]  [[typeinfo=0]]
25611: AST_TAG "sym_type" (c[17595].s)  [[typeinfo=0]]
25615: AST_Const 17597 45  [[typeinfo=0]]
25620: AST_Idx [25611] [25615]  [[typeinfo=0]]
25625: AST_EQ [25606] [25620]  [[typeinfo=0]]
25630: AST_Const 17618 65  [[typeinfo=0]]
25635: AST_TAG "command" (c[17623].s)  [[typeinfo=0]]
25639: AST_LE [25630] [25635]  [[typeinfo=0]]
25644: AST_TAG "command" (c[17630].s)  [[typeinfo=0]]
25648: AST_Const 17635 90  [[typeinfo=0]]
25653: AST_LE [25644] [25648]  [[typeinfo=0]]
25658: AST_BoolAnd [25639] [25653]  [[typeinfo=0]]
25663: AST_BoolAnd [25625] [25658]  [[typeinfo=0]]
25668: AST_Scope [25707] -1 2  [[typeinfo=0]]
25674: AST_TAG "command" (c[17648].s)  [[typeinfo=0]]
25678: AST_AssignTo [25674] [25702]  [[typeinfo=0]]
25683: AST_TAG "command" (c[17652].s)  [[typeinfo=0]]
25687: AST_Const 17657 97  [[typeinfo=0]]
25692: AST_Const 17659 65  [[typeinfo=0]]
25697: AST_Sub [25687] [25692]  [[typeinfo=0]]
25702: AST_BitOr [25683] [25697]  [[typeinfo=0]]
25707: AST_SEQ [-1] [25678]  [[typeinfo=0]]
25712: AST_Scope [25731] -1 2  [[typeinfo=0]]
25718: AST_TAG "pending_sym" (c[17678].s)  [[typeinfo=0]]
25722: AST_AssignTo [25718] [25727]  [[typeinfo=0]]
25727: AST_TAG "sym" (c[17682].s)  [[typeinfo=0]]
25731: AST_SEQ [-1] [25722]  [[typeinfo=0]]
25736: AST_IFTHENELSE [25663] [25668] [25712]  [[typeinfo=0]]
25742: AST_IFTHENELSE [25559] [25564] [25736]  [[typeinfo=0]]
25748: AST_SEQ [25527] [25742]  [[typeinfo=0]]
25753: AST_SEQ [-1] [25748]  [[typeinfo=0]]
25758: AST_SEQ [-1] [25753]  [[typeinfo=0]]
25763: AST_DefProc 25503 [25508] [-1] [25512]  [[typeinfo=0]]
25770: AST_TYPE_Atom 0 0  [[typeinfo=0]]
25775: AST_TAG "Scan_scope" (c[17694].s)  [[typeinfo=0]]
25779: AST_Scope [26133] -1 1  [[typeinfo=0]]
25785: AST_TAG "number" (c[17704].s)  [[typeinfo=0]]
25789: AST_AssignTo [25785] [25794]  [[typeinfo=0]]
25794: AST_Const 17708 1  [[typeinfo=0]]
25799: AST_Const 17718 68  [[typeinfo=0]]
25804: AST_TAG "command" (c[17724].s)  [[typeinfo=0]]
25808: AST_UBitNot [25832]  [[typeinfo=0]]
25812: AST_Const 17733 97  [[typeinfo=0]]
25817: AST_Const 17735 65  [[typeinfo=0]]
25822: AST_Sub [25812] [25817]  [[typeinfo=0]]
25827: AST_Const 17740 128  [[typeinfo=0]]
25832: AST_BitOr [25822] [25827]  [[typeinfo=0]]
25837: AST_BoolAnd [25804] [25808]  [[typeinfo=0]]
25842: AST_NE [25799] [25837]  [[typeinfo=0]]
25847: AST_TAG "command" (c[17767].s)  [[typeinfo=0]]
25851: AST_UBitNot [25875]  [[typeinfo=0]]
25855: AST_Const 17776 97  [[typeinfo=0]]
25860: AST_Const 17778 65  [[typeinfo=0]]
25865: AST_Sub [25855] [25860]  [[typeinfo=0]]
25870: AST_Const 17783 128  [[typeinfo=0]]
25875: AST_BitOr [25865] [25870]  [[typeinfo=0]]
25880: AST_BoolAnd [25847] [25851]  [[typeinfo=0]]
25885: AST_Const 17791 85  [[typeinfo=0]]
25890: AST_NE [25880] [25885]  [[typeinfo=0]]
25895: AST_BoolAnd [25842] [25890]  [[typeinfo=0]]
25900: AST_TAG "number" (c[17795].s)  [[typeinfo=0]]
25904: AST_AssignTo [25900] [25909]  [[typeinfo=0]]
25909: AST_Const 17799 0  [[typeinfo=0]]
25914: AST_IFTHEN [25895] [25904]  [[typeinfo=0]]
25919: AST_TAG "read_item" (c[17805].s)  [[typeinfo=0]]
25923: AST_UseParam [-1] [-1]  [[typeinfo=0]]
25928: AST_Call [25919] [25923]  [[typeinfo=0]]
25933: AST_TAG "type" (c[17818].s)  [[typeinfo=0]]
25937: AST_Const 17822 32  [[typeinfo=0]]
25942: AST_BitAnd [25933] [25937]  [[typeinfo=0]]
25947: AST_Const 17828 0  [[typeinfo=0]]
25952: AST_EQ [25942] [25947]  [[typeinfo=0]]
25957: AST_TAG "pending_sym" (c[17831].s)  [[typeinfo=0]]
25961: AST_AssignTo [25957] [25966]  [[typeinfo=0]]
25966: AST_TAG "sym" (c[17835].s)  [[typeinfo=0]]
25970: AST_IFTHEN [25952] [25961]  [[typeinfo=0]]
25975: AST_TAG "limit" (c[17841].s)  [[typeinfo=0]]
25979: AST_AssignTo [25975] [25984]  [[typeinfo=0]]
25984: AST_TAG "number" (c[17845].s)  [[typeinfo=0]]
25988: AST_Const 17855 72  [[typeinfo=0]]
25993: AST_TAG "command" (c[17860].s)  [[typeinfo=0]]
25997: AST_EQ [25988] [25993]  [[typeinfo=0]]
26002: AST_TAG "command" (c[17867].s)  [[typeinfo=0]]
26006: AST_Const 17872 65  [[typeinfo=0]]
26011: AST_EQ [26002] [26006]  [[typeinfo=0]]
26016: AST_BoolOr [25997] [26011]  [[typeinfo=0]]
26021: AST_Scope [26093] -1 2  [[typeinfo=0]]
26027: AST_UBoolNot [26059]  [[typeinfo=0]]
26031: AST_Const 17890 0  [[typeinfo=0]]
26036: AST_TAG "limit" (c[17895].s)  [[typeinfo=0]]
26040: AST_LE [26031] [26036]  [[typeinfo=0]]
26045: AST_TAG "limit" (c[17902].s)  [[typeinfo=0]]
26049: AST_Const 17907 9  [[typeinfo=0]]
26054: AST_LE [26045] [26049]  [[typeinfo=0]]
26059: AST_BoolAnd [26040] [26054]  [[typeinfo=0]]
26064: AST_TAG "limit" (c[17912].s)  [[typeinfo=0]]
26068: AST_AssignTo [26064] [26083]  [[typeinfo=0]]
26073: AST_Const 17916 63  [[typeinfo=0]]
26078: AST_Const 17918 48  [[typeinfo=0]]
26083: AST_Sub [26073] [26078]  [[typeinfo=0]]
26088: AST_IFTHEN [26027] [26068]  [[typeinfo=0]]
26093: AST_SEQ [-1] [26088]  [[typeinfo=0]]
26098: AST_IFTHEN [26016] [26021]  [[typeinfo=0]]
26103: AST_SEQ [25979] [26098]  [[typeinfo=0]]
26108: AST_SEQ [25970] [26103]  [[typeinfo=0]]
26113: AST_SEQ [25928] [26108]  [[typeinfo=0]]
26118: AST_SEQ [25914] [26113]  [[typeinfo=0]]
26123: AST_SEQ [25789] [26118]  [[typeinfo=0]]
26128: AST_SEQ [-1] [26123]  [[typeinfo=0]]
26133: AST_SEQ [-1] [26128]  [[typeinfo=0]]
26138: AST_DefProc 25770 [25775] [-1] [25779]  [[typeinfo=0]]
26145: AST_TYPE_Atom 0 0  [[typeinfo=0]]
26150: AST_TAG "Scan_text" (c[17930].s)  [[typeinfo=0]]
26154: AST_Scope [26868] -1 1  [[typeinfo=0]]
26160: AST_TYPE_Atom 0 1  [[typeinfo=0]]
26165: AST_TAG "last" (c[17942].s)  [[typeinfo=0]]
26169: AST_Declare [26165] [26160]  [[typeinfo=0]]
26174: AST_SEQ [26169] [-1]  [[typeinfo=0]]
26179: AST_SEQ [26174] [-1]  [[typeinfo=0]]
26184: AST_TAG "read_sym" (c[17948].s)  [[typeinfo=0]]
26188: AST_UseParam [-1] [-1]  [[typeinfo=0]]
26193: AST_Call [26184] [26188]  [[typeinfo=0]]
26198: AST_TAG "last" (c[17957].s)  [[typeinfo=0]]
26202: AST_AssignTo [26198] [26207]  [[typeinfo=0]]
26207: AST_TAG "sym" (c[17961].s)  [[typeinfo=0]]
26211: AST_TAG "sym_type" (c[17971].s)  [[typeinfo=0]]
26215: AST_TAG "sym" (c[17973].s)  [[typeinfo=0]]
26219: AST_Idx [26211] [26215]  [[typeinfo=0]]
26224: AST_Const 17978 16  [[typeinfo=0]]
26229: AST_BitAnd [26219] [26224]  [[typeinfo=0]]
26234: AST_Const 17984 0  [[typeinfo=0]]
26239: AST_EQ [26229] [26234]  [[typeinfo=0]]
26244: AST_Scope [26320] -1 2  [[typeinfo=0]]
26250: AST_TAG "pending_sym" (c[17995].s)  [[typeinfo=0]]
26254: AST_AssignTo [26250] [26259]  [[typeinfo=0]]
26259: AST_TAG "sym" (c[17999].s)  [[typeinfo=0]]
26263: AST_TYPE_Atom 0 0  [[typeinfo=0]]
26268: AST_Cast [26301] 26263  [[typeinfo=0]]
26273: AST_TAG "fail_with" (c[18012].s)  [[typeinfo=0]]
26277: AST_Const 18015 18015  [[typeinfo=0]]
26282: AST_TAG "command" (c[18018].s)  [[typeinfo=0]]
26286: AST_UseParam [-1] [-1]  [[typeinfo=0]]
26291: AST_UseParam [26282] [26286]  [[typeinfo=0]]
26296: AST_UseParam [26277] [26291]  [[typeinfo=0]]
26301: AST_Call [26273] [26296]  [[typeinfo=0]]
26306: AST_Return -1  [[typeinfo=0]]
26310: AST_SEQ [26268] [26306]  [[typeinfo=0]]
26315: AST_SEQ [26254] [26310]  [[typeinfo=0]]
26320: AST_SEQ [-1] [26315]  [[typeinfo=0]]
26325: AST_IFTHEN [26239] [26244]  [[typeinfo=0]]
26330: AST_Const 18043 97  [[typeinfo=0]]
26335: AST_TAG "command" (c[18048].s)  [[typeinfo=0]]
26339: AST_LE [26330] [26335]  [[typeinfo=0]]
26344: AST_TAG "command" (c[18055].s)  [[typeinfo=0]]
26348: AST_Const 18060 122  [[typeinfo=0]]
26353: AST_LE [26344] [26348]  [[typeinfo=0]]
26358: AST_BoolAnd [26339] [26353]  [[typeinfo=0]]
26363: AST_Scope [26583] -1 2  [[typeinfo=0]]
26369: AST_TAG "text" (c[18072].s)  [[typeinfo=0]]
26373: AST_TAG "endpos" (c[18074].s)  [[typeinfo=0]]
26377: AST_Idx [26369] [26373]  [[typeinfo=0]]
26382: AST_AssignTo [26377] [26387]  [[typeinfo=0]]
26387: AST_Const 18079 0  [[typeinfo=0]]
26392: AST_Scope [26541] -1 2  [[typeinfo=0]]
26398: AST_TAG "local_echo" (c[18106].s)  [[typeinfo=0]]
26402: AST_AddressOf [26406]  [[typeinfo=0]]
26406: AST_TAG "sym" (c[18110].s)  [[typeinfo=0]]
26410: AST_UseParam [-1] [-1]  [[typeinfo=0]]
26415: AST_UseParam [26402] [26410]  [[typeinfo=0]]
26420: AST_Call [26398] [26415]  [[typeinfo=0]]
26425: AST_TAG "sym" (c[18126].s)  [[typeinfo=0]]
26429: AST_TAG "last" (c[18131].s)  [[typeinfo=0]]
26433: AST_EQ [26425] [26429]  [[typeinfo=0]]
26438: AST_C_Break -1  [[typeinfo=0]]
26442: AST_IFTHEN [26433] [26438]  [[typeinfo=0]]
26447: AST_TAG "sym" (c[18149].s)  [[typeinfo=0]]
26451: AST_Const 18154 10  [[typeinfo=0]]
26456: AST_EQ [26447] [26451]  [[typeinfo=0]]
26461: AST_Scope [26490] -1 2  [[typeinfo=0]]
26467: AST_TAG "pending_sym" (c[18171].s)  [[typeinfo=0]]
26471: AST_AssignTo [26467] [26476]  [[typeinfo=0]]
26476: AST_Const 18175 10  [[typeinfo=0]]
26481: AST_C_Break -1  [[typeinfo=0]]
26485: AST_SEQ [26471] [26481]  [[typeinfo=0]]
26490: AST_SEQ [-1] [26485]  [[typeinfo=0]]
26495: AST_IFTHEN [26456] [26461]  [[typeinfo=0]]
26500: AST_TAG "text" (c[18213].s)  [[typeinfo=0]]
26504: AST_Pre_Dec [26508]  [[typeinfo=0]]
26508: AST_TAG "endpos" (c[18216].s)  [[typeinfo=0]]
26512: AST_Idx [26500] [26504]  [[typeinfo=0]]
26517: AST_AssignTo [26512] [26522]  [[typeinfo=0]]
26522: AST_TAG "sym" (c[18221].s)  [[typeinfo=0]]
26526: AST_SEQ [26495] [26517]  [[typeinfo=0]]
26531: AST_SEQ [26442] [26526]  [[typeinfo=0]]
26536: AST_SEQ [26420] [26531]  [[typeinfo=0]]
26541: AST_SEQ [-1] [26536]  [[typeinfo=0]]
26546: AST_C_ForLoop [-1] [-1] [-1] [26392] -1 -1 -1  [[typeinfo=0]]
26556: AST_TAG "pointer" (c[18238].s)  [[typeinfo=0]]
26560: AST_AssignTo [26556] [26569]  [[typeinfo=0]]
26565: AST_TAG "endpos" (c[18242].s)  [[typeinfo=0]]
26569: AST_Post_Dec [26565]  [[typeinfo=0]]
26573: AST_SEQ [26546] [26560]  [[typeinfo=0]]
26578: AST_SEQ [26382] [26573]  [[typeinfo=0]]
26583: AST_SEQ [-1] [26578]  [[typeinfo=0]]
26588: AST_Scope [26808] -1 2  [[typeinfo=0]]
26594: AST_TAG "pointer" (c[18261].s)  [[typeinfo=0]]
26598: AST_AssignTo [26594] [26603]  [[typeinfo=0]]
26603: AST_TAG "pos" (c[18265].s)  [[typeinfo=0]]
26607: AST_Scope [26756] -1 2  [[typeinfo=0]]
26613: AST_TAG "local_echo" (c[18292].s)  [[typeinfo=0]]
26617: AST_AddressOf [26621]  [[typeinfo=0]]
26621: AST_TAG "sym" (c[18296].s)  [[typeinfo=0]]
26625: AST_UseParam [-1] [-1]  [[typeinfo=0]]
26630: AST_UseParam [26617] [26625]  [[typeinfo=0]]
26635: AST_Call [26613] [26630]  [[typeinfo=0]]
26640: AST_TAG "sym" (c[18312].s)  [[typeinfo=0]]
26644: AST_TAG "last" (c[18317].s)  [[typeinfo=0]]
26648: AST_EQ [26640] [26644]  [[typeinfo=0]]
26653: AST_C_Break -1  [[typeinfo=0]]
26657: AST_IFTHEN [26648] [26653]  [[typeinfo=0]]
26662: AST_TAG "sym" (c[18335].s)  [[typeinfo=0]]
26666: AST_Const 18340 10  [[typeinfo=0]]
26671: AST_EQ [26662] [26666]  [[typeinfo=0]]
26676: AST_Scope [26705] -1 2  [[typeinfo=0]]
26682: AST_TAG "pending_sym" (c[18357].s)  [[typeinfo=0]]
26686: AST_AssignTo [26682] [26691]  [[typeinfo=0]]
26691: AST_Const 18361 10  [[typeinfo=0]]
26696: AST_C_Break -1  [[typeinfo=0]]
26700: AST_SEQ [26686] [26696]  [[typeinfo=0]]
26705: AST_SEQ [-1] [26700]  [[typeinfo=0]]
26710: AST_IFTHEN [26671] [26676]  [[typeinfo=0]]
26715: AST_TAG "text" (c[18399].s)  [[typeinfo=0]]
26719: AST_TAG "pos" (c[18401].s)  [[typeinfo=0]]
26723: AST_Post_Inc [26719]  [[typeinfo=0]]
26727: AST_Idx [26715] [26723]  [[typeinfo=0]]
26732: AST_AssignTo [26727] [26737]  [[typeinfo=0]]
26737: AST_TAG "sym" (c[18407].s)  [[typeinfo=0]]
26741: AST_SEQ [26710] [26732]  [[typeinfo=0]]
26746: AST_SEQ [26657] [26741]  [[typeinfo=0]]
26751: AST_SEQ [26635] [26746]  [[typeinfo=0]]
26756: AST_SEQ [-1] [26751]  [[typeinfo=0]]
26761: AST_C_ForLoop [-1] [-1] [-1] [26607] -1 -1 -1  [[typeinfo=0]]
26771: AST_TAG "text" (c[18424].s)  [[typeinfo=0]]
26775: AST_TAG "pos" (c[18426].s)  [[typeinfo=0]]
26779: AST_Post_Inc [26775]  [[typeinfo=0]]
26783: AST_Idx [26771] [26779]  [[typeinfo=0]]
26788: AST_AssignTo [26783] [26793]  [[typeinfo=0]]
26793: AST_Const 18432 0  [[typeinfo=0]]
26798: AST_SEQ [26761] [26788]  [[typeinfo=0]]
26803: AST_SEQ [26598] [26798]  [[typeinfo=0]]
26808: AST_SEQ [-1] [26803]  [[typeinfo=0]]
26813: AST_IFTHENELSE [26358] [26363] [26588]  [[typeinfo=0]]
26819: AST_TAG "ok" (c[18443].s)  [[typeinfo=0]]
26823: AST_AssignTo [26819] [26838]  [[typeinfo=0]]
26828: AST_Const 18448 0  [[typeinfo=0]]
26833: AST_Const 18451 0  [[typeinfo=0]]
26838: AST_EQ [26828] [26833]  [[typeinfo=0]]
26843: AST_SEQ [26813] [26823]  [[typeinfo=0]]
26848: AST_SEQ [26325] [26843]  [[typeinfo=0]]
26853: AST_SEQ [26202] [26848]  [[typeinfo=0]]
26858: AST_SEQ [26193] [26853]  [[typeinfo=0]]
26863: AST_SEQ [26179] [26858]  [[typeinfo=0]]
26868: AST_SEQ [-1] [26863]  [[typeinfo=0]]
26873: AST_DefProc 26145 [26150] [-1] [26154]  [[typeinfo=0]]
26880: AST_TYPE_Atom 0 0  [[typeinfo=0]]
26885: AST_TAG "Scan_repeat" (c[18459].s)  [[typeinfo=0]]
26889: AST_Scope [26998] -1 1  [[typeinfo=0]]
26895: AST_TAG "number" (c[18470].s)  [[typeinfo=0]]
26899: AST_AssignTo [26895] [26904]  [[typeinfo=0]]
26904: AST_Const 18474 1  [[typeinfo=0]]
26909: AST_TAG "read_item" (c[18480].s)  [[typeinfo=0]]
26913: AST_UseParam [-1] [-1]  [[typeinfo=0]]
26918: AST_Call [26909] [26913]  [[typeinfo=0]]
26923: AST_TAG "type" (c[18493].s)  [[typeinfo=0]]
26927: AST_Const 18497 32  [[typeinfo=0]]
26932: AST_BitAnd [26923] [26927]  [[typeinfo=0]]
26937: AST_Const 18503 0  [[typeinfo=0]]
26942: AST_EQ [26932] [26937]  [[typeinfo=0]]
26947: AST_TAG "pending_sym" (c[18506].s)  [[typeinfo=0]]
26951: AST_AssignTo [26947] [26956]  [[typeinfo=0]]
26956: AST_TAG "sym" (c[18510].s)  [[typeinfo=0]]
26960: AST_IFTHEN [26942] [26951]  [[typeinfo=0]]
26965: AST_TAG "repeat_count" (c[18516].s)  [[typeinfo=0]]
26969: AST_AssignTo [26965] [26974]  [[typeinfo=0]]
26974: AST_TAG "number" (c[18520].s)  [[typeinfo=0]]
26978: AST_SEQ [26960] [26969]  [[typeinfo=0]]
26983: AST_SEQ [26918] [26978]  [[typeinfo=0]]
26988: AST_SEQ [26899] [26983]  [[typeinfo=0]]
26993: AST_SEQ [-1] [26988]  [[typeinfo=0]]
26998: AST_SEQ [-1] [26993]  [[typeinfo=0]]
27003: AST_DefProc 26880 [26885] [-1] [26889]  [[typeinfo=0]]
27010: AST_TYPE_Atom 0 4  [[typeinfo=0]]
27015: AST_TAG "analyse" (c[18527].s)  [[typeinfo=0]]
27019: AST_Scope [29109] -1 1  [[typeinfo=0]]
27025: AST_TYPE_Atom 0 4  [[typeinfo=0]]
27030: AST_TAG "saved_type" (c[18540].s)  [[typeinfo=0]]
27034: AST_Declare [27030] [27025]  [[typeinfo=0]]
27039: AST_SEQ [27034] [-1]  [[typeinfo=0]]
27044: AST_SEQ [27039] [-1]  [[typeinfo=0]]
27049: AST_TAG "ok" (c[18546].s)  [[typeinfo=0]]
27053: AST_AssignTo [27049] [27068]  [[typeinfo=0]]
27058: AST_Const 18551 0  [[typeinfo=0]]
27063: AST_Const 18554 0  [[typeinfo=0]]
27068: AST_EQ [27058] [27063]  [[typeinfo=0]]
27073: AST_TAG "pos" (c[18561].s)  [[typeinfo=0]]
27077: AST_AssignTo [27073] [27082]  [[typeinfo=0]]
27082: AST_Const 18565 0  [[typeinfo=0]]
27087: AST_TAG "endpos" (c[18571].s)  [[typeinfo=0]]
27091: AST_AssignTo [27087] [27096]  [[typeinfo=0]]
27096: AST_Const 18575 127  [[typeinfo=0]]
27101: AST_TAG "this_unit" (c[18581].s)  [[typeinfo=0]]
27105: AST_AssignTo [27101] [27110]  [[typeinfo=0]]
27110: AST_Const 18585 0  [[typeinfo=0]]
27115: AST_TAG "last_unit" (c[18591].s)  [[typeinfo=0]]
27119: AST_AssignTo [27115] [27124]  [[typeinfo=0]]
27124: AST_UNeg [27128]  [[typeinfo=0]]
27128: AST_Const 18596 1  [[typeinfo=0]]
27133: AST_TAG "eprompt" (c[18602].s)  [[typeinfo=0]]
27137: AST_AssignTo [27133] [27142]  [[typeinfo=0]]
27142: AST_TAG "com_prompt" (c[18606].s)  [[typeinfo=0]]
27146: AST_Scope [27166] -1 2  [[typeinfo=0]]
27152: AST_TAG "read_item" (c[18616].s)  [[typeinfo=0]]
27156: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27161: AST_Call [27152] [27156]  [[typeinfo=0]]
27166: AST_SEQ [-1] [27161]  [[typeinfo=0]]
27171: AST_TAG "type" (c[18627].s)  [[typeinfo=0]]
27175: AST_TAG "sym_type" (c[18632].s)  [[typeinfo=0]]
27179: AST_Const 18634 59  [[typeinfo=0]]
27184: AST_Idx [27175] [27179]  [[typeinfo=0]]
27189: AST_EQ [27171] [27184]  [[typeinfo=0]]
27194: AST_C_DoWhile [27146] [27189] -1 -1 -1  [[typeinfo=0]]
27202: AST_TAG "command" (c[18642].s)  [[typeinfo=0]]
27206: AST_AssignTo [27202] [27211]  [[typeinfo=0]]
27211: AST_TAG "sym" (c[18646].s)  [[typeinfo=0]]
27215: AST_TAG "command" (c[18655].s)  [[typeinfo=0]]
27219: AST_Const 18660 37  [[typeinfo=0]]
27224: AST_EQ [27215] [27219]  [[typeinfo=0]]
27229: AST_Scope [27459] -1 2  [[typeinfo=0]]
27235: AST_TAG "read_sym" (c[18671].s)  [[typeinfo=0]]
27239: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27244: AST_Call [27235] [27239]  [[typeinfo=0]]
27249: AST_TAG "sym_type" (c[18685].s)  [[typeinfo=0]]
27253: AST_TAG "sym" (c[18687].s)  [[typeinfo=0]]
27257: AST_Idx [27249] [27253]  [[typeinfo=0]]
27262: AST_TAG "sym_type" (c[18693].s)  [[typeinfo=0]]
27266: AST_Const 18695 59  [[typeinfo=0]]
27271: AST_Idx [27262] [27266]  [[typeinfo=0]]
27276: AST_EQ [27257] [27271]  [[typeinfo=0]]
27281: AST_Scope [27319] -1 2  [[typeinfo=0]]
27287: AST_TAG "pending_sym" (c[18710].s)  [[typeinfo=0]]
27291: AST_AssignTo [27287] [27296]  [[typeinfo=0]]
27296: AST_TAG "sym" (c[18714].s)  [[typeinfo=0]]
27300: AST_TAG "sym" (c[18726].s)  [[typeinfo=0]]
27304: AST_AssignTo [27300] [27309]  [[typeinfo=0]]
27309: AST_Const 18730 0  [[typeinfo=0]]
27314: AST_SEQ [27291] [27304]  [[typeinfo=0]]
27319: AST_SEQ [-1] [27314]  [[typeinfo=0]]
27324: AST_IFTHEN [27276] [27281]  [[typeinfo=0]]
27329: AST_TAG "percent" (c[18747].s)  [[typeinfo=0]]
27333: AST_Const 18753 97  [[typeinfo=0]]
27338: AST_TAG "sym" (c[18758].s)  [[typeinfo=0]]
27342: AST_LE [27333] [27338]  [[typeinfo=0]]
27347: AST_TAG "sym" (c[18765].s)  [[typeinfo=0]]
27351: AST_Const 18770 122  [[typeinfo=0]]
27356: AST_LE [27347] [27351]  [[typeinfo=0]]
27361: AST_BoolAnd [27342] [27356]  [[typeinfo=0]]
27366: AST_TAG "sym" (c[18777].s)  [[typeinfo=0]]
27370: AST_Const 18782 97  [[typeinfo=0]]
27375: AST_Const 18784 65  [[typeinfo=0]]
27380: AST_Sub [27370] [27375]  [[typeinfo=0]]
27385: AST_Sub [27366] [27380]  [[typeinfo=0]]
27390: AST_TAG "sym" (c[18790].s)  [[typeinfo=0]]
27394: AST_Cond [27361] [27385] [27390]  [[typeinfo=0]]
27400: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27405: AST_UseParam [27394] [27400]  [[typeinfo=0]]
27410: AST_Call [27329] [27405]  [[typeinfo=0]]
27415: AST_TAG "ok" (c[18805].s)  [[typeinfo=0]]
27419: AST_AssignTo [27415] [27434]  [[typeinfo=0]]
27424: AST_Const 18810 0  [[typeinfo=0]]
27429: AST_Const 18813 0  [[typeinfo=0]]
27434: AST_NE [27424] [27429]  [[typeinfo=0]]
27439: AST_ReturnResult [27419] -1  [[typeinfo=0]]
27444: AST_SEQ [27410] [27439]  [[typeinfo=0]]
27449: AST_SEQ [27324] [27444]  [[typeinfo=0]]
27454: AST_SEQ [27244] [27449]  [[typeinfo=0]]
27459: AST_SEQ [-1] [27454]  [[typeinfo=0]]
27464: AST_IFTHEN [27224] [27229]  [[typeinfo=0]]
27469: AST_TAG "type" (c[18830].s)  [[typeinfo=0]]
27473: AST_Const 18834 32  [[typeinfo=0]]
27478: AST_BitAnd [27469] [27473]  [[typeinfo=0]]
27483: AST_Const 18840 0  [[typeinfo=0]]
27488: AST_NE [27478] [27483]  [[typeinfo=0]]
27493: AST_Scope [27719] -1 2  [[typeinfo=0]]
27499: AST_TAG "max_unit" (c[18854].s)  [[typeinfo=0]]
27503: AST_Const 18858 0  [[typeinfo=0]]
27508: AST_GT [27499] [27503]  [[typeinfo=0]]
27513: AST_Scope [27541] -1 2  [[typeinfo=0]]
27519: AST_TAG "num" (c[18872].s)  [[typeinfo=0]]
27523: AST_TAG "max_unit" (c[18874].s)  [[typeinfo=0]]
27527: AST_Idx [27519] [27523]  [[typeinfo=0]]
27532: AST_AssignTo [27527] [27537]  [[typeinfo=0]]
27537: AST_TAG "number" (c[18879].s)  [[typeinfo=0]]
27541: AST_SEQ [-1] [27532]  [[typeinfo=0]]
27546: AST_Scope [27581] -1 2  [[typeinfo=0]]
27552: AST_TAG "ok" (c[18906].s)  [[typeinfo=0]]
27556: AST_AssignTo [27552] [27571]  [[typeinfo=0]]
27561: AST_Const 18911 0  [[typeinfo=0]]
27566: AST_Const 18914 0  [[typeinfo=0]]
27571: AST_NE [27561] [27566]  [[typeinfo=0]]
27576: AST_ReturnResult [27556] -1  [[typeinfo=0]]
27581: AST_SEQ [-1] [27576]  [[typeinfo=0]]
27586: AST_IFTHENELSE [27508] [27513] [27546]  [[typeinfo=0]]
27592: AST_TAG "read_item" (c[18933].s)  [[typeinfo=0]]
27596: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27601: AST_Call [27592] [27596]  [[typeinfo=0]]
27606: AST_TAG "type" (c[18947].s)  [[typeinfo=0]]
27610: AST_TAG "sym_type" (c[18952].s)  [[typeinfo=0]]
27614: AST_Const 18954 59  [[typeinfo=0]]
27619: AST_Idx [27610] [27614]  [[typeinfo=0]]
27624: AST_NE [27606] [27619]  [[typeinfo=0]]
27629: AST_TYPE_Atom 0 0  [[typeinfo=0]]
27634: AST_Cast [27667] 27629  [[typeinfo=0]]
27639: AST_TAG "fail_with" (c[18971].s)  [[typeinfo=0]]
27643: AST_Const 18974 18974  [[typeinfo=0]]
27648: AST_TAG "sym" (c[18977].s)  [[typeinfo=0]]
27652: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27657: AST_UseParam [27648] [27652]  [[typeinfo=0]]
27662: AST_UseParam [27643] [27657]  [[typeinfo=0]]
27667: AST_Call [27639] [27662]  [[typeinfo=0]]
27672: AST_IFTHEN [27624] [27634]  [[typeinfo=0]]
27677: AST_TAG "pending_sym" (c[18987].s)  [[typeinfo=0]]
27681: AST_AssignTo [27677] [27686]  [[typeinfo=0]]
27686: AST_TAG "sym" (c[18991].s)  [[typeinfo=0]]
27690: AST_TAG "ok" (c[19003].s)  [[typeinfo=0]]
27694: AST_ReturnResult [27690] -1  [[typeinfo=0]]
27699: AST_SEQ [27681] [27694]  [[typeinfo=0]]
27704: AST_SEQ [27672] [27699]  [[typeinfo=0]]
27709: AST_SEQ [27601] [27704]  [[typeinfo=0]]
27714: AST_SEQ [27586] [27709]  [[typeinfo=0]]
27719: AST_SEQ [-1] [27714]  [[typeinfo=0]]
27724: AST_IFTHEN [27488] [27493]  [[typeinfo=0]]
27729: AST_Scope [29025] -1 2  [[typeinfo=0]]
27735: AST_TAG "type" (c[19034].s)  [[typeinfo=0]]
27739: AST_Const 19038 128  [[typeinfo=0]]
27744: AST_BitAnd [27735] [27739]  [[typeinfo=0]]
27749: AST_Const 19044 0  [[typeinfo=0]]
27754: AST_NE [27744] [27749]  [[typeinfo=0]]
27759: AST_Scope [27803] -1 2  [[typeinfo=0]]
27765: AST_TAG "fail_with" (c[19061].s)  [[typeinfo=0]]
27769: AST_Const 19064 19064  [[typeinfo=0]]
27774: AST_TAG "command" (c[19067].s)  [[typeinfo=0]]
27778: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27783: AST_UseParam [27774] [27778]  [[typeinfo=0]]
27788: AST_UseParam [27769] [27783]  [[typeinfo=0]]
27793: AST_Call [27765] [27788]  [[typeinfo=0]]
27798: AST_ReturnResult [27793] -1  [[typeinfo=0]]
27803: AST_SEQ [-1] [27798]  [[typeinfo=0]]
27808: AST_IFTHEN [27754] [27759]  [[typeinfo=0]]
27813: AST_TAG "type" (c[19090].s)  [[typeinfo=0]]
27817: AST_Const 19094 16  [[typeinfo=0]]
27822: AST_BitAnd [27813] [27817]  [[typeinfo=0]]
27827: AST_Const 19100 0  [[typeinfo=0]]
27832: AST_NE [27822] [27827]  [[typeinfo=0]]
27837: AST_Scope [27881] -1 2  [[typeinfo=0]]
27843: AST_TAG "fail_with" (c[19117].s)  [[typeinfo=0]]
27847: AST_Const 19120 19120  [[typeinfo=0]]
27852: AST_TAG "command" (c[19123].s)  [[typeinfo=0]]
27856: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27861: AST_UseParam [27852] [27856]  [[typeinfo=0]]
27866: AST_UseParam [27847] [27861]  [[typeinfo=0]]
27871: AST_Call [27843] [27866]  [[typeinfo=0]]
27876: AST_ReturnResult [27871] -1  [[typeinfo=0]]
27881: AST_SEQ [-1] [27876]  [[typeinfo=0]]
27886: AST_IFTHEN [27832] [27837]  [[typeinfo=0]]
27891: AST_TAG "type" (c[19146].s)  [[typeinfo=0]]
27895: AST_Const 19150 32  [[typeinfo=0]]
27900: AST_BitAnd [27891] [27895]  [[typeinfo=0]]
27905: AST_Const 19156 0  [[typeinfo=0]]
27910: AST_NE [27900] [27905]  [[typeinfo=0]]
27915: AST_Scope [27959] -1 2  [[typeinfo=0]]
27921: AST_TAG "fail_with" (c[19173].s)  [[typeinfo=0]]
27925: AST_Const 19176 19176  [[typeinfo=0]]
27930: AST_TAG "command" (c[19179].s)  [[typeinfo=0]]
27934: AST_UseParam [-1] [-1]  [[typeinfo=0]]
27939: AST_UseParam [27930] [27934]  [[typeinfo=0]]
27944: AST_UseParam [27925] [27939]  [[typeinfo=0]]
27949: AST_Call [27921] [27944]  [[typeinfo=0]]
27954: AST_ReturnResult [27949] -1  [[typeinfo=0]]
27959: AST_SEQ [-1] [27954]  [[typeinfo=0]]
27964: AST_IFTHEN [27910] [27915]  [[typeinfo=0]]
27969: AST_TAG "limit" (c[19198].s)  [[typeinfo=0]]
27973: AST_AssignTo [27969] [27978]  [[typeinfo=0]]
27978: AST_Const 19202 0  [[typeinfo=0]]
27983: AST_TAG "pointer" (c[19211].s)  [[typeinfo=0]]
27987: AST_AssignTo [27983] [27992]  [[typeinfo=0]]
27992: AST_Const 19215 0  [[typeinfo=0]]
27997: AST_TAG "repeat_count" (c[19224].s)  [[typeinfo=0]]
28001: AST_AssignTo [27997] [28006]  [[typeinfo=0]]
28006: AST_Const 19228 1  [[typeinfo=0]]
28011: AST_TAG "type" (c[19241].s)  [[typeinfo=0]]
28015: AST_Const 19245 64  [[typeinfo=0]]
28020: AST_BitAnd [28011] [28015]  [[typeinfo=0]]
28025: AST_Const 19251 0  [[typeinfo=0]]
28030: AST_EQ [28020] [28025]  [[typeinfo=0]]
28035: AST_Scope [28291] -1 2  [[typeinfo=0]]
28041: AST_TAG "saved_type" (c[19265].s)  [[typeinfo=0]]
28045: AST_AssignTo [28041] [28050]  [[typeinfo=0]]
28050: AST_TAG "type" (c[19269].s)  [[typeinfo=0]]
28054: AST_TAG "saved_type" (c[19285].s)  [[typeinfo=0]]
28058: AST_Const 19289 8  [[typeinfo=0]]
28063: AST_BitAnd [28054] [28058]  [[typeinfo=0]]
28068: AST_Const 19295 0  [[typeinfo=0]]
28073: AST_NE [28063] [28068]  [[typeinfo=0]]
28078: AST_TAG "Scan_sign" (c[19298].s)  [[typeinfo=0]]
28082: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28087: AST_Call [28078] [28082]  [[typeinfo=0]]
28092: AST_IFTHEN [28073] [28087]  [[typeinfo=0]]
28097: AST_TAG "saved_type" (c[19317].s)  [[typeinfo=0]]
28101: AST_Const 19321 4  [[typeinfo=0]]
28106: AST_BitAnd [28097] [28101]  [[typeinfo=0]]
28111: AST_Const 19327 0  [[typeinfo=0]]
28116: AST_NE [28106] [28111]  [[typeinfo=0]]
28121: AST_TAG "Scan_scope" (c[19330].s)  [[typeinfo=0]]
28125: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28130: AST_Call [28121] [28125]  [[typeinfo=0]]
28135: AST_IFTHEN [28116] [28130]  [[typeinfo=0]]
28140: AST_TAG "saved_type" (c[19349].s)  [[typeinfo=0]]
28144: AST_Const 19353 2  [[typeinfo=0]]
28149: AST_BitAnd [28140] [28144]  [[typeinfo=0]]
28154: AST_Const 19359 0  [[typeinfo=0]]
28159: AST_NE [28149] [28154]  [[typeinfo=0]]
28164: AST_TAG "Scan_text" (c[19362].s)  [[typeinfo=0]]
28168: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28173: AST_Call [28164] [28168]  [[typeinfo=0]]
28178: AST_IFTHEN [28159] [28173]  [[typeinfo=0]]
28183: AST_UBoolNot [28187]  [[typeinfo=0]]
28187: AST_TAG "ok" (c[19381].s)  [[typeinfo=0]]
28191: AST_TAG "ok" (c[19387].s)  [[typeinfo=0]]
28195: AST_ReturnResult [28191] -1  [[typeinfo=0]]
28200: AST_IFTHEN [28183] [28195]  [[typeinfo=0]]
28205: AST_TAG "saved_type" (c[19404].s)  [[typeinfo=0]]
28209: AST_Const 19408 1  [[typeinfo=0]]
28214: AST_BitAnd [28205] [28209]  [[typeinfo=0]]
28219: AST_Const 19414 0  [[typeinfo=0]]
28224: AST_NE [28214] [28219]  [[typeinfo=0]]
28229: AST_TAG "Scan_repeat" (c[19417].s)  [[typeinfo=0]]
28233: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28238: AST_Call [28229] [28233]  [[typeinfo=0]]
28243: AST_IFTHEN [28224] [28238]  [[typeinfo=0]]
28248: AST_TAG "type" (c[19432].s)  [[typeinfo=0]]
28252: AST_AssignTo [28248] [28257]  [[typeinfo=0]]
28257: AST_TAG "saved_type" (c[19436].s)  [[typeinfo=0]]
28261: AST_SEQ [28243] [28252]  [[typeinfo=0]]
28266: AST_SEQ [28200] [28261]  [[typeinfo=0]]
28271: AST_SEQ [28178] [28266]  [[typeinfo=0]]
28276: AST_SEQ [28135] [28271]  [[typeinfo=0]]
28281: AST_SEQ [28092] [28276]  [[typeinfo=0]]
28286: AST_SEQ [28045] [28281]  [[typeinfo=0]]
28291: AST_SEQ [-1] [28286]  [[typeinfo=0]]
28296: AST_Scope [28928] -1 2  [[typeinfo=0]]
28302: AST_TAG "type" (c[19463].s)  [[typeinfo=0]]
28306: AST_Const 19467 15  [[typeinfo=0]]
28311: AST_BitAnd [28302] [28306]  [[typeinfo=0]]
28316: AST_Scope [28915] -1 2  [[typeinfo=0]]
28322: AST_Const 19486 15  [[typeinfo=0]]
28327: AST_TAG "pending_sym" (c[19504].s)  [[typeinfo=0]]
28331: AST_AssignTo [28327] [28336]  [[typeinfo=0]]
28336: AST_Const 19508 10  [[typeinfo=0]]
28341: AST_Case [28322] -1 -1  [[typeinfo=0]]
28347: AST_SEQ [28341] [28331]  [[typeinfo=0]]
28352: AST_TAG "unchain" (c[19526].s)  [[typeinfo=0]]
28356: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28361: AST_Call [28352] [28356]  [[typeinfo=0]]
28366: AST_TAG "pointer" (c[19550].s)  [[typeinfo=0]]
28370: AST_Const 19555 0  [[typeinfo=0]]
28375: AST_GE [28366] [28370]  [[typeinfo=0]]
28380: AST_Scope [28425] -1 2  [[typeinfo=0]]
28386: AST_TAG "fail_with" (c[19581].s)  [[typeinfo=0]]
28390: AST_Const 19584 19584  [[typeinfo=0]]
28395: AST_Const 19587 41  [[typeinfo=0]]
28400: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28405: AST_UseParam [28395] [28400]  [[typeinfo=0]]
28410: AST_UseParam [28390] [28405]  [[typeinfo=0]]
28415: AST_Call [28386] [28410]  [[typeinfo=0]]
28420: AST_ReturnResult [28415] -1  [[typeinfo=0]]
28425: AST_SEQ [-1] [28420]  [[typeinfo=0]]
28430: AST_IFTHEN [28375] [28380]  [[typeinfo=0]]
28435: AST_TAG "max_unit" (c[19624].s)  [[typeinfo=0]]
28439: AST_AssignTo [28435] [28444]  [[typeinfo=0]]
28444: AST_TAG "this_unit" (c[19628].s)  [[typeinfo=0]]
28448: AST_TAG "repeat_count" (c[19646].s)  [[typeinfo=0]]
28452: AST_AssignTo [28448] [28457]  [[typeinfo=0]]
28457: AST_Const 19650 1  [[typeinfo=0]]
28462: AST_TAG "command" (c[19668].s)  [[typeinfo=0]]
28466: AST_AssignTo [28462] [28471]  [[typeinfo=0]]
28471: AST_Const 19672 41  [[typeinfo=0]]
28476: AST_TAG "stack" (c[19690].s)  [[typeinfo=0]]
28480: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28485: AST_Call [28476] [28480]  [[typeinfo=0]]
28490: AST_TAG "command" (c[19711].s)  [[typeinfo=0]]
28494: AST_AssignTo [28490] [28499]  [[typeinfo=0]]
28499: AST_Const 19715 0  [[typeinfo=0]]
28504: AST_TAG "stack" (c[19733].s)  [[typeinfo=0]]
28508: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28513: AST_Call [28504] [28508]  [[typeinfo=0]]
28518: AST_TAG "ok" (c[19757].s)  [[typeinfo=0]]
28522: AST_ReturnResult [28518] -1  [[typeinfo=0]]
28527: AST_Const 19775 2  [[typeinfo=0]]
28532: AST_TAG "command" (c[19793].s)  [[typeinfo=0]]
28536: AST_AssignTo [28532] [28541]  [[typeinfo=0]]
28541: AST_Const 19797 40  [[typeinfo=0]]
28546: AST_Case [28527] -1 -1  [[typeinfo=0]]
28552: AST_SEQ [28546] [28536]  [[typeinfo=0]]
28557: AST_TAG "pointer" (c[19815].s)  [[typeinfo=0]]
28561: AST_AssignTo [28557] [28566]  [[typeinfo=0]]
28566: AST_TAG "last_unit" (c[19819].s)  [[typeinfo=0]]
28570: AST_TAG "last_unit" (c[19837].s)  [[typeinfo=0]]
28574: AST_AssignTo [28570] [28579]  [[typeinfo=0]]
28579: AST_TAG "this_unit" (c[19841].s)  [[typeinfo=0]]
28583: AST_C_Break -1  [[typeinfo=0]]
28587: AST_Const 19876 3  [[typeinfo=0]]
28592: AST_TAG "command" (c[19894].s)  [[typeinfo=0]]
28596: AST_AssignTo [28592] [28601]  [[typeinfo=0]]
28601: AST_Const 19898 44  [[typeinfo=0]]
28606: AST_Case [28587] -1 -1  [[typeinfo=0]]
28612: AST_SEQ [28606] [28596]  [[typeinfo=0]]
28617: AST_TAG "pointer" (c[19916].s)  [[typeinfo=0]]
28621: AST_AssignTo [28617] [28626]  [[typeinfo=0]]
28626: AST_TAG "last_unit" (c[19920].s)  [[typeinfo=0]]
28630: AST_TAG "last_unit" (c[19938].s)  [[typeinfo=0]]
28634: AST_AssignTo [28630] [28639]  [[typeinfo=0]]
28639: AST_TAG "this_unit" (c[19942].s)  [[typeinfo=0]]
28643: AST_C_Break -1  [[typeinfo=0]]
28647: AST_Const 19977 4  [[typeinfo=0]]
28652: AST_TAG "command" (c[19995].s)  [[typeinfo=0]]
28656: AST_AssignTo [28652] [28661]  [[typeinfo=0]]
28661: AST_Const 19999 41  [[typeinfo=0]]
28666: AST_Case [28647] -1 -1  [[typeinfo=0]]
28672: AST_SEQ [28666] [28656]  [[typeinfo=0]]
28677: AST_TAG "Scan_repeat" (c[20017].s)  [[typeinfo=0]]
28681: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28686: AST_Call [28677] [28681]  [[typeinfo=0]]
28691: AST_TAG "unchain" (c[20038].s)  [[typeinfo=0]]
28695: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28700: AST_Call [28691] [28695]  [[typeinfo=0]]
28705: AST_TAG "pointer" (c[20062].s)  [[typeinfo=0]]
28709: AST_Const 20066 0  [[typeinfo=0]]
28714: AST_LT [28705] [28709]  [[typeinfo=0]]
28719: AST_Scope [28764] -1 2  [[typeinfo=0]]
28725: AST_TAG "fail_with" (c[20092].s)  [[typeinfo=0]]
28729: AST_Const 20095 20095  [[typeinfo=0]]
28734: AST_Const 20098 40  [[typeinfo=0]]
28739: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28744: AST_UseParam [28734] [28739]  [[typeinfo=0]]
28749: AST_UseParam [28729] [28744]  [[typeinfo=0]]
28754: AST_Call [28725] [28749]  [[typeinfo=0]]
28759: AST_ReturnResult [28754] -1  [[typeinfo=0]]
28764: AST_SEQ [-1] [28759]  [[typeinfo=0]]
28769: AST_IFTHEN [28714] [28719]  [[typeinfo=0]]
28774: AST_TAG "num" (c[20135].s)  [[typeinfo=0]]
28778: AST_TAG "pointer" (c[20137].s)  [[typeinfo=0]]
28782: AST_Idx [28774] [28778]  [[typeinfo=0]]
28787: AST_AssignTo [28782] [28792]  [[typeinfo=0]]
28792: AST_TAG "repeat_count" (c[20142].s)  [[typeinfo=0]]
28796: AST_C_Break -1  [[typeinfo=0]]
28800: AST_SEQ [28787] [28796]  [[typeinfo=0]]
28805: AST_SEQ [28769] [28800]  [[typeinfo=0]]
28810: AST_SEQ [28700] [28805]  [[typeinfo=0]]
28815: AST_SEQ [28686] [28810]  [[typeinfo=0]]
28820: AST_SEQ [28672] [28815]  [[typeinfo=0]]
28825: AST_SEQ [28643] [28820]  [[typeinfo=0]]
28830: AST_SEQ [28634] [28825]  [[typeinfo=0]]
28835: AST_SEQ [28621] [28830]  [[typeinfo=0]]
28840: AST_SEQ [28612] [28835]  [[typeinfo=0]]
28845: AST_SEQ [28583] [28840]  [[typeinfo=0]]
28850: AST_SEQ [28574] [28845]  [[typeinfo=0]]
28855: AST_SEQ [28561] [28850]  [[typeinfo=0]]
28860: AST_SEQ [28552] [28855]  [[typeinfo=0]]
28865: AST_SEQ [28522] [28860]  [[typeinfo=0]]
28870: AST_SEQ [28513] [28865]  [[typeinfo=0]]
28875: AST_SEQ [28494] [28870]  [[typeinfo=0]]
28880: AST_SEQ [28485] [28875]  [[typeinfo=0]]
28885: AST_SEQ [28466] [28880]  [[typeinfo=0]]
28890: AST_SEQ [28452] [28885]  [[typeinfo=0]]
28895: AST_SEQ [28439] [28890]  [[typeinfo=0]]
28900: AST_SEQ [28430] [28895]  [[typeinfo=0]]
28905: AST_SEQ [28361] [28900]  [[typeinfo=0]]
28910: AST_SEQ [28347] [28905]  [[typeinfo=0]]
28915: AST_SEQ [-1] [28910]  [[typeinfo=0]]
28920: AST_Switch [28311] [28316] -1 -1 -1  [[typeinfo=0]]
28928: AST_SEQ [-1] [28920]  [[typeinfo=0]]
28933: AST_IFTHENELSE [28030] [28035] [28296]  [[typeinfo=0]]
28939: AST_TAG "stack" (c[20188].s)  [[typeinfo=0]]
28943: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28948: AST_Call [28939] [28943]  [[typeinfo=0]]
28953: AST_TAG "read_item" (c[20200].s)  [[typeinfo=0]]
28957: AST_UseParam [-1] [-1]  [[typeinfo=0]]
28962: AST_Call [28953] [28957]  [[typeinfo=0]]
28967: AST_TAG "command" (c[20212].s)  [[typeinfo=0]]
28971: AST_AssignTo [28967] [28976]  [[typeinfo=0]]
28976: AST_TAG "sym" (c[20216].s)  [[typeinfo=0]]
28980: AST_SEQ [28962] [28971]  [[typeinfo=0]]
28985: AST_SEQ [28948] [28980]  [[typeinfo=0]]
28990: AST_SEQ [28933] [28985]  [[typeinfo=0]]
28995: AST_SEQ [28001] [28990]  [[typeinfo=0]]
29000: AST_SEQ [27987] [28995]  [[typeinfo=0]]
29005: AST_SEQ [27973] [29000]  [[typeinfo=0]]
29010: AST_SEQ [27964] [29005]  [[typeinfo=0]]
29015: AST_SEQ [27886] [29010]  [[typeinfo=0]]
29020: AST_SEQ [27808] [29015]  [[typeinfo=0]]
29025: AST_SEQ [-1] [29020]  [[typeinfo=0]]
29030: AST_C_ForLoop [-1] [-1] [-1] [27729] -1 -1 -1  [[typeinfo=0]]
29040: AST_TAG "ok" (c[20230].s)  [[typeinfo=0]]
29044: AST_ReturnResult [29040] -1  [[typeinfo=0]]
29049: AST_SEQ [29030] [29044]  [[typeinfo=0]]
29054: AST_SEQ [27724] [29049]  [[typeinfo=0]]
29059: AST_SEQ [27464] [29054]  [[typeinfo=0]]
29064: AST_SEQ [27206] [29059]  [[typeinfo=0]]
29069: AST_SEQ [27194] [29064]  [[typeinfo=0]]
29074: AST_SEQ [27137] [29069]  [[typeinfo=0]]
29079: AST_SEQ [27119] [29074]  [[typeinfo=0]]
29084: AST_SEQ [27105] [29079]  [[typeinfo=0]]
29089: AST_SEQ [27091] [29084]  [[typeinfo=0]]
29094: AST_SEQ [27077] [29089]  [[typeinfo=0]]
29099: AST_SEQ [27053] [29094]  [[typeinfo=0]]
29104: AST_SEQ [27044] [29099]  [[typeinfo=0]]
29109: AST_SEQ [-1] [29104]  [[typeinfo=0]]
29114: AST_DefProc 27010 [27015] [-1] [27019]  [[typeinfo=0]]
29121: AST_TYPE_Atom 0 0  [[typeinfo=0]]
29126: AST_TAG "load_file" (c[20238].s)  [[typeinfo=0]]
29130: AST_Scope [29565] -1 1  [[typeinfo=0]]
29136: AST_TYPE_Atom 0 1  [[typeinfo=0]]
29141: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
29145: AST_TAG "p" (c[20252].s)  [[typeinfo=0]]
29149: AST_TAG "fbeg" (c[20256].s)  [[typeinfo=0]]
29153: AST_AssignTo [-1] [29149]  [[typeinfo=0]]
29158: AST_Declare [29145] [29136]  [[typeinfo=0]]
29163: AST_SEQ [29158] [-1]  [[typeinfo=0]]
29168: AST_TYPE_Atom 0 4  [[typeinfo=0]]
29173: AST_TAG "sym" (c[20264].s)  [[typeinfo=0]]
29177: AST_Declare [29173] [29168]  [[typeinfo=0]]
29182: AST_SEQ [29177] [-1]  [[typeinfo=0]]
29187: AST_SEQ [29182] [-1]  [[typeinfo=0]]
29192: AST_SEQ [29163] [29187]  [[typeinfo=0]]
29197: AST_TAG "sym" (c[20270].s)  [[typeinfo=0]]
29201: AST_AssignTo [29197] [29224]  [[typeinfo=0]]
29206: AST_TAG "fgetc" (c[20274].s)  [[typeinfo=0]]
29210: AST_TAG "main_in" (c[20276].s)  [[typeinfo=0]]
29214: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29219: AST_UseParam [29210] [29214]  [[typeinfo=0]]
29224: AST_Call [29206] [29219]  [[typeinfo=0]]
29229: AST_TAG "sym" (c[20286].s)  [[typeinfo=0]]
29233: AST_TAG "EOF" (c[20291].s)  [[typeinfo=0]]
29237: AST_NE [29229] [29233]  [[typeinfo=0]]
29242: AST_Scope [29402] -1 2  [[typeinfo=0]]
29248: AST_IndirectThrough [29256]  [[typeinfo=0]]
29252: AST_TAG "p" (c[20303].s)  [[typeinfo=0]]
29256: AST_Post_Inc [29252]  [[typeinfo=0]]
29260: AST_AssignTo [29248] [29265]  [[typeinfo=0]]
29265: AST_TAG "sym" (c[20308].s)  [[typeinfo=0]]
29269: AST_TAG "p" (c[20320].s)  [[typeinfo=0]]
29273: AST_TAG "fend" (c[20325].s)  [[typeinfo=0]]
29277: AST_EQ [29269] [29273]  [[typeinfo=0]]
29282: AST_Scope [29350] -1 2  [[typeinfo=0]]
29288: AST_TAG "fprintf" (c[20339].s)  [[typeinfo=0]]
29292: AST_TAG "stderr" (c[20342].s)  [[typeinfo=0]]
29296: AST_Const 20345 20345  [[typeinfo=0]]
29301: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29306: AST_UseParam [29296] [29301]  [[typeinfo=0]]
29311: AST_UseParam [29292] [29306]  [[typeinfo=0]]
29316: AST_Call [29288] [29311]  [[typeinfo=0]]
29321: AST_TAG "percent" (c[20358].s)  [[typeinfo=0]]
29325: AST_Const 20361 65  [[typeinfo=0]]
29330: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29335: AST_UseParam [29325] [29330]  [[typeinfo=0]]
29340: AST_Call [29321] [29335]  [[typeinfo=0]]
29345: AST_SEQ [29316] [29340]  [[typeinfo=0]]
29350: AST_SEQ [-1] [29345]  [[typeinfo=0]]
29355: AST_IFTHEN [29277] [29282]  [[typeinfo=0]]
29360: AST_TAG "sym" (c[20379].s)  [[typeinfo=0]]
29364: AST_AssignTo [29360] [29387]  [[typeinfo=0]]
29369: AST_TAG "fgetc" (c[20383].s)  [[typeinfo=0]]
29373: AST_TAG "main_in" (c[20385].s)  [[typeinfo=0]]
29377: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29382: AST_UseParam [29373] [29377]  [[typeinfo=0]]
29387: AST_Call [29369] [29382]  [[typeinfo=0]]
29392: AST_SEQ [29355] [29364]  [[typeinfo=0]]
29397: AST_SEQ [29260] [29392]  [[typeinfo=0]]
29402: AST_SEQ [-1] [29397]  [[typeinfo=0]]
29407: AST_C_While [29237] [29242] -1 -1 -1  [[typeinfo=0]]
29415: AST_TAG "fclose" (c[20397].s)  [[typeinfo=0]]
29419: AST_TAG "main_in" (c[20400].s)  [[typeinfo=0]]
29423: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29428: AST_UseParam [29419] [29423]  [[typeinfo=0]]
29433: AST_Call [29415] [29428]  [[typeinfo=0]]
29438: AST_TAG "p" (c[20410].s)  [[typeinfo=0]]
29442: AST_TAG "fbeg" (c[20415].s)  [[typeinfo=0]]
29446: AST_NE [29438] [29442]  [[typeinfo=0]]
29451: AST_IndirectThrough [29455]  [[typeinfo=0]]
29455: AST_Pre_Dec [29459]  [[typeinfo=0]]
29459: AST_TAG "fp" (c[20421].s)  [[typeinfo=0]]
29463: AST_AssignTo [29451] [29468]  [[typeinfo=0]]
29468: AST_IndirectThrough [29472]  [[typeinfo=0]]
29472: AST_Pre_Dec [29476]  [[typeinfo=0]]
29476: AST_TAG "p" (c[20429].s)  [[typeinfo=0]]
29480: AST_C_While [29446] [29463] -1 -1 -1  [[typeinfo=0]]
29488: AST_TAG "lend" (c[20436].s)  [[typeinfo=0]]
29492: AST_AssignTo [29488] [29497]  [[typeinfo=0]]
29497: AST_TAG "fp" (c[20440].s)  [[typeinfo=0]]
29501: AST_IndirectThrough [29505]  [[typeinfo=0]]
29505: AST_TAG "lend" (c[20450].s)  [[typeinfo=0]]
29509: AST_Const 20455 10  [[typeinfo=0]]
29514: AST_NE [29501] [29509]  [[typeinfo=0]]
29519: AST_TAG "lend" (c[20464].s)  [[typeinfo=0]]
29523: AST_Post_Inc [29519]  [[typeinfo=0]]
29527: AST_C_While [29514] [29523] -1 -1 -1  [[typeinfo=0]]
29535: AST_SEQ [29492] [29527]  [[typeinfo=0]]
29540: AST_SEQ [29480] [29535]  [[typeinfo=0]]
29545: AST_SEQ [29433] [29540]  [[typeinfo=0]]
29550: AST_SEQ [29407] [29545]  [[typeinfo=0]]
29555: AST_SEQ [29201] [29550]  [[typeinfo=0]]
29560: AST_SEQ [29192] [29555]  [[typeinfo=0]]
29565: AST_SEQ [-1] [29560]  [[typeinfo=0]]
29570: AST_DefProc 29121 [29126] [-1] [29130]  [[typeinfo=0]]
29577: AST_TYPE_Atom 0 4  [[typeinfo=0]]
29582: AST_TAG "execute_unit" (c[20472].s)  [[typeinfo=0]]
29586: AST_Scope [30759] -1 1  [[typeinfo=0]]
29592: AST_TYPE_Atom 0 1  [[typeinfo=0]]
29597: AST_TAG "culprit" (c[20485].s)  [[typeinfo=0]]
29601: AST_Declare [29597] [29592]  [[typeinfo=0]]
29606: AST_SEQ [29601] [-1]  [[typeinfo=0]]
29611: AST_SEQ [29606] [-1]  [[typeinfo=0]]
29616: AST_TAG "command" (c[20491].s)  [[typeinfo=0]]
29620: AST_AssignTo [29616] [29633]  [[typeinfo=0]]
29625: AST_TAG "com" (c[20495].s)  [[typeinfo=0]]
29629: AST_TAG "this_unit" (c[20497].s)  [[typeinfo=0]]
29633: AST_Idx [29625] [29629]  [[typeinfo=0]]
29638: AST_TAG "culprit" (c[20504].s)  [[typeinfo=0]]
29642: AST_AssignTo [29638] [29647]  [[typeinfo=0]]
29647: AST_TAG "command" (c[20508].s)  [[typeinfo=0]]
29651: AST_TAG "pointer" (c[20514].s)  [[typeinfo=0]]
29655: AST_AssignTo [29651] [29668]  [[typeinfo=0]]
29660: AST_TAG "link" (c[20518].s)  [[typeinfo=0]]
29664: AST_TAG "this_unit" (c[20520].s)  [[typeinfo=0]]
29668: AST_Idx [29660] [29664]  [[typeinfo=0]]
29673: AST_TAG "repeat_count" (c[20527].s)  [[typeinfo=0]]
29677: AST_AssignTo [29673] [29690]  [[typeinfo=0]]
29682: AST_TAG "num" (c[20531].s)  [[typeinfo=0]]
29686: AST_TAG "this_unit" (c[20533].s)  [[typeinfo=0]]
29690: AST_Idx [29682] [29686]  [[typeinfo=0]]
29695: AST_Scope [30695] -1 2  [[typeinfo=0]]
29701: AST_TAG "IntSeen" (c[20563].s)  [[typeinfo=0]]
29705: AST_Scope [29745] -1 2  [[typeinfo=0]]
29711: AST_TAG "ok" (c[20589].s)  [[typeinfo=0]]
29715: AST_AssignTo [29711] [29730]  [[typeinfo=0]]
29720: AST_Const 20594 0  [[typeinfo=0]]
29725: AST_Const 20597 0  [[typeinfo=0]]
29730: AST_NE [29720] [29725]  [[typeinfo=0]]
29735: AST_ReturnResult [29715] -1  [[typeinfo=0]]
29740: AST_SEQ [-1] [29735]  [[typeinfo=0]]
29745: AST_SEQ [-1] [29740]  [[typeinfo=0]]
29750: AST_IFTHEN [29701] [29705]  [[typeinfo=0]]
29755: AST_TAG "execute_command" (c[20616].s)  [[typeinfo=0]]
29759: AST_UseParam [-1] [-1]  [[typeinfo=0]]
29764: AST_Call [29755] [29759]  [[typeinfo=0]]
29769: AST_Pre_Dec [29773]  [[typeinfo=0]]
29773: AST_TAG "repeat_count" (c[20629].s)  [[typeinfo=0]]
29777: AST_TAG "ok" (c[20641].s)  [[typeinfo=0]]
29781: AST_Scope [29858] -1 2  [[typeinfo=0]]
29787: AST_TAG "repeat_count" (c[20658].s)  [[typeinfo=0]]
29791: AST_Const 20663 0  [[typeinfo=0]]
29796: AST_EQ [29787] [29791]  [[typeinfo=0]]
29801: AST_TAG "repeat_count" (c[20668].s)  [[typeinfo=0]]
29805: AST_TAG "stopper" (c[20673].s)  [[typeinfo=0]]
29809: AST_EQ [29801] [29805]  [[typeinfo=0]]
29814: AST_BoolOr [29796] [29809]  [[typeinfo=0]]
29819: AST_Scope [29839] -1 2  [[typeinfo=0]]
29825: AST_TAG "ok" (c[20705].s)  [[typeinfo=0]]
29829: AST_ReturnResult [29825] -1  [[typeinfo=0]]
29834: AST_SEQ [-1] [29829]  [[typeinfo=0]]
29839: AST_SEQ [-1] [29834]  [[typeinfo=0]]
29844: AST_IFTHEN [29814] [29819]  [[typeinfo=0]]
29849: AST_C_Continue -1  [[typeinfo=0]]
29853: AST_SEQ [29844] [29849]  [[typeinfo=0]]
29858: AST_SEQ [-1] [29853]  [[typeinfo=0]]
29863: AST_IFTHEN [29777] [29781]  [[typeinfo=0]]
29868: AST_TAG "ok" (c[20746].s)  [[typeinfo=0]]
29872: AST_AssignTo [29868] [29887]  [[typeinfo=0]]
29877: AST_Const 20751 0  [[typeinfo=0]]
29882: AST_Const 20754 0  [[typeinfo=0]]
29887: AST_EQ [29877] [29882]  [[typeinfo=0]]
29892: AST_Scope [30655] -1 2  [[typeinfo=0]]
29898: AST_TAG "IntSeen" (c[20785].s)  [[typeinfo=0]]
29902: AST_Scope [29942] -1 2  [[typeinfo=0]]
29908: AST_TAG "ok" (c[20817].s)  [[typeinfo=0]]
29912: AST_AssignTo [29908] [29927]  [[typeinfo=0]]
29917: AST_Const 20822 0  [[typeinfo=0]]
29922: AST_Const 20825 0  [[typeinfo=0]]
29927: AST_NE [29917] [29922]  [[typeinfo=0]]
29932: AST_ReturnResult [29912] -1  [[typeinfo=0]]
29937: AST_SEQ [-1] [29932]  [[typeinfo=0]]
29942: AST_SEQ [-1] [29937]  [[typeinfo=0]]
29947: AST_IFTHEN [29898] [29902]  [[typeinfo=0]]
29952: AST_TAG "repeat_count" (c[20853].s)  [[typeinfo=0]]
29956: AST_Const 20857 0  [[typeinfo=0]]
29961: AST_LT [29952] [29956]  [[typeinfo=0]]
29966: AST_Scope [30087] -1 2  [[typeinfo=0]]
29972: AST_TAG "com" (c[20877].s)  [[typeinfo=0]]
29976: AST_TAG "this_unit" (c[20879].s)  [[typeinfo=0]]
29980: AST_Const 20881 1  [[typeinfo=0]]
29985: AST_Add [29976] [29980]  [[typeinfo=0]]
29990: AST_Idx [29972] [29985]  [[typeinfo=0]]
29995: AST_Const 20887 92  [[typeinfo=0]]
30000: AST_EQ [29990] [29995]  [[typeinfo=0]]
30005: AST_Scope [30058] -1 2  [[typeinfo=0]]
30011: AST_TAG "this_unit" (c[20906].s)  [[typeinfo=0]]
30015: AST_Post_Inc [30011]  [[typeinfo=0]]
30019: AST_TAG "ok" (c[20943].s)  [[typeinfo=0]]
30023: AST_AssignTo [30019] [30038]  [[typeinfo=0]]
30028: AST_Const 20948 0  [[typeinfo=0]]
30033: AST_Const 20951 0  [[typeinfo=0]]
30038: AST_NE [30028] [30033]  [[typeinfo=0]]
30043: AST_ReturnResult [30023] -1  [[typeinfo=0]]
30048: AST_SEQ [-1] [30043]  [[typeinfo=0]]
30053: AST_SEQ [30015] [30048]  [[typeinfo=0]]
30058: AST_SEQ [-1] [30053]  [[typeinfo=0]]
30063: AST_IFTHEN [30000] [30005]  [[typeinfo=0]]
30068: AST_TAG "ok" (c[20996].s)  [[typeinfo=0]]
30072: AST_ReturnResult [30068] -1  [[typeinfo=0]]
30077: AST_SEQ [-1] [30072]  [[typeinfo=0]]
30082: AST_SEQ [30063] [30077]  [[typeinfo=0]]
30087: AST_SEQ [-1] [30082]  [[typeinfo=0]]
30092: AST_IFTHEN [29961] [29966]  [[typeinfo=0]]
30097: AST_TAG "com" (c[21024].s)  [[typeinfo=0]]
30101: AST_TAG "this_unit" (c[21026].s)  [[typeinfo=0]]
30105: AST_Const 21028 1  [[typeinfo=0]]
30110: AST_Add [30101] [30105]  [[typeinfo=0]]
30115: AST_Idx [30097] [30110]  [[typeinfo=0]]
30120: AST_Const 21034 92  [[typeinfo=0]]
30125: AST_EQ [30115] [30120]  [[typeinfo=0]]
30130: AST_TAG "com" (c[21041].s)  [[typeinfo=0]]
30134: AST_TAG "this_unit" (c[21043].s)  [[typeinfo=0]]
30138: AST_Const 21045 1  [[typeinfo=0]]
30143: AST_Add [30134] [30138]  [[typeinfo=0]]
30148: AST_Idx [30130] [30143]  [[typeinfo=0]]
30153: AST_Const 21051 63  [[typeinfo=0]]
30158: AST_EQ [30148] [30153]  [[typeinfo=0]]
30163: AST_BoolOr [30125] [30158]  [[typeinfo=0]]
30168: AST_Scope [30201] -1 2  [[typeinfo=0]]
30174: AST_TAG "this_unit" (c[21069].s)  [[typeinfo=0]]
30178: AST_Post_Inc [30174]  [[typeinfo=0]]
30182: AST_TAG "ok" (c[21102].s)  [[typeinfo=0]]
30186: AST_ReturnResult [30182] -1  [[typeinfo=0]]
30191: AST_SEQ [-1] [30186]  [[typeinfo=0]]
30196: AST_SEQ [30178] [30191]  [[typeinfo=0]]
30201: AST_SEQ [-1] [30196]  [[typeinfo=0]]
30206: AST_IFTHEN [30163] [30168]  [[typeinfo=0]]
30211: AST_Scope [30606] -1 2  [[typeinfo=0]]
30217: AST_TAG "IntSeen" (c[21150].s)  [[typeinfo=0]]
30221: AST_Scope [30261] -1 2  [[typeinfo=0]]
30227: AST_TAG "ok" (c[21188].s)  [[typeinfo=0]]
30231: AST_AssignTo [30227] [30246]  [[typeinfo=0]]
30236: AST_Const 21193 0  [[typeinfo=0]]
30241: AST_Const 21196 0  [[typeinfo=0]]
30246: AST_NE [30236] [30241]  [[typeinfo=0]]
30251: AST_ReturnResult [30231] -1  [[typeinfo=0]]
30256: AST_SEQ [-1] [30251]  [[typeinfo=0]]
30261: AST_SEQ [-1] [30256]  [[typeinfo=0]]
30266: AST_IFTHEN [30217] [30221]  [[typeinfo=0]]
30271: AST_TAG "this_unit" (c[21227].s)  [[typeinfo=0]]
30275: AST_Post_Inc [30271]  [[typeinfo=0]]
30279: AST_TAG "command" (c[21243].s)  [[typeinfo=0]]
30283: AST_AssignTo [30279] [30296]  [[typeinfo=0]]
30288: AST_TAG "com" (c[21247].s)  [[typeinfo=0]]
30292: AST_TAG "this_unit" (c[21249].s)  [[typeinfo=0]]
30296: AST_Idx [30288] [30292]  [[typeinfo=0]]
30301: AST_TAG "command" (c[21268].s)  [[typeinfo=0]]
30305: AST_Scope [30491] -1 2  [[typeinfo=0]]
30311: AST_Const 21290 40  [[typeinfo=0]]
30316: AST_TAG "this_unit" (c[21311].s)  [[typeinfo=0]]
30320: AST_AssignTo [30316] [30333]  [[typeinfo=0]]
30325: AST_TAG "link" (c[21315].s)  [[typeinfo=0]]
30329: AST_TAG "this_unit" (c[21317].s)  [[typeinfo=0]]
30333: AST_Idx [30325] [30329]  [[typeinfo=0]]
30338: AST_Case [30311] -1 -1  [[typeinfo=0]]
30344: AST_SEQ [30338] [30320]  [[typeinfo=0]]
30349: AST_C_Break -1  [[typeinfo=0]]
30353: AST_Const 21359 44  [[typeinfo=0]]
30358: AST_Case [30353] -1 -1  [[typeinfo=0]]
30364: AST_SEQ [30358] [-1]  [[typeinfo=0]]
30369: AST_TAG "ok" (c[21403].s)  [[typeinfo=0]]
30373: AST_ReturnResult [30369] -1  [[typeinfo=0]]
30378: AST_Const 21424 41  [[typeinfo=0]]
30383: AST_Pre_Dec [30395]  [[typeinfo=0]]
30387: AST_TAG "num" (c[21446].s)  [[typeinfo=0]]
30391: AST_TAG "this_unit" (c[21448].s)  [[typeinfo=0]]
30395: AST_Idx [30387] [30391]  [[typeinfo=0]]
30400: AST_Case [30378] -1 -1  [[typeinfo=0]]
30406: AST_SEQ [30400] [30383]  [[typeinfo=0]]
30411: AST_TAG "repeat_count" (c[21470].s)  [[typeinfo=0]]
30415: AST_AssignTo [30411] [30428]  [[typeinfo=0]]
30420: AST_TAG "num" (c[21474].s)  [[typeinfo=0]]
30424: AST_TAG "this_unit" (c[21476].s)  [[typeinfo=0]]
30428: AST_Idx [30420] [30424]  [[typeinfo=0]]
30433: AST_TAG "breaklab" (c[21520].s)  [[typeinfo=0]]
30437: AST_Goto [30433]  [[typeinfo=0]]
30441: AST_DefaultCase -1 -1  [[typeinfo=0]]
30446: AST_SEQ [30441] [-1]  [[typeinfo=0]]
30451: AST_SEQ [30437] [30446]  [[typeinfo=0]]
30456: AST_SEQ [-1] [30451]  [[typeinfo=0]]
30461: AST_SEQ [30415] [30456]  [[typeinfo=0]]
30466: AST_SEQ [30406] [30461]  [[typeinfo=0]]
30471: AST_SEQ [30373] [30466]  [[typeinfo=0]]
30476: AST_SEQ [30364] [30471]  [[typeinfo=0]]
30481: AST_SEQ [30349] [30476]  [[typeinfo=0]]
30486: AST_SEQ [30344] [30481]  [[typeinfo=0]]
30491: AST_SEQ [-1] [30486]  [[typeinfo=0]]
30496: AST_Switch [30301] [30305] -1 -1 -1  [[typeinfo=0]]
30504: AST_TAG "com" (c[21572].s)  [[typeinfo=0]]
30508: AST_TAG "this_unit" (c[21574].s)  [[typeinfo=0]]
30512: AST_Idx [30504] [30508]  [[typeinfo=0]]
30517: AST_Const 21580 0  [[typeinfo=0]]
30522: AST_EQ [30512] [30517]  [[typeinfo=0]]
30527: AST_Scope [30576] -1 2  [[typeinfo=0]]
30533: AST_TAG "fail_with" (c[21620].s)  [[typeinfo=0]]
30537: AST_Const 21623 21623  [[typeinfo=0]]
30542: AST_TAG "culprit" (c[21626].s)  [[typeinfo=0]]
30546: AST_UseParam [-1] [-1]  [[typeinfo=0]]
30551: AST_UseParam [30542] [30546]  [[typeinfo=0]]
30556: AST_UseParam [30537] [30551]  [[typeinfo=0]]
30561: AST_Call [30533] [30556]  [[typeinfo=0]]
30566: AST_ReturnResult [30561] -1  [[typeinfo=0]]
30571: AST_SEQ [-1] [30566]  [[typeinfo=0]]
30576: AST_SEQ [-1] [30571]  [[typeinfo=0]]
30581: AST_IFTHEN [30522] [30527]  [[typeinfo=0]]
30586: AST_SEQ [30496] [30581]  [[typeinfo=0]]
30591: AST_SEQ [30283] [30586]  [[typeinfo=0]]
30596: AST_SEQ [30275] [30591]  [[typeinfo=0]]
30601: AST_SEQ [30266] [30596]  [[typeinfo=0]]
30606: AST_SEQ [-1] [30601]  [[typeinfo=0]]
30611: AST_C_ForLoop [-1] [-1] [-1] [30211] -1 -1 -1  [[typeinfo=0]]
30621: AST_TAG "breaklab" (c[21665].s)  [[typeinfo=0]]
30625: AST_Label [30621] -1  [[typeinfo=0]]
30630: AST_SEQ [30625] [-1]  [[typeinfo=0]]
30635: AST_SEQ [30611] [30630]  [[typeinfo=0]]
30640: AST_SEQ [30206] [30635]  [[typeinfo=0]]
30645: AST_SEQ [30092] [30640]  [[typeinfo=0]]
30650: AST_SEQ [29947] [30645]  [[typeinfo=0]]
30655: AST_SEQ [-1] [30650]  [[typeinfo=0]]
30660: AST_C_ForLoop [-1] [-1] [-1] [29892] -1 -1 -1  [[typeinfo=0]]
30670: AST_SEQ [29872] [30660]  [[typeinfo=0]]
30675: AST_SEQ [29863] [30670]  [[typeinfo=0]]
30680: AST_SEQ [29769] [30675]  [[typeinfo=0]]
30685: AST_SEQ [29764] [30680]  [[typeinfo=0]]
30690: AST_SEQ [29750] [30685]  [[typeinfo=0]]
30695: AST_SEQ [-1] [30690]  [[typeinfo=0]]
30700: AST_C_ForLoop [-1] [-1] [-1] [29695] -1 -1 -1  [[typeinfo=0]]
30710: AST_TAG "ok" (c[21713].s)  [[typeinfo=0]]
30714: AST_ReturnResult [30710] -1  [[typeinfo=0]]
30719: AST_SEQ [-1] [30714]  [[typeinfo=0]]
30724: AST_SEQ [30700] [30719]  [[typeinfo=0]]
30729: AST_SEQ [-1] [30724]  [[typeinfo=0]]
30734: AST_SEQ [29677] [30729]  [[typeinfo=0]]
30739: AST_SEQ [29655] [30734]  [[typeinfo=0]]
30744: AST_SEQ [29642] [30739]  [[typeinfo=0]]
30749: AST_SEQ [29620] [30744]  [[typeinfo=0]]
30754: AST_SEQ [29611] [30749]  [[typeinfo=0]]
30759: AST_SEQ [-1] [30754]  [[typeinfo=0]]
30764: AST_DefProc 29577 [29582] [-1] [29586]  [[typeinfo=0]]
30771: AST_TYPE_Atom 0 0  [[typeinfo=0]]
30776: AST_TAG "execute_all" (c[21721].s)  [[typeinfo=0]]
30780: AST_Scope [31000] -1 1  [[typeinfo=0]]
30786: AST_TAG "eprompt" (c[21732].s)  [[typeinfo=0]]
30790: AST_AssignTo [30786] [30795]  [[typeinfo=0]]
30795: AST_Const 21736 21736  [[typeinfo=0]]
30800: AST_TAG "this_unit" (c[21742].s)  [[typeinfo=0]]
30804: AST_AssignTo [30800] [30809]  [[typeinfo=0]]
30809: AST_Const 21746 0  [[typeinfo=0]]
30814: AST_Scope [30910] -1 2  [[typeinfo=0]]
30820: AST_UBoolNot [30833]  [[typeinfo=0]]
30824: AST_TAG "execute_unit" (c[21771].s)  [[typeinfo=0]]
30828: AST_UseParam [-1] [-1]  [[typeinfo=0]]
30833: AST_Call [30824] [30828]  [[typeinfo=0]]
30838: AST_Scope [30853] -1 2  [[typeinfo=0]]
30844: AST_Return -1  [[typeinfo=0]]
30848: AST_SEQ [-1] [30844]  [[typeinfo=0]]
30853: AST_SEQ [-1] [30848]  [[typeinfo=0]]
30858: AST_IFTHEN [30820] [30838]  [[typeinfo=0]]
30863: AST_TAG "IntSeen" (c[21815].s)  [[typeinfo=0]]
30867: AST_Scope [30882] -1 2  [[typeinfo=0]]
30873: AST_Return -1  [[typeinfo=0]]
30877: AST_SEQ [-1] [30873]  [[typeinfo=0]]
30882: AST_SEQ [-1] [30877]  [[typeinfo=0]]
30887: AST_IFTHEN [30863] [30867]  [[typeinfo=0]]
30892: AST_TAG "this_unit" (c[21855].s)  [[typeinfo=0]]
30896: AST_Post_Inc [30892]  [[typeinfo=0]]
30900: AST_SEQ [30887] [30896]  [[typeinfo=0]]
30905: AST_SEQ [30858] [30900]  [[typeinfo=0]]
30910: AST_SEQ [-1] [30905]  [[typeinfo=0]]
30915: AST_TAG "com" (c[21867].s)  [[typeinfo=0]]
30919: AST_TAG "this_unit" (c[21869].s)  [[typeinfo=0]]
30923: AST_Idx [30915] [30919]  [[typeinfo=0]]
30928: AST_Const 21875 0  [[typeinfo=0]]
30933: AST_NE [30923] [30928]  [[typeinfo=0]]
30938: AST_C_DoWhile [30814] [30933] -1 -1 -1  [[typeinfo=0]]
30946: AST_TAG "ok" (c[21887].s)  [[typeinfo=0]]
30950: AST_AssignTo [30946] [30965]  [[typeinfo=0]]
30955: AST_Const 21892 0  [[typeinfo=0]]
30960: AST_Const 21895 0  [[typeinfo=0]]
30965: AST_EQ [30955] [30960]  [[typeinfo=0]]
30970: AST_SEQ [-1] [30950]  [[typeinfo=0]]
30975: AST_SEQ [30938] [30970]  [[typeinfo=0]]
30980: AST_SEQ [-1] [30975]  [[typeinfo=0]]
30985: AST_SEQ [30804] [30980]  [[typeinfo=0]]
30990: AST_SEQ [30790] [30985]  [[typeinfo=0]]
30995: AST_SEQ [-1] [30990]  [[typeinfo=0]]
31000: AST_SEQ [-1] [30995]  [[typeinfo=0]]
31005: AST_DefProc 30771 [30776] [-1] [30780]  [[typeinfo=0]]
31012: AST_TYPE_Atom 0 1  [[typeinfo=0]]
31017: AST_TAG "case_op" (c[21903].s)  [[typeinfo=0]]
31021: AST_TAG "sym" (c[21908].s)  [[typeinfo=0]]
31025: AST_TYPE_Atom 0 1  [[typeinfo=0]]
31030: AST_DefParam 31021 [31025] [-1]  [[typeinfo=0]]
31036: AST_Scope [31189] -1 1  [[typeinfo=0]]
31042: AST_TYPE_Atom 0 4  [[typeinfo=0]]
31047: AST_TAG "chr" (c[21915].s)  [[typeinfo=0]]
31051: AST_TAG "sym" (c[21919].s)  [[typeinfo=0]]
31055: AST_Const 21924 97  [[typeinfo=0]]
31060: AST_Const 21926 65  [[typeinfo=0]]
31065: AST_Sub [31055] [31060]  [[typeinfo=0]]
31070: AST_BitOr [31051] [31065]  [[typeinfo=0]]
31075: AST_AssignTo [-1] [31070]  [[typeinfo=0]]
31080: AST_Declare [31047] [31042]  [[typeinfo=0]]
31085: AST_SEQ [31080] [-1]  [[typeinfo=0]]
31090: AST_SEQ [31085] [-1]  [[typeinfo=0]]
31095: AST_Const 21937 97  [[typeinfo=0]]
31100: AST_TAG "chr" (c[21942].s)  [[typeinfo=0]]
31104: AST_LE [31095] [31100]  [[typeinfo=0]]
31109: AST_TAG "chr" (c[21949].s)  [[typeinfo=0]]
31113: AST_Const 21954 122  [[typeinfo=0]]
31118: AST_LE [31109] [31113]  [[typeinfo=0]]
31123: AST_BoolAnd [31104] [31118]  [[typeinfo=0]]
31128: AST_TAG "sym" (c[21958].s)  [[typeinfo=0]]
31132: AST_AssignTo [31128] [31154]  [[typeinfo=0]]
31137: AST_TAG "sym" (c[21963].s)  [[typeinfo=0]]
31141: AST_TAG "to_lower_case" (c[21967].s)  [[typeinfo=0]]
31145: AST_BitOr [31137] [31141]  [[typeinfo=0]]
31150: AST_TAG "to_upper_case" (c[22020].s)  [[typeinfo=0]]
31154: AST_BitAnd [31145] [31150]  [[typeinfo=0]]
31159: AST_IFTHEN [31123] [31132]  [[typeinfo=0]]
31164: AST_TAG "sym" (c[22029].s)  [[typeinfo=0]]
31168: AST_ReturnResult [31164] -1  [[typeinfo=0]]
31173: AST_SEQ [31159] [31168]  [[typeinfo=0]]
31178: AST_SEQ [31090] [31173]  [[typeinfo=0]]
31183: AST_ReceiveParam 31021 [31025] [-1]  [[typeinfo=0]]
31189: AST_SEQ [31183] [31178]  [[typeinfo=0]]
31194: AST_DefProc 31012 [31017] [31030] [31036]  [[typeinfo=0]]
31201: AST_TYPE_Atom 0 4  [[typeinfo=0]]
31206: AST_TAG "right" (c[22037].s)  [[typeinfo=0]]
31210: AST_Scope [31347] -1 1  [[typeinfo=0]]
31216: AST_TAG "fp" (c[22051].s)  [[typeinfo=0]]
31220: AST_TAG "lend" (c[22056].s)  [[typeinfo=0]]
31224: AST_EQ [31216] [31220]  [[typeinfo=0]]
31229: AST_Scope [31264] -1 2  [[typeinfo=0]]
31235: AST_TAG "ok" (c[22070].s)  [[typeinfo=0]]
31239: AST_AssignTo [31235] [31254]  [[typeinfo=0]]
31244: AST_Const 22075 0  [[typeinfo=0]]
31249: AST_Const 22078 0  [[typeinfo=0]]
31254: AST_NE [31244] [31249]  [[typeinfo=0]]
31259: AST_ReturnResult [31239] -1  [[typeinfo=0]]
31264: AST_SEQ [-1] [31259]  [[typeinfo=0]]
31269: AST_IFTHEN [31224] [31229]  [[typeinfo=0]]
31274: AST_IndirectThrough [31282]  [[typeinfo=0]]
31278: AST_TAG "pp" (c[22092].s)  [[typeinfo=0]]
31282: AST_Post_Inc [31278]  [[typeinfo=0]]
31286: AST_AssignTo [31274] [31291]  [[typeinfo=0]]
31291: AST_IndirectThrough [31299]  [[typeinfo=0]]
31295: AST_TAG "fp" (c[22098].s)  [[typeinfo=0]]
31299: AST_Post_Inc [31295]  [[typeinfo=0]]
31303: AST_TAG "ok" (c[22108].s)  [[typeinfo=0]]
31307: AST_AssignTo [31303] [31322]  [[typeinfo=0]]
31312: AST_Const 22113 0  [[typeinfo=0]]
31317: AST_Const 22116 0  [[typeinfo=0]]
31322: AST_EQ [31312] [31317]  [[typeinfo=0]]
31327: AST_ReturnResult [31307] -1  [[typeinfo=0]]
31332: AST_SEQ [31286] [31327]  [[typeinfo=0]]
31337: AST_SEQ [31269] [31332]  [[typeinfo=0]]
31342: AST_SEQ [-1] [31337]  [[typeinfo=0]]
31347: AST_SEQ [-1] [31342]  [[typeinfo=0]]
31352: AST_DefProc 31201 [31206] [-1] [31210]  [[typeinfo=0]]
31359: AST_TYPE_Atom 0 4  [[typeinfo=0]]
31364: AST_TAG "left" (c[22125].s)  [[typeinfo=0]]
31368: AST_Scope [31505] -1 1  [[typeinfo=0]]
31374: AST_TAG "pp" (c[22139].s)  [[typeinfo=0]]
31378: AST_TAG "lbeg" (c[22144].s)  [[typeinfo=0]]
31382: AST_EQ [31374] [31378]  [[typeinfo=0]]
31387: AST_Scope [31422] -1 2  [[typeinfo=0]]
31393: AST_TAG "ok" (c[22158].s)  [[typeinfo=0]]
31397: AST_AssignTo [31393] [31412]  [[typeinfo=0]]
31402: AST_Const 22163 0  [[typeinfo=0]]
31407: AST_Const 22166 0  [[typeinfo=0]]
31412: AST_NE [31402] [31407]  [[typeinfo=0]]
31417: AST_ReturnResult [31397] -1  [[typeinfo=0]]
31422: AST_SEQ [-1] [31417]  [[typeinfo=0]]
31427: AST_IFTHEN [31382] [31387]  [[typeinfo=0]]
31432: AST_IndirectThrough [31436]  [[typeinfo=0]]
31436: AST_Pre_Dec [31440]  [[typeinfo=0]]
31440: AST_TAG "fp" (c[22182].s)  [[typeinfo=0]]
31444: AST_AssignTo [31432] [31449]  [[typeinfo=0]]
31449: AST_IndirectThrough [31453]  [[typeinfo=0]]
31453: AST_Pre_Dec [31457]  [[typeinfo=0]]
31457: AST_TAG "pp" (c[22190].s)  [[typeinfo=0]]
31461: AST_TAG "ok" (c[22200].s)  [[typeinfo=0]]
31465: AST_AssignTo [31461] [31480]  [[typeinfo=0]]
31470: AST_Const 22205 0  [[typeinfo=0]]
31475: AST_Const 22208 0  [[typeinfo=0]]
31480: AST_EQ [31470] [31475]  [[typeinfo=0]]
31485: AST_ReturnResult [31465] -1  [[typeinfo=0]]
31490: AST_SEQ [31444] [31485]  [[typeinfo=0]]
31495: AST_SEQ [31427] [31490]  [[typeinfo=0]]
31500: AST_SEQ [-1] [31495]  [[typeinfo=0]]
31505: AST_SEQ [-1] [31500]  [[typeinfo=0]]
31510: AST_DefProc 31359 [31364] [-1] [31368]  [[typeinfo=0]]
31517: AST_TYPE_Atom 0 0  [[typeinfo=0]]
31522: AST_TAG "right_star" (c[22217].s)  [[typeinfo=0]]
31526: AST_Scope [31587] -1 1  [[typeinfo=0]]
31532: AST_TAG "fp" (c[22230].s)  [[typeinfo=0]]
31536: AST_TAG "lend" (c[22235].s)  [[typeinfo=0]]
31540: AST_NE [31532] [31536]  [[typeinfo=0]]
31545: AST_IndirectThrough [31553]  [[typeinfo=0]]
31549: AST_TAG "pp" (c[22239].s)  [[typeinfo=0]]
31553: AST_Post_Inc [31549]  [[typeinfo=0]]
31557: AST_AssignTo [31545] [31562]  [[typeinfo=0]]
31562: AST_IndirectThrough [31570]  [[typeinfo=0]]
31566: AST_TAG "fp" (c[22245].s)  [[typeinfo=0]]
31570: AST_Post_Inc [31566]  [[typeinfo=0]]
31574: AST_C_While [31540] [31557] -1 -1 -1  [[typeinfo=0]]
31582: AST_SEQ [-1] [31574]  [[typeinfo=0]]
31587: AST_SEQ [-1] [31582]  [[typeinfo=0]]
31592: AST_DefProc 31517 [31522] [-1] [31526]  [[typeinfo=0]]
31599: AST_TYPE_Atom 0 0  [[typeinfo=0]]
31604: AST_TAG "left_star" (c[22253].s)  [[typeinfo=0]]
31608: AST_Scope [31669] -1 1  [[typeinfo=0]]
31614: AST_TAG "pp" (c[22265].s)  [[typeinfo=0]]
31618: AST_TAG "lbeg" (c[22270].s)  [[typeinfo=0]]
31622: AST_NE [31614] [31618]  [[typeinfo=0]]
31627: AST_IndirectThrough [31631]  [[typeinfo=0]]
31631: AST_Pre_Dec [31635]  [[typeinfo=0]]
31635: AST_TAG "fp" (c[22276].s)  [[typeinfo=0]]
31639: AST_AssignTo [31627] [31644]  [[typeinfo=0]]
31644: AST_IndirectThrough [31648]  [[typeinfo=0]]
31648: AST_Pre_Dec [31652]  [[typeinfo=0]]
31652: AST_TAG "pp" (c[22284].s)  [[typeinfo=0]]
31656: AST_C_While [31622] [31639] -1 -1 -1  [[typeinfo=0]]
31664: AST_SEQ [-1] [31656]  [[typeinfo=0]]
31669: AST_SEQ [-1] [31664]  [[typeinfo=0]]
31674: AST_DefProc 31599 [31604] [-1] [31608]  [[typeinfo=0]]
31681: AST_TYPE_Atom 0 0  [[typeinfo=0]]
31686: AST_TAG "move" (c[22292].s)  [[typeinfo=0]]
31690: AST_Scope [31939] -1 1  [[typeinfo=0]]
31696: AST_TAG "ok" (c[22303].s)  [[typeinfo=0]]
31700: AST_AssignTo [31696] [31715]  [[typeinfo=0]]
31705: AST_Const 22308 0  [[typeinfo=0]]
31710: AST_Const 22311 0  [[typeinfo=0]]
31715: AST_EQ [31705] [31710]  [[typeinfo=0]]
31720: AST_TAG "right_star" (c[22318].s)  [[typeinfo=0]]
31724: AST_UseParam [-1] [-1]  [[typeinfo=0]]
31729: AST_Call [31720] [31724]  [[typeinfo=0]]
31734: AST_TAG "fp" (c[22330].s)  [[typeinfo=0]]
31738: AST_TAG "fend" (c[22335].s)  [[typeinfo=0]]
31742: AST_EQ [31734] [31738]  [[typeinfo=0]]
31747: AST_Scope [31786] -1 2  [[typeinfo=0]]
31753: AST_TAG "ok" (c[22346].s)  [[typeinfo=0]]
31757: AST_AssignTo [31753] [31772]  [[typeinfo=0]]
31762: AST_Const 22351 0  [[typeinfo=0]]
31767: AST_Const 22354 0  [[typeinfo=0]]
31772: AST_NE [31762] [31767]  [[typeinfo=0]]
31777: AST_Return -1  [[typeinfo=0]]
31781: AST_SEQ [31757] [31777]  [[typeinfo=0]]
31786: AST_SEQ [-1] [31781]  [[typeinfo=0]]
31791: AST_IFTHEN [31742] [31747]  [[typeinfo=0]]
31796: AST_IndirectThrough [31804]  [[typeinfo=0]]
31800: AST_TAG "pp" (c[22376].s)  [[typeinfo=0]]
31804: AST_Post_Inc [31800]  [[typeinfo=0]]
31808: AST_AssignTo [31796] [31813]  [[typeinfo=0]]
31813: AST_IndirectThrough [31821]  [[typeinfo=0]]
31817: AST_TAG "fp" (c[22382].s)  [[typeinfo=0]]
31821: AST_Post_Inc [31817]  [[typeinfo=0]]
31825: AST_TAG "lbeg" (c[22389].s)  [[typeinfo=0]]
31829: AST_AssignTo [31825] [31834]  [[typeinfo=0]]
31834: AST_TAG "pp" (c[22393].s)  [[typeinfo=0]]
31838: AST_TAG "lend" (c[22399].s)  [[typeinfo=0]]
31842: AST_AssignTo [31838] [31847]  [[typeinfo=0]]
31847: AST_TAG "fp" (c[22403].s)  [[typeinfo=0]]
31851: AST_IndirectThrough [31855]  [[typeinfo=0]]
31855: AST_TAG "lend" (c[22413].s)  [[typeinfo=0]]
31859: AST_Const 22418 10  [[typeinfo=0]]
31864: AST_NE [31851] [31859]  [[typeinfo=0]]
31869: AST_TAG "lend" (c[22421].s)  [[typeinfo=0]]
31873: AST_Post_Inc [31869]  [[typeinfo=0]]
31877: AST_C_While [31864] [31873] -1 -1 -1  [[typeinfo=0]]
31885: AST_TAG "ms_back" (c[22428].s)  [[typeinfo=0]]
31889: AST_AssignTo [31885] [31894]  [[typeinfo=0]]
31894: AST_Const 22432 0  [[typeinfo=0]]
31899: AST_SEQ [31877] [31889]  [[typeinfo=0]]
31904: AST_SEQ [31842] [31899]  [[typeinfo=0]]
31909: AST_SEQ [31829] [31904]  [[typeinfo=0]]
31914: AST_SEQ [31808] [31909]  [[typeinfo=0]]
31919: AST_SEQ [31791] [31914]  [[typeinfo=0]]
31924: AST_SEQ [31729] [31919]  [[typeinfo=0]]
31929: AST_SEQ [31700] [31924]  [[typeinfo=0]]
31934: AST_SEQ [-1] [31929]  [[typeinfo=0]]
31939: AST_SEQ [-1] [31934]  [[typeinfo=0]]
31944: AST_DefProc 31681 [31686] [-1] [31690]  [[typeinfo=0]]
31951: AST_TYPE_Atom 0 0  [[typeinfo=0]]
31956: AST_TAG "move_back" (c[22439].s)  [[typeinfo=0]]
31960: AST_Scope [32233] -1 1  [[typeinfo=0]]
31966: AST_TAG "ok" (c[22449].s)  [[typeinfo=0]]
31970: AST_AssignTo [31966] [31985]  [[typeinfo=0]]
31975: AST_Const 22454 0  [[typeinfo=0]]
31980: AST_Const 22457 0  [[typeinfo=0]]
31985: AST_EQ [31975] [31980]  [[typeinfo=0]]
31990: AST_TAG "left_star" (c[22464].s)  [[typeinfo=0]]
31994: AST_UseParam [-1] [-1]  [[typeinfo=0]]
31999: AST_Call [31990] [31994]  [[typeinfo=0]]
32004: AST_TAG "pp" (c[22476].s)  [[typeinfo=0]]
32008: AST_TAG "fbeg" (c[22481].s)  [[typeinfo=0]]
32012: AST_EQ [32004] [32008]  [[typeinfo=0]]
32017: AST_Scope [32056] -1 2  [[typeinfo=0]]
32023: AST_TAG "ok" (c[22492].s)  [[typeinfo=0]]
32027: AST_AssignTo [32023] [32042]  [[typeinfo=0]]
32032: AST_Const 22497 0  [[typeinfo=0]]
32037: AST_Const 22500 0  [[typeinfo=0]]
32042: AST_NE [32032] [32037]  [[typeinfo=0]]
32047: AST_Return -1  [[typeinfo=0]]
32051: AST_SEQ [32027] [32047]  [[typeinfo=0]]
32056: AST_SEQ [-1] [32051]  [[typeinfo=0]]
32061: AST_IFTHEN [32012] [32017]  [[typeinfo=0]]
32066: AST_IndirectThrough [32070]  [[typeinfo=0]]
32070: AST_Pre_Dec [32074]  [[typeinfo=0]]
32074: AST_TAG "fp" (c[22524].s)  [[typeinfo=0]]
32078: AST_AssignTo [32066] [32083]  [[typeinfo=0]]
32083: AST_IndirectThrough [32087]  [[typeinfo=0]]
32087: AST_Pre_Dec [32091]  [[typeinfo=0]]
32091: AST_TAG "pp" (c[22532].s)  [[typeinfo=0]]
32095: AST_TAG "lend" (c[22539].s)  [[typeinfo=0]]
32099: AST_AssignTo [32095] [32104]  [[typeinfo=0]]
32104: AST_TAG "fp" (c[22543].s)  [[typeinfo=0]]
32108: AST_TAG "lbeg" (c[22549].s)  [[typeinfo=0]]
32112: AST_AssignTo [32108] [32117]  [[typeinfo=0]]
32117: AST_TAG "pp" (c[22553].s)  [[typeinfo=0]]
32121: AST_Scope [32135] -1 2  [[typeinfo=0]]
32127: AST_Pre_Dec [32131]  [[typeinfo=0]]
32131: AST_TAG "lbeg" (c[22564].s)  [[typeinfo=0]]
32135: AST_SEQ [-1] [32127]  [[typeinfo=0]]
32140: AST_IndirectThrough [32144]  [[typeinfo=0]]
32144: AST_TAG "lbeg" (c[22573].s)  [[typeinfo=0]]
32148: AST_Const 22578 10  [[typeinfo=0]]
32153: AST_NE [32140] [32148]  [[typeinfo=0]]
32158: AST_C_DoWhile [32121] [32153] -1 -1 -1  [[typeinfo=0]]
32166: AST_TAG "lbeg" (c[22585].s)  [[typeinfo=0]]
32170: AST_Post_Inc [32166]  [[typeinfo=0]]
32174: AST_TAG "ms" (c[22592].s)  [[typeinfo=0]]
32178: AST_AssignTo [32174] [32183]  [[typeinfo=0]]
32183: AST_Const 22596 0  [[typeinfo=0]]
32188: AST_SEQ [32170] [32178]  [[typeinfo=0]]
32193: AST_SEQ [32158] [32188]  [[typeinfo=0]]
32198: AST_SEQ [32112] [32193]  [[typeinfo=0]]
32203: AST_SEQ [32099] [32198]  [[typeinfo=0]]
32208: AST_SEQ [32078] [32203]  [[typeinfo=0]]
32213: AST_SEQ [32061] [32208]  [[typeinfo=0]]
32218: AST_SEQ [31999] [32213]  [[typeinfo=0]]
32223: AST_SEQ [31970] [32218]  [[typeinfo=0]]
32228: AST_SEQ [-1] [32223]  [[typeinfo=0]]
32233: AST_SEQ [-1] [32228]  [[typeinfo=0]]
32238: AST_DefProc 31951 [31956] [-1] [31960]  [[typeinfo=0]]
32245: AST_TYPE_Atom 0 0  [[typeinfo=0]]
32250: AST_TAG "move_star" (c[22603].s)  [[typeinfo=0]]
32254: AST_Scope [32433] -1 1  [[typeinfo=0]]
32260: AST_TAG "fp" (c[22617].s)  [[typeinfo=0]]
32264: AST_TAG "fend" (c[22622].s)  [[typeinfo=0]]
32268: AST_NE [32260] [32264]  [[typeinfo=0]]
32273: AST_IndirectThrough [32281]  [[typeinfo=0]]
32277: AST_TAG "pp" (c[22626].s)  [[typeinfo=0]]
32281: AST_Post_Inc [32277]  [[typeinfo=0]]
32285: AST_AssignTo [32273] [32290]  [[typeinfo=0]]
32290: AST_IndirectThrough [32298]  [[typeinfo=0]]
32294: AST_TAG "fp" (c[22632].s)  [[typeinfo=0]]
32298: AST_Post_Inc [32294]  [[typeinfo=0]]
32302: AST_C_While [32268] [32285] -1 -1 -1  [[typeinfo=0]]
32310: AST_TAG "lend" (c[22639].s)  [[typeinfo=0]]
32314: AST_AssignTo [32310] [32319]  [[typeinfo=0]]
32319: AST_TAG "fend" (c[22643].s)  [[typeinfo=0]]
32323: AST_TAG "lbeg" (c[22649].s)  [[typeinfo=0]]
32327: AST_AssignTo [32323] [32332]  [[typeinfo=0]]
32332: AST_TAG "pp" (c[22653].s)  [[typeinfo=0]]
32336: AST_Scope [32350] -1 2  [[typeinfo=0]]
32342: AST_Pre_Dec [32346]  [[typeinfo=0]]
32346: AST_TAG "lbeg" (c[22664].s)  [[typeinfo=0]]
32350: AST_SEQ [-1] [32342]  [[typeinfo=0]]
32355: AST_IndirectThrough [32359]  [[typeinfo=0]]
32359: AST_TAG "lbeg" (c[22673].s)  [[typeinfo=0]]
32363: AST_Const 22678 10  [[typeinfo=0]]
32368: AST_NE [32355] [32363]  [[typeinfo=0]]
32373: AST_C_DoWhile [32336] [32368] -1 -1 -1  [[typeinfo=0]]
32381: AST_TAG "lbeg" (c[22685].s)  [[typeinfo=0]]
32385: AST_Post_Inc [32381]  [[typeinfo=0]]
32389: AST_TAG "ms_back" (c[22692].s)  [[typeinfo=0]]
32393: AST_AssignTo [32389] [32398]  [[typeinfo=0]]
32398: AST_Const 22696 0  [[typeinfo=0]]
32403: AST_SEQ [32385] [32393]  [[typeinfo=0]]
32408: AST_SEQ [32373] [32403]  [[typeinfo=0]]
32413: AST_SEQ [32327] [32408]  [[typeinfo=0]]
32418: AST_SEQ [32314] [32413]  [[typeinfo=0]]
32423: AST_SEQ [32302] [32418]  [[typeinfo=0]]
32428: AST_SEQ [-1] [32423]  [[typeinfo=0]]
32433: AST_SEQ [-1] [32428]  [[typeinfo=0]]
32438: AST_DefProc 32245 [32250] [-1] [32254]  [[typeinfo=0]]
32445: AST_TYPE_Atom 0 0  [[typeinfo=0]]
32450: AST_TAG "move_back_star" (c[22703].s)  [[typeinfo=0]]
32454: AST_Scope [32609] -1 1  [[typeinfo=0]]
32460: AST_TAG "pp" (c[22716].s)  [[typeinfo=0]]
32464: AST_TAG "fbeg" (c[22721].s)  [[typeinfo=0]]
32468: AST_NE [32460] [32464]  [[typeinfo=0]]
32473: AST_IndirectThrough [32477]  [[typeinfo=0]]
32477: AST_Pre_Dec [32481]  [[typeinfo=0]]
32481: AST_TAG "fp" (c[22727].s)  [[typeinfo=0]]
32485: AST_AssignTo [32473] [32490]  [[typeinfo=0]]
32490: AST_IndirectThrough [32494]  [[typeinfo=0]]
32494: AST_Pre_Dec [32498]  [[typeinfo=0]]
32498: AST_TAG "pp" (c[22735].s)  [[typeinfo=0]]
32502: AST_C_While [32468] [32485] -1 -1 -1  [[typeinfo=0]]
32510: AST_TAG "lbeg" (c[22742].s)  [[typeinfo=0]]
32514: AST_AssignTo [32510] [32519]  [[typeinfo=0]]
32519: AST_TAG "fbeg" (c[22746].s)  [[typeinfo=0]]
32523: AST_TAG "lend" (c[22752].s)  [[typeinfo=0]]
32527: AST_AssignTo [32523] [32532]  [[typeinfo=0]]
32532: AST_TAG "fp" (c[22756].s)  [[typeinfo=0]]
32536: AST_IndirectThrough [32540]  [[typeinfo=0]]
32540: AST_TAG "lend" (c[22766].s)  [[typeinfo=0]]
32544: AST_Const 22771 10  [[typeinfo=0]]
32549: AST_NE [32536] [32544]  [[typeinfo=0]]
32554: AST_TAG "lend" (c[22780].s)  [[typeinfo=0]]
32558: AST_Post_Inc [32554]  [[typeinfo=0]]
32562: AST_C_While [32549] [32558] -1 -1 -1  [[typeinfo=0]]
32570: AST_TAG "ms" (c[22787].s)  [[typeinfo=0]]
32574: AST_AssignTo [32570] [32579]  [[typeinfo=0]]
32579: AST_Const 22791 0  [[typeinfo=0]]
32584: AST_SEQ [32562] [32574]  [[typeinfo=0]]
32589: AST_SEQ [32527] [32584]  [[typeinfo=0]]
32594: AST_SEQ [32514] [32589]  [[typeinfo=0]]
32599: AST_SEQ [32502] [32594]  [[typeinfo=0]]
32604: AST_SEQ [-1] [32599]  [[typeinfo=0]]
32609: AST_SEQ [-1] [32604]  [[typeinfo=0]]
32614: AST_DefProc 32445 [32450] [-1] [32454]  [[typeinfo=0]]
32621: AST_TYPE_Atom 0 0  [[typeinfo=0]]
32626: AST_TAG "insert" (c[22798].s)  [[typeinfo=0]]
32630: AST_Scope [32794] -1 1  [[typeinfo=0]]
32636: AST_TYPE_Atom 0 4  [[typeinfo=0]]
32641: AST_TAG "p" (c[22811].s)  [[typeinfo=0]]
32645: AST_TAG "pointer" (c[22815].s)  [[typeinfo=0]]
32649: AST_AssignTo [-1] [32645]  [[typeinfo=0]]
32654: AST_Declare [32641] [32636]  [[typeinfo=0]]
32659: AST_SEQ [32654] [-1]  [[typeinfo=0]]
32664: AST_SEQ [32659] [-1]  [[typeinfo=0]]
32669: AST_TAG "ml_back" (c[22821].s)  [[typeinfo=0]]
32673: AST_AssignTo [32669] [32678]  [[typeinfo=0]]
32678: AST_TAG "pp" (c[22825].s)  [[typeinfo=0]]
32682: AST_TAG "text" (c[22834].s)  [[typeinfo=0]]
32686: AST_TAG "p" (c[22836].s)  [[typeinfo=0]]
32690: AST_Idx [32682] [32686]  [[typeinfo=0]]
32695: AST_Const 22842 0  [[typeinfo=0]]
32700: AST_NE [32690] [32695]  [[typeinfo=0]]
32705: AST_IndirectThrough [32713]  [[typeinfo=0]]
32709: AST_TAG "pp" (c[22846].s)  [[typeinfo=0]]
32713: AST_Post_Inc [32709]  [[typeinfo=0]]
32717: AST_AssignTo [32705] [32734]  [[typeinfo=0]]
32722: AST_TAG "text" (c[22851].s)  [[typeinfo=0]]
32726: AST_TAG "p" (c[22853].s)  [[typeinfo=0]]
32730: AST_Post_Inc [32726]  [[typeinfo=0]]
32734: AST_Idx [32722] [32730]  [[typeinfo=0]]
32739: AST_C_While [32700] [32717] -1 -1 -1  [[typeinfo=0]]
32747: AST_TAG "ms_back" (c[22861].s)  [[typeinfo=0]]
32751: AST_AssignTo [32747] [32756]  [[typeinfo=0]]
32756: AST_TAG "pp" (c[22865].s)  [[typeinfo=0]]
32760: AST_TAG "ms" (c[22871].s)  [[typeinfo=0]]
32764: AST_AssignTo [32760] [32769]  [[typeinfo=0]]
32769: AST_Const 22875 0  [[typeinfo=0]]
32774: AST_SEQ [32751] [32764]  [[typeinfo=0]]
32779: AST_SEQ [32739] [32774]  [[typeinfo=0]]
32784: AST_SEQ [32673] [32779]  [[typeinfo=0]]
32789: AST_SEQ [32664] [32784]  [[typeinfo=0]]
32794: AST_SEQ [-1] [32789]  [[typeinfo=0]]
32799: AST_DefProc 32621 [32626] [-1] [32630]  [[typeinfo=0]]
32806: AST_TYPE_Atom 0 0  [[typeinfo=0]]
32811: AST_TAG "insert_back" (c[22882].s)  [[typeinfo=0]]
32815: AST_Scope [32979] -1 1  [[typeinfo=0]]
32821: AST_TYPE_Atom 0 4  [[typeinfo=0]]
32826: AST_TAG "p" (c[22895].s)  [[typeinfo=0]]
32830: AST_TAG "pointer" (c[22899].s)  [[typeinfo=0]]
32834: AST_AssignTo [-1] [32830]  [[typeinfo=0]]
32839: AST_Declare [32826] [32821]  [[typeinfo=0]]
32844: AST_SEQ [32839] [-1]  [[typeinfo=0]]
32849: AST_SEQ [32844] [-1]  [[typeinfo=0]]
32854: AST_TAG "ml" (c[22905].s)  [[typeinfo=0]]
32858: AST_AssignTo [32854] [32863]  [[typeinfo=0]]
32863: AST_TAG "fp" (c[22909].s)  [[typeinfo=0]]
32867: AST_TAG "text" (c[22918].s)  [[typeinfo=0]]
32871: AST_TAG "p" (c[22920].s)  [[typeinfo=0]]
32875: AST_Idx [32867] [32871]  [[typeinfo=0]]
32880: AST_Const 22926 0  [[typeinfo=0]]
32885: AST_NE [32875] [32880]  [[typeinfo=0]]
32890: AST_IndirectThrough [32894]  [[typeinfo=0]]
32894: AST_Pre_Dec [32898]  [[typeinfo=0]]
32898: AST_TAG "fp" (c[22932].s)  [[typeinfo=0]]
32902: AST_AssignTo [32890] [32919]  [[typeinfo=0]]
32907: AST_TAG "text" (c[22937].s)  [[typeinfo=0]]
32911: AST_TAG "p" (c[22939].s)  [[typeinfo=0]]
32915: AST_Post_Inc [32911]  [[typeinfo=0]]
32919: AST_Idx [32907] [32915]  [[typeinfo=0]]
32924: AST_C_While [32885] [32902] -1 -1 -1  [[typeinfo=0]]
32932: AST_TAG "ms" (c[22947].s)  [[typeinfo=0]]
32936: AST_AssignTo [32932] [32941]  [[typeinfo=0]]
32941: AST_TAG "fp" (c[22951].s)  [[typeinfo=0]]
32945: AST_TAG "ms_back" (c[22957].s)  [[typeinfo=0]]
32949: AST_AssignTo [32945] [32954]  [[typeinfo=0]]
32954: AST_Const 22961 0  [[typeinfo=0]]
32959: AST_SEQ [32936] [32949]  [[typeinfo=0]]
32964: AST_SEQ [32924] [32959]  [[typeinfo=0]]
32969: AST_SEQ [32858] [32964]  [[typeinfo=0]]
32974: AST_SEQ [32849] [32969]  [[typeinfo=0]]
32979: AST_SEQ [-1] [32974]  [[typeinfo=0]]
32984: AST_DefProc 32806 [32811] [-1] [32815]  [[typeinfo=0]]
32991: AST_TYPE_Atom 0 4  [[typeinfo=0]]
32996: AST_TAG "verify" (c[22968].s)  [[typeinfo=0]]
33000: AST_Scope [33403] -1 1  [[typeinfo=0]]
33006: AST_TYPE_Atom 0 4  [[typeinfo=0]]
33011: AST_TAG "x" (c[22980].s)  [[typeinfo=0]]
33015: AST_TAG "pointer" (c[22984].s)  [[typeinfo=0]]
33019: AST_AssignTo [-1] [33015]  [[typeinfo=0]]
33024: AST_Declare [33011] [33006]  [[typeinfo=0]]
33029: AST_SEQ [33024] [-1]  [[typeinfo=0]]
33034: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33039: AST_TYPE_PointerTo [-1]  [[typeinfo=0]]
33043: AST_TAG "y" (c[22993].s)  [[typeinfo=0]]
33047: AST_TAG "fp" (c[22997].s)  [[typeinfo=0]]
33051: AST_Const 22999 1  [[typeinfo=0]]
33056: AST_Sub [33047] [33051]  [[typeinfo=0]]
33061: AST_AssignTo [-1] [33056]  [[typeinfo=0]]
33066: AST_Declare [33043] [33034]  [[typeinfo=0]]
33071: AST_SEQ [33066] [-1]  [[typeinfo=0]]
33076: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33081: AST_TAG "if_sym" (c[23007].s)  [[typeinfo=0]]
33085: AST_Declare [33081] [33076]  [[typeinfo=0]]
33090: AST_SEQ [33085] [-1]  [[typeinfo=0]]
33095: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33100: AST_TAG "sym" (c[23015].s)  [[typeinfo=0]]
33104: AST_Declare [33100] [33095]  [[typeinfo=0]]
33109: AST_SEQ [33104] [-1]  [[typeinfo=0]]
33114: AST_SEQ [33109] [-1]  [[typeinfo=0]]
33119: AST_SEQ [33090] [33114]  [[typeinfo=0]]
33124: AST_SEQ [33071] [33119]  [[typeinfo=0]]
33129: AST_SEQ [33029] [33124]  [[typeinfo=0]]
33134: AST_Scope [33230] -1 2  [[typeinfo=0]]
33140: AST_TAG "sym" (c[23032].s)  [[typeinfo=0]]
33144: AST_AssignTo [33140] [33180]  [[typeinfo=0]]
33149: AST_TAG "case_op" (c[23036].s)  [[typeinfo=0]]
33153: AST_TAG "text" (c[23039].s)  [[typeinfo=0]]
33157: AST_TAG "x" (c[23041].s)  [[typeinfo=0]]
33161: AST_Post_Inc [33157]  [[typeinfo=0]]
33165: AST_Idx [33153] [33161]  [[typeinfo=0]]
33170: AST_UseParam [-1] [-1]  [[typeinfo=0]]
33175: AST_UseParam [33165] [33170]  [[typeinfo=0]]
33180: AST_Call [33149] [33175]  [[typeinfo=0]]
33185: AST_TAG "if_sym" (c[23053].s)  [[typeinfo=0]]
33189: AST_AssignTo [33185] [33220]  [[typeinfo=0]]
33194: AST_TAG "case_op" (c[23057].s)  [[typeinfo=0]]
33198: AST_IndirectThrough [33202]  [[typeinfo=0]]
33202: AST_Pre_Inc [33206]  [[typeinfo=0]]
33206: AST_TAG "y" (c[23063].s)  [[typeinfo=0]]
33210: AST_UseParam [-1] [-1]  [[typeinfo=0]]
33215: AST_UseParam [33198] [33210]  [[typeinfo=0]]
33220: AST_Call [33194] [33215]  [[typeinfo=0]]
33225: AST_SEQ [33144] [33189]  [[typeinfo=0]]
33230: AST_SEQ [-1] [33225]  [[typeinfo=0]]
33235: AST_TAG "sym" (c[23076].s)  [[typeinfo=0]]
33239: AST_TAG "if_sym" (c[23081].s)  [[typeinfo=0]]
33243: AST_EQ [33235] [33239]  [[typeinfo=0]]
33248: AST_C_DoWhile [33134] [33243] -1 -1 -1  [[typeinfo=0]]
33256: AST_TAG "sym" (c[23091].s)  [[typeinfo=0]]
33260: AST_Const 23096 0  [[typeinfo=0]]
33265: AST_NE [33256] [33260]  [[typeinfo=0]]
33270: AST_TAG "ok" (c[23102].s)  [[typeinfo=0]]
33274: AST_AssignTo [33270] [33289]  [[typeinfo=0]]
33279: AST_Const 23107 0  [[typeinfo=0]]
33284: AST_Const 23110 0  [[typeinfo=0]]
33289: AST_NE [33279] [33284]  [[typeinfo=0]]
33294: AST_ReturnResult [33274] -1  [[typeinfo=0]]
33299: AST_IFTHEN [33265] [33294]  [[typeinfo=0]]
33304: AST_TAG "ms" (c[23118].s)  [[typeinfo=0]]
33308: AST_AssignTo [33304] [33313]  [[typeinfo=0]]
33313: AST_TAG "fp" (c[23122].s)  [[typeinfo=0]]
33317: AST_TAG "ml" (c[23128].s)  [[typeinfo=0]]
33321: AST_AssignTo [33317] [33326]  [[typeinfo=0]]
33326: AST_TAG "y" (c[23132].s)  [[typeinfo=0]]
33330: AST_TAG "ms_back" (c[23138].s)  [[typeinfo=0]]
33334: AST_AssignTo [33330] [33339]  [[typeinfo=0]]
33339: AST_Const 23142 0  [[typeinfo=0]]
33344: AST_TAG "ok" (c[23151].s)  [[typeinfo=0]]
33348: AST_AssignTo [33344] [33363]  [[typeinfo=0]]
33353: AST_Const 23156 0  [[typeinfo=0]]
33358: AST_Const 23159 0  [[typeinfo=0]]
33363: AST_EQ [33353] [33358]  [[typeinfo=0]]
33368: AST_ReturnResult [33348] -1  [[typeinfo=0]]
33373: AST_SEQ [33334] [33368]  [[typeinfo=0]]
33378: AST_SEQ [33321] [33373]  [[typeinfo=0]]
33383: AST_SEQ [33308] [33378]  [[typeinfo=0]]
33388: AST_SEQ [33299] [33383]  [[typeinfo=0]]
33393: AST_SEQ [33248] [33388]  [[typeinfo=0]]
33398: AST_SEQ [33129] [33393]  [[typeinfo=0]]
33403: AST_SEQ [-1] [33398]  [[typeinfo=0]]
33408: AST_DefProc 32991 [32996] [-1] [33000]  [[typeinfo=0]]
33415: AST_TYPE_Atom 0 4  [[typeinfo=0]]
33420: AST_TAG "verify_back" (c[23168].s)  [[typeinfo=0]]
33424: AST_Scope [33852] -1 1  [[typeinfo=0]]
33430: AST_TYPE_Atom 0 4  [[typeinfo=0]]
33435: AST_TAG "x" (c[23181].s)  [[typeinfo=0]]
33439: AST_TAG "pointer" (c[23185].s)  [[typeinfo=0]]
33443: AST_Const 23189 1  [[typeinfo=0]]
33448: AST_Sub [33439] [33443]  [[typeinfo=0]]
33453: AST_AssignTo [-1] [33448]  [[typeinfo=0]]
33458: AST_Declare [33435] [33430]  [[typeinfo=0]]
33463: AST_SEQ [33458] [-1]  [[typeinfo=0]]
33468: AST_TYPE_Atom 0 4  [[typeinfo=0]]
33473: AST_TAG "y" (c[23197].s)  [[typeinfo=0]]
33477: AST_Const 23201 0  [[typeinfo=0]]
33482: AST_AssignTo [-1] [33477]  [[typeinfo=0]]
33487: AST_Declare [33473] [33468]  [[typeinfo=0]]
33492: AST_SEQ [33487] [-1]  [[typeinfo=0]]
33497: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33502: AST_TAG "if_sym" (c[23209].s)  [[typeinfo=0]]
33506: AST_Declare [33502] [33497]  [[typeinfo=0]]
33511: AST_SEQ [33506] [-1]  [[typeinfo=0]]
33516: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33521: AST_TAG "sym" (c[23217].s)  [[typeinfo=0]]
33525: AST_Declare [33521] [33516]  [[typeinfo=0]]
33530: AST_SEQ [33525] [-1]  [[typeinfo=0]]
33535: AST_SEQ [33530] [-1]  [[typeinfo=0]]
33540: AST_SEQ [33511] [33535]  [[typeinfo=0]]
33545: AST_SEQ [33492] [33540]  [[typeinfo=0]]
33550: AST_SEQ [33463] [33545]  [[typeinfo=0]]
33555: AST_Scope [33660] -1 2  [[typeinfo=0]]
33561: AST_TAG "sym" (c[23233].s)  [[typeinfo=0]]
33565: AST_AssignTo [33561] [33601]  [[typeinfo=0]]
33570: AST_TAG "case_op" (c[23237].s)  [[typeinfo=0]]
33574: AST_TAG "text" (c[23240].s)  [[typeinfo=0]]
33578: AST_Pre_Inc [33582]  [[typeinfo=0]]
33582: AST_TAG "x" (c[23243].s)  [[typeinfo=0]]
33586: AST_Idx [33574] [33578]  [[typeinfo=0]]
33591: AST_UseParam [-1] [-1]  [[typeinfo=0]]
33596: AST_UseParam [33586] [33591]  [[typeinfo=0]]
33601: AST_Call [33570] [33596]  [[typeinfo=0]]
33606: AST_TAG "if_sym" (c[23254].s)  [[typeinfo=0]]
33610: AST_AssignTo [33606] [33650]  [[typeinfo=0]]
33615: AST_TAG "case_op" (c[23258].s)  [[typeinfo=0]]
33619: AST_IndirectThrough [33635]  [[typeinfo=0]]
33623: AST_TAG "pp" (c[23263].s)  [[typeinfo=0]]
33627: AST_Pre_Inc [33631]  [[typeinfo=0]]
33631: AST_TAG "y" (c[23268].s)  [[typeinfo=0]]
33635: AST_Sub [33623] [33627]  [[typeinfo=0]]
33640: AST_UseParam [-1] [-1]  [[typeinfo=0]]
33645: AST_UseParam [33619] [33640]  [[typeinfo=0]]
33650: AST_Call [33615] [33645]  [[typeinfo=0]]
33655: AST_SEQ [33565] [33610]  [[typeinfo=0]]
33660: AST_SEQ [-1] [33655]  [[typeinfo=0]]
33665: AST_TAG "sym" (c[23281].s)  [[typeinfo=0]]
33669: AST_TAG "if_sym" (c[23286].s)  [[typeinfo=0]]
33673: AST_EQ [33665] [33669]  [[typeinfo=0]]
33678: AST_C_DoWhile [33555] [33673] -1 -1 -1  [[typeinfo=0]]
33686: AST_TAG "sym" (c[23296].s)  [[typeinfo=0]]
33690: AST_Const 23301 0  [[typeinfo=0]]
33695: AST_NE [33686] [33690]  [[typeinfo=0]]
33700: AST_TAG "ok" (c[23307].s)  [[typeinfo=0]]
33704: AST_AssignTo [33700] [33719]  [[typeinfo=0]]
33709: AST_Const 23312 0  [[typeinfo=0]]
33714: AST_Const 23315 0  [[typeinfo=0]]
33719: AST_NE [33709] [33714]  [[typeinfo=0]]
33724: AST_ReturnResult [33704] -1  [[typeinfo=0]]
33729: AST_IFTHEN [33695] [33724]  [[typeinfo=0]]
33734: AST_TAG "ms_back" (c[23323].s)  [[typeinfo=0]]
33738: AST_AssignTo [33734] [33743]  [[typeinfo=0]]
33743: AST_TAG "pp" (c[23327].s)  [[typeinfo=0]]
33747: AST_TAG "ml_back" (c[23333].s)  [[typeinfo=0]]
33751: AST_AssignTo [33747] [33769]  [[typeinfo=0]]
33756: AST_TAG "pp" (c[23337].s)  [[typeinfo=0]]
33760: AST_TAG "y" (c[23341].s)  [[typeinfo=0]]
33764: AST_Const 23345 1  [[typeinfo=0]]
33769: AST_Add [33774] [33764]  [[typeinfo=0]]
33774: AST_Sub [33756] [33760]  [[typeinfo=0]]
33779: AST_TAG "ms" (c[23351].s)  [[typeinfo=0]]
33783: AST_AssignTo [33779] [33788]  [[typeinfo=0]]
33788: AST_Const 23355 0  [[typeinfo=0]]
33793: AST_TAG "ok" (c[23364].s)  [[typeinfo=0]]
33797: AST_AssignTo [33793] [33812]  [[typeinfo=0]]
33802: AST_Const 23369 0  [[typeinfo=0]]
33807: AST_Const 23372 0  [[typeinfo=0]]
33812: AST_EQ [33802] [33807]  [[typeinfo=0]]
33817: AST_ReturnResult [33797] -1  [[typeinfo=0]]
33822: AST_SEQ [33783] [33817]  [[typeinfo=0]]
33827: AST_SEQ [33751] [33822]  [[typeinfo=0]]
33832: AST_SEQ [33738] [33827]  [[typeinfo=0]]
33837: AST_SEQ [33729] [33832]  [[typeinfo=0]]
33842: AST_SEQ [33678] [33837]  [[typeinfo=0]]
33847: AST_SEQ [33550] [33842]  [[typeinfo=0]]
33852: AST_SEQ [-1] [33847]  [[typeinfo=0]]
33857: AST_DefProc 33415 [33420] [-1] [33424]  [[typeinfo=0]]
33864: AST_TYPE_Atom 0 4  [[typeinfo=0]]
33869: AST_TAG "find" (c[23381].s)  [[typeinfo=0]]
33873: AST_Scope [34314] -1 1  [[typeinfo=0]]
33879: AST_TYPE_Atom 0 1  [[typeinfo=0]]
33884: AST_TAG "sym" (c[23394].s)  [[typeinfo=0]]
33888: AST_TAG "text" (c[23398].s)  [[typeinfo=0]]
33892: AST_TAG "pointer" (c[23400].s)  [[typeinfo=0]]
33896: AST_Idx [33888] [33892]  [[typeinfo=0]]
33901: AST_Const 23406 97  [[typeinfo=0]]
33906: AST_Const 23408 65  [[typeinfo=0]]
33911: AST_Sub [33901] [33906]  [[typeinfo=0]]
33916: AST_BitOr [33896] [33911]  [[typeinfo=0]]
33921: AST_AssignTo [-1] [33916]  [[typeinfo=0]]
33926: AST_Declare [33884] [33879]  [[typeinfo=0]]
33931: AST_SEQ [33926] [-1]  [[typeinfo=0]]
33936: AST_SEQ [33931] [-1]  [[typeinfo=0]]
33941: AST_TAG "pp_before" (c[23415].s)  [[typeinfo=0]]
33945: AST_AssignTo [33941] [33950]  [[typeinfo=0]]
33950: AST_TAG "pp" (c[23419].s)  [[typeinfo=0]]
33954: AST_TAG "limit" (c[23425].s)  [[typeinfo=0]]
33958: AST_AssignTo [33954] [33971]  [[typeinfo=0]]
33963: AST_TAG "lim" (c[23429].s)  [[typeinfo=0]]
33967: AST_TAG "this_unit" (c[23431].s)  [[typeinfo=0]]
33971: AST_Idx [33963] [33967]  [[typeinfo=0]]
33976: AST_TAG "fp" (c[23441].s)  [[typeinfo=0]]
33980: AST_TAG "ms" (c[23446].s)  [[typeinfo=0]]
33984: AST_EQ [33976] [33980]  [[typeinfo=0]]
33989: AST_Scope [34032] -1 2  [[typeinfo=0]]
33995: AST_UBoolNot [34008]  [[typeinfo=0]]
33999: AST_TAG "right" (c[23462].s)  [[typeinfo=0]]
34003: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34008: AST_Call [33999] [34003]  [[typeinfo=0]]
34013: AST_TAG "move" (c[23469].s)  [[typeinfo=0]]
34017: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34022: AST_Call [34013] [34017]  [[typeinfo=0]]
34027: AST_IFTHEN [33995] [34022]  [[typeinfo=0]]
34032: AST_SEQ [-1] [34027]  [[typeinfo=0]]
34037: AST_IFTHEN [33984] [33989]  [[typeinfo=0]]
34042: AST_Scope [34245] -1 2  [[typeinfo=0]]
34048: AST_IndirectThrough [34052]  [[typeinfo=0]]
34052: AST_TAG "fp" (c[23503].s)  [[typeinfo=0]]
34056: AST_Const 23508 97  [[typeinfo=0]]
34061: AST_Const 23510 65  [[typeinfo=0]]
34066: AST_Sub [34056] [34061]  [[typeinfo=0]]
34071: AST_BitOr [34048] [34066]  [[typeinfo=0]]
34076: AST_TAG "sym" (c[23517].s)  [[typeinfo=0]]
34080: AST_EQ [34071] [34076]  [[typeinfo=0]]
34085: AST_Scope [34119] -1 2  [[typeinfo=0]]
34091: AST_TAG "verify" (c[23534].s)  [[typeinfo=0]]
34095: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34100: AST_Call [34091] [34095]  [[typeinfo=0]]
34105: AST_TAG "ok" (c[23543].s)  [[typeinfo=0]]
34109: AST_ReturnResult [34105] -1  [[typeinfo=0]]
34114: AST_IFTHEN [34100] [34109]  [[typeinfo=0]]
34119: AST_SEQ [-1] [34114]  [[typeinfo=0]]
34124: AST_IFTHEN [34080] [34085]  [[typeinfo=0]]
34129: AST_UBoolNot [34142]  [[typeinfo=0]]
34133: AST_TAG "right" (c[23565].s)  [[typeinfo=0]]
34137: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34142: AST_Call [34133] [34137]  [[typeinfo=0]]
34147: AST_Scope [34230] -1 2  [[typeinfo=0]]
34153: AST_Pre_Dec [34157]  [[typeinfo=0]]
34157: AST_TAG "limit" (c[23583].s)  [[typeinfo=0]]
34161: AST_TAG "limit" (c[23598].s)  [[typeinfo=0]]
34165: AST_Const 23603 0  [[typeinfo=0]]
34170: AST_EQ [34161] [34165]  [[typeinfo=0]]
34175: AST_C_Break -1  [[typeinfo=0]]
34179: AST_IFTHEN [34170] [34175]  [[typeinfo=0]]
34184: AST_TAG "move" (c[23618].s)  [[typeinfo=0]]
34188: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34193: AST_Call [34184] [34188]  [[typeinfo=0]]
34198: AST_UBoolNot [34202]  [[typeinfo=0]]
34202: AST_TAG "ok" (c[23637].s)  [[typeinfo=0]]
34206: AST_C_Break -1  [[typeinfo=0]]
34210: AST_IFTHEN [34198] [34206]  [[typeinfo=0]]
34215: AST_SEQ [34193] [34210]  [[typeinfo=0]]
34220: AST_SEQ [34179] [34215]  [[typeinfo=0]]
34225: AST_SEQ [34153] [34220]  [[typeinfo=0]]
34230: AST_SEQ [-1] [34225]  [[typeinfo=0]]
34235: AST_IFTHEN [34129] [34147]  [[typeinfo=0]]
34240: AST_SEQ [34124] [34235]  [[typeinfo=0]]
34245: AST_SEQ [-1] [34240]  [[typeinfo=0]]
34250: AST_C_ForLoop [-1] [-1] [-1] [34042] -1 -1 -1  [[typeinfo=0]]
34260: AST_TAG "ok" (c[23662].s)  [[typeinfo=0]]
34264: AST_AssignTo [34260] [34279]  [[typeinfo=0]]
34269: AST_Const 23667 0  [[typeinfo=0]]
34274: AST_Const 23670 0  [[typeinfo=0]]
34279: AST_NE [34269] [34274]  [[typeinfo=0]]
34284: AST_ReturnResult [34264] -1  [[typeinfo=0]]
34289: AST_SEQ [34250] [34284]  [[typeinfo=0]]
34294: AST_SEQ [34037] [34289]  [[typeinfo=0]]
34299: AST_SEQ [33958] [34294]  [[typeinfo=0]]
34304: AST_SEQ [33945] [34299]  [[typeinfo=0]]
34309: AST_SEQ [33936] [34304]  [[typeinfo=0]]
34314: AST_SEQ [-1] [34309]  [[typeinfo=0]]
34319: AST_DefProc 33864 [33869] [-1] [33873]  [[typeinfo=0]]
34326: AST_TYPE_Atom 0 4  [[typeinfo=0]]
34331: AST_TAG "find_back" (c[23679].s)  [[typeinfo=0]]
34335: AST_Scope [34661] -1 1  [[typeinfo=0]]
34341: AST_TAG "fp_before" (c[23690].s)  [[typeinfo=0]]
34345: AST_AssignTo [34341] [34350]  [[typeinfo=0]]
34350: AST_TAG "fp" (c[23694].s)  [[typeinfo=0]]
34354: AST_TAG "limit" (c[23700].s)  [[typeinfo=0]]
34358: AST_AssignTo [34354] [34371]  [[typeinfo=0]]
34363: AST_TAG "lim" (c[23704].s)  [[typeinfo=0]]
34367: AST_TAG "this_unit" (c[23706].s)  [[typeinfo=0]]
34371: AST_Idx [34363] [34367]  [[typeinfo=0]]
34376: AST_TAG "pp" (c[23716].s)  [[typeinfo=0]]
34380: AST_TAG "ms_back" (c[23721].s)  [[typeinfo=0]]
34384: AST_EQ [34376] [34380]  [[typeinfo=0]]
34389: AST_Scope [34432] -1 2  [[typeinfo=0]]
34395: AST_UBoolNot [34408]  [[typeinfo=0]]
34399: AST_TAG "left" (c[23736].s)  [[typeinfo=0]]
34403: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34408: AST_Call [34399] [34403]  [[typeinfo=0]]
34413: AST_TAG "move_back" (c[23742].s)  [[typeinfo=0]]
34417: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34422: AST_Call [34413] [34417]  [[typeinfo=0]]
34427: AST_IFTHEN [34395] [34422]  [[typeinfo=0]]
34432: AST_SEQ [-1] [34427]  [[typeinfo=0]]
34437: AST_IFTHEN [34384] [34389]  [[typeinfo=0]]
34442: AST_Scope [34592] -1 2  [[typeinfo=0]]
34448: AST_TAG "verify_back" (c[23774].s)  [[typeinfo=0]]
34452: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34457: AST_Call [34448] [34452]  [[typeinfo=0]]
34462: AST_TAG "ok" (c[23782].s)  [[typeinfo=0]]
34466: AST_ReturnResult [34462] -1  [[typeinfo=0]]
34471: AST_IFTHEN [34457] [34466]  [[typeinfo=0]]
34476: AST_UBoolNot [34489]  [[typeinfo=0]]
34480: AST_TAG "left" (c[23796].s)  [[typeinfo=0]]
34484: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34489: AST_Call [34480] [34484]  [[typeinfo=0]]
34494: AST_Scope [34577] -1 2  [[typeinfo=0]]
34500: AST_Pre_Dec [34504]  [[typeinfo=0]]
34504: AST_TAG "limit" (c[23814].s)  [[typeinfo=0]]
34508: AST_TAG "limit" (c[23829].s)  [[typeinfo=0]]
34512: AST_Const 23834 0  [[typeinfo=0]]
34517: AST_EQ [34508] [34512]  [[typeinfo=0]]
34522: AST_C_Break -1  [[typeinfo=0]]
34526: AST_IFTHEN [34517] [34522]  [[typeinfo=0]]
34531: AST_TAG "move_back" (c[23849].s)  [[typeinfo=0]]
34535: AST_UseParam [-1] [-1]  [[typeinfo=0]]
34540: AST_Call [34531] [34535]  [[typeinfo=0]]
34545: AST_UBoolNot [34549]  [[typeinfo=0]]
34549: AST_TAG "ok" (c[23868].s)  [[typeinfo=0]]
34553: AST_C_Break -1  [[typeinfo=0]]
34557: AST_IFTHEN [34545] [34553]  [[typeinfo=0]]
34562: AST_SEQ [34540] [34557]  [[typeinfo=0]]
34567: AST_SEQ [34526] [34562]  [[typeinfo=0]]
34572: AST_SEQ [34500] [34567]  [[typeinfo=0]]
34577: AST_SEQ [-1] [34572]  [[typeinfo=0]]
34582: AST_IFTHEN [34476] [34494]  [[typeinfo=0]]
34587: AST_SEQ [34471] [34582]  [[typeinfo=0]]
34592: AST_SEQ [-1] [34587]  [[typeinfo=0]]
34597: AST_C_ForLoop [-1] [-1] [-1] [34442] -1 -1 -1  [[typeinfo=0]]
34607: AST_TAG "ok" (c[23893].s)  [[typeinfo=0]]
34611: AST_AssignTo [34607] [34626]  [[typeinfo=0]]
34616: AST_Const 23898 0  [[typeinfo=0]]
34621: AST_Const 23901 0  [[typeinfo=0]]
34626: AST_NE [34616] [34621]  [[typeinfo=0]]
34631: AST_ReturnResult [34611] -1  [[typeinfo=0]]
34636: AST_SEQ [34597] [34631]  [[typeinfo=0]]
34641: AST_SEQ [34437] [34636]  [[typeinfo=0]]
34646: AST_SEQ [34358] [34641]  [[typeinfo=0]]
34651: AST_SEQ [34345] [34646]  [[typeinfo=0]]
34656: AST_SEQ [-1] [34651]  [[typeinfo=0]]
34661: AST_SEQ [-1] [34656]  [[typeinfo=0]]
34666: AST_DefProc 34326 [34331] [-1] [34335]  [[typeinfo=0]]
34673: AST_SEQ [34666] [-1]  [[typeinfo=0]]
34678: AST_SEQ [34319] [34673]  [[typeinfo=0]]
34683: AST_SEQ [33857] [34678]  [[typeinfo=0]]
34688: AST_SEQ [33408] [34683]  [[typeinfo=0]]
34693: AST_SEQ [32984] [34688]  [[typeinfo=0]]
34698: AST_SEQ [32799] [34693]  [[typeinfo=0]]
34703: AST_SEQ [32614] [34698]  [[typeinfo=0]]
34708: AST_SEQ [32438] [34703]  [[typeinfo=0]]
34713: AST_SEQ [32238] [34708]  [[typeinfo=0]]
34718: AST_SEQ [31944] [34713]  [[typeinfo=0]]
34723: AST_SEQ [31674] [34718]  [[typeinfo=0]]
34728: AST_SEQ [31592] [34723]  [[typeinfo=0]]
34733: AST_SEQ [31510] [34728]  [[typeinfo=0]]
34738: AST_SEQ [31352] [34733]  [[typeinfo=0]]
34743: AST_SEQ [31194] [34738]  [[typeinfo=0]]
34748: AST_SEQ [31005] [34743]  [[typeinfo=0]]
34753: AST_SEQ [30764] [34748]  [[typeinfo=0]]
34758: AST_SEQ [29570] [34753]  [[typeinfo=0]]
34763: AST_SEQ [29114] [34758]  [[typeinfo=0]]
34768: AST_SEQ [27003] [34763]  [[typeinfo=0]]
34773: AST_SEQ [26873] [34768]  [[typeinfo=0]]
34778: AST_SEQ [26138] [34773]  [[typeinfo=0]]
34783: AST_SEQ [25763] [34778]  [[typeinfo=0]]
34788: AST_SEQ [25496] [34783]  [[typeinfo=0]]
34793: AST_SEQ [18574] [34788]  [[typeinfo=0]]
34798: AST_SEQ [18426] [34793]  [[typeinfo=0]]
34803: AST_SEQ [18257] [34798]  [[typeinfo=0]]
34808: AST_SEQ [12387] [34803]  [[typeinfo=0]]
34813: AST_SEQ [11811] [34808]  [[typeinfo=0]]
34818: AST_SEQ [11277] [34813]  [[typeinfo=0]]
34823: AST_SEQ [11111] [34818]  [[typeinfo=0]]
34828: AST_SEQ [10748] [34823]  [[typeinfo=0]]
34833: AST_SEQ [10716] [34828]  [[typeinfo=0]]
34838: AST_SEQ [9527] [34833]  [[typeinfo=0]]
34843: AST_SEQ [7944] [34838]  [[typeinfo=0]]
34848: AST_SEQ [7913] [34843]  [[typeinfo=0]]
34853: AST_SEQ [-1] [34848]  [[typeinfo=0]]
34858: AST_SEQ [-1] [34853]  [[typeinfo=0]]
34863: AST_SEQ [7844] [34858]  [[typeinfo=0]]
34868: AST_SEQ [5728] [34863]  [[typeinfo=0]]
34873: AST_SEQ [5247] [34868]  [[typeinfo=0]]
34878: AST_SEQ [5224] [34873]  [[typeinfo=0]]
34883: AST_SEQ [5201] [34878]  [[typeinfo=0]]
34888: AST_SEQ [5178] [34883]  [[typeinfo=0]]
34893: AST_SEQ [5155] [34888]  [[typeinfo=0]]
34898: AST_SEQ [5132] [34893]  [[typeinfo=0]]
34903: AST_SEQ [5109] [34898]  [[typeinfo=0]]
34908: AST_SEQ [5086] [34903]  [[typeinfo=0]]
34913: AST_SEQ [5063] [34908]  [[typeinfo=0]]
34918: AST_SEQ [5040] [34913]  [[typeinfo=0]]
34923: AST_SEQ [5017] [34918]  [[typeinfo=0]]
34928: AST_SEQ [4994] [34923]  [[typeinfo=0]]
34933: AST_SEQ [1172] [34928]  [[typeinfo=0]]
34938: AST_SEQ [1149] [34933]  [[typeinfo=0]]
34943: AST_SEQ [1130] [34938]  [[typeinfo=0]]
34948: AST_SEQ [1111] [34943]  [[typeinfo=0]]
34953: AST_SEQ [1088] [34948]  [[typeinfo=0]]
34958: AST_SEQ [1065] [34953]  [[typeinfo=0]]
34963: AST_SEQ [1046] [34958]  [[typeinfo=0]]
34968: AST_SEQ [1027] [34963]  [[typeinfo=0]]
34973: AST_SEQ [1008] [34968]  [[typeinfo=0]]
34978: AST_SEQ [989] [34973]  [[typeinfo=0]]
34983: AST_SEQ [966] [34978]  [[typeinfo=0]]
34988: AST_SEQ [943] [34983]  [[typeinfo=0]]
34993: AST_SEQ [920] [34988]  [[typeinfo=0]]
34998: AST_SEQ [897] [34993]  [[typeinfo=0]]
35003: AST_SEQ [874] [34998]  [[typeinfo=0]]
35008: AST_SEQ [851] [35003]  [[typeinfo=0]]
35013: AST_SEQ [832] [35008]  [[typeinfo=0]]
35018: AST_SEQ [813] [35013]  [[typeinfo=0]]
35023: AST_SEQ [794] [35018]  [[typeinfo=0]]
35028: AST_SEQ [775] [35023]  [[typeinfo=0]]
35033: AST_SEQ [756] [35028]  [[typeinfo=0]]
35038: AST_SEQ [737] [35033]  [[typeinfo=0]]
35043: AST_SEQ [718] [35038]  [[typeinfo=0]]
35048: AST_SEQ [699] [35043]  [[typeinfo=0]]
35053: AST_SEQ [680] [35048]  [[typeinfo=0]]
35058: AST_SEQ [661] [35053]  [[typeinfo=0]]
35063: AST_SEQ [642] [35058]  [[typeinfo=0]]
35068: AST_SEQ [619] [35063]  [[typeinfo=0]]
35073: AST_SEQ [596] [35068]  [[typeinfo=0]]
35078: AST_SEQ [573] [35073]  [[typeinfo=0]]
35083: AST_SEQ [550] [35078]  [[typeinfo=0]]
35088: AST_SEQ [527] [35083]  [[typeinfo=0]]
35093: AST_SEQ [504] [35088]  [[typeinfo=0]]
35098: AST_SEQ [485] [35093]  [[typeinfo=0]]
35103: AST_SEQ [466] [35098]  [[typeinfo=0]]
35108: AST_SEQ [447] [35103]  [[typeinfo=0]]
35113: AST_SEQ [428] [35108]  [[typeinfo=0]]
35118: AST_SEQ [409] [35113]  [[typeinfo=0]]
35123: AST_SEQ [386] [35118]  [[typeinfo=0]]
35128: AST_SEQ [-1] [35123]  [[typeinfo=0]]
35133: AST_SEQ [-1] [35128]  [[typeinfo=0]]
35138: AST_SEQ [-1] [35133]  [[typeinfo=0]]
35143: AST_SEQ [-1] [35138]  [[typeinfo=0]]
35148: AST_SEQ [-1] [35143]  [[typeinfo=0]]
35153: AST_SEQ [-1] [35148]  [[typeinfo=0]]
35158: AST_SEQ [-1] [35153]  [[typeinfo=0]]
35163: AST_SEQ [-1] [35158]  [[typeinfo=0]]
35168: AST_SEQ [-1] [35163]  [[typeinfo=0]]
35173: AST_SEQ [-1] [35168]  [[typeinfo=0]]
35178: AST_SEQ [-1] [35173]  [[typeinfo=0]]
35183: AST_SEQ [-1] [35178]  [[typeinfo=0]]
35188: AST_SEQ [-1] [35183]  [[typeinfo=0]]
35193: AST_SEQ [-1] [35188]  [[typeinfo=0]]
35198: AST_SEQ [-1] [35193]  [[typeinfo=0]]
35203: AST_SEQ [-1] [35198]  [[typeinfo=0]]
35208: AST_SEQ [-1] [35203]  [[typeinfo=0]]
35213: AST_SEQ [-1] [35208]  [[typeinfo=0]]
35218: AST_SEQ [-1] [35213]  [[typeinfo=0]]
35223: AST_SEQ [-1] [35218]  [[typeinfo=0]]
35228: AST_SEQ [-1] [35223]  [[typeinfo=0]]
35233: AST_SEQ [-1] [35228]  [[typeinfo=0]]
35238: AST_SEQ [-1] [35233]  [[typeinfo=0]]
35243: AST_SEQ [-1] [35238]  [[typeinfo=0]]
35248: AST_SEQ [-1] [35243]  [[typeinfo=0]]
35253: AST_SEQ [-1] [35248]  [[typeinfo=0]]
35258: AST_SEQ [-1] [35253]  [[typeinfo=0]]
35263: AST_SEQ [-1] [35258]  [[typeinfo=0]]
35268: AST_SEQ [-1] [35263]  [[typeinfo=0]]
35273: AST_SEQ [-1] [35268]  [[typeinfo=0]]
35278: AST_SEQ [-1] [35273]  [[typeinfo=0]]
35283: AST_SEQ [-1] [35278]  [[typeinfo=0]]
35288: AST_Scope [35283] -1 0  [[typeinfo=0]]
-----------------
-------------
