package provide DS9 1.0 ###### # Begin autogenerated taccle (version 1.3) routines. # Although taccle itself is protected by the GNU Public License (GPL) # all user-supplied functions are protected by their respective # author's license. See http://mini.net/tcl/taccle for other details. ###### namespace eval iexamsend { variable yylval {} variable table variable rules variable token {} variable yycnt 0 variable yyerr 0 variable save_state 0 namespace export yylex } proc iexamsend::YYABORT {} { return -code return 1 } proc iexamsend::YYACCEPT {} { return -code return 0 } proc iexamsend::YYERROR {} { variable yyerr set yyerr 1 } proc iexamsend::yyclearin {} { variable token variable yycnt set token {} incr yycnt -1 } proc iexamsend::yyerror {s} { puts stderr $s } proc iexamsend::setupvalues {stack pointer numsyms} { upvar 1 1 y set y {} for {set i 1} {$i <= $numsyms} {incr i} { upvar 1 $i y set y [lindex $stack $pointer] incr pointer } } proc iexamsend::unsetupvalues {numsyms} { for {set i 1} {$i <= $numsyms} {incr i} { upvar 1 $i y unset y } } array set iexamsend::table { 51:295 shift 21:289 reduce 21:290 reduce 31:294,target 21 51:296 shift 21:291 reduce 21:292 reduce 51:308 goto 21:293 reduce 21:294 reduce 21:295 reduce 43:296,target 33 21:296 reduce 48:0 reduce 25:293,target 15 37:295,target 27 33:0,target 23 19:292,target 9 20:292,target 10 50:307,target 59 32:294,target 22 21:0 reduce 44:296,target 34 4:267,target 21 0:302,target 5 63:0 reduce 26:293,target 16 26:288 reduce 26:289 reduce 26:290 reduce 26:291 reduce 26:292 reduce 26:293 reduce 38:295,target 28 26:294 reduce 26:295 reduce 26:296 reduce 21:292,target 11 33:294,target 23 61:0,target 56 15:291,target 5 4:284,target 38 45:296,target 35 29:0,target 19 30:0,target 20 35:0 reduce 27:293,target 17 39:295,target 29 40:295,target 30 9:0 reduce 22:292,target 12 32:288 reduce 32:289 reduce 32:290 reduce 32:291 reduce 34:294,target 24 32:292 reduce 50:288,target 42 32:293 reduce 32:294 reduce 32:295 reduce 16:291,target 6 32:296 reduce 46:296,target 36 2:302,target 49 28:293,target 18 49:0 reduce 50:0 reduce 4:258,target 12 57:0,target 39 41:295,target 31 26:0,target 16 23:292,target 13 35:294,target 25 17:291,target 7 47:296,target 37 3:302,target 47 59:308,target 63 22:0 reduce 29:293,target 19 30:293,target 20 37:288 reduce 4:275,target 29 37:289 reduce 37:290 reduce 37:291 reduce 0:310,target 9 0:309,target 8 0:299,target 2 37:292 reduce 37:293 reduce 37:294 reduce 42:295,target 32 37:295 reduce 37:296 reduce 24:292,target 14 36:294,target 26 54:0,target 44 18:291,target 8 23:0,target 13 48:296,target 38 4:292,target 46 31:293,target 21 36:0 reduce 43:295,target 33 10:297,target 1 25:292,target 15 37:294,target 27 43:295 reduce 43:296 reduce 50:296,target 58 19:291,target 9 20:291,target 10 8:0,target 0 2:301 reduce 32:293,target 22 2:302 reduce 51:0,target 53 2:304 reduce 44:295,target 34 2:297 reduce 4:266,target 20 19:0,target 9 20:0,target 10 51:0 reduce 0:301,target 4 26:292,target 16 38:294,target 28 51:296,target 58 21:291,target 11 6:302,target 48 33:293,target 23 18:288 reduce 15:290,target 5 15:289,target 5 4:283,target 37 18:289 reduce 18:290 reduce 45:295,target 35 48:295 reduce 18:291 reduce 23:0 reduce 48:296 reduce 18:292 reduce 18:293 reduce 5:0,target 58 18:294 reduce 18:295 reduce 27:292,target 17 18:296 reduce 39:294,target 29 40:294,target 30 47:0,target 37 16:0,target 6 7:298 shift 22:291,target 12 7:313 goto 34:293,target 24 16:289,target 6 16:290,target 6 46:295,target 36 2:301,target 49 28:292,target 18 37:0 reduce 4:257,target 11 41:294,target 31 24:288 reduce 24:289 reduce 24:290 reduce 24:291 reduce 24:292 reduce 23:291,target 13 24:293 reduce 24:294 reduce 24:295 reduce 24:296 reduce 35:293,target 25 44:0,target 34 17:289,target 7 17:290,target 7 47:295,target 37 13:0,target 3 3:301,target 47 29:292,target 19 30:292,target 20 4:274,target 28 52:0 reduce 24:291,target 14 36:293,target 26 29:288 reduce 30:288 reduce 59:295 shift 29:289 reduce 29:290 reduce 30:289 reduce 30:290 reduce 59:296 shift 18:289,target 8 18:290,target 8 29:291 reduce 30:291 reduce 48:295,target 38 29:292 reduce 30:292 reduce 59:308 goto 29:293 reduce 30:293 reduce 29:294 reduce 30:294 reduce 4:291,target 45 29:295 reduce 30:295 reduce 29:296 reduce 30:296 reduce 31:292,target 21 24:0 reduce 41:0,target 31 25:291,target 15 37:293,target 27 50:295,target 57 19:289,target 9 19:290,target 9 20:289,target 10 20:290,target 10 32:292,target 22 35:288 reduce 35:289 reduce 35:290 reduce 38:0 reduce 4:265,target 19 35:291 reduce 35:292 reduce 0:300,target 3 35:293 reduce 26:291,target 16 35:294 reduce 35:295 reduce 35:296 reduce 38:293,target 28 37:0,target 27 51:295,target 57 21:289,target 11 21:290,target 11 6:301,target 48 33:292,target 23 11:0 reduce 15:288,target 5 4:282,target 36 27:291,target 17 39:293,target 29 40:293,target 30 41:288 reduce 41:289 reduce 41:290 reduce 41:291 reduce 22:289,target 12 22:290,target 12 41:292 reduce 41:293 reduce 41:294 reduce 41:295 reduce 41:296 reduce 34:292,target 24 34:0,target 24 0:300 shift 16:288,target 6 0:301 shift 0:302 shift 0:303 shift 0:304 shift 25:0 reduce 28:291,target 18 0:297 shift 0:299 shift 0:310 goto 0:309 goto 0:311 goto 41:293,target 31 23:289,target 13 23:290,target 13 35:292,target 25 5:298,target 53 17:288,target 7 16:288 reduce 59:296,target 58 16:289 reduce 16:290 reduce 29:291,target 19 30:291,target 20 46:295 reduce 62:0,target 59 4:273,target 27 16:291 reduce 46:296 reduce 16:292 reduce 39:0 reduce 40:0 reduce 0:297,target 1 16:293 reduce 16:294 reduce 16:295 reduce 31:0,target 21 16:296 reduce 24:289,target 14 24:290,target 14 5:298 shift 36:292,target 26 5:313 goto 18:288,target 8 15:296,target 5 4:290,target 44 4:289,target 43 12:0 reduce 31:291,target 21 54:0 reduce 25:289,target 15 25:290,target 15 22:288 reduce 22:289 reduce 22:290 reduce 58:0,target 40 22:291 reduce 22:292 reduce 22:293 reduce 37:292,target 27 22:294 reduce 22:295 reduce 27:0,target 17 7:298,target 53 22:296 reduce 50:294,target 48 19:288,target 9 20:288,target 10 16:296,target 6 32:291,target 22 2:297,target 49 26:0 reduce 4:264,target 18 26:289,target 16 26:290,target 16 1:0 reduce 38:292,target 28 21:288,target 11 27:288 reduce 17:296,target 7 27:289 reduce 27:290 reduce 55:0,target 45 27:291 reduce 33:291,target 23 27:292 reduce 27:293 reduce 3:297,target 47 27:294 reduce 24:0,target 14 27:295 reduce 4:281,target 35 27:296 reduce 41:0 reduce 27:289,target 17 27:290,target 17 39:292,target 29 40:292,target 30 22:288,target 12 18:296,target 8 34:291,target 24 4:307,target 51 13:0 reduce 9:0,target 42 28:289,target 18 28:290,target 18 33:288 reduce 33:289 reduce 33:290 reduce 55:0 reduce 52:0,target 43 33:291 reduce 33:292 reduce 33:293 reduce 33:294 reduce 41:292,target 31 21:0,target 11 33:295 reduce 33:296 reduce 23:288,target 13 19:296,target 9 20:296,target 10 35:291,target 25 59:295,target 57 27:0 reduce 29:289,target 19 29:290,target 19 30:289,target 20 30:290,target 20 4:272,target 26 24:288,target 14 38:288 reduce 38:289 reduce 38:290 reduce 21:296,target 11 38:291 reduce 48:0,target 38 36:291,target 26 38:292 reduce 38:293 reduce 38:294 reduce 6:297,target 48 17:0,target 7 38:295 reduce 38:296 reduce 15:295,target 5 4:288,target 42 31:289,target 21 31:290,target 21 42:0 reduce 10:304,target 7 25:288,target 15 22:296,target 12 37:291,target 27 50:293,target 47 16:295,target 6 32:289,target 22 32:290,target 22 45:0,target 35 14:0 reduce 14:0,target 4 44:295 reduce 44:296 reduce 4:263,target 17 56:0 reduce 26:288,target 16 3:301 reduce 3:302 reduce 23:296,target 13 3:304 reduce 38:291,target 28 3:297 reduce 17:295,target 7 33:289,target 23 33:290,target 23 4:280,target 34 4:279,target 33 28:0 reduce 27:288,target 17 50:288 shift 50:289 shift 50:290 shift 42:0,target 32 50:291 shift 24:296,target 14 50:292 shift 39:291,target 29 40:291,target 30 50:293 shift 50:294 shift 19:288 reduce 20:288 reduce 50:295 shift 11:0,target 1 19:289 reduce 19:290 reduce 20:289 reduce 20:290 reduce 50:296 shift 19:291 reduce 20:291 reduce 19:292 reduce 20:292 reduce 50:307 goto 19:293 reduce 20:293 reduce 50:308 goto 19:294 reduce 20:294 reduce 19:295 reduce 20:295 reduce 19:296 reduce 20:296 reduce 18:295,target 8 34:289,target 24 34:290,target 24 4:306,target 50 28:288,target 18 43:0 reduce 25:296,target 15 41:291,target 31 19:295,target 9 20:295,target 10 35:289,target 25 35:290,target 25 38:0,target 28 25:288 reduce 25:289 reduce 25:290 reduce 25:291 reduce 25:292 reduce 25:293 reduce 15:0 reduce 25:294 reduce 25:295 reduce 25:296 reduce 29:288,target 19 30:288,target 20 4:271,target 25 57:0 reduce 26:296,target 16 21:295,target 11 36:289,target 26 36:290,target 26 15:294,target 5 4:287,target 41 31:288,target 21 29:0 reduce 30:0 reduce 35:0,target 25 27:296,target 17 31:288 reduce 31:289 reduce 31:290 reduce 31:291 reduce 31:292 reduce 31:293 reduce 31:294 reduce 4:0 reduce 31:295 reduce 31:296 reduce 22:295,target 12 37:289,target 27 37:290,target 27 50:292,target 46 16:294,target 6 32:288,target 22 28:296,target 18 44:0 reduce 4:262,target 16 63:0,target 57 23:295,target 13 32:0,target 22 38:289,target 28 38:290,target 28 36:288 reduce 36:289 reduce 36:290 reduce 36:291 reduce 36:292 reduce 36:293 reduce 36:294 reduce 36:295 reduce 17:294,target 7 36:296 reduce 33:288,target 23 16:0 reduce 29:296,target 19 30:296,target 20 4:278,target 32 58:0 reduce 24:295,target 14 39:289,target 29 39:290,target 29 40:289,target 30 40:290,target 30 60:0,target 55 59:0,target 54 18:294,target 8 34:288,target 24 28:0,target 18 4:305,target 49 31:296,target 21 31:0 reduce 42:295 reduce 42:296 reduce 25:295,target 15 41:289,target 31 41:290,target 31 5:0 reduce 19:294,target 9 20:294,target 10 35:288,target 25 32:296,target 22 56:0,target 41 4:270,target 24 4:269,target 23 45:0 reduce 0:304,target 7 25:0,target 15 26:295,target 16 17:288 reduce 17:289 reduce 17:290 reduce 47:295 reduce 17:291 reduce 47:296 reduce 17:292 reduce 21:294,target 11 17:293 reduce 36:288,target 26 17:294 reduce 17:295 reduce 17:296 reduce 6:301 reduce 33:296,target 23 6:302 reduce 6:304 reduce 15:293,target 5 4:286,target 40 6:297 reduce 17:0 reduce 27:295,target 17 60:0 reduce 59:0 reduce 10:302,target 5 22:294,target 12 22:0,target 12 37:288,target 27 34:296,target 24 50:291,target 45 23:288 reduce 16:293,target 6 23:289 reduce 23:290 reduce 23:291 reduce 23:292 reduce 53:298 shift 23:293 reduce 2:304,target 49 23:294 reduce 23:295 reduce 28:295,target 18 32:0 reduce 23:296 reduce 4:261,target 15 23:294,target 13 38:288,target 28 7:0,target 58 35:296,target 25 5:313,target 54 49:0,target 51 50:0,target 52 17:293,target 7 18:0,target 8 3:304,target 47 29:295,target 19 30:295,target 20 4:277,target 31 46:0 reduce 28:288 reduce 28:289 reduce 28:290 reduce 28:291 reduce 28:292 reduce 24:294,target 14 28:293 reduce 28:294 reduce 39:288,target 29 40:288,target 30 28:295 reduce 28:296 reduce 36:296,target 26 18:293,target 8 4:294,target 48 4:0,target 50 31:295,target 21 18:0 reduce 46:0,target 36 61:0 reduce 10:310,target 56 15:0,target 5 25:294,target 15 41:288,target 31 37:296,target 27 7:313,target 55 34:288 reduce 34:289 reduce 34:290 reduce 19:293,target 9 20:293,target 10 34:291 reduce 50:308,target 60 34:292 reduce 34:293 reduce 34:294 reduce 34:295 reduce 32:295,target 22 34:296 reduce 33:0 reduce 4:268,target 22 0:303,target 6 26:294,target 16 1:0,target 46 7:0 reduce 38:296,target 28 43:0,target 33 51:308,target 61 21:293,target 11 12:0,target 2 6:304,target 48 33:295,target 23 15:292,target 5 4:285,target 39 39:288 reduce 40:288 reduce 39:289 reduce 39:290 reduce 40:289 reduce 40:290 reduce 39:291 reduce 40:291 reduce 39:292 reduce 40:292 reduce 39:293 reduce 40:293 reduce 27:294,target 17 39:294 reduce 40:294 reduce 47:0 reduce 39:295 reduce 40:295 reduce 10:301 shift 39:296 reduce 40:296 reduce 10:302 shift 10:304 shift 10:301,target 4 39:296,target 29 40:296,target 30 10:297 shift 10:310 goto 22:293,target 12 4:257 shift 34:295,target 24 4:258 shift 50:289,target 43 50:290,target 44 4:260 shift 4:259 shift 4:261 shift 4:312,target 52 4:262 shift 4:263 shift 16:292,target 6 39:0,target 29 40:0,target 30 4:264 shift 4:265 shift 4:266 shift 19:0 reduce 20:0 reduce 4:267 shift 4:268 shift 28:294,target 18 4:270 shift 4:269 shift 4:271 shift 4:272 shift 4:260,target 14 4:259,target 13 62:0 reduce 4:273 shift 4:274 shift 41:296,target 31 4:275 shift 4:276 shift 4:277 shift 4:278 shift 53:298,target 62 4:280 shift 4:279 shift 23:293,target 13 4:281 shift 15:288 reduce 4:282 shift 15:290 reduce 15:289 reduce 4:283 shift 45:295 reduce 15:291 reduce 4:284 shift 45:296 reduce 15:292 reduce 4:285 shift 35:295,target 25 15:293 reduce 4:286 shift 15:294 reduce 4:287 shift 15:295 reduce 4:288 shift 15:296 reduce 4:290 shift 4:289 shift 4:291 shift 17:292,target 7 4:292 shift 4:293 shift 4:294 shift 4:305 goto 4:306 goto 29:294,target 19 30:294,target 20 4:276,target 30 4:307 goto 34:0 reduce 0:311,target 10 4:312 goto 42:296,target 32 36:0,target 26 24:293,target 14 8:0 accept 36:295,target 26 18:292,target 8 4:293,target 47 21:288 reduce } array set iexamsend::rules { 9,l 306 11,l 306 32,l 307 53,l 312 6,l 306 28,l 306 50,l 312 49,l 311 3,l 305 25,l 306 46,l 310 0,l 314 22,l 306 43,l 310 18,l 306 40,l 308 39,l 308 15,l 306 36,l 307 57,l 312 12,l 306 33,l 307 54,l 312 7,l 306 29,l 306 30,l 306 51,l 312 4,l 305 26,l 306 47,l 311 1,l 305 23,l 306 44,l 310 19,l 306 20,l 306 41,l 309 16,l 306 37,l 307 58,l 313 13,l 306 34,l 307 55,l 312 8,l 306 10,l 306 31,l 306 52,l 312 5,l 306 27,l 306 48,l 311 2,l 305 24,l 306 45,l 310 21,l 306 42,l 309 17,l 306 38,l 307 59,l 313 14,l 306 35,l 307 56,l 312 } array set iexamsend::rules { 12,dc 1 26,dc 1 3,dc 1 41,dc 2 55,dc 2 18,dc 1 33,dc 1 9,dc 1 47,dc 1 11,dc 1 25,dc 1 2,dc 1 40,dc 1 39,dc 1 54,dc 2 17,dc 1 32,dc 1 8,dc 1 46,dc 1 10,dc 1 24,dc 1 1,dc 1 38,dc 1 53,dc 1 16,dc 1 31,dc 1 7,dc 1 45,dc 2 59,dc 2 23,dc 1 0,dc 1 37,dc 1 52,dc 1 15,dc 1 29,dc 1 30,dc 1 6,dc 1 44,dc 2 58,dc 0 22,dc 1 36,dc 1 51,dc 1 14,dc 1 28,dc 1 5,dc 1 43,dc 2 57,dc 3 21,dc 1 35,dc 1 50,dc 0 49,dc 1 13,dc 1 27,dc 1 4,dc 1 42,dc 1 56,dc 2 19,dc 1 20,dc 1 34,dc 1 48,dc 1 } array set iexamsend::rules { 41,line 158 7,line 119 37,line 150 4,line 115 34,line 147 1,line 112 31,line 143 27,line 139 24,line 136 21,line 133 17,line 129 14,line 126 11,line 123 59,line 185 56,line 180 53,line 177 50,line 174 49,line 171 46,line 166 43,line 162 9,line 121 40,line 154 39,line 153 6,line 118 36,line 149 3,line 114 33,line 146 29,line 141 30,line 142 26,line 138 23,line 135 19,line 131 20,line 132 16,line 128 13,line 125 10,line 122 58,line 184 55,line 179 52,line 176 48,line 170 45,line 165 42,line 159 8,line 120 38,line 151 5,line 117 35,line 148 2,line 113 32,line 145 28,line 140 25,line 137 22,line 134 18,line 130 15,line 127 12,line 124 57,line 181 54,line 178 51,line 175 47,line 169 44,line 164 } array set iexamsend::lr1_table { 35 {{25 {0 288 289 290 291 292 293 294 295 296} 1}} 14,trans {} 36 {{26 {0 288 289 290 291 292 293 294 295 296} 1}} 33,trans {} 37 {{27 {0 288 289 290 291 292 293 294 295 296} 1}} 52,trans {} 38 {{28 {0 288 289 290 291 292 293 294 295 296} 1}} 39 {{29 {0 288 289 290 291 292 293 294 295 296} 1}} 40 {{30 {0 288 289 290 291 292 293 294 295 296} 1}} 18,trans {} 1,trans {} 41 {{31 {0 288 289 290 291 292 293 294 295 296} 1}} 37,trans {} 42 {{32 {0 295 296} 1}} 56,trans {} 43 {{33 {0 295 296} 1}} 44 {{34 {0 295 296} 1}} 23,trans {} 5,trans {{298 53} {313 54}} 45 {{35 {0 295 296} 1}} 42,trans {} 46 {{36 {0 295 296} 1}} 61,trans {} 47 {{37 {0 295 296} 1}} 48 {{38 {0 295 296} 1}} 27,trans {} 9,trans {} 50 {{52 0 1} {54 0 1} {55 0 1} {57 0 1} {32 {0 295 296} 0} {33 {0 295 296} 0} {34 {0 295 296} 0} {35 {0 295 296} 0} {36 {0 295 296} 0} {37 {0 295 296} 0} {38 {0 295 296} 0} {39 0 0} {40 0 0}} 49 {{51 0 1}} 46,trans {} 51 {{53 0 1} {56 0 1} {39 0 0} {40 0 0}} 52 {{43 0 2}} 13,trans {} 53 {{59 0 1}} 32,trans {} 54 {{44 0 2}} 51,trans {{295 57} {296 58} {308 61}} 55 {{45 0 2}} 56 {{41 0 2}} 57 {{39 0 1}} 17,trans {} 0,trans {{297 1} {299 2} {300 3} {301 4} {302 5} {303 6} {304 7} {309 8} {310 9} {311 10}} 58 {{40 0 1}} 36,trans {} 55,trans {} 60 {{55 0 2}} 59 {{54 0 2} {57 0 2} {39 0 0} {40 0 0}} 61 {{56 0 2}} 62 {{59 0 2}} 22,trans {} 4,trans {{257 11} {258 12} {259 13} {260 14} {261 15} {262 16} {263 17} {264 18} {265 19} {266 20} {267 21} {268 22} {269 23} {270 24} {271 25} {272 26} {273 27} {274 28} {275 29} {276 30} {277 31} {278 32} {279 33} {280 34} {281 35} {282 36} {283 37} {284 38} {285 39} {286 40} {287 41} {288 42} {289 43} {290 44} {291 45} {292 46} {293 47} {294 48} {305 49} {306 50} {307 51} {312 52}} 63 {{57 0 3}} 41,trans {} 60,trans {} 59,trans {{295 57} {296 58} {308 63}} 26,trans {} 8,trans {} 45,trans {} 12,trans {} 31,trans {} 50,trans {{288 42} {289 43} {290 44} {291 45} {292 46} {293 47} {294 48} {295 57} {296 58} {307 59} {308 60}} 49,trans {} 16,trans {} 35,trans {} 54,trans {} 21,trans {} 3,trans {} 40,trans {} 39,trans {} 58,trans {} 10 {{41 0 1} {43 0 0} {44 0 0} {45 0 0} {46 0 0}} 11 {{1 0 1}} 25,trans {} 7,trans {{298 53} {313 55}} 12 {{2 0 1}} 44,trans {} 13 {{3 0 1}} 63,trans {} 14 {{4 0 1}} 11,trans {} 15 {{5 {0 288 289 290 291 292 293 294 295 296} 1}} 30,trans {} 29,trans {} 16 {{6 {0 288 289 290 291 292 293 294 295 296} 1}} 48,trans {} 0 {{0 0 0} {41 0 0} {42 0 0} {47 {297 301 302 304} 0} {48 {297 301 302 304} 0} {49 {297 301 302 304} 0} {43 0 0} {44 0 0} {45 0 0} {46 0 0}} 17 {{7 {0 288 289 290 291 292 293 294 295 296} 1}} 1 {{46 0 1}} 18 {{8 {0 288 289 290 291 292 293 294 295 296} 1}} 15,trans {} 2 {{49 {297 301 302 304} 1}} 19 {{9 {0 288 289 290 291 292 293 294 295 296} 1}} 20 {{10 {0 288 289 290 291 292 293 294 295 296} 1}} 34,trans {} 3 {{47 {297 301 302 304} 1}} 21 {{11 {0 288 289 290 291 292 293 294 295 296} 1}} 53,trans {{298 62}} 4 {{43 0 1} {50 0 0} {51 0 0} {52 0 0} {53 0 0} {54 0 0} {55 0 0} {56 0 0} {57 0 0} {1 0 0} {2 0 0} {3 0 0} {4 0 0} {5 {0 288 289 290 291 292 293 294 295 296} 0} {6 {0 288 289 290 291 292 293 294 295 296} 0} {7 {0 288 289 290 291 292 293 294 295 296} 0} {8 {0 288 289 290 291 292 293 294 295 296} 0} {9 {0 288 289 290 291 292 293 294 295 296} 0} {10 {0 288 289 290 291 292 293 294 295 296} 0} {11 {0 288 289 290 291 292 293 294 295 296} 0} {12 {0 288 289 290 291 292 293 294 295 296} 0} {13 {0 288 289 290 291 292 293 294 295 296} 0} {14 {0 288 289 290 291 292 293 294 295 296} 0} {15 {0 288 289 290 291 292 293 294 295 296} 0} {16 {0 288 289 290 291 292 293 294 295 296} 0} {17 {0 288 289 290 291 292 293 294 295 296} 0} {18 {0 288 289 290 291 292 293 294 295 296} 0} {19 {0 288 289 290 291 292 293 294 295 296} 0} {20 {0 288 289 290 291 292 293 294 295 296} 0} {21 {0 288 289 290 291 292 293 294 295 296} 0} {22 {0 288 289 290 291 292 293 294 295 296} 0} {23 {0 288 289 290 291 292 293 294 295 296} 0} {24 {0 288 289 290 291 292 293 294 295 296} 0} {25 {0 288 289 290 291 292 293 294 295 296} 0} {26 {0 288 289 290 291 292 293 294 295 296} 0} {27 {0 288 289 290 291 292 293 294 295 296} 0} {28 {0 288 289 290 291 292 293 294 295 296} 0} {29 {0 288 289 290 291 292 293 294 295 296} 0} {30 {0 288 289 290 291 292 293 294 295 296} 0} {31 {0 288 289 290 291 292 293 294 295 296} 0} {32 {0 295 296} 0} {33 {0 295 296} 0} {34 {0 295 296} 0} {35 {0 295 296} 0} {36 {0 295 296} 0} {37 {0 295 296} 0} {38 {0 295 296} 0}} 22 {{12 {0 288 289 290 291 292 293 294 295 296} 1}} 5 {{44 0 1} {58 0 0} {59 0 0}} 23 {{13 {0 288 289 290 291 292 293 294 295 296} 1}} 20,trans {} 19,trans {} 6 {{48 {297 301 302 304} 1}} 2,trans {} 24 {{14 {0 288 289 290 291 292 293 294 295 296} 1}} 38,trans {} 7 {{45 0 1} {58 0 0} {59 0 0}} 25 {{15 {0 288 289 290 291 292 293 294 295 296} 1}} 57,trans {} 8 {{0 0 1}} 26 {{16 {0 288 289 290 291 292 293 294 295 296} 1}} 9 {{42 0 1}} 27 {{17 {0 288 289 290 291 292 293 294 295 296} 1}} 24,trans {} 6,trans {} 28 {{18 {0 288 289 290 291 292 293 294 295 296} 1}} 43,trans {} 29 {{19 {0 288 289 290 291 292 293 294 295 296} 1}} 30 {{20 {0 288 289 290 291 292 293 294 295 296} 1}} 62,trans {} 31 {{21 {0 288 289 290 291 292 293 294 295 296} 1}} 10,trans {{297 1} {301 4} {302 5} {304 7} {310 56}} 32 {{22 {0 288 289 290 291 292 293 294 295 296} 1}} 28,trans {} 33 {{23 {0 288 289 290 291 292 293 294 295 296} 1}} 47,trans {} 34 {{24 {0 288 289 290 291 292 293 294 295 296} 1}} } array set iexamsend::token_id_table { 286 WCSY_ 286,t 0 287 WCSZ_ 292,line 44 302,line 60 288 FK4_ 265,title WCSD 289 B1950_ 290 FK5_ 300 BUTTON_ 284,title WCSW 291 J2000_ 301 COORDINATE_ 313,title {} 292 ICRS_ 302 DATA_ 288,line 40 293 GALACTIC_ 303 KEY_ 294 ECLIPTIC_ 304 VALUE_ 305 coordsys 295 DEGREES_ 306 wcssys 296 SEXAGESIMAL_ 307 skyframe 262,t 0 297 STRING_ 308 skyformat 285,line 36 298 INT_ 310 cmd 309 iexamsend 299 ANY_ 311 dest 283,t 0 312 coordinate 313 data 314,t 1 314 start' 282,line 33 264,title WCSC 283,title WCSV 312,title {} 278,line 29 error,line 110 258,t 0 275,line 26 279,t 0 280,t 0 311,t 1 272,line 23 263,title WCSB 282,title WCSU 311,title {} 268,line 19 276,t 0 265,line 16 307,t 1 297,t 0 262,line 13 0,t 0 0 {$} 262,title WCSA 281,title WCST 310,title {} 309,title {} error,t 0 299,title ANY 258,line 8 273,t 0 294,t 0 304,t 0 261,title WCS 279,title WCSR 280,title WCSS 308,title {} 269,t 0 270,t 0 298,title integer 314,line 186 291,t 0 301,t 0 311,line 168 307,line 144 266,t 0 260,title DETECTOR 259,title AMPLIFIER 297,line 51 278,title WCSQ 307,title {} 297,title string 287,t 0 294,line 46 304,line 62 error,title {} 291,line 43 301,line 59 263,t 0 258,title PHYSICAL 287,line 38 277,title WCSP 284,t 0 306,title {} 296,title SEXAGESIMAL 284,line 35 281,line 32 260,t 0 259,t 0 281,t 0 257,title IMAGE 277,line 28 276,title WCSO 312,t 1 305,title {} 295,title DEGREES 274,line 25 271,line 22 277,t 0 308,t 1 267,line 18 298,t 0 275,title WCSN 294,title ECLIPTIC 304,title VALUE 264,line 15 261,line 12 274,t 0 305,t 1 295,t 0 257,line 7 274,title WCSM 293,title GALACTIC 303,title KEY error error 271,t 0 292,t 0 302,t 0 273,title WCSL 313,line 183 292,title ICRS 302,title DATA 267,t 0 310,line 161 309,line 157 299,line 57 288,t 0 306,line 116 296,line 49 272,title WCSK 291,title J2000 293,line 45 301,title COORDINATE 303,line 61 264,t 0 285,t 0 289,line 41 290,line 42 300,line 58 286,line 37 271,title WCSJ 261,t 0 283,line 34 289,title B1950 290,title FK5 300,title BUTTON 282,t 0 279,line 30 280,line 31 313,t 1 276,line 27 257,t 0 269,title WCSH 270,title WCSI 273,line 24 288,title FK4 278,t 0 310,t 1 309,t 1 299,t 0 269,line 20 270,line 21 266,line 17 268,title WCSG 275,t 0 263,line 14 287,title WCSZ 306,t 1 296,t 0 260,line 10 259,line 9 272,t 0 267,title WCSF 257 IMAGE_ 286,title WCSY 293,t 0 303,t 0 258 PHYSICAL_ 260 DETECTOR_ 259 AMPLIFIER_ 261 WCS_ 262 WCSA_ 263 WCSB_ 264 WCSC_ 265 WCSD_ 266 WCSE_ 267 WCSF_ 268,t 0 268 WCSG_ 269 WCSH_ 270 WCSI_ 312,line 173 271 WCSJ_ 272 WCSK_ 289,t 0 290,t 0 300,t 0 266,title WCSE 273 WCSL_ 274 WCSM_ 285,title WCSX 314,title {} 275 WCSN_ 308,line 152 276 WCSO_ 298,line 53 277 WCSP_ 278 WCSQ_ 279 WCSR_ 280 WCSS_ 281 WCST_ 305,line 111 282 WCSU_ 295,line 48 265,t 0 283 WCSV_ 284 WCSW_ 285 WCSX_ } proc iexamsend::yyparse {} { variable yylval variable table variable rules variable token variable yycnt variable lr1_table variable token_id_table variable yyerr variable save_state set yycnt 0 set state_stack {0} set value_stack {{}} set token "" set accepted 0 set yyerr 0 set save_state 0 while {$accepted == 0} { set state [lindex $state_stack end] if {$token == ""} { set yylval "" set token [yylex] set buflval $yylval if {$token>0} { incr yycnt } } if {![info exists table($state:$token)] || $yyerr} { if {!$yyerr} { set save_state $state } # pop off states until error token accepted while {[llength $state_stack] > 0 && \ ![info exists table($state:error)]} { set state_stack [lrange $state_stack 0 end-1] set value_stack [lrange $value_stack 0 \ [expr {[llength $state_stack] - 1}]] set state [lindex $state_stack end] } if {[llength $state_stack] == 0} { set rr { } if {[info exists lr1_table($save_state,trans)] && [llength $lr1_table($save_state,trans)] >= 1} { foreach trans $lr1_table($save_state,trans) { foreach {tok_id nextstate} $trans { set ss $token_id_table($tok_id,title) if {$ss != {}} { append rr "$ss, " } } } } set rr [string trimleft $rr { }] set rr [string trimright $rr {, }] yyerror "parse error, expecting: $rr" return 1 } lappend state_stack [set state $table($state:error,target)] lappend value_stack {} # consume tokens until it finds an acceptable one while {![info exists table($state:$token)]} { if {$token == 0} { yyerror "end of file while recovering from error" return 1 } set yylval {} set token [yylex] set buflval $yylval } continue } switch -- $table($state:$token) { shift { lappend state_stack $table($state:$token,target) lappend value_stack $buflval set token "" } reduce { set rule $table($state:$token,target) set ll $rules($rule,l) if {[info exists rules($rule,e)]} { set dc $rules($rule,e) } else { set dc $rules($rule,dc) } set stackpointer [expr {[llength $state_stack]-$dc}] setupvalues $value_stack $stackpointer $dc set _ $1 set yylval [lindex $value_stack end] switch -- $rule { 1 { set _ image } 2 { set _ physical } 3 { set _ amplifier } 4 { set _ detector } 5 { set _ wcs } 6 { set _ wcsa } 7 { set _ wcsb } 8 { set _ wcsc } 9 { set _ wcsd } 10 { set _ wcse } 11 { set _ wcsf } 12 { set _ wcsg } 13 { set _ wcsh } 14 { set _ wcsi } 15 { set _ wcsj } 16 { set _ wcsk } 17 { set _ wcsl } 18 { set _ wcsm } 19 { set _ wcsn } 20 { set _ wcso } 21 { set _ wcsp } 22 { set _ wcsq } 23 { set _ wcsr } 24 { set _ wcss } 25 { set _ wcst } 26 { set _ wcsu } 27 { set _ wcsv } 28 { set _ wcsw } 29 { set _ wcsx } 30 { set _ wcsy } 31 { set _ wcsz } 32 { set _ fk4 } 33 { set _ fk4 } 34 { set _ fk5 } 35 { set _ fk5 } 36 { set _ icrs } 37 { set _ galactic } 38 { set _ ecliptic } 39 { set _ degrees } 40 { set _ sexagesimal } 46 { IExamSendCmdMacro $1 } 47 { IExamSendCmdDest button } 48 { IExamSendCmdDest key } 49 { IExamSendCmdDest any } 50 { IExamSendCmdCoord image fk5 degrees } 51 { IExamSendCmdCoord $1 fk5 degrees } 52 { IExamSendCmdCoord $1 fk5 degrees } 53 { IExamSendCmdCoord wcs $1 degrees } 54 { IExamSendCmdCoord $1 $2 degrees } 55 { IExamSendCmdCoord $1 fk5 $2 } 56 { IExamSendCmdCoord wcs $1 $2 } 57 { IExamSendCmdCoord $1 $2 $3 } 58 { IExamSendCmdData 1 1 } 59 { IExamSendCmdData $1 $2 } } unsetupvalues $dc # pop off tokens from the stack if normal rule if {![info exists rules($rule,e)]} { incr stackpointer -1 set state_stack [lrange $state_stack 0 $stackpointer] set value_stack [lrange $value_stack 0 $stackpointer] } # now do the goto transition lappend state_stack $table([lindex $state_stack end]:$ll,target) lappend value_stack $_ } accept { set accepted 1 } goto - default { puts stderr "Internal parser error: illegal command $table($state:$token)" return 2 } } } return 0 } ###### # end autogenerated taccle functions ###### proc iexamsend::yyerror {msg} { variable yycnt variable yy_current_buffer variable index_ ParserError $msg $yycnt $yy_current_buffer $index_ }