C89cc.sh – standalone C89/ELF64 compiler in pure portable shell

gist.github.com · gaigalas · 4 days ago · view on HN · tool
quality 7/10 · good
0 net
c89cc.sh - standalone C89/ELF64 compiler in pure portable shell · GitHub Skip to content --> Search Gists Search Gists Sign in Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} Instantly share code, notes, and snippets. alganet / c89cc.sh Last active April 5, 2026 15:40 Show Gist options Download ZIP Star 89 ( 89 ) You must be signed in to star a gist Fork 14 ( 14 ) You must be signed in to fork a gist Embed Select an option Embed Embed this gist in your website. Share Copy sharable link for this gist. Clone via HTTPS Clone using the web URL. No results found Learn more about clone URLs Clone this repository at <script src="https://gist.github.com/alganet/2b89c4368f8d23d033961d8a3deb5c19.js"></script> Save alganet/2b89c4368f8d23d033961d8a3deb5c19 to your computer and use it in GitHub Desktop. Embed Select an option Embed Embed this gist in your website. Share Copy sharable link for this gist. Clone via HTTPS Clone using the web URL. No results found Learn more about clone URLs Clone this repository at <script src="https://gist.github.com/alganet/2b89c4368f8d23d033961d8a3deb5c19.js"></script> Save alganet/2b89c4368f8d23d033961d8a3deb5c19 to your computer and use it in GitHub Desktop. Download ZIP c89cc.sh - standalone C89/ELF64 compiler in pure portable shell Raw c89cc.sh This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters Show hidden characters #! /bin/sh # ISC License # Copyright (c) 2026 Alexandre Gomes Gaigalas # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # ============================================================ # c89cc — standalone C89 parser + compiler (x86-64 ELF64) # ============================================================ # # Usage: # sh c89cc.sh < prog.c > a.out # sh c89cc.sh --no-libc < prog.c > a.out (skip built-in libc) # --- core/header.sh --- set -euf LC_ALL=C IFS= ' ' _EOL= ' ' _TAB= " " # Clear PATH: no external commands needed PATH= # Shell compat: aliases in bash, POSIX-like in zsh shopt -s expand_aliases > /dev/null 2>&1 || : setopt sh_word_split null_glob glob_subst \ no_glob no_multios no_equals 2> /dev/null || : # ksh/mksh fallback: 'local' may not exist, use 'typeset' instead command -v local > /dev/null 2>&1 || alias local=typeset > /dev/null 2>&1 || : # Fallback: if 'test' is not a builtin, wrap it via command -p if ! command -v test > /dev/null 2>&1 ; then test () { command -p test " $@ " ; }; fi # --- Output helpers --- # Detect best available output primitive: # printf > print > echo > command -p printf # _printn1: print string without newline _printr1: print string with newline if command -v printf > /dev/null 2>&1 then _printn1 () { printf ' %s ' " $1 " ; } _printr1 () { printf ' %s\n ' " $@ " ; } elif command -v print > /dev/null 2>&1 then _printn1 () { echo -n -E " $1 " ; } _printr1 () { echo -E " $@ " ; } elif command -v echo > /dev/null 2>&1 then _printn1 () { echo -n " $1 " ; } _printr1 () { echo " $@ " ; } else # yash fallback _printn1 () { command -p printf ' %s ' " $1 " ; } _printr1 () { command -p printf ' %s\n ' " $@ " ; } fi # --- Multi-value return and dynamic local variable helpers --- # Pack variable assignments into REPLY (append mode). # Caller unpacks with: eval "$REPLY" (sets globals) # or: eval "local$REPLY" (sets locals) # Values containing ' must be pre-escaped with _esc_sq. # Usage: REPLY=; _retv name val; _retva prefix idx val; eval "local$REPLY" _retv () { REPLY= " $REPLY $1 =' $2 ' " ; } _retva () { REPLY= " $REPLY ${1} _ ${2} =' $3 ' " ; } # --- module system (stub, all modules inlined) --- _MOD= " $_EOL " _mod_has () { return 0 ; } _mod_add () { : ; } use () { : ; } # --- modules/str/repeat.sh --- # Repeat a string N times via exponentiation-by-squaring. _repeat () { case " ${2 :- } " in 0| " " ) return ;; 1) REPLY= " $1 " ; return ;; 2) REPLY= " $1$1 " ; return ;; 3) REPLY= " $1$1$1 " ; return ;; 4) REPLY= " $1$1$1$1 " ; return ;; esac local VALUE= " $1 " COUNT= " $2 " POW=2 ; REPLY= while : ; do if test $POW -gt $COUNT ; then test $COUNT -gt 0 || break REPLY= " $REPLY$VALUE " VALUE= " $1 " COUNT= $(( COUNT - (POW / 2 )) ) POW=2 continue ; fi VALUE= " $VALUE$VALUE " POW= $(( POW * 2 )) done } # Memoized '???...?' pattern generator (used to split long input lines). _questn () { eval " case \$ {_questn $1 :-} in \"\" ) _repeat \\ ? $1 ; _questn $1 = \$ REPLY ;; esac; REPLY= \$ _questn $1 " } # --- modules/str/core.sh --- # Convert string to uppercase (a-z → A-Z). Result in REPLY. _ucase () { local _s= " $1 " _r= _c while test ${ # _s} -gt 0 ; do _c= " ${_s % " ${_s # ?} " } " ; _s= " ${_s # ?} " case " $_c " in a) _r= " ${_r} A " ;; b) _r= " ${_r} B " ;; c) _r= " ${_r} C " ;; d) _r= " ${_r} D " ;; e) _r= " ${_r} E " ;; f) _r= " ${_r} F " ;; g) _r= " ${_r} G " ;; h) _r= " ${_r} H " ;; i) _r= " ${_r} I " ;; j) _r= " ${_r} J " ;; k) _r= " ${_r} K " ;; l) _r= " ${_r} L " ;; m) _r= " ${_r} M " ;; n) _r= " ${_r} N " ;; o) _r= " ${_r} O " ;; p) _r= " ${_r} P " ;; q) _r= " ${_r} Q " ;; r) _r= " ${_r} R " ;; s) _r= " ${_r} S " ;; t) _r= " ${_r} T " ;; u) _r= " ${_r} U " ;; v) _r= " ${_r} V " ;; w) _r= " ${_r} W " ;; x) _r= " ${_r} X " ;; y) _r= " ${_r} Y " ;; z) _r= " ${_r} Z " ;; * ) _r= " ${_r}${_c} " ;; esac done REPLY= " $_r " } # Convert uppercase char to lowercase. Result in REPLY. _lcase () { case " $1 " in A) REPLY=a;; B) REPLY=b;; C) REPLY=c;; D) REPLY=d;; E) REPLY=e;; F) REPLY=f;; G) REPLY=g;; H) REPLY=h;; I) REPLY=i;; J) REPLY=j;; K) REPLY=k;; L) REPLY=l;; M) REPLY=m;; N) REPLY=n;; O) REPLY=o;; P) REPLY=p;; Q) REPLY=q;; R) REPLY=r;; S) REPLY=s;; T) REPLY=t;; U) REPLY=u;; V) REPLY=v;; W) REPLY=w;; X) REPLY=x;; Y) REPLY=y;; Z) REPLY=z;; * ) REPLY=;; esac } # Convert uppercase string to lowercase. Result in REPLY. _lcase_str () { local _s= " $1 " _c _r= while test ${ # _s} -gt 0 ; do _c= " ${_s % " ${_s # ?} " } " ; _s= " ${_s # ?} " _lcase " $_c " case " $REPLY " in ' ' ) _r= " $_r$_c " ;; * ) _r= " $_r$REPLY " ;; esac done REPLY= " $_r " } # --- modules/io/readall.sh --- # Read all of stdin into REPLY (replaces /bin/cat for eval "$(_readall)"). _readall () { REPLY= while IFS= ' ' read -r _l ; do REPLY= " $REPLY$_l$_EOL " ; done REPLY= " $REPLY$_l " } # --- modules/pos/core.sh --- # Count newlines in a consumed/skipped string, update _LN/_COL. # No-newline fast path: just adds string length to _COL. _nlcount () { local _s= " $1 " _h case " $_s " in * " $_EOL " * ) while : ; do _h= " ${_s #* " $_EOL " } " case " $_h " in * " $_EOL " * ) _LN= $(( _LN + 1 )) ; _s= " $_h " ;; * ) _LN= $(( _LN + 1 )) _COL= $(( ${ # _h} + 1 )) return ;; esac done ;; * ) _COL= $(( _COL + ${ # _s} )) ;; esac } # Validate CONSUMED as RFC 8259 number: [-](0|[1-9]d*)[.d+][eE[+-]d+] _numck () { local _n= " $CONSUMED " case " $_n " in ' - ' * ) _n= " ${_n # -} " ;; esac case " $_n " in ' ' ) _error NUMBER;; ' 0 ' [0-9] * ) _error NUMBER;; ' 0 ' * ) _n= " ${_n # 0} " ;; [1-9] * ) _n= " ${_n # [1-9]} " ; _n= " ${_n # " ${_n %% [!0-9] * } " } " ;; * ) _error NUMBER;; esac case " $_n " in ' . ' * ) _n= " ${_n # .} " case " $_n " in [0-9] * ) ;; * ) _error NUMBER;; esac _n= " ${_n # " ${_n %% [!0-9] * } " } " ;; esac case " $_n " in [eE] * ) _n= " ${_n # ?} " case " $_n " in ' + ' * | ' - ' * ) _n= " ${_n # ?} " ;; esac case " $_n " in [0-9] * ) ;; * ) _error NUMBER;; esac _n= " ${_n # " ${_n %% [!0-9] * } " } " ;; esac case " $_n " in ' ' ) ;; * ) _error NUMBER;; esac } # --- modules/err/core.sh --- _error () { IFS= ' ' eval " _a= \"\$ {_SRC $_LN :-} \" " _printr1 " $* at $_LN : $_COL " case " $_a " in ?* ) _printr1 " $_a " _repeat ' ' $_COL ; _printr1 " ${REPLY} ^ " ;; esac exit 1 } # --- modules/ast/core.sh --- # --- Input feeding --- # Read from stdin into CODE buffer, one line at a time. # Lines > 128 chars are split into chunks before appending. # ast_read: read one line, chunk-split into CODE # ast_feed: refill when CODE < 16 chars (tight loop, most branches) # ast_more: refill when CODE < 1024 chars (bulk reads for names/keywords) alias ast_read= ' if IFS= read -r _line then _RD=$((_RD + 1)); eval "_SRC$_RD=\"\$_line\"" while test ${#_line} -gt 128; do _questn 128 _b="${_line#${REPLY}}"; _a="${_line%"$_b"}" CODE="$CODE$_a"; _line="$_b" done CODE="$CODE$_line$_EOL" else _EOF=1; CODE="$CODE$_line" case "$_line" in ?*) _RD=$((_RD + 1)); eval "_SRC$_RD=\"\$_line\"";; esac fi ' alias ast_feed= ' if test ${#CODE} -lt 16 -a $_EOF -eq 0; then ast_read; fi ' alias ast_more= ' while test ${#CODE} -lt 1024 -a $_EOF -eq 0 do ast_read; done ' # --- Character-level operations --- # ast_consume - move 1-4 chars from CODE into CONSUMED # ast_skip - discard 1-3 chars or whitespace from CODE # _ast_xfer - base: append stripped prefix to CONSUMED # _ast_xbulk - base: append REST to CONSUMED, advance CODE alias _ast_xfer= ' CONSUMED="$CONSUMED${CODE%"$REST"}"; CODE="$REST" ' alias _ast_xbulk= ' CONSUMED="$CONSUMED$REST"; CODE="${CODE#"$REST"}" ' alias ast_consume= ' REST="${CODE#?}"; _ast_xfer; _COL=$((_COL+1)) ' alias ast_consume2= ' REST="${CODE#??}"; _ast_xfer; _COL=$((_COL+2)) ' alias ast_consume3= ' REST="${CODE#???}"; _ast_xfer; _COL=$((_COL+3)) ' alias ast_consume4= ' REST="${CODE#????}"; _ast_xfer; _COL=$((_COL+4)) ' alias ast_skip= ' CODE="${CODE#?}"; _COL=$((_COL+1)) ' alias ast_skip2= ' CODE="${CODE#??}"; _COL=$((_COL+2)) ' alias ast_skip3= ' CODE="${CODE#???}"; _COL=$((_COL+3)) ' alias _ast_advcol= ' _COL=$((_COL+${#REST})) ' alias ast_skip_ws= ' REST="${CODE%%[! $_TAB]*}"; _ast_advcol; CODE="${CODE#"$REST"}" ' alias ast_skip_wse= ' REST="${CODE%%[! $_TAB$_EOL]*}" CODE="${CODE#"$REST"}"; _nlcount "$REST" ' # Newline-aware variants alias ast_skip_nl= ' CODE="${CODE#?}"; _LN=$((_LN+1)); _COL=1 ' alias ast_skip2_nl= ' CODE="${CODE#??}"; _LN=$((_LN+1)); _COL=1 ' alias ast_consume_nl= ' REST="${CODE#?}"; _ast_xfer; _LN=$((_LN+1)); _COL=1 ' # ast_bulk - append REST to CONSUMED, advance CODE, loop alias ast_bulk= ' _ast_xbulk; _ast_advcol; continue ' alias ast_bulk_nl= ' _ast_xbulk; _nlcount "$REST"; continue ' # --- AST stack operations --- # ast_new - push state, save CONSUMED as V, reset CONSUMED # ast_push - create tree node X=, push index onto NODES stack # ast_pop - pop state + node stacks # Primitives (used by composed aliases below): # ast_attach - attach node to parent # ast_collapse - collapse single-valueless-child wrapper into the child # pars_attach_op - ast_attach + operator-precedence: if prev sibling is Ab/Ob/Pb/Bu, # restructure so the operator steals the prev sibling # Composed close operations (all start with ast_pop): # ast_discard - ast_pop + discard (for transient states like Cs) # ast_close - ast_pop + ast_attach # pars_close_op - ast_pop + pars_attach_op # ast_close_col - ast_pop + ast_collapse + ast_attach # pars_close_op_col - ast_pop + ast_collapse + pars_attach_op # pars_close_redir - ast_close + error if redirect target is empty # ast_flush - flush CONSUMED as Tx child (a"b"c) alias ast_new= ' STATES="$STATES $STATE"; V=$((V + 1)) case "$CONSUMED" in "");; *) local V$V="$CONSUMED";;esac CONSUMED= ' alias ast_push= ' local X$V="$STATE" PARN="${NODES##*" "}" eval "PARNT=\"\${X$PARN%% *}\"" NODE=$V; NODES="$NODES $NODE" ' alias ast_pop= ' STATE="${STATES##*" "}"; STATES="${STATES%" ${STATE}"}" PARN="${NODES##*" "}" case "$CONSUMED" in ?*) local V$PARN="$CONSUMED";; esac CONSUMED= NODE=$PARN; NODES="${NODES%" $NODE"}"; PARN="${NODES##*" "}" eval "PARNT=\"\${X$PARN%% *}\"" ' alias ast_attach= ' eval "X$PARN=\"\$X$PARN \$NODE\"" ' alias ast_collapse= ' eval "_D=\"\$X$NODE\""; _C="${_D#* }" case "$_C" in "$_D"|*" "*) ;; *) eval "case \"\${V$NODE:-}\" in \"\") unset X$NODE; NODE=$_C;; esac";; esac ' alias ast_discard= ' ast_pop;unset X$NODE ' alias ast_close= ' ast_pop;ast_attach ' alias ast_close_col= ' ast_pop;ast_collapse;ast_attach ' alias ast_flush= ' case "$CONSUMED" in ?*) ast_Tx;ast_close;; esac ' # Register AST node types. Each type gets an ast_XX alias # that creates a new node, sets STATE, and pushes onto the stack. # Register AST node types. Outputs alias definitions to be eval'd. # Usage: eval "$(ast_tokens "Ty Pe Na Me")" ast_tokens () { IFS= ' ' for _s in $1 ; do _printr1 " alias ast_ $_s = \" ast_new;STATE= $_s ;ast_push \" " done IFS= ' ' } # Walk the AST from root, printing V (value) and X (node) in tree order. # Format: X=' [...]' V='' # Uses dynamic scoping to access caller's V/X locals. ast_out () { set -- 0 while test $# -gt 0 ; do NODE= $1 ; shift eval " _pq= \"\$ {V $NODE :-} \" ; _D= \"\$ X $NODE \" " case " $_pq " in ?* ) # Escape single quotes in values: 'abc'd'ef' -> 'abc'\''ef' case " $_pq " in * " ' " * ) _printn1 " V $NODE = " while : ; do case " $_pq " in * " ' " * ) ;; * ) break ;; esac _printn1 " ' ${_pq %% " ' " * } ' \\ ' " ; _pq= " ${_pq #* " ' " } " done _printn1 " ' $_pq ' $_EOL " ;; * ) _printr1 " V $NODE =' $_pq ' " ;; esac ;; esac _printr1 " X $NODE =' $_D ' " _C= " ${_D #* } " case " $_C " in " $_D " ) ;; ?* ) IFS= ' ' ; set -- $_C " $@ " ; IFS= ' ' ;; esac done } # --- Progress check (loop detection) --- # Two-level check: # 1. Exact repeat (same CODE length + state + position) → immediate error # 2. No input consumed for 4096 iterations → stuck in state cycle alias pars_progress= ' case "${#CODE}.$STATE.$_LN.$_COL" in "$_PREV") _error INTERNAL LOOP;; esac; _PREV="${#CODE}.$STATE.$_LN.$_COL"; case ${#CODE} in "$_PLEN") _PLC=$((_PLC+1)); case $((_PLC>4096)) in 1) _error INTERNAL LOOP;; esac;; *) _PLEN=${#CODE}; _PLC=0;; esac ' # --- Error reporting helpers --- alias _pars_err= ' eval "_a=\"\${_EXP_$STATE:-token}\""; _error "expected: $_a" ' alias _pars_err_eof= ' eval "_a=\"\${_EXP_$STATE:-token}\""; _error "unexpected end of input, expected: $_a" ' # --- Parser epilogue (emitter wrappers, footer, dispatch) --- # $1=grammar name, $2=script arg (optional command override). # Called after the emitter function is defined. _ast_core_pars_epilogue () { eval " _emit_ ${1} _root () { _emit_ $1 \"\$ @ \" ; } " . " $_DIR /core/footer.sh " eval " unast_ $1 () { _readall; eval \"\$ REPLY \" ; _emit_ ${1} _root 0; _printr1 \"\$ REPLY \" ; } " eval " reast_ $1 () { pars_ $1 | unast_ $1 ; } " case " ${PARS_LIB :- } " in " " ) case " ${2 :- } " in " " ) " pars_ $1 " ;; pars_ * |unast_ * |reast_ * ) $2 ;; * ) _printr1 " usage: $0 [pars_ $1 | unast_ $1 | reast_ $1 ] " _printr1 " pars_ $1 parse stdin, print AST (default) " _printr1 " unast_ $1 read AST from stdin, print source " _printr1 " reast_ $1 parse stdin, print source (round-trip) " exit 1;; esac ;; esac } # --- modules/ast/consume.sh --- # --- Match/operator consumption --- # Used by parsers with keyword matching or precedence climbing. # Skip MATCH from CODE (keyword skip after case-insensitive match) alias ast_skip_match= ' CODE="${CODE#"$MATCH"}"; _COL=$((_COL+${#MATCH})) ' # Consume MATCH into CONSUMED (keyword consumed as AST value) alias ast_consume_match= ' CONSUMED="$MATCH"; CODE="${CODE#"$MATCH"}"; _COL=$((_COL+${#MATCH})) ' # Consume _OP into CONSUMED (binary operator consumption) alias ast_consume_op= ' CONSUMED="$_OP"; CODE="${CODE#"$_OP"}"; _COL=$((_COL+${#_OP})) ' # --- modules/ast/prec.sh --- # --- Precedence climbing helpers --- # Used by parsers with #!precedence directives. # Close node and re-enter precedence climbing loop. alias ast_close_xc= ' ast_close; _XC=1; _PREV=; continue ' alias ast_close_col_xc= ' ast_close_col; _XC=1; _PREV=; continue ' # --- modules/ast/comment.sh --- # --- Comment skip --- # Used by parsers with #!comment directives. # Requires variables set by the generated parser: # _CMT_S, _CMT_SL -- block comment start marker and its length # _CMT_E, _CMT_EL -- block comment end marker and its length # Line comment: skip from current position to end of line alias ast_cmt_line= ' REST="${CODE%%"$_EOL"*}" CODE="${CODE#"$REST"}" _COL=$((_COL+${#REST})); continue ' # Block comment: skip from start marker to end marker, counting newlines alias ast_cmt_block= ' CODE="${CODE#"$_CMT_S"}"; _COL=$((_COL+_CMT_SL)) while :; do case "$CODE" in *"$_CMT_E"*) REST="${CODE%%"$_CMT_E"*}" _nlcount "$REST" CODE="${CODE#"$REST"}"; CODE="${CODE#"$_CMT_E"}" _COL=$((_COL+_CMT_EL)); break;; *) case $_EOF in 1) _error "unclosed comment";; esac _nlcount "$CODE"; CODE=; ast_read;; esac done; continue ' # --- modules/c89/parser.sh --- alias ast_Ca= " ast_new;STATE=Ca;ast_push " alias ast_Cb= " ast_new;STATE=Cb;ast_push " alias ast_Cc= " ast_new;STATE=Cc;ast_push " alias ast_Cd= " ast_new;STATE=Cd;ast_push " alias ast_Ce= " ast_new;STATE=Ce;ast_push " alias ast_Cf= " ast_new;STATE=Cf;ast_push " alias ast_Cg= " ast_new;STATE=Cg;ast_push " alias ast_Ch= " ast_new;STATE=Ch;ast_push " alias ast_Ci= " ast_new;STATE=Ci;ast_push " alias ast_Cj= " ast_new;STATE=Cj;ast_push " alias ast_Ck= " ast_new;STATE=Ck;ast_push " alias ast_Cl= " ast_new;STATE=Cl;ast_push " alias ast_Cm= " ast_new;STATE=Cm;ast_push " alias ast_Cn= " ast_new;STATE=Cn;ast_push " alias ast_Co= " ast_new;STATE=Co;ast_push " alias ast_Cp= " ast_new;STATE=Cp;ast_push " alias ast_Cq= " ast_new;STATE=Cq;ast_push " alias ast_Cr= " ast_new;STATE=Cr;ast_push " alias ast_Cs= " ast_new;STATE=Cs;ast_push " alias ast_Ct= " ast_new;STATE=Ct;ast_push " alias ast_Cu= " ast_new;STATE=Cu;ast_push " alias ast_Cv= " ast_new;STATE=Cv;ast_push " alias ast_Cw= " ast_new;STATE=Cw;ast_push " alias ast_Cx= " ast_new;STATE=Cx;ast_push " alias ast_Cy= " ast_new;STATE=Cy;ast_push " alias ast_Cz= " ast_new;STATE=Cz;ast_push " alias ast_C1= " ast_new;STATE=C1;ast_push " alias ast_C2= " ast_new;STATE=C2;ast_push " alias ast_C3= " ast_new;STATE=C3;ast_push " alias ast_C4= " ast_new;STATE=C4;ast_push " alias ast_C5= " ast_new;STATE=C5;ast_push " alias ast_C6= " ast_new;STATE=C6;ast_push " alias ast_C7= " ast_new;STATE=C7;ast_push " alias ast_C8= " ast_new;STATE=C8;ast_push " alias ast_C9= " ast_new;STATE=C9;ast_push " alias ast_C10= " ast_new;STATE=C10;ast_push " alias ast_C11= " ast_new;STATE=C11;ast_push " alias ast_C12= " ast_new;STATE=C12;ast_push " alias ast_C13= " ast_new;STATE=C13;ast_push " alias ast_C14= " ast_new;STATE=C14;ast_push " alias ast_C15= " ast_new;STATE=C15;ast_push " alias ast_C16= " ast_new;STATE=C16;ast_push " alias ast_C17= " ast_new;STATE=C17;ast_push " alias ast_C18= " ast_new;STATE=C18;ast_push " alias ast_C19= " ast_new;STATE=C19;ast_push " alias ast_C20= " ast_new;STATE=C20;ast_push " alias ast_C21= " ast_new;STATE=C21;ast_push " alias ast_C22= " ast_new;STATE=C22;ast_push " alias ast_C23= " ast_new;STATE=C23;ast_push " alias ast_C24= " ast_new;STATE=C24;ast_push " alias ast_C25= " ast_new;STATE=C25;ast_push " alias ast_C26= " ast_new;STATE=C26;ast_push " alias ast_C27= " ast_new;STATE=C27;ast_push " alias ast_C28= " ast_new;STATE=C28;ast_push " alias ast_C29= " ast_new;STATE=C29;ast_push " alias ast_C30= " ast_new;STATE=C30;ast_push " alias ast_C31= " ast_new;STATE=C31;ast_push " alias ast_C32= " ast_new;STATE=C32;ast_push " alias ast_C33= " ast_new;STATE=C33;ast_push " alias ast_C34= " ast_new;STATE=C34;ast_push " alias ast_C35= " ast_new;STATE=C35;ast_push " alias ast_C36= " ast_new;STATE=C36;ast_push " alias ast_C37= " ast_new;STATE=C37;ast_push " alias ast_C38= " ast_new;STATE=C38;ast_push " alias ast_C39= " ast_new;STATE=C39;ast_push " alias ast_C40= " ast_new;STATE=C40;ast_push " alias ast_C41= " ast_new;STATE=C41;ast_push " alias ast_C42= " ast_new;STATE=C42;ast_push " alias ast_C43= " ast_new;STATE=C43;ast_push " alias ast_C44= " ast_new;STATE=C44;ast_push " alias ast_C45= " ast_new;STATE=C45;ast_push " alias ast_C46= " ast_new;STATE=C46;ast_push " alias ast_C47= " ast_new;STATE=C47;ast_push " alias ast_C48= " ast_new;STATE=C48;ast_push " alias ast_C49= " ast_new;STATE=C49;ast_push " alias ast_C50= " ast_new;STATE=C50;ast_push " alias ast_C51= " ast_new;STATE=C51;ast_push " alias ast_C52= " ast_new;STATE=C52;ast_push " alias ast_C53= " ast_new;STATE=C53;ast_push " alias ast_C54= " ast_new;STATE=C54;ast_push " alias ast_C55= " ast_new;STATE=C55;ast_push " alias ast_C56= " ast_new;STATE=C56;ast_push " alias ast_C57= " ast_new;STATE=C57;ast_push " alias ast_C58= " ast_new;STATE=C58;ast_push " alias ast_C59= " ast_new;STATE=C59;ast_push " alias ast_C60= " ast_new;STATE=C60;ast_push " alias ast_C61= " ast_new;STATE=C61;ast_push " alias ast_C62= " ast_new;STATE=C62;ast_push " alias ast_C63= " ast_new;STATE=C63;ast_push " alias ast_C64= " ast_new;STATE=C64;ast_push " alias ast_C65= " ast_new;STATE=C65;ast_push " alias ast_C66= " ast_new;STATE=C66;ast_push " alias ast_C67= " ast_new;STATE=C67;ast_push " alias ast_C68= " ast_new;STATE=C68;ast_push " alias ast_C69= " ast_new;STATE=C69;ast_push " alias ast_C70= " ast_new;STATE=C70;ast_push " alias ast_C71= " ast_new;STATE=C71;ast_push " alias ast_C72= " ast_new;STATE=C72;ast_push " alias ast_C73= " ast_new;STATE=C73;ast_push " alias ast_C74= " ast_new;STATE=C74;ast_push " alias ast_C75= " ast_new;STATE=C75;ast_push " alias ast_C76= " ast_new;STATE=C76;ast_push " alias ast_C77= " ast_new;STATE=C77;ast_push " alias ast_C78= " ast_new;STATE=C78;ast_push " alias ast_C79= " ast_new;STATE=C79;ast_push " alias ast_C80= " ast_new;STATE=C80;ast_push " alias ast_C81= " ast_new;STATE=C81;ast_push " alias ast_C82= " ast_new;STATE=C82;ast_push " alias ast_C83= " ast_new;STATE=C83;ast_push " alias ast_C84= " ast_new;STATE=C84;ast_push " alias ast_C85= " ast_new;STATE=C85;ast_push " alias ast_C86= " ast_new;STATE=C86;ast_push " alias ast_C87= " ast_new;STATE=C87;ast_push " alias ast_C88= " ast_new;STATE=C88;ast_push " alias ast_C89= " ast_new;STATE=C89;ast_push " alias ast_C90= " ast_new;STATE=C90;ast_push " alias ast_C91= " ast_new;STATE=C91;ast_push " alias ast_C92= " ast_new;STATE=C92;ast_push " alias ast_C93= " ast_new;STATE=C93;ast_push " alias ast_C94= " ast_new;STATE=C94;ast_push " alias ast_C95= " ast_new;STATE=C95;ast_push " alias ast_C96= " ast_new;STATE=C96;ast_push " alias ast_C97= " ast_new;STATE=C97;ast_push " alias ast_C98= " ast_new;STATE=C98;ast_push " alias ast_C99= " ast_new;STATE=C99;ast_push " alias ast_C100= " ast_new;STATE=C100;ast_push " alias ast_C101= " ast_new;STATE=C101;ast_push " alias ast_C102= " ast_new;STATE=C102;ast_push " alias ast_C103= " ast_new;STATE=C103;ast_push " alias ast_C104= " ast_new;STATE=C104;ast_push " alias ast_C105= " ast_new;STATE=C105;ast_push " alias ast_C106= " ast_new;STATE=C106;ast_push " alias ast_C107= " ast_new;STATE=C107;ast_push " alias ast_C108= " ast_new;STATE=C108;ast_push " alias ast_C109= " ast_new;STATE=C109;ast_push " alias ast_C110= " ast_new;STATE=C110;ast_push " alias ast_C111= " ast_new;STATE=C111;ast_push " alias ast_C112= " ast_new;STATE=C112;ast_push " alias ast_C113= " ast_new;STATE=C113;ast_push " alias ast_C114= " ast_new;STATE=C114;ast_push " alias ast_C115= " ast_new;STATE=C115;ast_push " alias ast_C116= " ast_new;STATE=C116;ast_push " alias ast_C117= " ast_new;STATE=C117;ast_push " alias ast_C118= " ast_new;STATE=C118;ast_push " alias ast_C119= " ast_new;STATE=C119;ast_push " alias ast_C120= " ast_new;STATE=C120;ast_push " alias ast_C121= " ast_new;STATE=C121;ast_push " alias ast_C122= " ast_new;STATE=C122;ast_push " alias ast_C123= " ast_new;STATE=C123;ast_push " alias ast_C124= " ast_new;STATE=C124;ast_push " alias ast_C125= " ast_new;STATE=C125;ast_push " alias ast_C126= " ast_new;STATE=C126;ast_push " alias ast_C127= " ast_new;STATE=C127;ast_push " alias ast_C128= " ast_new;STATE=C128;ast_push " alias ast_C129= " ast_new;STATE=C129;ast_push " alias ast_C130= " ast_new;STATE=C130;ast_push " alias ast_C131= " ast_new;STATE=C131;ast_push " alias ast_C132= " ast_new;STATE=C132;ast_push " alias ast_C133= " ast_new;STATE=C133;ast_push " alias ast_C134= " ast_new;STATE=C134;ast_push " alias ast_C135= " ast_new;STATE=C135;ast_push " alias ast_C136= " ast_new;STATE=C136;ast_push " alias ast_C137= " ast_new;STATE=C137;ast_push " alias ast_C138= " ast_new;STATE=C138;ast_push " alias ast_C139= " ast_new;STATE=C139;ast_push " alias ast_C140= " ast_new;STATE=C140;ast_push " alias ast_C141= " ast_new;STATE=C141;ast_push " alias ast_C142= " ast_new;STATE=C142;ast_push " alias ast_C143= " ast_new;STATE=C143;ast_push " alias ast_C144= " ast_new;STATE=C144;ast_push " alias ast_C145= " ast_new;STATE=C145;ast_push " alias ast_C146= " ast_new;STATE=C146;ast_push " alias ast_C147= " ast_new;STATE=C147;ast_push " alias ast_C148= " ast_new;STATE=C148;ast_push " alias ast_C149= " ast_new;STATE=C149;ast_push " alias ast_C150= " ast_new;STATE=C150;ast_push " alias ast_C151= " ast_new;STATE=C151;ast_push " alias ast_C152= " ast_new;STATE=C152;ast_push " alias ast_C153= " ast_new;STATE=C153;ast_push " alias ast_C154= " ast_new;STATE=C154;ast_push " alias ast_C155= " ast_new;STATE=C155;ast_push " alias ast_C156= " ast_new;STATE=C156;ast_push " alias ast_C157= " ast_new;STATE=C157;ast_push " alias ast_C158= " ast_new;STATE=C158;ast_push " alias ast_C159= " ast_new;STATE=C159;ast_push " alias ast_C160= " ast_new;STATE=C160;ast_push " alias ast_C161= " ast_new;STATE=C161;ast_push " alias ast_C162= " ast_new;STATE=C162;ast_push " alias ast_C163= " ast_new;STATE=C163;ast_push " alias ast_C164= " ast_new;STATE=C164;ast_push " alias ast_C165= " ast_new;STATE=C165;ast_push " alias ast_C166= " ast_new;STATE=C166;ast_push " alias ast_C167= " ast_new;STATE=C167;ast_push " alias ast_C168= " ast_new;STATE=C168;ast_push " alias ast_C169= " ast_new;STATE=C169;ast_push " alias ast_C170= " ast_new;STATE=C170;ast_push " alias ast_C171= " ast_new;STATE=C171;ast_push " alias ast_C172= " ast_new;STATE=C172;ast_push " alias ast_C173= " ast_new;STATE=C173;ast_push " alias ast_C174= " ast_new;STATE=C174;ast_push " alias ast_C175= " ast_new;STATE=C175;ast_push " alias ast_C176= " ast_new;STATE=C176;ast_push " alias ast_C177= " ast_new;STATE=C177;ast_push " alias ast_C178= " ast_new;STATE=C178;ast_push " alias ast_C179= " ast_new;STATE=C179;ast_push " alias ast_C180= " ast_new;STATE=C180;ast_push " alias ast_C181= " ast_new;STATE=C181;ast_push " alias ast_C182= " ast_new;STATE=C182;ast_push " alias ast_C183= " ast_new;STATE=C183;ast_push " alias ast_C184= " ast_new;STATE=C184;ast_push " alias ast_C185= " ast_new;STATE=C185;ast_push " alias ast_C186= " ast_new;STATE=C186;ast_push " alias ast_C187= " ast_new;STATE=C187;ast_push " alias ast_C188= " ast_new;STATE=C188;ast_push " # State codes: # Ca=_doc_ Cb=file_body Cc=item Cd=int_item Ce=char_item Cf=void_item Cg=long_item Ch=short_item Ci=float_item Cj=double_item Ck=signed_item Cl=unsigned_item Cm=const_item Cn=static_item Co=extern_item Cp=volatile_item Cq=auto_item Cr=register_item Cs=typedef_item Ct=struct_item Cu=union_item Cv=enum_item Cw=decl_rest Cx=ptr_decl Cy=ident_decl Cz=after_name C1=func_def C2=func_end C3=func_block C4=array_decl C5=init_part C6=more_decls C7=declarator C8=param C9=param_rest C10=param_ptr C11=param_type C12=param_struct C13=param_union C14=param_enum C15=struct_rest C16=enum_rest C17=enum_tail C18=enum_vars C19=enumerator_list C20=enumerator C21=initializer C22=brace_init C23=return_item C24=break_item C25=continue_item C26=goto_item C27=if_item C28=while_item C29=for_item C30=do_item C31=switch_item C32=case_item C33=default_item C34=sizeof_item C35=pp_line C36=block_item C37=block_body C38=expr_item C39=expr C40=atom C41=sizeof_expr C42=sizeof_body C43=paren_expr C44=arg_list C45=str C46=chr C47=number C48=ident C49=_unary_1 C50=_unary_2 C51=_unary_3 C52=_unary_4 C53=_unary_5 C54=_unary_6 # cont: C55 C56 C57 C58 C59 C60 C61 C62 C63 C64 C65 C66 C67 C68 C69 C70 C71 C72 C73 C74 C75 C76 C77 C78 C79 C80 C81 C82 C83 C84 C85 C86 C87 C88 C89 C90 C91 C92 C93 C94 C95 C96 C97 C98 C99 C100 C101 C102 C103 C104 C105 C106 C107 C108 C109 C110 C111 C112 C113 C114 C115 C116 C117 C118 C119 C120 C121 C122 C123 C124 C125 C126 C127 C128 C129 C130 C131 C132 C133 C134 C135 C136 C137 C138 C139 C140 C141 C142 C143 C144 C145 C146 C147 C148 C149 C150 C151 C152 C153 C154 C155 C156 C157 C158 C159 C160 C161 C162 C163 C164 C165 C166 C167 C168 C169 C170 C171 C172 C173 C174 C175 C176 C177 C178 C179 C180 C181 C182 C183 C184 C185 C186 C187 C188 _c89_sg_C45= ' [\\"]* ' _c89_sg_C46= ' [\\ ' " ' " ' ]* ' _EXP_Ca= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_Cb= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_Cc= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or ' \' ' w ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_Cd= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Ce= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cf= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cg= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Ch= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Ci= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cj= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Ck= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cl= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cm= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cn= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Co= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cp= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cq= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cr= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cs= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Ct= ' identifier ' _EXP_Cu= ' identifier ' _EXP_Cv= ' ' \' ' { ' \' ' or identifier ' _EXP_Cw= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cx= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_Cy= ' identifier ' _EXP_Cz= ' ' \' ' ( ' \' ' or ' \' ' ; ' \' ' or ' \' ' [ ' \' ' or ' \' ' = ' \' ' or ' \' ' , ' \' ' ' _EXP_C1= ' ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' ) ' \' ' ' _EXP_C2= ' ' \' ' { ' \' ' or ' \' ' ; ' \' ' or ' \' ' , ' \' ' ' _EXP_C3= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or ' \' ' } ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C4= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ] ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C5= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C6= ' ' \' ' ; ' \' ' or ' \' ' , ' \' ' ' _EXP_C7= ' ' \' ' * ' \' ' or identifier ' _EXP_C8= ' ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' ' _EXP_C9= ' ' \' ' * ' \' ' or identifier ' _EXP_C10= ' ' \' ' * ' \' ' or identifier ' _EXP_C11= ' ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' ' _EXP_C12= ' identifier ' _EXP_C13= ' identifier ' _EXP_C14= ' identifier ' _EXP_C15= ' identifier ' _EXP_C16= ' identifier ' _EXP_C17= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C18= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C19= ' identifier ' _EXP_C20= ' identifier ' _EXP_C21= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C22= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C23= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ; ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C24= ' ' \' ' ; ' \' ' ' _EXP_C25= ' ' \' ' ; ' \' ' ' _EXP_C26= ' identifier ' _EXP_C27= ' ' \' ' ( ' \' ' ' _EXP_C28= ' ' \' ' ( ' \' ' ' _EXP_C29= ' ' \' ' ( ' \' ' ' _EXP_C30= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C31= ' ' \' ' ( ' \' ' ' _EXP_C32= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C33= ' ' \' ' : ' \' ' ' _EXP_C34= ' ' \' ' ( ' \' ' ' _EXP_C35= ' identifier ' _EXP_C36= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or ' \' ' } ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C37= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or ' \' ' } ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C38= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C39= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C40= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C41= ' ' \' ' ( ' \' ' ' _EXP_C42= ' identifier ' _EXP_C43= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C44= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C45= ' "\"" or ' \' ' \ ' \' ' ' _EXP_C46= ' ' \' ' \ ' \' ' or ' \' ' ' \' ' ' \' ' ' _EXP_C49= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C50= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C51= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C52= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C53= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C54= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C55= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C56= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' ) ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C57= ' ' \' ' ) ' \' ' ' _EXP_C58= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' ] ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C59= ' ' \' ' ] ' \' ' ' _EXP_C60= ' identifier ' _EXP_C61= ' identifier ' _EXP_C64= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C65= ' ' \' ' : ' \' ' ' _EXP_C66= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C67= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C90= ' ' \' ' ( ' \' ' or ' \' ' ; ' \' ' or ' \' ' [ ' \' ' or ' \' ' = ' \' ' or ' \' ' , ' \' ' ' _EXP_C93= ' ' \' ' { ' \' ' or ' \' ' ; ' \' ' or ' \' ' , ' \' ' ' _EXP_C94= ' ' \' ' , ' \' ' ' _EXP_C95= ' ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' ' _EXP_C99= ' ' \' ' ; ' \' ' or ' \' ' , ' \' ' ' _EXP_C101= ' ' \' ' ; ' \' ' or ' \' ' , ' \' ' ' _EXP_C103= ' ' \' ' * ' \' ' or identifier ' _EXP_C104= ' ' \' ' [ ' \' ' or ' \' ' = ' \' ' ' _EXP_C105= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ] ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C106= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C107= ' ' \' ' * ' \' ' or identifier ' _EXP_C115= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C118= ' ' \' ' { ' \' ' or ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C120= ' ' \' ' } ' \' ' ' _EXP_C121= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C124= ' ' \' ' } ' \' ' ' _EXP_C125= ' ' \' ' * ' \' ' or ' \' ' ; ' \' ' or identifier ' _EXP_C127= ' ' \' ' , ' \' ' ' _EXP_C128= ' identifier ' _EXP_C129= ' ' \' ' = ' \' ' ' _EXP_C130= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C132= ' ' \' ' , ' \' ' or ' \' ' } ' \' ' ' _EXP_C133= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C134= ' ' \' ' ; ' \' ' ' _EXP_C135= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C136= ' ' \' ' ) ' \' ' ' _EXP_C137= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C138= ' ' \' ' E ' \' ' or ' \' ' e ' \' ' ' _EXP_C139= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C140= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C141= ' ' \' ' ) ' \' ' ' _EXP_C142= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C144= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ; ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C145= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ; ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C146= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or ' \' ' ) ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C147= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C149= ' ' \' ' w ' \' ' or ' \' ' W ' \' ' ' _EXP_C150= ' ' \' ' ( ' \' ' ' _EXP_C151= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C152= ' ' \' ' ) ' \' ' ' _EXP_C153= ' ' \' ' ; ' \' ' ' _EXP_C154= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C155= ' ' \' ' ) ' \' ' ' _EXP_C156= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C158= ' ' \' ' : ' \' ' ' _EXP_C159= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C161= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C163= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' _EXP_C164= ' ' \' ' ) ' \' ' ' _EXP_C165= ' ' \' ' ; ' \' ' ' _EXP_C169= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' I ' \' ' or ' \' ' C ' \' ' or ' \' ' V ' \' ' or ' \' ' L ' \' ' or ' \' ' S ' \' ' or ' \' ' F ' \' ' or ' \' ' D ' \' ' or ' \' ' U ' \' ' or ' \' ' E ' \' ' or ' \' ' A ' \' ' or ' \' ' R ' \' ' or ' \' ' T ' \' ' or ' \' ' B ' \' ' or ' \' ' G ' \' ' or ' \' ' # ' \' ' or ' \' ' { ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' i ' \' ' or ' \' ' c ' \' ' or ' \' ' v ' \' ' or ' \' ' l ' \' ' or ' \' ' s ' \' ' or ' \' ' f ' \' ' or ' \' ' d ' \' ' or ' \' ' u ' \' ' or ' \' ' e ' \' ' or ' \' ' a ' \' ' or ' \' ' r ' \' ' or ' \' ' t ' \' ' or ' \' ' b ' \' ' or ' \' ' g ' \' ' or ' \' ' } ' \' ' or identifier or [0-9a-fA-FxXuUlL.] or text ' _EXP_C171= ' ' \' ' ; ' \' ' ' _EXP_C173= ' identifier ' _EXP_C174= ' ' \' ' ) ' \' ' ' _EXP_C175= ' ' \' ' * ' \' ' or identifier ' _EXP_C176= ' ' \' ' ) ' \' ' ' _EXP_C177= ' ' \' ' , ' \' ' ' _EXP_C178= ' "\"" or ' \' ' ' \' ' ' \' ' or ' \' ' S ' \' ' or ' \' ' + ' \' ' or ' \' ' & ' \' ' or ' \' ' * ' \' ' or ' \' ' ~ ' \' ' or ' \' ' ! ' \' ' or ' \' ' - ' \' ' or ' \' ' ( ' \' ' or ' \' ' s ' \' ' or identifier or [0-9a-fA-FxXuUlL.] ' # Steal last sibling from parent, make it first child of current NODE alias _steal= ' eval "_W=\"\${X$PARN##*\" \"}\" X$PARN=\"\${X$PARN% *}\" X$NODE=\"\$X$NODE \$_W\"" ' _c89_parser_prec () { case " $1 " in ' = ' ) REPLY=1;; ' += ' ) REPLY=1;; ' -= ' ) REPLY=1;; ' *= ' ) REPLY=1;; ' /= ' ) REPLY=1;; ' %= ' ) REPLY=1;; ' &= ' ) REPLY=1;; ' |= ' ) REPLY=1;; ' ^= ' ) REPLY=1;; ' <<= ' ) REPLY=1;; ' >>= ' ) REPLY=1;; ' || ' ) REPLY=2;; ' && ' ) REPLY=3;; ' | ' ) REPLY=4;; ' ^ ' ) REPLY=5;; ' & ' ) REPLY=6;; ' == ' ) REPLY=7;; ' != ' ) REPLY=7;; ' < ' ) REPLY=8;; ' > ' ) REPLY=8;; ' <= ' ) REPLY=8;; ' >= ' ) REPLY=8;; ' << ' ) REPLY=9;; ' >> ' ) REPLY=9;; ' + ' ) REPLY=10;; ' - ' ) REPLY=10;; ' * ' ) REPLY=11;; ' / ' ) REPLY=11;; ' % ' ) REPLY=11;; ' ? ' ) REPLY=0;; ' - ' ) REPLY=12;; ' ! ' ) REPLY=12;; ' ~ ' ) REPLY=12;; ' * ' ) REPLY=12;; ' & ' ) REPLY=12;; ' ++ ' ) REPLY=12;; * ) REPLY=0;; esac } c89_parser () { local CODE= STATE=Ca V=0 CONSUMED= STATES= NODES= " 0 " X0= " Ca " \ NODE= PARN= PARNT= SIBL= REST= MATCH= _a= _W= _ST= _D= _C= _pq= \ _EOF=0 _line= _PREV= _PLEN= _PLC=0 _JT=0 \ _XC=0 _OP= _np=0 _cp=0 \ _CMT_S= ' /* ' _CMT_SL=2 _CMT_E= ' */ ' _CMT_EL=2 \ _LN=1 _COL=1 _RD=0 while : ; do pars_progress ast_feed # --- Expression completion (precedence climbing) --- case $_XC in 1) _XC=0 ; case $STATE in C39|C55|C64|C66) case " $CODE " in ' ' * | " $_TAB " * | " $_EOL " * ) ast_skip_wse;; esac case " $CODE " in ' - ' ' > ' * ) CODE= " ${CODE # " -> " } " ; _COL= $(( _COL + 2 )) ; ast_C61 ; _steal ; continue ;; ' + ' ' + ' * ) CODE= " ${CODE # " ++ " } " ; _COL= $(( _COL + 2 )) ; ast_C62 ; _steal ; ast_close_xc;; ' - ' ' - ' * ) CODE= " ${CODE # " -- " } " ; _COL= $(( _COL + 2 )) ; ast_C63 ; _steal ; ast_close_xc;; ' ( ' * ) CODE= " ${CODE # " ( " } " ; _COL= $(( _COL + 1 )) ; ast_C56 ; _steal ; continue ;; ' [ ' * ) CODE= " ${CODE # " [ " } " ; _COL= $(( _COL + 1 )) ; ast_C58 ; _steal ; continue ;; ' . ' * ) CODE= " ${CODE # " . " } " ; _COL= $(( _COL + 1 )) ; ast_C60 ; _steal ; continue ;; esac _OP= case " $CODE " in ' < ' ' < ' ' = ' * ) _OP= " <<= " ; _np=1;; ' > ' ' > ' ' = ' * ) _OP= " >>= " ; _np=1;; ' + ' ' = ' * ) _OP= " += " ; _np=1;; ' - ' ' = ' * ) _OP= " -= " ; _np=1;; ' * ' ' = ' * ) _OP= " *= " ; _np=1;; ' / ' ' = ' * ) _OP= " /= " ; _np=1;; ' % ' ' = ' * ) _OP= " %= " ; _np=1;; ' & ' ' = ' * ) _OP= " &= " ; _np=1;; ' | ' ' = ' * ) _OP= " |= " ; _np=1;; ' ^ ' ' = ' * ) _OP= " ^= " ; _np=1;; ' | ' ' | ' * ) _OP= " || " ; _np=2;; ' & ' ' & ' * ) _OP= " && " ; _np=3;; ' = ' ' = ' * ) _OP= " == " ; _np=7;; ' ! ' ' = ' * ) _OP= " != " ; _np=7;; ' < ' ' = ' * ) _OP= " <= " ; _np=8;; ' > ' ' = ' * ) _OP= " >= " ; _np=8;; ' < ' ' < ' * ) _OP= " << " ; _np=9;; ' > ' ' > ' * ) _OP= " >> " ; _np=9;; ' = ' * ) _OP= " = " ; _np=1;; ' | ' * ) _OP= " | " ; _np=4;; ' ^ ' * ) _OP= " ^ " ; _np=5;; ' & ' * ) _OP= " & " ; _np=6;; ' < ' * ) _OP= " < " ; _np=8;; ' > ' * ) _OP= " > " ; _np=8;; ' + ' * ) _OP= " + " ; _np=10;; ' - ' * ) _OP= " - " ; _np=10;; ' * ' * ) _OP= " * " ; _np=11;; ' / ' * ) _OP= " / " ; _np=11;; ' % ' * ) _OP= " % " ; _np=11;; ' ? ' * ) _OP= " ? " ; _np=0;; esac case " $_OP " in ?* ) case $STATE in C55|C64|C66) _W= " ${NODES ##* " " } " ; eval " _W= \"\$ {V $_W :-} \" " _c89_parser_prec " $_W " ; _cp= $REPLY case " $_OP " in ' = ' | ' += ' | ' -= ' | ' *= ' | ' /= ' | ' %= ' | ' &= ' | ' |= ' | ' ^= ' | ' <<= ' | ' >>= ' | ' ? ' ) case $(( _np < _cp )) in 1) ast_close_xc;; esac ;; * ) case $(( _np <= _cp )) in 1) ast_close_xc;; esac ;; esac ;; esac ast_consume_op case " $_OP " in ' ? ' ) ast_C64 ; _steal ; continue ;; esac ast_C55 ; _steal ; continue ;; esac case $STATE in C64) STATE=C65 ; continue ;; esac case $STATE in C66) ast_close_xc;; esac case $STATE in C55) ast_close_xc;; esac case $STATE in C39) ast_close ; _PREV= ; continue ;; esac ;; esac ;; esac # --- Fast paths (bulk accumulation) --- case $STATE in # str: accumulate (stops at close/esc) C45) case $CODE in ' " ' * | ' \ ' * | ' ' ) ;; * ) ast_more ; REST= " ${CODE %% $_c89_sg_C45 } " ; ast_bulk_nl;; esac ;; # chr: accumulate (stops at close/esc) C46) case $CODE in " ' " * | ' \ ' * | ' ' ) ;; * ) ast_more ; REST= " ${CODE %% $_c89_sg_C46 } " ; ast_bulk_nl;; esac ;; # number: accumulate [0-9a-fA-FxXuUlL.] C47) ast_more ; REST= " ${CODE %% [!0-9a-fA-FxXuUlL.] * } " case " $REST " in ?* ) ast_bulk_nl;; * ) ast_close ; _XC=1 ; _PREV= ; continue ;; esac ;; # ident: accumulate [a-zA-Z_0-9] C48) ast_more ; REST= " ${CODE %% [!a-zA-Z_0-9] * } " case " $REST " in ?* ) ast_bulk_nl;; * ) ast_close ; _XC=1 ; _PREV= ; continue ;; esac ;; Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|Cy|Cz|C1|C2|C3|C4|C5|C6|C7|C8|C9|C10|C11|C12|C13|C14|C15|C16|C17|C18|C19|C20|C21|C22|C23|C24|C25|C26|C27|C28|C29|C31|C32|C33|C34|C35|C36|C37|C38|C39|C40|C41|C42|C43|C44|C49|C50|C51|C52|C53|C54|C55|C56|C57|C58|C59|C60|C61|C62|C63|C64|C65|C66|C67|C90|C93|C94|C95|C99|C101|C103|C104|C105|C106|C107|C115|C118|C120|C121|C124|C125|C127|C128|C129|C130|C132|C133|C134|C135|C136|C138|C140|C141|C142|C144|C145|C146|C147|C149|C150|C151|C152|C153|C154|C155|C156|C158|C159|C161|C163|C164|C165|C171|C173|C174|C175|C176|C177|C178) case $CODE in ' ' * | " $_TAB " * | " $_EOL " * ) ast_skip ; continue ;; esac ;; esac # Block comment skip case $CODE in ' /* ' * ) ast_cmt_block;; esac # --- Character dispatch --- case $CODE in ' " ' * ) case $STATE in C45) ast_close ; ast_skip ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C45 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' \ ' * ) case $STATE in C45) case ${CODE # ?} in ' " ' * | ' \ ' * | ' / ' * | ' b ' * | ' f ' * | ' n ' * | ' r ' * | ' t ' * ) ast_consume2;; ' u ' * ) case $CODE in ' \u ' [0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F] * ) REST= " ${CODE # ??????} " ; _ast_xfer ; _COL= $(( _COL + 6 )) ;; * ) _error UNICODE;; esac ;; * ) _error ESCAPE;; esac ; continue ;; C46) ast_consume2 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; " ' " * ) case $STATE in C46) ast_close ; ast_skip ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C46 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' I ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' INT ' ) STATE=C68 ; ast_Cd ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' IF ' ) STATE=C68 ; ast_C27 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' INT ' ) CONSUMED= ' int ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' C ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' CHAR ' ) STATE=C68 ; ast_Ce ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CONST ' ) STATE=C68 ; ast_Cm ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CONTINUE ' ) STATE=C68 ; ast_C25 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CASE ' ) STATE=C68 ; ast_C32 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' CHAR ' ) CONSUMED= ' char ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' CONST ' ) CONSUMED= ' const ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' V ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' VOID ' ) STATE=C68 ; ast_Cf ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' VOLATILE ' ) STATE=C68 ; ast_Cp ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' VOID ' ) CONSUMED= ' void ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' L ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' LONG ' ) STATE=C68 ; ast_Cg ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' LONG ' ) CONSUMED= ' long ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' S ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SHORT ' ) STATE=C68 ; ast_Ch ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SIGNED ' ) STATE=C68 ; ast_Ck ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' STATIC ' ) STATE=C68 ; ast_Cn ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' STRUCT ' ) STATE=C68 ; ast_Ct ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SWITCH ' ) STATE=C68 ; ast_C31 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SIZEOF ' ) STATE=C68 ; ast_C34 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SHORT ' ) CONSUMED= ' short ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' SIGNED ' ) CONSUMED= ' signed ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' STRUCT ' ) STATE=C111 ; ast_C12 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SIZEOF ' ) STATE=C172 ; ast_C41 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C172 ; ast_C48 ; continue ;; esac ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' F ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' FLOAT ' ) STATE=C68 ; ast_Ci ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' FOR ' ) STATE=C68 ; ast_C29 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' FLOAT ' ) CONSUMED= ' float ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' D ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' DOUBLE ' ) STATE=C68 ; ast_Cj ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' DO ' ) STATE=C68 ; ast_C30 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' DEFAULT ' ) STATE=C68 ; ast_C33 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' DOUBLE ' ) CONSUMED= ' double ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' U ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' UNSIGNED ' ) STATE=C68 ; ast_Cl ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' UNION ' ) STATE=C68 ; ast_Cu ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' UNSIGNED ' ) CONSUMED= ' unsigned ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' UNION ' ) STATE=C111 ; ast_C13 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' E ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' EXTERN ' ) STATE=C68 ; ast_Co ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' ENUM ' ) STATE=C68 ; ast_Cv ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' ENUM ' ) STATE=C111 ; ast_C14 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C138) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' ELSE ' ) ast_skip_match ; STATE=C139 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; continue ;; esac ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' A ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' AUTO ' ) STATE=C68 ; ast_Cq ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' R ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' REGISTER ' ) STATE=C68 ; ast_Cr ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' RETURN ' ) STATE=C68 ; ast_C23 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' T ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' TYPEDEF ' ) STATE=C68 ; ast_Cs ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' B ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' BREAK ' ) STATE=C68 ; ast_C24 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' G ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' GOTO ' ) STATE=C68 ; ast_C26 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' # ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C35 ; ast_skip ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C21|C35|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' { ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C36 ; ast_skip ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; C93) STATE=C96 ; ast_C2 ; continue ;; C2) STATE=C97 ; ast_C3 ; ast_skip ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C21) STATE=C131 ; ast_C22 ; ast_skip ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cw|Cx|C90|Cz|C99|C101|C107|C115|C35|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' + ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C54 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' & ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C53 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' * ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Cw) STATE=C88 ; ast_Cx ; ast_skip ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) ast_skip ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C10 ; ast_skip ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C17) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cx ; ast_skip ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C52 ; ast_skip ; continue ;; C175) ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|Ct|Cu|Cv|C90|Cz|C93|C2|C99|C101|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ~ ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C51 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ! ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C50 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' - ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C49 ; ast_skip ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ( ' * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; C90) STATE=C91 ; ast_Cz ; continue ;; Cz) STATE=C92 ; ast_C1 ; ast_skip ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C27) ast_skip ; STATE=C135 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C28) ast_skip ; STATE=C140 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C29) ast_skip ; STATE=C144 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C150) ast_skip ; STATE=C151 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C31) ast_skip ; STATE=C154 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C34) ast_skip ; STATE=C163 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C43 ; ast_skip ; continue ;; C41) ast_skip ; STATE=C173 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C93|C2|C99|C101|C107|C115|C35|C42|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' i ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' INT ' ) STATE=C68 ; ast_Cd ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' IF ' ) STATE=C68 ; ast_C27 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' INT ' ) CONSUMED= ' int ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' c ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' CHAR ' ) STATE=C68 ; ast_Ce ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CONST ' ) STATE=C68 ; ast_Cm ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CONTINUE ' ) STATE=C68 ; ast_C25 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' CASE ' ) STATE=C68 ; ast_C32 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' CHAR ' ) CONSUMED= ' char ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' CONST ' ) CONSUMED= ' const ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' v ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' VOID ' ) STATE=C68 ; ast_Cf ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' VOLATILE ' ) STATE=C68 ; ast_Cp ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' VOID ' ) CONSUMED= ' void ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' l ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' LONG ' ) STATE=C68 ; ast_Cg ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' LONG ' ) CONSUMED= ' long ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' s ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SHORT ' ) STATE=C68 ; ast_Ch ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SIGNED ' ) STATE=C68 ; ast_Ck ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' STATIC ' ) STATE=C68 ; ast_Cn ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' STRUCT ' ) STATE=C68 ; ast_Ct ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SWITCH ' ) STATE=C68 ; ast_C31 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' SIZEOF ' ) STATE=C68 ; ast_C34 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SHORT ' ) CONSUMED= ' short ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' SIGNED ' ) CONSUMED= ' signed ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' STRUCT ' ) STATE=C111 ; ast_C12 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C40) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' SIZEOF ' ) STATE=C172 ; ast_C41 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C172 ; ast_C48 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' f ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' FLOAT ' ) STATE=C68 ; ast_Ci ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' FOR ' ) STATE=C68 ; ast_C29 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' FLOAT ' ) CONSUMED= ' float ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' d ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' DOUBLE ' ) STATE=C68 ; ast_Cj ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' DO ' ) STATE=C68 ; ast_C30 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' DEFAULT ' ) STATE=C68 ; ast_C33 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' DOUBLE ' ) CONSUMED= ' double ' ; ast_skip_match ast_C11 ; ast_close ; STATE=C111 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' u ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' UNSIGNED ' ) STATE=C68 ; ast_Cl ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' UNION ' ) STATE=C68 ; ast_Cu ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' UNSIGNED ' ) CONSUMED= ' unsigned ' ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C11 ; ast_close ; STATE=C111 ; continue ;; ' UNION ' ) STATE=C111 ; ast_C13 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) CONSUMED= " $MATCH " ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' e ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' EXTERN ' ) STATE=C68 ; ast_Co ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' ENUM ' ) STATE=C68 ; ast_Cv ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C11) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' ENUM ' ) STATE=C111 ; ast_C14 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C111 ; continue ;; esac ;; C138) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' ELSE ' ) ast_skip_match ; STATE=C139 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C1) STATE=C94 ; ast_C8 ; continue ;; C95) STATE=C94 ; ast_C8 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C8) STATE=C107 ; ast_C11 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C94) STATE=C94 ; ast_C8 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' a ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' AUTO ' ) STATE=C68 ; ast_Cq ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' r ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' REGISTER ' ) STATE=C68 ; ast_Cr ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; ' RETURN ' ) STATE=C68 ; ast_C23 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' t ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' TYPEDEF ' ) STATE=C68 ; ast_Cs ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' b ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' BREAK ' ) STATE=C68 ; ast_C24 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' g ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' GOTO ' ) STATE=C68 ; ast_C26 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' w ' * ) case $STATE in Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; CODE= " ${CODE # " $MATCH " } " ; _COL= $(( _COL + ${ # MATCH} )) ; continue ;; * ) STATE=C68 ; ast_C38 ; continue ;; esac ;; C149) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) ast_skip_match ; STATE=C150 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ; ' * ) case $STATE in Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Cw) ast_Cw ; ast_skip ; ast_close ; STATE=C88 ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; C90) STATE=C91 ; ast_Cz ; continue ;; Cz) STATE=C92 ; ast_C6 ; continue ;; C93) STATE=C96 ; ast_C2 ; continue ;; C2) STATE=C97 ; ast_C6 ; continue ;; C99) STATE=C100 ; ast_C6 ; continue ;; C101) STATE=C102 ; ast_C6 ; continue ;; C6) ast_skip ; ast_close ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C17) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cw ; ast_skip ; ast_close ; continue ;; C23) ast_skip ; ast_close ; continue ;; C24) ast_skip ; ast_close ; continue ;; C25) ast_skip ; ast_close ; continue ;; C134) ast_skip ; ast_close ; continue ;; C144) ast_skip ; STATE=C145 ; continue ;; C145) ast_skip ; STATE=C146 ; continue ;; C153) ast_skip ; ast_close ; continue ;; C165) ast_skip ; ast_close ; continue ;; C171) ast_skip ; ast_close ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Ct|Cu|Cv|C3|C107|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' [ ' * ) case $STATE in C90) STATE=C91 ; ast_Cz ; continue ;; Cz) STATE=C92 ; ast_C4 ; ast_skip ; continue ;; C104) ast_skip ; STATE=C105 ; continue ;; C105) ast_skip ; STATE=C105 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' = ' * ) case $STATE in C90) STATE=C91 ; ast_Cz ; continue ;; Cz) STATE=C92 ; ast_C5 ; ast_skip ; continue ;; C104) ast_skip ; STATE=C106 ; continue ;; C129) ast_skip ; STATE=C130 ; continue ;; C105) ast_skip ; STATE=C106 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C108|C109|C111|C116|C117|C119|C123|C127|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' , ' * ) case $STATE in C90) STATE=C91 ; ast_Cz ; continue ;; Cz) STATE=C92 ; ast_C6 ; continue ;; C94) ast_skip ; STATE=C95 ; continue ;; C93) STATE=C96 ; ast_C2 ; continue ;; C2) STATE=C97 ; ast_C6 ; continue ;; C99) STATE=C100 ; ast_C6 ; continue ;; C101) STATE=C102 ; ast_C6 ; continue ;; C6) ast_skip ; STATE=C103 ; continue ;; C127) ast_skip ; STATE=C128 ; continue ;; C132) ast_skip ; STATE=C133 ; continue ;; C177) ast_skip ; STATE=C178 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C129|C131|C138|C168|C170|C172|C175|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C3|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ) ' * ) case $STATE in C1) ast_skip ; STATE=C93 ; continue ;; C136) ast_skip ; STATE=C137 ; continue ;; C141) ast_skip ; STATE=C142 ; continue ;; C146) ast_skip ; STATE=C147 ; continue ;; C152) ast_skip ; STATE=C153 ; continue ;; C155) ast_skip ; STATE=C156 ; continue ;; C164) ast_skip ; STATE=C165 ; continue ;; C174) ast_skip ; ast_close ; continue ;; C176) ast_skip ; ast_close ; continue ;; C56) ast_skip ; ast_close_xc;; C57) ast_skip ; ast_close_xc;; C94) ast_skip ; STATE=C93 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' } ' * ) case $STATE in C3) STATE=C98 ; ast_C37 ; continue ;; C120) ast_skip ; STATE=C121 ; continue ;; C124) ast_skip ; STATE=C125 ; continue ;; C132) ast_skip ; ast_close ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) ast_C37 ; ast_skip ; ast_close ; STATE=C168 ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ] ' * ) case $STATE in C4) ast_skip ; STATE=C99 ; continue ;; C105) ast_skip ; STATE=C104 ; continue ;; C58) ast_skip ; ast_close_xc;; C59) ast_skip ; ast_close_xc;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' W ' * ) case $STATE in C149) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) ast_skip_match ; STATE=C150 ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; continue ;; esac ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' : ' * ) case $STATE in C158) ast_skip ; STATE=C159 ; continue ;; C33) ast_skip ; STATE=C161 ; continue ;; C65) ast_skip ; STATE=C66 ; continue ;; Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; [a-zA-Z_0-90-9a-fA-FxXuUlL.] * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) STATE=C68 ; ast_C38 ; continue ;; Cd) STATE=C69 ; ast_Cw ; continue ;; Ce) STATE=C70 ; ast_Cw ; continue ;; Cf) STATE=C71 ; ast_Cw ; continue ;; Cg) STATE=C72 ; ast_Cw ; continue ;; Ch) STATE=C73 ; ast_Cw ; continue ;; Ci) STATE=C74 ; ast_Cw ; continue ;; Cj) STATE=C75 ; ast_Cw ; continue ;; Ck) STATE=C76 ; ast_Cw ; continue ;; Cl) STATE=C77 ; ast_Cw ; continue ;; Cm) STATE=C78 ; ast_Cw ; continue ;; Cn) STATE=C79 ; ast_Cw ; continue ;; Co) STATE=C80 ; ast_Cw ; continue ;; Cp) STATE=C81 ; ast_Cw ; continue ;; Cq) STATE=C82 ; ast_Cw ; continue ;; Cr) STATE=C83 ; ast_Cw ; continue ;; Cs) STATE=C84 ; ast_Cw ; continue ;; Ct) STATE=C85 ; ast_C15 ; continue ;; Cu) STATE=C86 ; ast_C15 ; continue ;; Cv) STATE=C87 ; ast_C16 ; continue ;; Cw) STATE=C88 ; ast_Cy ; continue ;; Cx) STATE=C89 ; ast_Cw ; continue ;; Cy) STATE=C90 ; ast_C48 ; continue ;; C3) STATE=C98 ; ast_C37 ; continue ;; C4) ast_C39 ; continue ;; C5) STATE=C101 ; ast_C21 ; continue ;; C103) STATE=C6 ; ast_C7 ; continue ;; C7) STATE=C104 ; ast_C48 ; continue ;; C105) ast_C39 ; continue ;; C106) STATE=C104 ; ast_C21 ; continue ;; C107) STATE=C108 ; ast_C9 ; continue ;; C9) STATE=C109 ; ast_C48 ; continue ;; C10) STATE=C110 ; ast_C9 ; continue ;; C12) STATE=C112 ; ast_C48 ; continue ;; C13) STATE=C113 ; ast_C48 ; continue ;; C14) STATE=C114 ; ast_C48 ; continue ;; C15) STATE=C115 ; ast_C48 ; continue ;; C115) STATE=C116 ; ast_Cw ; continue ;; C16) STATE=C118 ; ast_C48 ; continue ;; C118) STATE=C119 ; ast_C17 ; continue ;; C121) STATE=C122 ; ast_C18 ; continue ;; C17) STATE=C124 ; ast_C19 ; continue ;; C125) STATE=C126 ; ast_C18 ; continue ;; C18) ast_Cy ; continue ;; C19) STATE=C127 ; ast_C20 ; continue ;; C128) STATE=C127 ; ast_C20 ; continue ;; C20) STATE=C129 ; ast_C48 ; continue ;; C130) STATE=C129 ; ast_C39 ; continue ;; C21) STATE=C131 ; ast_C39 ; continue ;; C22) STATE=C132 ; ast_C21 ; continue ;; C133) STATE=C132 ; ast_C21 ; continue ;; C23) ast_C39 ; continue ;; C26) STATE=C134 ; ast_C48 ; continue ;; C135) STATE=C136 ; ast_C39 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C140) STATE=C141 ; ast_C39 ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C144) ast_C39 ; continue ;; C145) ast_C39 ; continue ;; C146) ast_C39 ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C151) STATE=C152 ; ast_C39 ; continue ;; C154) STATE=C155 ; ast_C39 ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C32) STATE=C158 ; ast_C39 ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C163) STATE=C164 ; ast_C39 ; continue ;; C35) STATE=C166 ; ast_C48 ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; C38) STATE=C171 ; ast_C39 ; continue ;; C39) ast_C40 ; continue ;; C40) STATE=C172 ; ast_C48 ; continue ;; C173) STATE=C174 ; ast_C42 ; continue ;; C42) STATE=C175 ; ast_C48 ; continue ;; C175) ast_C48 ; continue ;; C43) STATE=C176 ; ast_C39 ; continue ;; C44) STATE=C177 ; ast_C39 ; continue ;; C178) STATE=C177 ; ast_C39 ; continue ;; C49) STATE=C179 ; ast_C40 ; continue ;; C50) STATE=C180 ; ast_C40 ; continue ;; C51) STATE=C181 ; ast_C40 ; continue ;; C52) STATE=C182 ; ast_C40 ; continue ;; C53) STATE=C183 ; ast_C40 ; continue ;; C54) STATE=C184 ; ast_C40 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C55) ast_C40 ; continue ;; C56) STATE=C57 ; ast_C44 ; continue ;; C58) STATE=C59 ; ast_C39 ; continue ;; C60) STATE=C185 ; ast_C48 ; continue ;; C61) STATE=C186 ; ast_C48 ; continue ;; C64) ast_C40 ; continue ;; C66) ast_C40 ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C177|C90|Cz|C93|C2|C99|C101|C185|C186|C187|C188|C94) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; ' ' ) case $STATE in C67|C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cc|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C3|C99|C101|C107|C115|C21|C142|C147|C156|C159|C161|C35|C36|C37|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; C55) ast_close ; continue ;; C39) ast_close ; continue ;; Ca) break ;; * ) _pars_err_eof;; esac ;; * ) case $STATE in Cb) STATE=C67 ; ast_Cc ; continue ;; C67) ast_Cb ; continue ;; Cc) ast_more ; MATCH= " ${CODE %% [!a-zA-Z0-9_] * } " _ucase " $MATCH " case " $REPLY " in ' WHILE ' ) STATE=C68 ; ast_C28 ; ast_skip_match ; continue ;; * ) ast_consume_match ast_C48 ; ast_close ; STATE=C68 ; continue ;; esac ;; C3) STATE=C98 ; ast_C37 ; continue ;; C137) STATE=C138 ; ast_Cc ; continue ;; C139) STATE=C138 ; ast_Cc ; continue ;; C142) STATE=C143 ; ast_Cc ; continue ;; C147) STATE=C148 ; ast_Cc ; continue ;; C30) STATE=C149 ; ast_Cc ; continue ;; C156) STATE=C157 ; ast_Cc ; continue ;; C159) STATE=C160 ; ast_Cc ; continue ;; C161) STATE=C162 ; ast_Cc ; continue ;; C36) STATE=C167 ; ast_C37 ; continue ;; C37) STATE=C169 ; ast_Cc ; continue ;; C169) STATE=C170 ; ast_C37 ; continue ;; Ca) STATE=Ca ; ast_Cb ; continue ;; C68|C88|C91|C92|C97|C104|C108|C109|C111|C116|C117|C119|C123|C127|C129|C131|C138|C168|C170|C172|C175|C177|Cd|Ce|Cf|Cg|Ch|Ci|Cj|Ck|Cl|Cm|Cn|Co|Cp|Cq|Cr|Cs|Ct|Cu|Cv|Cw|Cx|C90|Cz|C93|C2|C99|C101|C107|C115|C21|C35|C40|C42|C49|C50|C51|C52|C53|C54|C185|C186|C187|C188|C94|C105) ast_close_col_xc;; C69|C70|C71|C72|C73|C74|C75|C76|C77|C78|C79|C80|C81|C82|C83|C84|C85|C86|C87|C89|C96|C98|C100|C102|C110|C112|C113|C114|C122|C126|C143|C148|C157|C160|C162|C166|C167|C179|C180|C181|C182|C183|C184) ast_close_xc;; * ) _pars_err;; esac ;; esac done ast_out } # --- modules/c89/unast.sh --- # --- Emitter (AST to source reconstruction) --- _c89_unast_emit () { local _n= $1 _t _v _r _ch IFS= ' ' ; eval " set -- \$ X $_n " ; IFS= ' ' _t= $1 ; shift eval " _v= \"\$ {V $_n :-} \" " case " $_t " in Ca) _r= for _ch in " $@ " ; do case " $_r " in ?* ) _r= " $_r$_EOL " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r " ;; Cb) _c89_unast_emit " $1 " ; _r= " $REPLY " shift 1 _si=1 case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} $REPLY " ; shift ;; esac REPLY= " ${_r} " ;; Cc) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; Cd) _c89_unast_emit " $1 " ; REPLY= " int ${REPLY} " ;; Ce) _c89_unast_emit " $1 " ; REPLY= " char ${REPLY} " ;; Cf) _c89_unast_emit " $1 " ; REPLY= " void ${REPLY} " ;; Cg) _c89_unast_emit " $1 " ; REPLY= " long ${REPLY} " ;; Ch) _c89_unast_emit " $1 " ; REPLY= " short ${REPLY} " ;; Ci) _c89_unast_emit " $1 " ; REPLY= " float ${REPLY} " ;; Cj) _c89_unast_emit " $1 " ; REPLY= " double ${REPLY} " ;; Ck) _c89_unast_emit " $1 " ; REPLY= " signed ${REPLY} " ;; Cl) _c89_unast_emit " $1 " ; REPLY= " unsigned ${REPLY} " ;; Cm) _c89_unast_emit " $1 " ; REPLY= " const ${REPLY} " ;; Cn) _c89_unast_emit " $1 " ; REPLY= " static ${REPLY} " ;; Co) _c89_unast_emit " $1 " ; REPLY= " extern ${REPLY} " ;; Cp) _c89_unast_emit " $1 " ; REPLY= " volatile ${REPLY} " ;; Cq) _c89_unast_emit " $1 " ; REPLY= " auto ${REPLY} " ;; Cr) _c89_unast_emit " $1 " ; REPLY= " register ${REPLY} " ;; Cs) _c89_unast_emit " $1 " ; REPLY= " typedef ${REPLY} " ;; Ct) _c89_unast_emit " $1 " ; REPLY= " struct ${REPLY} " ;; Cu) _c89_unast_emit " $1 " ; REPLY= " union ${REPLY} " ;; Cv) _c89_unast_emit " $1 " ; REPLY= " enum ${REPLY} " ;; Cw) case $# in 0) case " $_v " in ?* ) REPLY= " $_v " ;; * ) REPLY= " ; " ;; esac ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; Cx) _c89_unast_emit " $1 " ; REPLY= " * ${REPLY} " ;; Cy) _c89_unast_emit " $1 " ; _r= " $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ${REPLY} " ;; Cz) case $# in 0) case " $_v " in ?* ) REPLY= " $_v " ;; * ) REPLY= " ; " ;; esac ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C1) _r= " ( " while test $# -gt 1 ; do case " $_r " in " ( " ) ;; * ) _r= " $_r , " ;; esac _c89_unast_emit " $1 " ; _r= " $_r$REPLY " ; shift done _r= " $_r ) " _c89_unast_emit " $1 " ; REPLY= " $_r ${REPLY} " ;; C2) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C3) _c89_unast_emit " $1 " ; REPLY= " { ${REPLY} " ;; C4) _r= " [ " case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} $REPLY " ; shift ;; esac _si=1 case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} ] $REPLY " ; shift ;; esac case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} $REPLY " ; shift ;; esac REPLY= " ${_r} " ;; C5) _c89_unast_emit " $1 " ; _r= " = $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ${REPLY} " ;; C6) _r= " " for _ch in " $@ " ; do case " $_r " in " " ) ;; * ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r ; " ;; C7) _r= " " while test $# -gt 3 ; do case " $_r " in " " ) ;; * ) _r= " $_r " ;; esac _c89_unast_emit " $1 " ; _r= " $_r$REPLY " ; shift done _c89_unast_emit " $1 " ; REPLY= " $_r ${REPLY} " ;; C8) _c89_unast_emit " $1 " ; _r= " $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ${REPLY} " ;; C9) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C10) _c89_unast_emit " $1 " ; REPLY= " * ${REPLY} " ;; C11) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C12) _c89_unast_emit " $1 " ; REPLY= " struct ${REPLY} " ;; C13) _c89_unast_emit " $1 " ; REPLY= " union ${REPLY} " ;; C14) _c89_unast_emit " $1 " ; REPLY= " enum ${REPLY} " ;; C15) _c89_unast_emit " $1 " ; _r= " $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ${REPLY} " ;; C16) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C17) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C18) case $# in 0) REPLY= " $_v " ;; * ) _c89_unast_emit " $1 " ;; esac ;; C19) _r= " " for _ch in " $@ " ; do case " $_r " in " " ) ;; * ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r " ;; C20) _c89_unast_emit " $1 " ; _r= " $REPLY " shift 1 _si=1 case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} = $REPLY " ; shift ;; esac REPLY= " ${_r} " ;; C21) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C22) _r= " { " for _ch in " $@ " ; do case " $_r " in " { " ) ;; * ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r ,} " ;; C23) case $# in 0) REPLY= " return ; " ;; * ) _c89_unast_emit " $1 " ; REPLY= " return ${REPLY} ; " ;; esac ;; C24) REPLY= " break; " ;; C25) REPLY= " continue; " ;; C26) _c89_unast_emit " $1 " ; REPLY= " goto ${REPLY} ; " ;; C27) _c89_unast_emit " $1 " ; _r= " if( $REPLY " _c89_unast_emit " $2 " ; _r= " ${_r} ) $REPLY " shift 2 _si=2 case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} else $REPLY " ; shift ;; esac REPLY= " ${_r} " ;; C28) _c89_unast_emit " $1 " ; _r= " while( $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ) ${REPLY} " ;; C29) _r= " for( " case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} $REPLY " ; shift ;; esac _si=1 case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} ; $REPLY " ; shift ;; esac case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} ; $REPLY " ; shift ;; esac case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} ) $REPLY " ; shift ;; esac case $# in 0) ;; * ) _c89_unast_emit " $1 " ; _r= " ${_r} $REPLY " ; shift ;; esac REPLY= " ${_r} " ;; C30) _c89_unast_emit " $1 " ; _r= " do $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} while( ${REPLY} ); " ;; C31) _c89_unast_emit " $1 " ; _r= " switch( $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} ) ${REPLY} " ;; C32) _c89_unast_emit " $1 " ; _r= " case $REPLY " _c89_unast_emit " $2 " ; REPLY= " ${_r} : ${REPLY} " ;; C33) _c89_unast_emit " $1 " ; REPLY= " default: ${REPLY} " ;; C34) _c89_unast_emit " $1 " ; REPLY= " sizeof( ${REPLY} ); " ;; C35) _c89_unast_emit " $1 " ; REPLY= " # ${REPLY} " ;; C36) _c89_unast_emit " $1 " ; REPLY= " { ${REPLY} " ;; C37) case $# in 0) case " $_v " in ?* ) REPLY= " $_v " ;; * ) REPLY= " } " ;; esac ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C38) _c89_unast_emit " $1 " ; REPLY= " ${REPLY} ; " ;; C39) case $# in 0) REPLY= " $_v " ;; * ) _c89_unast_emit " $1 " ;; esac ;; C40) case $# in 0) REPLY= " $_v " ;; 1) _c89_unast_emit " $1 " ;; * ) _r= ; for _ch in " $@ " ; do _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; done ; REPLY= " $_r " ;; esac ;; C41) _c89_unast_emit " $1 " ; REPLY= " sizeof( ${REPLY} ) " ;; C42) _r= " " for _ch in " $@ " ; do case " $_r " in " " ) ;; * ) _r= " $_r " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r " ;; C43) _c89_unast_emit " $1 " ; REPLY= " ( ${REPLY} ) " ;; C44) _r= " " for _ch in " $@ " ; do case " $_r " in " " ) ;; * ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " done ; REPLY= " $_r " ;; C45) REPLY= " \" $_v \" " ;; C46) REPLY= " ' $_v ' " ;; C47) REPLY= " $_v " ;; C48) REPLY= " $_v " ;; C49) _c89_unast_emit " $1 " ; REPLY= " - ${REPLY} " ;; C50) _c89_unast_emit " $1 " ; REPLY= " ! ${REPLY} " ;; C51) _c89_unast_emit " $1 " ; REPLY= " ~ ${REPLY} " ;; C52) _c89_unast_emit " $1 " ; REPLY= " * ${REPLY} " ;; C53) _c89_unast_emit " $1 " ; REPLY= " & ${REPLY} " ;; C54) _c89_unast_emit " $1 " ; REPLY= " ++ ${REPLY} " ;; C55) _c89_unast_emit " $1 " ; _r= " $REPLY " _c89_unast_emit " $2 " ; REPLY= " $_r$_v$REPLY " ;; C56) _c89_unast_emit " $1 " ; _r= " $REPLY ( " ; shift local _sep= for _ch in " $@ " ; do case " $_sep " in ?* ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; _sep=1 done ; REPLY= " $_r ) " ;; C58) _c89_unast_emit " $1 " ; _r= " $REPLY [ " ; shift local _sep= for _ch in " $@ " ; do case " $_sep " in ?* ) _r= " $_r , " ;; esac _c89_unast_emit " $_ch " ; _r= " $_r$REPLY " ; _sep=1 done ; REPLY= " $_r ] " ;; C60) _c89_unast_emit " $1 " ; _r= " $REPLY . " _c89_unast_emit " $2 " ; REPLY= " $_r$REPLY " ;; C61) _c89_unast_emit " $1 " ; _r= " $REPLY -> " _c89_unast_emit " $2 " ; REPLY= " $_r$REPLY " ;; C62) _c89_unast_emit " $1 " ; REPLY= " $REPLY ++ " ;; C63) _c89_unast_emit " $1 " ; REPLY= " $REPLY -- " ;; C64) _c89_unast_emit " $1 " ; _r= " $REPLY ? " _c89_unast_emit " $2 " ; _r= " $_r$REPLY : " _c89_unast_emit " $3 " ; REPLY= " $_r$REPLY " ;; * ) REPLY= " ?? ${_t} ?? " ;; esac } _c89_unast_emit_root () { _c89_unast_emit " $@ " ; } c89_unast () { _readall ; eval " $REPLY " _c89_unast_emit_root 0 _printr1 " $REPLY " } # --- modules/tool/c89cc.sh --- # ============================================================ # C89 Compiler: AST → x86-64 ELF64 binary # ============================================================ # Usage: printf '%s' 'int main(){return 42;}' | sh gen/c89.sh | sh gen/c89cc.sh > a.out # chmod +x a.out && ./a.out; echo $? # # Reads AST (V*/X* variable assignments) from stdin. # Outputs a Linux x86-64 ELF64 executable to stdout. # ============================================================ # Pure-shell number/character conversion (no printf, no PATH) # ============================================================ # Decimal (0-255) → 2-char uppercase hex. Result in REPLY. _tool_c89cc_d2h () { local _hi= $(( $1 / 16 )) _lo= $(( $1 % 16 )) _hc _lc case $_hi in 0) _hc=0;; 1) _hc=1;; 2) _hc=2;; 3) _hc=3;; 4) _hc=4;; 5) _hc=5;; 6) _hc=6;; 7) _hc=7;; 8) _hc=8;; 9) _hc=9;; 10) _hc=A;; 11) _hc=B;; 12) _hc=C;; 13) _hc=D;; 14) _hc=E;; 15) _hc=F;; esac case $_lo in 0) _lc=0;; 1) _lc=1;; 2) _lc=2;; 3) _lc=3;; 4) _lc=4;; 5) _lc=5;; 6) _lc=6;; 7) _lc=7;; 8) _lc=8;; 9) _lc=9;; 10) _lc=A;; 11) _lc=B;; 12) _lc=C;; 13) _lc=D;; 14) _lc=E;; 15) _lc=F;; esac REPLY= " $_hc$_lc " } # Character → decimal ASCII value. Result in REPLY. _tool_c89cc_c2d () { case " $1 " in ' ' ) REPLY=32;; ' ! ' ) REPLY=33;; ' " ' ) REPLY=34;; ' # ' ) REPLY=35;; ' $ ' ) REPLY=36;; ' % ' ) REPLY=37;; ' & ' ) REPLY=38;; " ' " ) REPLY=39;; ' ( ' ) REPLY=40;; ' ) ' ) REPLY=41;; ' * ' ) REPLY=42;; ' + ' ) REPLY=43;; ' , ' ) REPLY=44;; ' - ' ) REPLY=45;; ' . ' ) REPLY=46;; ' / ' ) REPLY=47;; 0) REPLY=48;; 1) REPLY=49;; 2) REPLY=50;; 3) REPLY=51;; 4) REPLY=52;; 5) REPLY=53;; 6) REPLY=54;; 7) REPLY=55;; 8) REPLY=56;; 9) REPLY=57;; ' : ' ) REPLY=58;; ' ; ' ) REPLY=59;; ' < ' ) REPLY=60;; ' = ' ) REPLY=61;; ' > ' ) REPLY=62;; ' ? ' ) REPLY=63;; ' @ ' ) REPLY=64;; A) REPLY=65;; B) REPLY=66;; C) REPLY=67;; D) REPLY=68;; E) REPLY=69;; F) REPLY=70;; G) REPLY=71;; H) REPLY=72;; I) REPLY=73;; J) REPLY=74;; K) REPLY=75;; L) REPLY=76;; M) REPLY=77;; N) REPLY=78;; O) REPLY=79;; P) REPLY=80;; Q) REPLY=81;; R) REPLY=82;; S) REPLY=83;; T) REPLY=84;; U) REPLY=85;; V) REPLY=86;; W) REPLY=87;; X) REPLY=88;; Y) REPLY=89;; Z) REPLY=90;; ' [ ' ) REPLY=91;; ' \ ' ) REPLY=92;; ' ] ' ) REPLY=93;; ' ^ ' ) REPLY=94;; ' _ ' ) REPLY=95;; ' ` ' ) REPLY=96;; a) REPLY=97;; b) REPLY=98;; c) REPLY=99;; d) REPLY=100;; e) REPLY=101;; f) REPLY=102;; g) REPLY=103;; h) REPLY=104;; i) REPLY=105;; j) REPLY=106;; k) REPLY=107;; l) REPLY=108;; m) REPLY=109;; n) REPLY=110;; o) REPLY=111;; p) REPLY=112;; q) REPLY=113;; r) REPLY=114;; s) REPLY=115;; t) REPLY=116;; u) REPLY=117;; v) REPLY=118;; w) REPLY=119;; x) REPLY=120;; y) REPLY=121;; z) REPLY=122;; ' { ' ) REPLY=123;; ' | ' ) REPLY=124;; ' } ' ) REPLY=125;; ' ~ ' ) REPLY=126;; * ) REPLY=63;; # unknown → '?' esac } # Decimal → raw byte to stdout (uses fastest available output primitive) if command -v printf > /dev/null 2>&1 ; then _out_byte () { printf " \\ $(( $1 / 64 )) $(( ( $1 / 8 ) % 8 )) $(( $1 % 8 )) " ; } elif command -v print > /dev/null 2>&1 ; then _out_byte () { print -n " \\ 0 $(( $1 / 64 )) $(( ( $1 / 8 ) % 8 )) $(( $1 % 8 )) " ; } else _out_byte () { command -p printf " \\ $(( $1 / 64 )) $(( ( $1 / 8 ) % 8 )) $(( $1 % 8 )) " ; } fi # Emit a single hex byte from a decimal value _tool_c89cc_emit_d () { _tool_c89cc_d2h " $1 " ; _tool_c89cc_emit " $REPLY " ; } # Emit a stack-offset from rbp. Uses 1-byte disp8 for off<=127, 4-byte disp32 otherwise. # Caller must use the right opcode: 45/85 for mov, 45/85 for lea (ModRM byte differs). # This function is called AFTER the opcode+ModRM byte is emitted. _tool_c89cc_emit_off () { if test $1 -le 127 ; then _tool_c89cc_d2h $(( 256 - $1 )) _tool_c89cc_emit " $REPLY " else _tool_c89cc_emit_le32 $(( 0 - $1 )) fi } # Emit mov rax, [rbp-off] _tool_c89cc_load_local () { if test $1 -le 127 ; then _tool_c89cc_emit " 48 8B 45 " else _tool_c89cc_emit " 48 8B 85 " ; fi _tool_c89cc_emit_off $1 } # Emit mov [rbp-off], rax _tool_c89cc_store_local () { if test $1 -le 127 ; then _tool_c89cc_emit " 48 89 45 " else _tool_c89cc_emit " 48 89 85 " ; fi _tool_c89cc_emit_off $1 } # Emit lea rax, [rbp-off] _tool_c89cc_lea_local () { if test $1 -le 127 ; then _tool_c89cc_emit " 48 8D 45 " else _tool_c89cc_emit " 48 8D 85 " ; fi _tool_c89cc_emit_off $1 } # ============================================================ # Code Buffer # ============================================================ # Code is stored as per-byte variables: _CB_0, _CB_1, ... # Each holds a 2-char hex string (e.g., "E8", "FF"). # _IP tracks the current offset (in bytes). _IP=0 # Append hex bytes to the code buffer. Args: hex pairs (e.g., "48 89 E5") _tool_c89cc_emit () { for _b in $1 ; do eval " _CB_ $_IP = \$ _b " _IP= $(( _IP + 1 )) done } # Read a byte from the code buffer at offset $1. Result in REPLY. _tool_c89cc_byte () { eval " REPLY= \$ _CB_ $1 " ; } # Emit a 32-bit little-endian immediate value _tool_c89cc_emit_le32 () { local _v= $1 _tool_c89cc_emit_d $(( _v & 255 )) _tool_c89cc_emit_d $(( (_v >> 8 ) & 255 )) _tool_c89cc_emit_d $(( (_v >> 16 ) & 255 )) _tool_c89cc_emit_d $(( (_v >> 24 ) & 255 )) } # Emit a 64-bit little-endian value _tool_c89cc_emit_le64 () { _tool_c89cc_emit_le32 " $1 " _tool_c89cc_emit_le32 0 } # ============================================================ # Labels and Relocations # ============================================================ _LABELS= # space-separated "name=offset" pairs _RELOCS= # space-separated "offset=name" pairs (rel32 fixups) _JMP_N=0 # jump label counter _BRK_LBL= # current break target label (loop/switch exit) _CONT_LBL= # current continue target label (loop top) _SW_OFF= # current switch value stack offset (for case comparisons) _tool_c89cc_label () { _LABELS= " $_LABELS $1 = $_IP " } # Emit a rel32 placeholder and record relocation _tool_c89cc_reloc_rel32 () { _RELOCS= " $_RELOCS ${_IP} = $1 " _tool_c89cc_emit " 00 00 00 00 " # placeholder } # Allocate a jump label name. Returns name in REPLY. _tool_c89cc_jmp_label () { _JMP_N= $(( _JMP_N + 1 )) REPLY= " .LJ $_JMP_N " } # Emit a conditional jump (6 bytes: 0F 8x rel32) with auto-label. # $1 = condition code (84=je, 85=jne, 8C=jl, 8F=jg, 8E=jle, 8D=jge) # Returns: label name in REPLY (to be defined later at target) _tool_c89cc_emit_jcc () { _tool_c89cc_jmp_label local _jlbl= $REPLY _tool_c89cc_emit " 0F $1 " _RELOCS= " $_RELOCS J ${_IP} = $_jlbl " _tool_c89cc_emit " 00 00 00 00 " REPLY= $_jlbl } # Emit an unconditional jump (5 bytes: E9 rel32) with auto-label. _tool_c89cc_emit_jmp () { _tool_c89cc_jmp_label local _jlbl= $REPLY _tool_c89cc_emit " E9 " _RELOCS= " $_RELOCS J ${_IP} = $_jlbl " _tool_c89cc_emit " 00 00 00 00 " REPLY= $_jlbl } # Define a jump label at current position _tool_c89cc_jmp_target () { _tool_c89cc_label " $1 " } # Resolve all relocations after code generation _tool_c89cc_fixup () { # Calculate data section addresses for string/global fixups local _str_base_addr= $(( _BASE_ADDR + _HDR_SIZE + _IP )) local _str_size= $(( ${ # _STR_DATA} / 2 )) local _glob_base_addr= $(( _str_base_addr + _str_size )) for _rel in $_RELOCS ; do local _src= " ${_rel %% = * } " _tgt_name= " ${_rel #* =} " # String address relocation: S=STR case " $_src " in S * ) local _soff= ${_src # S} local _str_id= ${_tgt_name # STR} eval " local _sdataoff= \$ _STR_OFF_ $_str_id " # sdataoff is hex char offset, convert to byte offset local _sbyte= $(( _sdataoff / 2 )) local _addr= $(( _str_base_addr + _sbyte )) _tool_c89cc_patch_le64 $_soff $_addr continue ;; esac # Global address relocation: G=GLOB case " $_src " in G * ) local _goff= ${_src # G} local _gdataoff= ${_tgt_name # GLOB} local _addr= $(( _glob_base_addr + _gdataoff )) _tool_c89cc_patch_le64 $_goff $_addr continue ;; esac # Jump relocation: J=